Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 | /* * ATTENTION: An "eval-source-map" devtool has been used. * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([["_app-pages-browser_node_modules_coinbase_wallet-sdk_dist_index_js"],{ /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletProvider.js": /*!**************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletProvider.js ***! \**************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CoinbaseWalletProvider: () => (/* binding */ CoinbaseWalletProvider)\n/* harmony export */ });\n/* harmony import */ var _core_communicator_Communicator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./core/communicator/Communicator.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/communicator/Communicator.js\");\n/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./core/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/constants.js\");\n/* harmony import */ var _core_error_constants_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./core/error/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/constants.js\");\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _core_error_serialize_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./core/error/serialize.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/serialize.js\");\n/* harmony import */ var _core_provider_interface_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/provider/interface.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/provider/interface.js\");\n/* harmony import */ var _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./core/storage/ScopedLocalStorage.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/storage/ScopedLocalStorage.js\");\n/* harmony import */ var _core_telemetry_events_provider_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./core/telemetry/events/provider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/provider.js\");\n/* harmony import */ var _core_telemetry_events_signer_selection_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./core/telemetry/events/signer-selection.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/signer-selection.js\");\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n/* harmony import */ var _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./store/correlation-ids/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/correlation-ids/store.js\");\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _util_provider_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./util/provider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/provider.js\");\n/* harmony import */ var _sign_util_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./sign/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/util.js\");\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass CoinbaseWalletProvider extends _core_provider_interface_js__WEBPACK_IMPORTED_MODULE_0__.ProviderEventEmitter {\n constructor(_a) {\n var { metadata } = _a, _b = _a.preference, { keysUrl } = _b, preference = __rest(_b, [\"keysUrl\"]);\n super();\n this.signer = null;\n this.isCoinbaseWallet = true;\n this.metadata = metadata;\n this.preference = preference;\n this.communicator = new _core_communicator_Communicator_js__WEBPACK_IMPORTED_MODULE_1__.Communicator({\n url: keysUrl,\n metadata,\n preference,\n });\n const signerType = (0,_sign_util_js__WEBPACK_IMPORTED_MODULE_2__.loadSignerType)();\n if (signerType) {\n this.signer = this.initSigner(signerType);\n (0,_core_telemetry_events_provider_js__WEBPACK_IMPORTED_MODULE_3__.logSignerLoadedFromStorage)({ signerType });\n }\n }\n async request(args) {\n // correlation id across the entire request lifecycle\n const correlationId = crypto.randomUUID();\n _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_4__.correlationIds.set(args, correlationId);\n (0,_core_telemetry_events_provider_js__WEBPACK_IMPORTED_MODULE_3__.logRequestStarted)({ method: args.method, correlationId });\n try {\n const result = await this._request(args);\n (0,_core_telemetry_events_provider_js__WEBPACK_IMPORTED_MODULE_3__.logRequestResponded)({\n method: args.method,\n signerType: (0,_sign_util_js__WEBPACK_IMPORTED_MODULE_2__.signerToSignerType)(this.signer),\n correlationId,\n });\n return result;\n }\n catch (error) {\n (0,_core_telemetry_events_provider_js__WEBPACK_IMPORTED_MODULE_3__.logRequestError)({\n method: args.method,\n correlationId,\n signerType: (0,_sign_util_js__WEBPACK_IMPORTED_MODULE_2__.signerToSignerType)(this.signer),\n errorMessage: error instanceof Error ? error.message : '',\n });\n throw error;\n }\n finally {\n _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_4__.correlationIds.delete(args);\n }\n }\n async _request(args) {\n try {\n (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_5__.checkErrorForInvalidRequestArgs)(args);\n if (!this.signer) {\n switch (args.method) {\n case 'eth_requestAccounts': {\n let signerType;\n const subAccountsConfig = _store_store_js__WEBPACK_IMPORTED_MODULE_6__.store.subAccountsConfig.get();\n if (subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.enableAutoSubAccounts) {\n signerType = 'scw';\n }\n else {\n signerType = await this.requestSignerSelection(args);\n }\n const signer = this.initSigner(signerType);\n if (signerType === 'scw' && (subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.enableAutoSubAccounts)) {\n await signer.handshake({ method: 'handshake' });\n // eth_requestAccounts gets translated to wallet_connect at SCWSigner level\n await signer.request(args);\n }\n else {\n await signer.handshake(args);\n }\n this.signer = signer;\n (0,_sign_util_js__WEBPACK_IMPORTED_MODULE_2__.storeSignerType)(signerType);\n break;\n }\n case 'wallet_connect': {\n const signer = this.initSigner('scw');\n await signer.handshake({ method: 'handshake' }); // exchange session keys\n const result = await signer.request(args); // send diffie-hellman encrypted request\n this.signer = signer;\n return result;\n }\n case 'wallet_sendCalls':\n case 'wallet_sign': {\n const ephemeralSigner = this.initSigner('scw');\n await ephemeralSigner.handshake({ method: 'handshake' }); // exchange session keys\n const result = await ephemeralSigner.request(args); // send diffie-hellman encrypted request\n await ephemeralSigner.cleanup(); // clean up (rotate) the ephemeral session keys\n return result;\n }\n case 'wallet_getCallsStatus': {\n const result = await (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_5__.fetchRPCRequest)(args, _core_constants_js__WEBPACK_IMPORTED_MODULE_7__.CB_WALLET_RPC_URL);\n return result;\n }\n case 'net_version': {\n const result = 1; // default value\n return result;\n }\n case 'eth_chainId': {\n const result = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.hexStringFromNumber)(1); // default value\n return result;\n }\n default: {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_9__.standardErrors.provider.unauthorized(\"Must call 'eth_requestAccounts' before other methods\");\n }\n }\n }\n const result = await this.signer.request(args);\n return result;\n }\n catch (error) {\n const { code } = error;\n if (code === _core_error_constants_js__WEBPACK_IMPORTED_MODULE_10__.standardErrorCodes.provider.unauthorized)\n this.disconnect();\n return Promise.reject((0,_core_error_serialize_js__WEBPACK_IMPORTED_MODULE_11__.serializeError)(error));\n }\n }\n /** @deprecated Use `.request({ method: 'eth_requestAccounts' })` instead. */\n async enable() {\n console.warn(`.enable() has been deprecated. Please use .request({ method: \"eth_requestAccounts\" }) instead.`);\n (0,_core_telemetry_events_provider_js__WEBPACK_IMPORTED_MODULE_3__.logEnableFunctionCalled)();\n return await this.request({\n method: 'eth_requestAccounts',\n });\n }\n async disconnect() {\n var _a;\n await ((_a = this.signer) === null || _a === void 0 ? void 0 : _a.cleanup());\n this.signer = null;\n _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_12__.ScopedLocalStorage.clearAll();\n _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_4__.correlationIds.clear();\n this.emit('disconnect', _core_error_errors_js__WEBPACK_IMPORTED_MODULE_9__.standardErrors.provider.disconnected('User initiated disconnection'));\n }\n async requestSignerSelection(handshakeRequest) {\n (0,_core_telemetry_events_signer_selection_js__WEBPACK_IMPORTED_MODULE_13__.logSignerSelectionRequested)();\n const signerType = await (0,_sign_util_js__WEBPACK_IMPORTED_MODULE_2__.fetchSignerType)({\n communicator: this.communicator,\n preference: this.preference,\n metadata: this.metadata,\n handshakeRequest,\n callback: this.emit.bind(this),\n });\n (0,_core_telemetry_events_signer_selection_js__WEBPACK_IMPORTED_MODULE_13__.logSignerSelectionResponded)(signerType);\n return signerType;\n }\n initSigner(signerType) {\n return (0,_sign_util_js__WEBPACK_IMPORTED_MODULE_2__.createSigner)({\n signerType,\n metadata: this.metadata,\n communicator: this.communicator,\n callback: this.emit.bind(this),\n });\n }\n}\n//# sourceMappingURL=CoinbaseWalletProvider.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L0NvaW5iYXNlV2FsbGV0UHJvdmlkZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsY0FBYyxTQUFJLElBQUksU0FBSTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZEQUE2RCxjQUFjO0FBQzNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDbUU7QUFDWDtBQUNPO0FBQ1A7QUFDRztBQUNVO0FBQ0s7QUFDMEY7QUFDNUM7QUFDOUQ7QUFDUTtBQUN6QjtBQUM2QztBQUMrQjtBQUM5RyxxQ0FBcUMsNkVBQW9CO0FBQ2hFO0FBQ0EsY0FBYyxXQUFXLDRCQUE0QixVQUFVO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsNEVBQVk7QUFDNUM7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULDJCQUEyQiw2REFBYztBQUN6QztBQUNBO0FBQ0EsWUFBWSw4RkFBMEIsR0FBRyxZQUFZO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLDJFQUFjO0FBQ3RCLFFBQVEscUZBQWlCLEdBQUcsb0NBQW9DO0FBQ2hFO0FBQ0E7QUFDQSxZQUFZLHVGQUFtQjtBQUMvQjtBQUNBLDRCQUE0QixpRUFBa0I7QUFDOUM7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtRkFBZTtBQUMzQjtBQUNBO0FBQ0EsNEJBQTRCLGlFQUFrQjtBQUM5QztBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxZQUFZLDJFQUFjO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxrRkFBK0I7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrREFBa0Qsa0RBQUs7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFEQUFxRCxxQkFBcUI7QUFDMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsOERBQWU7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpREFBaUQscUJBQXFCLEdBQUc7QUFDekUsbUVBQW1FO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBEQUEwRCxxQkFBcUIsR0FBRztBQUNsRiw0RUFBNEU7QUFDNUUseURBQXlEO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBLDZDQUE2QyxrRUFBZSxPQUFPLGlFQUFpQjtBQUNwRjtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDLHVFQUFtQixLQUFLO0FBQy9EO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QixpRUFBYztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixPQUFPO0FBQzNCLHlCQUF5Qix5RUFBa0I7QUFDM0M7QUFDQSxrQ0FBa0MseUVBQWM7QUFDaEQ7QUFDQTtBQUNBLG9DQUFvQywrQkFBK0I7QUFDbkU7QUFDQSwyRUFBMkUsK0JBQStCO0FBQzFHLFFBQVEsMkZBQXVCO0FBQy9CO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsb0ZBQWtCO0FBQzFCLFFBQVEsMkVBQWM7QUFDdEIsZ0NBQWdDLGlFQUFjO0FBQzlDO0FBQ0E7QUFDQSxRQUFRLHdHQUEyQjtBQUNuQyxpQ0FBaUMsOERBQWU7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRLHdHQUEyQjtBQUNuQztBQUNBO0FBQ0E7QUFDQSxlQUFlLDJEQUFZO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L0NvaW5iYXNlV2FsbGV0UHJvdmlkZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsgQ29tbXVuaWNhdG9yIH0gZnJvbSAnLi9jb3JlL2NvbW11bmljYXRvci9Db21tdW5pY2F0b3IuanMnO1xuaW1wb3J0IHsgQ0JfV0FMTEVUX1JQQ19VUkwgfSBmcm9tICcuL2NvcmUvY29uc3RhbnRzLmpzJztcbmltcG9ydCB7IHN0YW5kYXJkRXJyb3JDb2RlcyB9IGZyb20gJy4vY29yZS9lcnJvci9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgc3RhbmRhcmRFcnJvcnMgfSBmcm9tICcuL2NvcmUvZXJyb3IvZXJyb3JzLmpzJztcbmltcG9ydCB7IHNlcmlhbGl6ZUVycm9yIH0gZnJvbSAnLi9jb3JlL2Vycm9yL3NlcmlhbGl6ZS5qcyc7XG5pbXBvcnQgeyBQcm92aWRlckV2ZW50RW1pdHRlciwgfSBmcm9tICcuL2NvcmUvcHJvdmlkZXIvaW50ZXJmYWNlLmpzJztcbmltcG9ydCB7IFNjb3BlZExvY2FsU3RvcmFnZSB9IGZyb20gJy4vY29yZS9zdG9yYWdlL1Njb3BlZExvY2FsU3RvcmFnZS5qcyc7XG5pbXBvcnQgeyBsb2dFbmFibGVGdW5jdGlvbkNhbGxlZCwgbG9nUmVxdWVzdEVycm9yLCBsb2dSZXF1ZXN0UmVzcG9uZGVkLCBsb2dSZXF1ZXN0U3RhcnRlZCwgbG9nU2lnbmVyTG9hZGVkRnJvbVN0b3JhZ2UsIH0gZnJvbSAnLi9jb3JlL3RlbGVtZXRyeS9ldmVudHMvcHJvdmlkZXIuanMnO1xuaW1wb3J0IHsgbG9nU2lnbmVyU2VsZWN0aW9uUmVxdWVzdGVkLCBsb2dTaWduZXJTZWxlY3Rpb25SZXNwb25kZWQsIH0gZnJvbSAnLi9jb3JlL3RlbGVtZXRyeS9ldmVudHMvc2lnbmVyLXNlbGVjdGlvbi5qcyc7XG5pbXBvcnQgeyBoZXhTdHJpbmdGcm9tTnVtYmVyIH0gZnJvbSAnLi9jb3JlL3R5cGUvdXRpbC5qcyc7XG5pbXBvcnQgeyBjb3JyZWxhdGlvbklkcyB9IGZyb20gJy4vc3RvcmUvY29ycmVsYXRpb24taWRzL3N0b3JlLmpzJztcbmltcG9ydCB7IHN0b3JlIH0gZnJvbSAnLi9zdG9yZS9zdG9yZS5qcyc7XG5pbXBvcnQgeyBjaGVja0Vycm9yRm9ySW52YWxpZFJlcXVlc3RBcmdzLCBmZXRjaFJQQ1JlcXVlc3QgfSBmcm9tICcuL3V0aWwvcHJvdmlkZXIuanMnO1xuaW1wb3J0IHsgY3JlYXRlU2lnbmVyLCBmZXRjaFNpZ25lclR5cGUsIGxvYWRTaWduZXJUeXBlLCBzaWduZXJUb1NpZ25lclR5cGUsIHN0b3JlU2lnbmVyVHlwZSwgfSBmcm9tICcuL3NpZ24vdXRpbC5qcyc7XG5leHBvcnQgY2xhc3MgQ29pbmJhc2VXYWxsZXRQcm92aWRlciBleHRlbmRzIFByb3ZpZGVyRXZlbnRFbWl0dGVyIHtcbiAgICBjb25zdHJ1Y3RvcihfYSkge1xuICAgICAgICB2YXIgeyBtZXRhZGF0YSB9ID0gX2EsIF9iID0gX2EucHJlZmVyZW5jZSwgeyBrZXlzVXJsIH0gPSBfYiwgcHJlZmVyZW5jZSA9IF9fcmVzdChfYiwgW1wia2V5c1VybFwiXSk7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuc2lnbmVyID0gbnVsbDtcbiAgICAgICAgdGhpcy5pc0NvaW5iYXNlV2FsbGV0ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5tZXRhZGF0YSA9IG1ldGFkYXRhO1xuICAgICAgICB0aGlzLnByZWZlcmVuY2UgPSBwcmVmZXJlbmNlO1xuICAgICAgICB0aGlzLmNvbW11bmljYXRvciA9IG5ldyBDb21tdW5pY2F0b3Ioe1xuICAgICAgICAgICAgdXJsOiBrZXlzVXJsLFxuICAgICAgICAgICAgbWV0YWRhdGEsXG4gICAgICAgICAgICBwcmVmZXJlbmNlLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3Qgc2lnbmVyVHlwZSA9IGxvYWRTaWduZXJUeXBlKCk7XG4gICAgICAgIGlmIChzaWduZXJUeXBlKSB7XG4gICAgICAgICAgICB0aGlzLnNpZ25lciA9IHRoaXMuaW5pdFNpZ25lcihzaWduZXJUeXBlKTtcbiAgICAgICAgICAgIGxvZ1NpZ25lckxvYWRlZEZyb21TdG9yYWdlKHsgc2lnbmVyVHlwZSB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhc3luYyByZXF1ZXN0KGFyZ3MpIHtcbiAgICAgICAgLy8gY29ycmVsYXRpb24gaWQgYWNyb3NzIHRoZSBlbnRpcmUgcmVxdWVzdCBsaWZlY3ljbGVcbiAgICAgICAgY29uc3QgY29ycmVsYXRpb25JZCA9IGNyeXB0by5yYW5kb21VVUlEKCk7XG4gICAgICAgIGNvcnJlbGF0aW9uSWRzLnNldChhcmdzLCBjb3JyZWxhdGlvbklkKTtcbiAgICAgICAgbG9nUmVxdWVzdFN0YXJ0ZWQoeyBtZXRob2Q6IGFyZ3MubWV0aG9kLCBjb3JyZWxhdGlvbklkIH0pO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5fcmVxdWVzdChhcmdzKTtcbiAgICAgICAgICAgIGxvZ1JlcXVlc3RSZXNwb25kZWQoe1xuICAgICAgICAgICAgICAgIG1ldGhvZDogYXJncy5tZXRob2QsXG4gICAgICAgICAgICAgICAgc2lnbmVyVHlwZTogc2lnbmVyVG9TaWduZXJUeXBlKHRoaXMuc2lnbmVyKSxcbiAgICAgICAgICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgbG9nUmVxdWVzdEVycm9yKHtcbiAgICAgICAgICAgICAgICBtZXRob2Q6IGFyZ3MubWV0aG9kLFxuICAgICAgICAgICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgICAgICAgICAgc2lnbmVyVHlwZTogc2lnbmVyVG9TaWduZXJUeXBlKHRoaXMuc2lnbmVyKSxcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJycsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgY29ycmVsYXRpb25JZHMuZGVsZXRlKGFyZ3MpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGFzeW5jIF9yZXF1ZXN0KGFyZ3MpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNoZWNrRXJyb3JGb3JJbnZhbGlkUmVxdWVzdEFyZ3MoYXJncyk7XG4gICAgICAgICAgICBpZiAoIXRoaXMuc2lnbmVyKSB7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChhcmdzLm1ldGhvZCkge1xuICAgICAgICAgICAgICAgICAgICBjYXNlICdldGhfcmVxdWVzdEFjY291bnRzJzoge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNpZ25lclR5cGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWJBY2NvdW50c0NvbmZpZyA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN1YkFjY291bnRzQ29uZmlnID09PSBudWxsIHx8IHN1YkFjY291bnRzQ29uZmlnID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJBY2NvdW50c0NvbmZpZy5lbmFibGVBdXRvU3ViQWNjb3VudHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWduZXJUeXBlID0gJ3Njdyc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWduZXJUeXBlID0gYXdhaXQgdGhpcy5yZXF1ZXN0U2lnbmVyU2VsZWN0aW9uKGFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2lnbmVyID0gdGhpcy5pbml0U2lnbmVyKHNpZ25lclR5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNpZ25lclR5cGUgPT09ICdzY3cnICYmIChzdWJBY2NvdW50c0NvbmZpZyA9PT0gbnVsbCB8fCBzdWJBY2NvdW50c0NvbmZpZyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3ViQWNjb3VudHNDb25maWcuZW5hYmxlQXV0b1N1YkFjY291bnRzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHNpZ25lci5oYW5kc2hha2UoeyBtZXRob2Q6ICdoYW5kc2hha2UnIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGV0aF9yZXF1ZXN0QWNjb3VudHMgZ2V0cyB0cmFuc2xhdGVkIHRvIHdhbGxldF9jb25uZWN0IGF0IFNDV1NpZ25lciBsZXZlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHNpZ25lci5yZXF1ZXN0KGFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgc2lnbmVyLmhhbmRzaGFrZShhcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2lnbmVyID0gc2lnbmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVTaWduZXJUeXBlKHNpZ25lclR5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnd2FsbGV0X2Nvbm5lY3QnOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzaWduZXIgPSB0aGlzLmluaXRTaWduZXIoJ3NjdycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgc2lnbmVyLmhhbmRzaGFrZSh7IG1ldGhvZDogJ2hhbmRzaGFrZScgfSk7IC8vIGV4Y2hhbmdlIHNlc3Npb24ga2V5c1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgc2lnbmVyLnJlcXVlc3QoYXJncyk7IC8vIHNlbmQgZGlmZmllLWhlbGxtYW4gZW5jcnlwdGVkIHJlcXVlc3RcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2lnbmVyID0gc2lnbmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjYXNlICd3YWxsZXRfc2VuZENhbGxzJzpcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnd2FsbGV0X3NpZ24nOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBlcGhlbWVyYWxTaWduZXIgPSB0aGlzLmluaXRTaWduZXIoJ3NjdycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgZXBoZW1lcmFsU2lnbmVyLmhhbmRzaGFrZSh7IG1ldGhvZDogJ2hhbmRzaGFrZScgfSk7IC8vIGV4Y2hhbmdlIHNlc3Npb24ga2V5c1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZXBoZW1lcmFsU2lnbmVyLnJlcXVlc3QoYXJncyk7IC8vIHNlbmQgZGlmZmllLWhlbGxtYW4gZW5jcnlwdGVkIHJlcXVlc3RcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IGVwaGVtZXJhbFNpZ25lci5jbGVhbnVwKCk7IC8vIGNsZWFuIHVwIChyb3RhdGUpIHRoZSBlcGhlbWVyYWwgc2Vzc2lvbiBrZXlzXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9nZXRDYWxsc1N0YXR1cyc6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGZldGNoUlBDUmVxdWVzdChhcmdzLCBDQl9XQUxMRVRfUlBDX1VSTCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ25ldF92ZXJzaW9uJzoge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gMTsgLy8gZGVmYXVsdCB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjYXNlICdldGhfY2hhaW5JZCc6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGhleFN0cmluZ0Zyb21OdW1iZXIoMSk7IC8vIGRlZmF1bHQgdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucHJvdmlkZXIudW5hdXRob3JpemVkKFwiTXVzdCBjYWxsICdldGhfcmVxdWVzdEFjY291bnRzJyBiZWZvcmUgb3RoZXIgbWV0aG9kc1wiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuc2lnbmVyLnJlcXVlc3QoYXJncyk7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgY29uc3QgeyBjb2RlIH0gPSBlcnJvcjtcbiAgICAgICAgICAgIGlmIChjb2RlID09PSBzdGFuZGFyZEVycm9yQ29kZXMucHJvdmlkZXIudW5hdXRob3JpemVkKVxuICAgICAgICAgICAgICAgIHRoaXMuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHNlcmlhbGl6ZUVycm9yKGVycm9yKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqIEBkZXByZWNhdGVkIFVzZSBgLnJlcXVlc3QoeyBtZXRob2Q6ICdldGhfcmVxdWVzdEFjY291bnRzJyB9KWAgaW5zdGVhZC4gKi9cbiAgICBhc3luYyBlbmFibGUoKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihgLmVuYWJsZSgpIGhhcyBiZWVuIGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2UgLnJlcXVlc3QoeyBtZXRob2Q6IFwiZXRoX3JlcXVlc3RBY2NvdW50c1wiIH0pIGluc3RlYWQuYCk7XG4gICAgICAgIGxvZ0VuYWJsZUZ1bmN0aW9uQ2FsbGVkKCk7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnZXRoX3JlcXVlc3RBY2NvdW50cycsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBhc3luYyBkaXNjb25uZWN0KCkge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGF3YWl0ICgoX2EgPSB0aGlzLnNpZ25lcikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNsZWFudXAoKSk7XG4gICAgICAgIHRoaXMuc2lnbmVyID0gbnVsbDtcbiAgICAgICAgU2NvcGVkTG9jYWxTdG9yYWdlLmNsZWFyQWxsKCk7XG4gICAgICAgIGNvcnJlbGF0aW9uSWRzLmNsZWFyKCk7XG4gICAgICAgIHRoaXMuZW1pdCgnZGlzY29ubmVjdCcsIHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLmRpc2Nvbm5lY3RlZCgnVXNlciBpbml0aWF0ZWQgZGlzY29ubmVjdGlvbicpKTtcbiAgICB9XG4gICAgYXN5bmMgcmVxdWVzdFNpZ25lclNlbGVjdGlvbihoYW5kc2hha2VSZXF1ZXN0KSB7XG4gICAgICAgIGxvZ1NpZ25lclNlbGVjdGlvblJlcXVlc3RlZCgpO1xuICAgICAgICBjb25zdCBzaWduZXJUeXBlID0gYXdhaXQgZmV0Y2hTaWduZXJUeXBlKHtcbiAgICAgICAgICAgIGNvbW11bmljYXRvcjogdGhpcy5jb21tdW5pY2F0b3IsXG4gICAgICAgICAgICBwcmVmZXJlbmNlOiB0aGlzLnByZWZlcmVuY2UsXG4gICAgICAgICAgICBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YSxcbiAgICAgICAgICAgIGhhbmRzaGFrZVJlcXVlc3QsXG4gICAgICAgICAgICBjYWxsYmFjazogdGhpcy5lbWl0LmJpbmQodGhpcyksXG4gICAgICAgIH0pO1xuICAgICAgICBsb2dTaWduZXJTZWxlY3Rpb25SZXNwb25kZWQoc2lnbmVyVHlwZSk7XG4gICAgICAgIHJldHVybiBzaWduZXJUeXBlO1xuICAgIH1cbiAgICBpbml0U2lnbmVyKHNpZ25lclR5cGUpIHtcbiAgICAgICAgcmV0dXJuIGNyZWF0ZVNpZ25lcih7XG4gICAgICAgICAgICBzaWduZXJUeXBlLFxuICAgICAgICAgICAgbWV0YWRhdGE6IHRoaXMubWV0YWRhdGEsXG4gICAgICAgICAgICBjb21tdW5pY2F0b3I6IHRoaXMuY29tbXVuaWNhdG9yLFxuICAgICAgICAgICAgY2FsbGJhY2s6IHRoaXMuZW1pdC5iaW5kKHRoaXMpLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1Db2luYmFzZVdhbGxldFByb3ZpZGVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletProvider.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletSDK.js": /*!*********************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletSDK.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CoinbaseWalletSDK: () => (/* binding */ CoinbaseWalletSDK)\n/* harmony export */ });\n/* harmony import */ var _core_telemetry_initCCA_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./core/telemetry/initCCA.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/initCCA.js\");\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _util_checkCrossOriginOpenerPolicy_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./util/checkCrossOriginOpenerPolicy.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/checkCrossOriginOpenerPolicy.js\");\n/* harmony import */ var _util_provider_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./util/provider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/provider.js\");\n/* harmony import */ var _util_validatePreferences_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./util/validatePreferences.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/validatePreferences.js\");\n/* harmony import */ var _CoinbaseWalletProvider_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./CoinbaseWalletProvider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletProvider.js\");\n/* harmony import */ var _assets_wallet_logo_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./assets/wallet-logo.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/assets/wallet-logo.js\");\n\n\n\n\n\n\n\n\n/**\n * CoinbaseWalletSDK\n *\n * @deprecated CoinbaseWalletSDK is deprecated and will likely be removed in a future major version release.\n * It's recommended to use `createCoinbaseWalletSDK` instead.\n */\nclass CoinbaseWalletSDK {\n constructor(metadata) {\n void _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.persist.rehydrate();\n this.metadata = {\n appName: metadata.appName || 'Dapp',\n appLogoUrl: metadata.appLogoUrl || (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_1__.getFavicon)(),\n appChainIds: metadata.appChainIds || [],\n };\n _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.config.set({\n metadata: this.metadata,\n });\n void (0,_util_checkCrossOriginOpenerPolicy_js__WEBPACK_IMPORTED_MODULE_2__.checkCrossOriginOpenerPolicy)();\n }\n makeWeb3Provider(preference = {\n options: 'all',\n }) {\n var _a;\n (0,_util_validatePreferences_js__WEBPACK_IMPORTED_MODULE_3__.validatePreferences)(preference);\n if (preference.telemetry !== false) {\n void (0,_core_telemetry_initCCA_js__WEBPACK_IMPORTED_MODULE_4__.loadTelemetryScript)();\n }\n _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.config.set({\n preference,\n });\n const params = { metadata: this.metadata, preference };\n return (_a = (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_5__.getCoinbaseInjectedProvider)(params)) !== null && _a !== void 0 ? _a : new _CoinbaseWalletProvider_js__WEBPACK_IMPORTED_MODULE_6__.CoinbaseWalletProvider(params);\n }\n /**\n * Official Coinbase Wallet logo for developers to use on their frontend\n * @param type Type of wallet logo: \"standard\" | \"circle\" | \"text\" | \"textWithLogo\" | \"textLight\" | \"textWithLogoLight\"\n * @param width Width of the logo (Optional)\n * @returns SVG Data URI\n */\n getCoinbaseWalletLogo(type, width = 240) {\n return (0,_assets_wallet_logo_js__WEBPACK_IMPORTED_MODULE_7__.walletLogo)(type, width);\n }\n}\n//# sourceMappingURL=CoinbaseWalletSDK.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L0NvaW5iYXNlV2FsbGV0U0RLLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFrRTtBQUNqQjtBQUNSO0FBQzZDO0FBQ3JCO0FBQ0c7QUFDQztBQUNoQjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0EsYUFBYSxrREFBSztBQUNsQjtBQUNBO0FBQ0EsK0NBQStDLDhEQUFVO0FBQ3pEO0FBQ0E7QUFDQSxRQUFRLGtEQUFLO0FBQ2I7QUFDQSxTQUFTO0FBQ1QsYUFBYSxtR0FBNEI7QUFDekM7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsUUFBUSxpRkFBbUI7QUFDM0I7QUFDQSxpQkFBaUIsK0VBQW1CO0FBQ3BDO0FBQ0EsUUFBUSxrREFBSztBQUNiO0FBQ0EsU0FBUztBQUNULHlCQUF5QjtBQUN6QixxQkFBcUIsOEVBQTJCLCtDQUErQyw4RUFBc0I7QUFDckg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsa0VBQVU7QUFDekI7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvQ29pbmJhc2VXYWxsZXRTREsuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9hZFRlbGVtZXRyeVNjcmlwdCB9IGZyb20gJy4vY29yZS90ZWxlbWV0cnkvaW5pdENDQS5qcyc7XG5pbXBvcnQgeyBnZXRGYXZpY29uIH0gZnJvbSAnLi9jb3JlL3R5cGUvdXRpbC5qcyc7XG5pbXBvcnQgeyBzdG9yZSB9IGZyb20gJy4vc3RvcmUvc3RvcmUuanMnO1xuaW1wb3J0IHsgY2hlY2tDcm9zc09yaWdpbk9wZW5lclBvbGljeSB9IGZyb20gJy4vdXRpbC9jaGVja0Nyb3NzT3JpZ2luT3BlbmVyUG9saWN5LmpzJztcbmltcG9ydCB7IGdldENvaW5iYXNlSW5qZWN0ZWRQcm92aWRlciB9IGZyb20gJy4vdXRpbC9wcm92aWRlci5qcyc7XG5pbXBvcnQgeyB2YWxpZGF0ZVByZWZlcmVuY2VzIH0gZnJvbSAnLi91dGlsL3ZhbGlkYXRlUHJlZmVyZW5jZXMuanMnO1xuaW1wb3J0IHsgQ29pbmJhc2VXYWxsZXRQcm92aWRlciB9IGZyb20gJy4vQ29pbmJhc2VXYWxsZXRQcm92aWRlci5qcyc7XG5pbXBvcnQgeyB3YWxsZXRMb2dvIH0gZnJvbSAnLi9hc3NldHMvd2FsbGV0LWxvZ28uanMnO1xuLyoqXG4gKiBDb2luYmFzZVdhbGxldFNES1xuICpcbiAqIEBkZXByZWNhdGVkIENvaW5iYXNlV2FsbGV0U0RLIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgbGlrZWx5IGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgbWFqb3IgdmVyc2lvbiByZWxlYXNlLlxuICogSXQncyByZWNvbW1lbmRlZCB0byB1c2UgYGNyZWF0ZUNvaW5iYXNlV2FsbGV0U0RLYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgY2xhc3MgQ29pbmJhc2VXYWxsZXRTREsge1xuICAgIGNvbnN0cnVjdG9yKG1ldGFkYXRhKSB7XG4gICAgICAgIHZvaWQgc3RvcmUucGVyc2lzdC5yZWh5ZHJhdGUoKTtcbiAgICAgICAgdGhpcy5tZXRhZGF0YSA9IHtcbiAgICAgICAgICAgIGFwcE5hbWU6IG1ldGFkYXRhLmFwcE5hbWUgfHwgJ0RhcHAnLFxuICAgICAgICAgICAgYXBwTG9nb1VybDogbWV0YWRhdGEuYXBwTG9nb1VybCB8fCBnZXRGYXZpY29uKCksXG4gICAgICAgICAgICBhcHBDaGFpbklkczogbWV0YWRhdGEuYXBwQ2hhaW5JZHMgfHwgW10sXG4gICAgICAgIH07XG4gICAgICAgIHN0b3JlLmNvbmZpZy5zZXQoe1xuICAgICAgICAgICAgbWV0YWRhdGE6IHRoaXMubWV0YWRhdGEsXG4gICAgICAgIH0pO1xuICAgICAgICB2b2lkIGNoZWNrQ3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3koKTtcbiAgICB9XG4gICAgbWFrZVdlYjNQcm92aWRlcihwcmVmZXJlbmNlID0ge1xuICAgICAgICBvcHRpb25zOiAnYWxsJyxcbiAgICB9KSB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgdmFsaWRhdGVQcmVmZXJlbmNlcyhwcmVmZXJlbmNlKTtcbiAgICAgICAgaWYgKHByZWZlcmVuY2UudGVsZW1ldHJ5ICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgdm9pZCBsb2FkVGVsZW1ldHJ5U2NyaXB0KCk7XG4gICAgICAgIH1cbiAgICAgICAgc3RvcmUuY29uZmlnLnNldCh7XG4gICAgICAgICAgICBwcmVmZXJlbmNlLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgcGFyYW1zID0geyBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YSwgcHJlZmVyZW5jZSB9O1xuICAgICAgICByZXR1cm4gKF9hID0gZ2V0Q29pbmJhc2VJbmplY3RlZFByb3ZpZGVyKHBhcmFtcykpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IG5ldyBDb2luYmFzZVdhbGxldFByb3ZpZGVyKHBhcmFtcyk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIE9mZmljaWFsIENvaW5iYXNlIFdhbGxldCBsb2dvIGZvciBkZXZlbG9wZXJzIHRvIHVzZSBvbiB0aGVpciBmcm9udGVuZFxuICAgICAqIEBwYXJhbSB0eXBlIFR5cGUgb2Ygd2FsbGV0IGxvZ286IFwic3RhbmRhcmRcIiB8IFwiY2lyY2xlXCIgfCBcInRleHRcIiB8IFwidGV4dFdpdGhMb2dvXCIgfCBcInRleHRMaWdodFwiIHwgXCJ0ZXh0V2l0aExvZ29MaWdodFwiXG4gICAgICogQHBhcmFtIHdpZHRoIFdpZHRoIG9mIHRoZSBsb2dvIChPcHRpb25hbClcbiAgICAgKiBAcmV0dXJucyBTVkcgRGF0YSBVUklcbiAgICAgKi9cbiAgICBnZXRDb2luYmFzZVdhbGxldExvZ28odHlwZSwgd2lkdGggPSAyNDApIHtcbiAgICAgICAgcmV0dXJuIHdhbGxldExvZ28odHlwZSwgd2lkdGgpO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUNvaW5iYXNlV2FsbGV0U0RLLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletSDK.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/assets/wallet-logo.js": /*!**********************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/assets/wallet-logo.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ walletLogo: () => (/* binding */ walletLogo)\n/* harmony export */ });\nconst walletLogo = (type, width) => {\n let height;\n switch (type) {\n case 'standard':\n height = width;\n return `data:image/svg+xml,%3Csvg width='${width}' height='${height}' viewBox='0 0 1024 1024' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Crect width='1024' height='1024' fill='%230052FF'/%3E %3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z' fill='white'/%3E %3C/svg%3E `;\n case 'circle':\n height = width;\n return `data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='${width}' height='${height}' viewBox='0 0 999.81 999.81'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052fe;%7D.cls-2%7Bfill:%23fefefe;%7D.cls-3%7Bfill:%230152fe;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M655-115.9h56c.83,1.59,2.36.88,3.56,1a478,478,0,0,1,75.06,10.42C891.4-81.76,978.33-32.58,1049.19,44q116.7,126,131.94,297.61c.38,4.14-.34,8.53,1.78,12.45v59c-1.58.84-.91,2.35-1,3.56a482.05,482.05,0,0,1-10.38,74.05c-24,106.72-76.64,196.76-158.83,268.93s-178.18,112.82-287.2,122.6c-4.83.43-9.86-.25-14.51,1.77H654c-1-1.68-2.69-.91-4.06-1a496.89,496.89,0,0,1-105.9-18.59c-93.54-27.42-172.78-77.59-236.91-150.94Q199.34,590.1,184.87,426.58c-.47-5.19.25-10.56-1.77-15.59V355c1.68-1,.91-2.7,1-4.06a498.12,498.12,0,0,1,18.58-105.9c26-88.75,72.64-164.9,140.6-227.57q126-116.27,297.21-131.61C645.32-114.57,650.35-113.88,655-115.9Zm377.92,500c0-192.44-156.31-349.49-347.56-350.15-194.13-.68-350.94,155.13-352.29,347.42-1.37,194.55,155.51,352.1,348.56,352.47C876.15,734.23,1032.93,577.84,1032.93,384.11Z' transform='translate(-183.1 115.9)'/%3E%3Cpath class='cls-2' d='M1032.93,384.11c0,193.73-156.78,350.12-351.29,349.74-193-.37-349.93-157.92-348.56-352.47C334.43,189.09,491.24,33.28,685.37,34,876.62,34.62,1032.94,191.67,1032.93,384.11ZM683,496.81q43.74,0,87.48,0c15.55,0,25.32-9.72,25.33-25.21q0-87.48,0-175c0-15.83-9.68-25.46-25.59-25.46H595.77c-15.88,0-25.57,9.64-25.58,25.46q0,87.23,0,174.45c0,16.18,9.59,25.7,25.84,25.71Z' transform='translate(-183.1 115.9)'/%3E%3Cpath class='cls-3' d='M683,496.81H596c-16.25,0-25.84-9.53-25.84-25.71q0-87.23,0-174.45c0-15.82,9.7-25.46,25.58-25.46H770.22c15.91,0,25.59,9.63,25.59,25.46q0,87.47,0,175c0,15.49-9.78,25.2-25.33,25.21Q726.74,496.84,683,496.81Z' transform='translate(-183.1 115.9)'/%3E%3C/svg%3E`;\n case 'text':\n height = (0.1 * width).toFixed(2);\n return `data:image/svg+xml,%3Csvg width='${width}' height='${height}' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 528.15 53.64'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052ff;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3ECoinbase_Wordmark_SubBrands_ALL%3C/title%3E%3Cpath class='cls-1' d='M164.45,15a15,15,0,0,0-11.74,5.4V0h-8.64V52.92h8.5V48a15,15,0,0,0,11.88,5.62c10.37,0,18.21-8.21,18.21-19.3S174.67,15,164.45,15Zm-1.3,30.67c-6.19,0-10.73-4.83-10.73-11.31S157,23,163.22,23s10.66,4.82,10.66,11.37S169.34,45.65,163.15,45.65Zm83.31-14.91-6.34-.93c-3-.43-5.18-1.44-5.18-3.82,0-2.59,2.8-3.89,6.62-3.89,4.18,0,6.84,1.8,7.42,4.76h8.35c-.94-7.49-6.7-11.88-15.55-11.88-9.15,0-15.2,4.68-15.2,11.3,0,6.34,4,10,12,11.16l6.33.94c3.1.43,4.83,1.65,4.83,4,0,2.95-3,4.17-7.2,4.17-5.12,0-8-2.09-8.43-5.25h-8.49c.79,7.27,6.48,12.38,16.84,12.38,9.44,0,15.7-4.32,15.7-11.74C258.12,35.28,253.58,31.82,246.46,30.74Zm-27.65-2.3c0-8.06-4.9-13.46-15.27-13.46-9.79,0-15.26,5-16.34,12.6h8.57c.43-3,2.73-5.4,7.63-5.4,4.39,0,6.55,1.94,6.55,4.32,0,3.09-4,3.88-8.85,4.39-6.63.72-14.84,3-14.84,11.66,0,6.7,5,11,12.89,11,6.19,0,10.08-2.59,12-6.7.28,3.67,3,6.05,6.84,6.05h5v-7.7h-4.25Zm-8.5,9.36c0,5-4.32,8.64-9.57,8.64-3.24,0-6-1.37-6-4.25,0-3.67,4.39-4.68,8.42-5.11s6-1.22,7.13-2.88ZM281.09,15c-11.09,0-19.23,8.35-19.23,19.36,0,11.6,8.72,19.3,19.37,19.3,9,0,16.06-5.33,17.86-12.89h-9c-1.3,3.31-4.47,5.19-8.71,5.19-5.55,0-9.72-3.46-10.66-9.51H299.3V33.12C299.3,22.46,291.53,15,281.09,15Zm-9.87,15.26c1.37-5.18,5.26-7.7,9.72-7.7,4.9,0,8.64,2.8,9.51,7.7ZM19.3,23a9.84,9.84,0,0,1,9.5,7h9.14c-1.65-8.93-9-15-18.57-15A19,19,0,0,0,0,34.34c0,11.09,8.28,19.3,19.37,19.3,9.36,0,16.85-6,18.5-15H28.8a9.75,9.75,0,0,1-9.43,7.06c-6.27,0-10.66-4.83-10.66-11.31S13,23,19.3,23Zm41.11-8A19,19,0,0,0,41,34.34c0,11.09,8.28,19.3,19.37,19.3A19,19,0,0,0,79.92,34.27C79.92,23.33,71.64,15,60.41,15Zm.07,30.67c-6.19,0-10.73-4.83-10.73-11.31S54.22,23,60.41,23s10.8,4.89,10.8,11.37S66.67,45.65,60.48,45.65ZM123.41,15c-5.62,0-9.29,2.3-11.45,5.54V15.7h-8.57V52.92H112V32.69C112,27,115.63,23,121,23c5,0,8.06,3.53,8.06,8.64V52.92h8.64V31C137.66,21.6,132.84,15,123.41,15ZM92,.36a5.36,5.36,0,0,0-5.55,5.47,5.55,5.55,0,0,0,11.09,0A5.35,5.35,0,0,0,92,.36Zm-9.72,23h5.4V52.92h8.64V15.7h-14Zm298.17-7.7L366.2,52.92H372L375.29,44H392l3.33,8.88h6L386.87,15.7ZM377,39.23l6.45-17.56h.1l6.56,17.56ZM362.66,15.7l-7.88,29h-.11l-8.14-29H341l-8,28.93h-.1l-8-28.87H319L329.82,53h5.45l8.19-29.24h.11L352,53h5.66L368.1,15.7Zm135.25,0v4.86h12.32V52.92h5.6V20.56h12.32V15.7ZM467.82,52.92h25.54V48.06H473.43v-12h18.35V31.35H473.43V20.56h19.93V15.7H467.82ZM443,15.7h-5.6V52.92h24.32V48.06H443Zm-30.45,0h-5.61V52.92h24.32V48.06H412.52Z'/%3E%3C/svg%3E`;\n case 'textWithLogo':\n height = (0.25 * width).toFixed(2);\n return `data:image/svg+xml,%3Csvg width='${width}' height='${height}' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 308.44 77.61'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%230052ff;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M142.94,20.2l-7.88,29H135l-8.15-29h-5.55l-8,28.93h-.11l-8-28.87H99.27l10.84,37.27h5.44l8.2-29.24h.1l8.41,29.24h5.66L148.39,20.2Zm17.82,0L146.48,57.42h5.82l3.28-8.88h16.65l3.34,8.88h6L167.16,20.2Zm-3.44,23.52,6.45-17.55h.11l6.56,17.55ZM278.2,20.2v4.86h12.32V57.42h5.6V25.06h12.32V20.2ZM248.11,57.42h25.54V52.55H253.71V40.61h18.35V35.85H253.71V25.06h19.94V20.2H248.11ZM223.26,20.2h-5.61V57.42H242V52.55H223.26Zm-30.46,0h-5.6V57.42h24.32V52.55H192.8Zm-154,38A19.41,19.41,0,1,1,57.92,35.57H77.47a38.81,38.81,0,1,0,0,6.47H57.92A19.39,19.39,0,0,1,38.81,58.21Z'/%3E%3C/svg%3E`;\n case 'textLight':\n height = (0.1 * width).toFixed(2);\n return `data:image/svg+xml,%3Csvg width='${width}' height='${height}' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 528.15 53.64'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fefefe;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3ECoinbase_Wordmark_SubBrands_ALL%3C/title%3E%3Cpath class='cls-1' d='M164.45,15a15,15,0,0,0-11.74,5.4V0h-8.64V52.92h8.5V48a15,15,0,0,0,11.88,5.62c10.37,0,18.21-8.21,18.21-19.3S174.67,15,164.45,15Zm-1.3,30.67c-6.19,0-10.73-4.83-10.73-11.31S157,23,163.22,23s10.66,4.82,10.66,11.37S169.34,45.65,163.15,45.65Zm83.31-14.91-6.34-.93c-3-.43-5.18-1.44-5.18-3.82,0-2.59,2.8-3.89,6.62-3.89,4.18,0,6.84,1.8,7.42,4.76h8.35c-.94-7.49-6.7-11.88-15.55-11.88-9.15,0-15.2,4.68-15.2,11.3,0,6.34,4,10,12,11.16l6.33.94c3.1.43,4.83,1.65,4.83,4,0,2.95-3,4.17-7.2,4.17-5.12,0-8-2.09-8.43-5.25h-8.49c.79,7.27,6.48,12.38,16.84,12.38,9.44,0,15.7-4.32,15.7-11.74C258.12,35.28,253.58,31.82,246.46,30.74Zm-27.65-2.3c0-8.06-4.9-13.46-15.27-13.46-9.79,0-15.26,5-16.34,12.6h8.57c.43-3,2.73-5.4,7.63-5.4,4.39,0,6.55,1.94,6.55,4.32,0,3.09-4,3.88-8.85,4.39-6.63.72-14.84,3-14.84,11.66,0,6.7,5,11,12.89,11,6.19,0,10.08-2.59,12-6.7.28,3.67,3,6.05,6.84,6.05h5v-7.7h-4.25Zm-8.5,9.36c0,5-4.32,8.64-9.57,8.64-3.24,0-6-1.37-6-4.25,0-3.67,4.39-4.68,8.42-5.11s6-1.22,7.13-2.88ZM281.09,15c-11.09,0-19.23,8.35-19.23,19.36,0,11.6,8.72,19.3,19.37,19.3,9,0,16.06-5.33,17.86-12.89h-9c-1.3,3.31-4.47,5.19-8.71,5.19-5.55,0-9.72-3.46-10.66-9.51H299.3V33.12C299.3,22.46,291.53,15,281.09,15Zm-9.87,15.26c1.37-5.18,5.26-7.7,9.72-7.7,4.9,0,8.64,2.8,9.51,7.7ZM19.3,23a9.84,9.84,0,0,1,9.5,7h9.14c-1.65-8.93-9-15-18.57-15A19,19,0,0,0,0,34.34c0,11.09,8.28,19.3,19.37,19.3,9.36,0,16.85-6,18.5-15H28.8a9.75,9.75,0,0,1-9.43,7.06c-6.27,0-10.66-4.83-10.66-11.31S13,23,19.3,23Zm41.11-8A19,19,0,0,0,41,34.34c0,11.09,8.28,19.3,19.37,19.3A19,19,0,0,0,79.92,34.27C79.92,23.33,71.64,15,60.41,15Zm.07,30.67c-6.19,0-10.73-4.83-10.73-11.31S54.22,23,60.41,23s10.8,4.89,10.8,11.37S66.67,45.65,60.48,45.65ZM123.41,15c-5.62,0-9.29,2.3-11.45,5.54V15.7h-8.57V52.92H112V32.69C112,27,115.63,23,121,23c5,0,8.06,3.53,8.06,8.64V52.92h8.64V31C137.66,21.6,132.84,15,123.41,15ZM92,.36a5.36,5.36,0,0,0-5.55,5.47,5.55,5.55,0,0,0,11.09,0A5.35,5.35,0,0,0,92,.36Zm-9.72,23h5.4V52.92h8.64V15.7h-14Zm298.17-7.7L366.2,52.92H372L375.29,44H392l3.33,8.88h6L386.87,15.7ZM377,39.23l6.45-17.56h.1l6.56,17.56ZM362.66,15.7l-7.88,29h-.11l-8.14-29H341l-8,28.93h-.1l-8-28.87H319L329.82,53h5.45l8.19-29.24h.11L352,53h5.66L368.1,15.7Zm135.25,0v4.86h12.32V52.92h5.6V20.56h12.32V15.7ZM467.82,52.92h25.54V48.06H473.43v-12h18.35V31.35H473.43V20.56h19.93V15.7H467.82ZM443,15.7h-5.6V52.92h24.32V48.06H443Zm-30.45,0h-5.61V52.92h24.32V48.06H412.52Z'/%3E%3C/svg%3E`;\n case 'textWithLogoLight':\n height = (0.25 * width).toFixed(2);\n return `data:image/svg+xml,%3Csvg width='${width}' height='${height}' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 308.44 77.61'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fefefe;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M142.94,20.2l-7.88,29H135l-8.15-29h-5.55l-8,28.93h-.11l-8-28.87H99.27l10.84,37.27h5.44l8.2-29.24h.1l8.41,29.24h5.66L148.39,20.2Zm17.82,0L146.48,57.42h5.82l3.28-8.88h16.65l3.34,8.88h6L167.16,20.2Zm-3.44,23.52,6.45-17.55h.11l6.56,17.55ZM278.2,20.2v4.86h12.32V57.42h5.6V25.06h12.32V20.2ZM248.11,57.42h25.54V52.55H253.71V40.61h18.35V35.85H253.71V25.06h19.94V20.2H248.11ZM223.26,20.2h-5.61V57.42H242V52.55H223.26Zm-30.46,0h-5.6V57.42h24.32V52.55H192.8Zm-154,38A19.41,19.41,0,1,1,57.92,35.57H77.47a38.81,38.81,0,1,0,0,6.47H57.92A19.39,19.39,0,0,1,38.81,58.21Z'/%3E%3C/svg%3E`;\n default:\n height = width;\n return `data:image/svg+xml,%3Csvg width='${width}' height='${height}' viewBox='0 0 1024 1024' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Crect width='1024' height='1024' fill='%230052FF'/%3E %3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z' fill='white'/%3E %3C/svg%3E `;\n }\n};\n//# sourceMappingURL=wallet-logo.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2Fzc2V0cy93YWxsZXQtbG9nby5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVEQUF1RCxNQUFNLFlBQVksT0FBTztBQUNoRjtBQUNBO0FBQ0EsMEZBQTBGLE1BQU0sWUFBWSxPQUFPLDZFQUE2RSwyQkFBMkIsMkJBQTJCO0FBQ3RQO0FBQ0E7QUFDQSx1REFBdUQsTUFBTSxZQUFZLE9BQU8sK0dBQStHO0FBQy9MO0FBQ0E7QUFDQSx1REFBdUQsTUFBTSxZQUFZLE9BQU8sK0dBQStHO0FBQy9MO0FBQ0E7QUFDQSx1REFBdUQsTUFBTSxZQUFZLE9BQU8sK0dBQStHO0FBQy9MO0FBQ0E7QUFDQSx1REFBdUQsTUFBTSxZQUFZLE9BQU8sK0dBQStHO0FBQy9MO0FBQ0E7QUFDQSx1REFBdUQsTUFBTSxZQUFZLE9BQU87QUFDaEY7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvYXNzZXRzL3dhbGxldC1sb2dvLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCB3YWxsZXRMb2dvID0gKHR5cGUsIHdpZHRoKSA9PiB7XG4gICAgbGV0IGhlaWdodDtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgY2FzZSAnc3RhbmRhcmQnOlxuICAgICAgICAgICAgaGVpZ2h0ID0gd2lkdGg7XG4gICAgICAgICAgICByZXR1cm4gYGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JyR7d2lkdGh9JyBoZWlnaHQ9JyR7aGVpZ2h0fScgdmlld0JveD0nMCAwIDEwMjQgMTAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSAlM0NyZWN0IHdpZHRoPScxMDI0JyBoZWlnaHQ9JzEwMjQnIGZpbGw9JyUyMzAwNTJGRicvJTNFICUzQ3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xNTIgNTEyQzE1MiA3MTAuODIzIDMxMy4xNzcgODcyIDUxMiA4NzJDNzEwLjgyMyA4NzIgODcyIDcxMC44MjMgODcyIDUxMkM4NzIgMzEzLjE3NyA3MTAuODIzIDE1MiA1MTIgMTUyQzMxMy4xNzcgMTUyIDE1MiAzMTMuMTc3IDE1MiA1MTJaTTQyMCAzOTZDNDA2Ljc0NSAzOTYgMzk2IDQwNi43NDUgMzk2IDQyMFY2MDRDMzk2IDYxNy4yNTUgNDA2Ljc0NSA2MjggNDIwIDYyOEg2MDRDNjE3LjI1NSA2MjggNjI4IDYxNy4yNTUgNjI4IDYwNFY0MjBDNjI4IDQwNi43NDUgNjE3LjI1NSAzOTYgNjA0IDM5Nkg0MjBaJyBmaWxsPSd3aGl0ZScvJTNFICUzQy9zdmclM0UgYDtcbiAgICAgICAgY2FzZSAnY2lyY2xlJzpcbiAgICAgICAgICAgIGhlaWdodCA9IHdpZHRoO1xuICAgICAgICAgICAgcmV0dXJuIGBkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JyR7d2lkdGh9JyBoZWlnaHQ9JyR7aGVpZ2h0fScgdmlld0JveD0nMCAwIDk5OS44MSA5OTkuODEnJTNFJTNDZGVmcyUzRSUzQ3N0eWxlJTNFLmNscy0xJTdCZmlsbDolMjMwMDUyZmU7JTdELmNscy0yJTdCZmlsbDolMjNmZWZlZmU7JTdELmNscy0zJTdCZmlsbDolMjMwMTUyZmU7JTdEJTNDL3N0eWxlJTNFJTNDL2RlZnMlM0UlM0NwYXRoIGNsYXNzPSdjbHMtMScgZD0nTTY1NS0xMTUuOWg1NmMuODMsMS41OSwyLjM2Ljg4LDMuNTYsMWE0NzgsNDc4LDAsMCwxLDc1LjA2LDEwLjQyQzg5MS40LTgxLjc2LDk3OC4zMy0zMi41OCwxMDQ5LjE5LDQ0cTExNi43LDEyNiwxMzEuOTQsMjk3LjYxYy4zOCw0LjE0LS4zNCw4LjUzLDEuNzgsMTIuNDV2NTljLTEuNTguODQtLjkxLDIuMzUtMSwzLjU2YTQ4Mi4wNSw0ODIuMDUsMCwwLDEtMTAuMzgsNzQuMDVjLTI0LDEwNi43Mi03Ni42NCwxOTYuNzYtMTU4LjgzLDI2OC45M3MtMTc4LjE4LDExMi44Mi0yODcuMiwxMjIuNmMtNC44My40My05Ljg2LS4yNS0xNC41MSwxLjc3SDY1NGMtMS0xLjY4LTIuNjktLjkxLTQuMDYtMWE0OTYuODksNDk2Ljg5LDAsMCwxLTEwNS45LTE4LjU5Yy05My41NC0yNy40Mi0xNzIuNzgtNzcuNTktMjM2LjkxLTE1MC45NFExOTkuMzQsNTkwLjEsMTg0Ljg3LDQyNi41OGMtLjQ3LTUuMTkuMjUtMTAuNTYtMS43Ny0xNS41OVYzNTVjMS42OC0xLC45MS0yLjcsMS00LjA2YTQ5OC4xMiw0OTguMTIsMCwwLDEsMTguNTgtMTA1LjljMjYtODguNzUsNzIuNjQtMTY0LjksMTQwLjYtMjI3LjU3cTEyNi0xMTYuMjcsMjk3LjIxLTEzMS42MUM2NDUuMzItMTE0LjU3LDY1MC4zNS0xMTMuODgsNjU1LTExNS45Wm0zNzcuOTIsNTAwYzAtMTkyLjQ0LTE1Ni4zMS0zNDkuNDktMzQ3LjU2LTM1MC4xNS0xOTQuMTMtLjY4LTM1MC45NCwxNTUuMTMtMzUyLjI5LDM0Ny40Mi0xLjM3LDE5NC41NSwxNTUuNTEsMzUyLjEsMzQ4LjU2LDM1Mi40N0M4NzYuMTUsNzM0LjIzLDEwMzIuOTMsNTc3Ljg0LDEwMzIuOTMsMzg0LjExWicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoLTE4My4xIDExNS45KScvJTNFJTNDcGF0aCBjbGFzcz0nY2xzLTInIGQ9J00xMDMyLjkzLDM4NC4xMWMwLDE5My43My0xNTYuNzgsMzUwLjEyLTM1MS4yOSwzNDkuNzQtMTkzLS4zNy0zNDkuOTMtMTU3LjkyLTM0OC41Ni0zNTIuNDdDMzM0LjQzLDE4OS4wOSw0OTEuMjQsMzMuMjgsNjg1LjM3LDM0LDg3Ni42MiwzNC42MiwxMDMyLjk0LDE5MS42NywxMDMyLjkzLDM4NC4xMVpNNjgzLDQ5Ni44MXE0My43NCwwLDg3LjQ4LDBjMTUuNTUsMCwyNS4zMi05LjcyLDI1LjMzLTI1LjIxcTAtODcuNDgsMC0xNzVjMC0xNS44My05LjY4LTI1LjQ2LTI1LjU5LTI1LjQ2SDU5NS43N2MtMTUuODgsMC0yNS41Nyw5LjY0LTI1LjU4LDI1LjQ2cTAsODcuMjMsMCwxNzQuNDVjMCwxNi4xOCw5LjU5LDI1LjcsMjUuODQsMjUuNzFaJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMTgzLjEgMTE1LjkpJy8lM0UlM0NwYXRoIGNsYXNzPSdjbHMtMycgZD0nTTY4Myw0OTYuODFINTk2Yy0xNi4yNSwwLTI1Ljg0LTkuNTMtMjUuODQtMjUuNzFxMC04Ny4yMywwLTE3NC40NWMwLTE1LjgyLDkuNy0yNS40NiwyNS41OC0yNS40Nkg3NzAuMjJjMTUuOTEsMCwyNS41OSw5LjYzLDI1LjU5LDI1LjQ2cTAsODcuNDcsMCwxNzVjMCwxNS40OS05Ljc4LDI1LjItMjUuMzMsMjUuMjFRNzI2Ljc0LDQ5Ni44NCw2ODMsNDk2LjgxWicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoLTE4My4xIDExNS45KScvJTNFJTNDL3N2ZyUzRWA7XG4gICAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICAgICAgaGVpZ2h0ID0gKDAuMSAqIHdpZHRoKS50b0ZpeGVkKDIpO1xuICAgICAgICAgICAgcmV0dXJuIGBkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScke3dpZHRofScgaGVpZ2h0PScke2hlaWdodH0nIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDUyOC4xNSA1My42NCclM0UlM0NkZWZzJTNFJTNDc3R5bGUlM0UuY2xzLTElN0JmaWxsOiUyMzAwNTJmZjslN0QlM0Mvc3R5bGUlM0UlM0MvZGVmcyUzRSUzQ3RpdGxlJTNFQ29pbmJhc2VfV29yZG1hcmtfU3ViQnJhbmRzX0FMTCUzQy90aXRsZSUzRSUzQ3BhdGggY2xhc3M9J2Nscy0xJyBkPSdNMTY0LjQ1LDE1YTE1LDE1LDAsMCwwLTExLjc0LDUuNFYwaC04LjY0VjUyLjkyaDguNVY0OGExNSwxNSwwLDAsMCwxMS44OCw1LjYyYzEwLjM3LDAsMTguMjEtOC4yMSwxOC4yMS0xOS4zUzE3NC42NywxNSwxNjQuNDUsMTVabS0xLjMsMzAuNjdjLTYuMTksMC0xMC43My00LjgzLTEwLjczLTExLjMxUzE1NywyMywxNjMuMjIsMjNzMTAuNjYsNC44MiwxMC42NiwxMS4zN1MxNjkuMzQsNDUuNjUsMTYzLjE1LDQ1LjY1Wm04My4zMS0xNC45MS02LjM0LS45M2MtMy0uNDMtNS4xOC0xLjQ0LTUuMTgtMy44MiwwLTIuNTksMi44LTMuODksNi42Mi0zLjg5LDQuMTgsMCw2Ljg0LDEuOCw3LjQyLDQuNzZoOC4zNWMtLjk0LTcuNDktNi43LTExLjg4LTE1LjU1LTExLjg4LTkuMTUsMC0xNS4yLDQuNjgtMTUuMiwxMS4zLDAsNi4zNCw0LDEwLDEyLDExLjE2bDYuMzMuOTRjMy4xLjQzLDQuODMsMS42NSw0LjgzLDQsMCwyLjk1LTMsNC4xNy03LjIsNC4xNy01LjEyLDAtOC0yLjA5LTguNDMtNS4yNWgtOC40OWMuNzksNy4yNyw2LjQ4LDEyLjM4LDE2Ljg0LDEyLjM4LDkuNDQsMCwxNS43LTQuMzIsMTUuNy0xMS43NEMyNTguMTIsMzUuMjgsMjUzLjU4LDMxLjgyLDI0Ni40NiwzMC43NFptLTI3LjY1LTIuM2MwLTguMDYtNC45LTEzLjQ2LTE1LjI3LTEzLjQ2LTkuNzksMC0xNS4yNiw1LTE2LjM0LDEyLjZoOC41N2MuNDMtMywyLjczLTUuNCw3LjYzLTUuNCw0LjM5LDAsNi41NSwxLjk0LDYuNTUsNC4zMiwwLDMuMDktNCwzLjg4LTguODUsNC4zOS02LjYzLjcyLTE0Ljg0LDMtMTQuODQsMTEuNjYsMCw2LjcsNSwxMSwxMi44OSwxMSw2LjE5LDAsMTAuMDgtMi41OSwxMi02LjcuMjgsMy42NywzLDYuMDUsNi44NCw2LjA1aDV2LTcuN2gtNC4yNVptLTguNSw5LjM2YzAsNS00LjMyLDguNjQtOS41Nyw4LjY0LTMuMjQsMC02LTEuMzctNi00LjI1LDAtMy42Nyw0LjM5LTQuNjgsOC40Mi01LjExczYtMS4yMiw3LjEzLTIuODhaTTI4MS4wOSwxNWMtMTEuMDksMC0xOS4yMyw4LjM1LTE5LjIzLDE5LjM2LDAsMTEuNiw4LjcyLDE5LjMsMTkuMzcsMTkuMyw5LDAsMTYuMDYtNS4zMywxNy44Ni0xMi44OWgtOWMtMS4zLDMuMzEtNC40Nyw1LjE5LTguNzEsNS4xOS01LjU1LDAtOS43Mi0zLjQ2LTEwLjY2LTkuNTFIMjk5LjNWMzMuMTJDMjk5LjMsMjIuNDYsMjkxLjUzLDE1LDI4MS4wOSwxNVptLTkuODcsMTUuMjZjMS4zNy01LjE4LDUuMjYtNy43LDkuNzItNy43LDQuOSwwLDguNjQsMi44LDkuNTEsNy43Wk0xOS4zLDIzYTkuODQsOS44NCwwLDAsMSw5LjUsN2g5LjE0Yy0xLjY1LTguOTMtOS0xNS0xOC41Ny0xNUExOSwxOSwwLDAsMCwwLDM0LjM0YzAsMTEuMDksOC4yOCwxOS4zLDE5LjM3LDE5LjMsOS4zNiwwLDE2Ljg1LTYsMTguNS0xNUgyOC44YTkuNzUsOS43NSwwLDAsMS05LjQzLDcuMDZjLTYuMjcsMC0xMC42Ni00LjgzLTEwLjY2LTExLjMxUzEzLDIzLDE5LjMsMjNabTQxLjExLThBMTksMTksMCwwLDAsNDEsMzQuMzRjMCwxMS4wOSw4LjI4LDE5LjMsMTkuMzcsMTkuM0ExOSwxOSwwLDAsMCw3OS45MiwzNC4yN0M3OS45MiwyMy4zMyw3MS42NCwxNSw2MC40MSwxNVptLjA3LDMwLjY3Yy02LjE5LDAtMTAuNzMtNC44My0xMC43My0xMS4zMVM1NC4yMiwyMyw2MC40MSwyM3MxMC44LDQuODksMTAuOCwxMS4zN1M2Ni42Nyw0NS42NSw2MC40OCw0NS42NVpNMTIzLjQxLDE1Yy01LjYyLDAtOS4yOSwyLjMtMTEuNDUsNS41NFYxNS43aC04LjU3VjUyLjkySDExMlYzMi42OUMxMTIsMjcsMTE1LjYzLDIzLDEyMSwyM2M1LDAsOC4wNiwzLjUzLDguMDYsOC42NFY1Mi45Mmg4LjY0VjMxQzEzNy42NiwyMS42LDEzMi44NCwxNSwxMjMuNDEsMTVaTTkyLC4zNmE1LjM2LDUuMzYsMCwwLDAtNS41NSw1LjQ3LDUuNTUsNS41NSwwLDAsMCwxMS4wOSwwQTUuMzUsNS4zNSwwLDAsMCw5MiwuMzZabS05LjcyLDIzaDUuNFY1Mi45Mmg4LjY0VjE1LjdoLTE0Wm0yOTguMTctNy43TDM2Ni4yLDUyLjkySDM3MkwzNzUuMjksNDRIMzkybDMuMzMsOC44OGg2TDM4Ni44NywxNS43Wk0zNzcsMzkuMjNsNi40NS0xNy41NmguMWw2LjU2LDE3LjU2Wk0zNjIuNjYsMTUuN2wtNy44OCwyOWgtLjExbC04LjE0LTI5SDM0MWwtOCwyOC45M2gtLjFsLTgtMjguODdIMzE5TDMyOS44Miw1M2g1LjQ1bDguMTktMjkuMjRoLjExTDM1Miw1M2g1LjY2TDM2OC4xLDE1LjdabTEzNS4yNSwwdjQuODZoMTIuMzJWNTIuOTJoNS42VjIwLjU2aDEyLjMyVjE1LjdaTTQ2Ny44Miw1Mi45MmgyNS41NFY0OC4wNkg0NzMuNDN2LTEyaDE4LjM1VjMxLjM1SDQ3My40M1YyMC41NmgxOS45M1YxNS43SDQ2Ny44MlpNNDQzLDE1LjdoLTUuNlY1Mi45MmgyNC4zMlY0OC4wNkg0NDNabS0zMC40NSwwaC01LjYxVjUyLjkyaDI0LjMyVjQ4LjA2SDQxMi41MlonLyUzRSUzQy9zdmclM0VgO1xuICAgICAgICBjYXNlICd0ZXh0V2l0aExvZ28nOlxuICAgICAgICAgICAgaGVpZ2h0ID0gKDAuMjUgKiB3aWR0aCkudG9GaXhlZCgyKTtcbiAgICAgICAgICAgIHJldHVybiBgZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nJHt3aWR0aH0nIGhlaWdodD0nJHtoZWlnaHR9JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMDguNDQgNzcuNjEnJTNFJTNDZGVmcyUzRSUzQ3N0eWxlJTNFLmNscy0xJTdCZmlsbDolMjMwMDUyZmY7JTdEJTNDL3N0eWxlJTNFJTNDL2RlZnMlM0UlM0NwYXRoIGNsYXNzPSdjbHMtMScgZD0nTTE0Mi45NCwyMC4ybC03Ljg4LDI5SDEzNWwtOC4xNS0yOWgtNS41NWwtOCwyOC45M2gtLjExbC04LTI4Ljg3SDk5LjI3bDEwLjg0LDM3LjI3aDUuNDRsOC4yLTI5LjI0aC4xbDguNDEsMjkuMjRoNS42NkwxNDguMzksMjAuMlptMTcuODIsMEwxNDYuNDgsNTcuNDJoNS44MmwzLjI4LTguODhoMTYuNjVsMy4zNCw4Ljg4aDZMMTY3LjE2LDIwLjJabS0zLjQ0LDIzLjUyLDYuNDUtMTcuNTVoLjExbDYuNTYsMTcuNTVaTTI3OC4yLDIwLjJ2NC44NmgxMi4zMlY1Ny40Mmg1LjZWMjUuMDZoMTIuMzJWMjAuMlpNMjQ4LjExLDU3LjQyaDI1LjU0VjUyLjU1SDI1My43MVY0MC42MWgxOC4zNVYzNS44NUgyNTMuNzFWMjUuMDZoMTkuOTRWMjAuMkgyNDguMTFaTTIyMy4yNiwyMC4yaC01LjYxVjU3LjQySDI0MlY1Mi41NUgyMjMuMjZabS0zMC40NiwwaC01LjZWNTcuNDJoMjQuMzJWNTIuNTVIMTkyLjhabS0xNTQsMzhBMTkuNDEsMTkuNDEsMCwxLDEsNTcuOTIsMzUuNTdINzcuNDdhMzguODEsMzguODEsMCwxLDAsMCw2LjQ3SDU3LjkyQTE5LjM5LDE5LjM5LDAsMCwxLDM4LjgxLDU4LjIxWicvJTNFJTNDL3N2ZyUzRWA7XG4gICAgICAgIGNhc2UgJ3RleHRMaWdodCc6XG4gICAgICAgICAgICBoZWlnaHQgPSAoMC4xICogd2lkdGgpLnRvRml4ZWQoMik7XG4gICAgICAgICAgICByZXR1cm4gYGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JyR7d2lkdGh9JyBoZWlnaHQ9JyR7aGVpZ2h0fScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNTI4LjE1IDUzLjY0JyUzRSUzQ2RlZnMlM0UlM0NzdHlsZSUzRS5jbHMtMSU3QmZpbGw6JTIzZmVmZWZlOyU3RCUzQy9zdHlsZSUzRSUzQy9kZWZzJTNFJTNDdGl0bGUlM0VDb2luYmFzZV9Xb3JkbWFya19TdWJCcmFuZHNfQUxMJTNDL3RpdGxlJTNFJTNDcGF0aCBjbGFzcz0nY2xzLTEnIGQ9J00xNjQuNDUsMTVhMTUsMTUsMCwwLDAtMTEuNzQsNS40VjBoLTguNjRWNTIuOTJoOC41VjQ4YTE1LDE1LDAsMCwwLDExLjg4LDUuNjJjMTAuMzcsMCwxOC4yMS04LjIxLDE4LjIxLTE5LjNTMTc0LjY3LDE1LDE2NC40NSwxNVptLTEuMywzMC42N2MtNi4xOSwwLTEwLjczLTQuODMtMTAuNzMtMTEuMzFTMTU3LDIzLDE2My4yMiwyM3MxMC42Niw0LjgyLDEwLjY2LDExLjM3UzE2OS4zNCw0NS42NSwxNjMuMTUsNDUuNjVabTgzLjMxLTE0LjkxLTYuMzQtLjkzYy0zLS40My01LjE4LTEuNDQtNS4xOC0zLjgyLDAtMi41OSwyLjgtMy44OSw2LjYyLTMuODksNC4xOCwwLDYuODQsMS44LDcuNDIsNC43Nmg4LjM1Yy0uOTQtNy40OS02LjctMTEuODgtMTUuNTUtMTEuODgtOS4xNSwwLTE1LjIsNC42OC0xNS4yLDExLjMsMCw2LjM0LDQsMTAsMTIsMTEuMTZsNi4zMy45NGMzLjEuNDMsNC44MywxLjY1LDQuODMsNCwwLDIuOTUtMyw0LjE3LTcuMiw0LjE3LTUuMTIsMC04LTIuMDktOC40My01LjI1aC04LjQ5Yy43OSw3LjI3LDYuNDgsMTIuMzgsMTYuODQsMTIuMzgsOS40NCwwLDE1LjctNC4zMiwxNS43LTExLjc0QzI1OC4xMiwzNS4yOCwyNTMuNTgsMzEuODIsMjQ2LjQ2LDMwLjc0Wm0tMjcuNjUtMi4zYzAtOC4wNi00LjktMTMuNDYtMTUuMjctMTMuNDYtOS43OSwwLTE1LjI2LDUtMTYuMzQsMTIuNmg4LjU3Yy40My0zLDIuNzMtNS40LDcuNjMtNS40LDQuMzksMCw2LjU1LDEuOTQsNi41NSw0LjMyLDAsMy4wOS00LDMuODgtOC44NSw0LjM5LTYuNjMuNzItMTQuODQsMy0xNC44NCwxMS42NiwwLDYuNyw1LDExLDEyLjg5LDExLDYuMTksMCwxMC4wOC0yLjU5LDEyLTYuNy4yOCwzLjY3LDMsNi4wNSw2Ljg0LDYuMDVoNXYtNy43aC00LjI1Wm0tOC41LDkuMzZjMCw1LTQuMzIsOC42NC05LjU3LDguNjQtMy4yNCwwLTYtMS4zNy02LTQuMjUsMC0zLjY3LDQuMzktNC42OCw4LjQyLTUuMTFzNi0xLjIyLDcuMTMtMi44OFpNMjgxLjA5LDE1Yy0xMS4wOSwwLTE5LjIzLDguMzUtMTkuMjMsMTkuMzYsMCwxMS42LDguNzIsMTkuMywxOS4zNywxOS4zLDksMCwxNi4wNi01LjMzLDE3Ljg2LTEyLjg5aC05Yy0xLjMsMy4zMS00LjQ3LDUuMTktOC43MSw1LjE5LTUuNTUsMC05LjcyLTMuNDYtMTAuNjYtOS41MUgyOTkuM1YzMy4xMkMyOTkuMywyMi40NiwyOTEuNTMsMTUsMjgxLjA5LDE1Wm0tOS44NywxNS4yNmMxLjM3LTUuMTgsNS4yNi03LjcsOS43Mi03LjcsNC45LDAsOC42NCwyLjgsOS41MSw3LjdaTTE5LjMsMjNhOS44NCw5Ljg0LDAsMCwxLDkuNSw3aDkuMTRjLTEuNjUtOC45My05LTE1LTE4LjU3LTE1QTE5LDE5LDAsMCwwLDAsMzQuMzRjMCwxMS4wOSw4LjI4LDE5LjMsMTkuMzcsMTkuMyw5LjM2LDAsMTYuODUtNiwxOC41LTE1SDI4LjhhOS43NSw5Ljc1LDAsMCwxLTkuNDMsNy4wNmMtNi4yNywwLTEwLjY2LTQuODMtMTAuNjYtMTEuMzFTMTMsMjMsMTkuMywyM1ptNDEuMTEtOEExOSwxOSwwLDAsMCw0MSwzNC4zNGMwLDExLjA5LDguMjgsMTkuMywxOS4zNywxOS4zQTE5LDE5LDAsMCwwLDc5LjkyLDM0LjI3Qzc5LjkyLDIzLjMzLDcxLjY0LDE1LDYwLjQxLDE1Wm0uMDcsMzAuNjdjLTYuMTksMC0xMC43My00LjgzLTEwLjczLTExLjMxUzU0LjIyLDIzLDYwLjQxLDIzczEwLjgsNC44OSwxMC44LDExLjM3UzY2LjY3LDQ1LjY1LDYwLjQ4LDQ1LjY1Wk0xMjMuNDEsMTVjLTUuNjIsMC05LjI5LDIuMy0xMS40NSw1LjU0VjE1LjdoLTguNTdWNTIuOTJIMTEyVjMyLjY5QzExMiwyNywxMTUuNjMsMjMsMTIxLDIzYzUsMCw4LjA2LDMuNTMsOC4wNiw4LjY0VjUyLjkyaDguNjRWMzFDMTM3LjY2LDIxLjYsMTMyLjg0LDE1LDEyMy40MSwxNVpNOTIsLjM2YTUuMzYsNS4zNiwwLDAsMC01LjU1LDUuNDcsNS41NSw1LjU1LDAsMCwwLDExLjA5LDBBNS4zNSw1LjM1LDAsMCwwLDkyLC4zNlptLTkuNzIsMjNoNS40VjUyLjkyaDguNjRWMTUuN2gtMTRabTI5OC4xNy03LjdMMzY2LjIsNTIuOTJIMzcyTDM3NS4yOSw0NEgzOTJsMy4zMyw4Ljg4aDZMMzg2Ljg3LDE1LjdaTTM3NywzOS4yM2w2LjQ1LTE3LjU2aC4xbDYuNTYsMTcuNTZaTTM2Mi42NiwxNS43bC03Ljg4LDI5aC0uMTFsLTguMTQtMjlIMzQxbC04LDI4LjkzaC0uMWwtOC0yOC44N0gzMTlMMzI5LjgyLDUzaDUuNDVsOC4xOS0yOS4yNGguMTFMMzUyLDUzaDUuNjZMMzY4LjEsMTUuN1ptMTM1LjI1LDB2NC44NmgxMi4zMlY1Mi45Mmg1LjZWMjAuNTZoMTIuMzJWMTUuN1pNNDY3LjgyLDUyLjkyaDI1LjU0VjQ4LjA2SDQ3My40M3YtMTJoMTguMzVWMzEuMzVINDczLjQzVjIwLjU2aDE5LjkzVjE1LjdINDY3LjgyWk00NDMsMTUuN2gtNS42VjUyLjkyaDI0LjMyVjQ4LjA2SDQ0M1ptLTMwLjQ1LDBoLTUuNjFWNTIuOTJoMjQuMzJWNDguMDZINDEyLjUyWicvJTNFJTNDL3N2ZyUzRWA7XG4gICAgICAgIGNhc2UgJ3RleHRXaXRoTG9nb0xpZ2h0JzpcbiAgICAgICAgICAgIGhlaWdodCA9ICgwLjI1ICogd2lkdGgpLnRvRml4ZWQoMik7XG4gICAgICAgICAgICByZXR1cm4gYGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JyR7d2lkdGh9JyBoZWlnaHQ9JyR7aGVpZ2h0fScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzA4LjQ0IDc3LjYxJyUzRSUzQ2RlZnMlM0UlM0NzdHlsZSUzRS5jbHMtMSU3QmZpbGw6JTIzZmVmZWZlOyU3RCUzQy9zdHlsZSUzRSUzQy9kZWZzJTNFJTNDcGF0aCBjbGFzcz0nY2xzLTEnIGQ9J00xNDIuOTQsMjAuMmwtNy44OCwyOUgxMzVsLTguMTUtMjloLTUuNTVsLTgsMjguOTNoLS4xMWwtOC0yOC44N0g5OS4yN2wxMC44NCwzNy4yN2g1LjQ0bDguMi0yOS4yNGguMWw4LjQxLDI5LjI0aDUuNjZMMTQ4LjM5LDIwLjJabTE3LjgyLDBMMTQ2LjQ4LDU3LjQyaDUuODJsMy4yOC04Ljg4aDE2LjY1bDMuMzQsOC44OGg2TDE2Ny4xNiwyMC4yWm0tMy40NCwyMy41Miw2LjQ1LTE3LjU1aC4xMWw2LjU2LDE3LjU1Wk0yNzguMiwyMC4ydjQuODZoMTIuMzJWNTcuNDJoNS42VjI1LjA2aDEyLjMyVjIwLjJaTTI0OC4xMSw1Ny40MmgyNS41NFY1Mi41NUgyNTMuNzFWNDAuNjFoMTguMzVWMzUuODVIMjUzLjcxVjI1LjA2aDE5Ljk0VjIwLjJIMjQ4LjExWk0yMjMuMjYsMjAuMmgtNS42MVY1Ny40MkgyNDJWNTIuNTVIMjIzLjI2Wm0tMzAuNDYsMGgtNS42VjU3LjQyaDI0LjMyVjUyLjU1SDE5Mi44Wm0tMTU0LDM4QTE5LjQxLDE5LjQxLDAsMSwxLDU3LjkyLDM1LjU3SDc3LjQ3YTM4LjgxLDM4LjgxLDAsMSwwLDAsNi40N0g1Ny45MkExOS4zOSwxOS4zOSwwLDAsMSwzOC44MSw1OC4yMVonLyUzRSUzQy9zdmclM0VgO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgaGVpZ2h0ID0gd2lkdGg7XG4gICAgICAgICAgICByZXR1cm4gYGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JyR7d2lkdGh9JyBoZWlnaHQ9JyR7aGVpZ2h0fScgdmlld0JveD0nMCAwIDEwMjQgMTAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSAlM0NyZWN0IHdpZHRoPScxMDI0JyBoZWlnaHQ9JzEwMjQnIGZpbGw9JyUyMzAwNTJGRicvJTNFICUzQ3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xNTIgNTEyQzE1MiA3MTAuODIzIDMxMy4xNzcgODcyIDUxMiA4NzJDNzEwLjgyMyA4NzIgODcyIDcxMC44MjMgODcyIDUxMkM4NzIgMzEzLjE3NyA3MTAuODIzIDE1MiA1MTIgMTUyQzMxMy4xNzcgMTUyIDE1MiAzMTMuMTc3IDE1MiA1MTJaTTQyMCAzOTZDNDA2Ljc0NSAzOTYgMzk2IDQwNi43NDUgMzk2IDQyMFY2MDRDMzk2IDYxNy4yNTUgNDA2Ljc0NSA2MjggNDIwIDYyOEg2MDRDNjE3LjI1NSA2MjggNjI4IDYxNy4yNTUgNjI4IDYwNFY0MjBDNjI4IDQwNi43NDUgNjE3LjI1NSAzOTYgNjA0IDM5Nkg0MjBaJyBmaWxsPSd3aGl0ZScvJTNFICUzQy9zdmclM0UgYDtcbiAgICB9XG59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9d2FsbGV0LWxvZ28uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/assets/wallet-logo.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/communicator/Communicator.js": /*!**********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/communicator/Communicator.js ***! \**********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Communicator: () => (/* binding */ Communicator)\n/* harmony export */ });\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/constants.js\");\n/* harmony import */ var _error_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _telemetry_events_communicator_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../telemetry/events/communicator.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/communicator.js\");\n/* harmony import */ var _util_web_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../util/web.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/web.js\");\n/* harmony import */ var _sdk_info_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../sdk-info.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js\");\n\n\n\n\n\n/**\n * Communicates with a popup window for Coinbase keys.coinbase.com (or another url)\n * to send and receive messages.\n *\n * This class is responsible for opening a popup window, posting messages to it,\n * and listening for responses.\n *\n * It also handles cleanup of event listeners and the popup window itself when necessary.\n */\nclass Communicator {\n constructor({ url = _constants_js__WEBPACK_IMPORTED_MODULE_0__.CB_KEYS_URL, metadata, preference }) {\n this.popup = null;\n this.listeners = new Map();\n /**\n * Posts a message to the popup window\n */\n this.postMessage = async (message) => {\n const popup = await this.waitForPopupLoaded();\n popup.postMessage(message, this.url.origin);\n };\n /**\n * Posts a request to the popup window and waits for a response\n */\n this.postRequestAndWaitForResponse = async (request) => {\n const responsePromise = this.onMessage(({ requestId }) => requestId === request.id);\n this.postMessage(request);\n return await responsePromise;\n };\n /**\n * Listens for messages from the popup window that match a given predicate.\n */\n this.onMessage = async (predicate) => {\n return new Promise((resolve, reject) => {\n const listener = (event) => {\n if (event.origin !== this.url.origin)\n return; // origin validation\n const message = event.data;\n if (predicate(message)) {\n resolve(message);\n window.removeEventListener('message', listener);\n this.listeners.delete(listener);\n }\n };\n window.addEventListener('message', listener);\n this.listeners.set(listener, { reject });\n });\n };\n /**\n * Closes the popup, rejects all requests and clears the listeners\n */\n this.disconnect = () => {\n // Note: keys popup handles closing itself. this is a fallback.\n (0,_util_web_js__WEBPACK_IMPORTED_MODULE_1__.closePopup)(this.popup);\n this.popup = null;\n this.listeners.forEach(({ reject }, listener) => {\n reject(_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.provider.userRejectedRequest('Request rejected'));\n window.removeEventListener('message', listener);\n });\n this.listeners.clear();\n };\n /**\n * Waits for the popup window to fully load and then sends a version message.\n */\n this.waitForPopupLoaded = async () => {\n if (this.popup && !this.popup.closed) {\n // In case the user un-focused the popup between requests, focus it again\n this.popup.focus();\n return this.popup;\n }\n (0,_telemetry_events_communicator_js__WEBPACK_IMPORTED_MODULE_3__.logPopupSetupStarted)();\n this.popup = await (0,_util_web_js__WEBPACK_IMPORTED_MODULE_1__.openPopup)(this.url);\n this.onMessage(({ event }) => event === 'PopupUnload')\n .then(() => {\n this.disconnect();\n (0,_telemetry_events_communicator_js__WEBPACK_IMPORTED_MODULE_3__.logPopupUnloadReceived)();\n })\n .catch(() => { });\n return this.onMessage(({ event }) => event === 'PopupLoaded')\n .then((message) => {\n this.postMessage({\n requestId: message.id,\n data: {\n version: _sdk_info_js__WEBPACK_IMPORTED_MODULE_4__.VERSION,\n metadata: this.metadata,\n preference: this.preference,\n location: window.location.toString(),\n },\n });\n })\n .then(() => {\n if (!this.popup)\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.rpc.internal();\n (0,_telemetry_events_communicator_js__WEBPACK_IMPORTED_MODULE_3__.logPopupSetupCompleted)();\n return this.popup;\n });\n };\n this.url = new URL(url);\n this.metadata = metadata;\n this.preference = preference;\n }\n}\n//# sourceMappingURL=Communicator.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvY29tbXVuaWNhdG9yL0NvbW11bmljYXRvci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBOEM7QUFDTTtBQUN3RTtBQUNsRTtBQUNkO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1Asa0JBQWtCLE1BQU0sc0RBQVcsd0JBQXdCO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0RBQXNELFdBQVc7QUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtDQUErQyxRQUFRO0FBQ3ZELGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLHdEQUFVO0FBQ3RCO0FBQ0Esc0NBQXNDLFFBQVE7QUFDOUMsdUJBQXVCLDREQUFjO0FBQ3JDO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLHVGQUFvQjtBQUNoQywrQkFBK0IsdURBQVM7QUFDeEMsOEJBQThCLE9BQU87QUFDckM7QUFDQTtBQUNBLGdCQUFnQix5RkFBc0I7QUFDdEMsYUFBYTtBQUNiLGdDQUFnQztBQUNoQyxxQ0FBcUMsT0FBTztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxpREFBTztBQUN4QztBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsaUJBQWlCO0FBQ2pCLGFBQWE7QUFDYjtBQUNBO0FBQ0EsMEJBQTBCLDREQUFjO0FBQ3hDLGdCQUFnQix5RkFBc0I7QUFDdEM7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9jb3JlL2NvbW11bmljYXRvci9Db21tdW5pY2F0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ0JfS0VZU19VUkwgfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgc3RhbmRhcmRFcnJvcnMgfSBmcm9tICcuLi9lcnJvci9lcnJvcnMuanMnO1xuaW1wb3J0IHsgbG9nUG9wdXBTZXR1cENvbXBsZXRlZCwgbG9nUG9wdXBTZXR1cFN0YXJ0ZWQsIGxvZ1BvcHVwVW5sb2FkUmVjZWl2ZWQsIH0gZnJvbSAnLi4vdGVsZW1ldHJ5L2V2ZW50cy9jb21tdW5pY2F0b3IuanMnO1xuaW1wb3J0IHsgY2xvc2VQb3B1cCwgb3BlblBvcHVwIH0gZnJvbSAnLi4vLi4vdXRpbC93ZWIuanMnO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gJy4uLy4uL3Nkay1pbmZvLmpzJztcbi8qKlxuICogQ29tbXVuaWNhdGVzIHdpdGggYSBwb3B1cCB3aW5kb3cgZm9yIENvaW5iYXNlIGtleXMuY29pbmJhc2UuY29tIChvciBhbm90aGVyIHVybClcbiAqIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMuXG4gKlxuICogVGhpcyBjbGFzcyBpcyByZXNwb25zaWJsZSBmb3Igb3BlbmluZyBhIHBvcHVwIHdpbmRvdywgcG9zdGluZyBtZXNzYWdlcyB0byBpdCxcbiAqIGFuZCBsaXN0ZW5pbmcgZm9yIHJlc3BvbnNlcy5cbiAqXG4gKiBJdCBhbHNvIGhhbmRsZXMgY2xlYW51cCBvZiBldmVudCBsaXN0ZW5lcnMgYW5kIHRoZSBwb3B1cCB3aW5kb3cgaXRzZWxmIHdoZW4gbmVjZXNzYXJ5LlxuICovXG5leHBvcnQgY2xhc3MgQ29tbXVuaWNhdG9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHVybCA9IENCX0tFWVNfVVJMLCBtZXRhZGF0YSwgcHJlZmVyZW5jZSB9KSB7XG4gICAgICAgIHRoaXMucG9wdXAgPSBudWxsO1xuICAgICAgICB0aGlzLmxpc3RlbmVycyA9IG5ldyBNYXAoKTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFBvc3RzIGEgbWVzc2FnZSB0byB0aGUgcG9wdXAgd2luZG93XG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLnBvc3RNZXNzYWdlID0gYXN5bmMgKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBvcHVwID0gYXdhaXQgdGhpcy53YWl0Rm9yUG9wdXBMb2FkZWQoKTtcbiAgICAgICAgICAgIHBvcHVwLnBvc3RNZXNzYWdlKG1lc3NhZ2UsIHRoaXMudXJsLm9yaWdpbik7XG4gICAgICAgIH07XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBQb3N0cyBhIHJlcXVlc3QgdG8gdGhlIHBvcHVwIHdpbmRvdyBhbmQgd2FpdHMgZm9yIGEgcmVzcG9uc2VcbiAgICAgICAgICovXG4gICAgICAgIHRoaXMucG9zdFJlcXVlc3RBbmRXYWl0Rm9yUmVzcG9uc2UgPSBhc3luYyAocmVxdWVzdCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2VQcm9taXNlID0gdGhpcy5vbk1lc3NhZ2UoKHsgcmVxdWVzdElkIH0pID0+IHJlcXVlc3RJZCA9PT0gcmVxdWVzdC5pZCk7XG4gICAgICAgICAgICB0aGlzLnBvc3RNZXNzYWdlKHJlcXVlc3QpO1xuICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlUHJvbWlzZTtcbiAgICAgICAgfTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIExpc3RlbnMgZm9yIG1lc3NhZ2VzIGZyb20gdGhlIHBvcHVwIHdpbmRvdyB0aGF0IG1hdGNoIGEgZ2l2ZW4gcHJlZGljYXRlLlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5vbk1lc3NhZ2UgPSBhc3luYyAocHJlZGljYXRlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxpc3RlbmVyID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChldmVudC5vcmlnaW4gIT09IHRoaXMudXJsLm9yaWdpbilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsgLy8gb3JpZ2luIHZhbGlkYXRpb25cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGV2ZW50LmRhdGE7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcmVkaWNhdGUobWVzc2FnZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUobWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGxpc3RlbmVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGlzdGVuZXJzLmRlbGV0ZShsaXN0ZW5lcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgbGlzdGVuZXIpO1xuICAgICAgICAgICAgICAgIHRoaXMubGlzdGVuZXJzLnNldChsaXN0ZW5lciwgeyByZWplY3QgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIENsb3NlcyB0aGUgcG9wdXAsIHJlamVjdHMgYWxsIHJlcXVlc3RzIGFuZCBjbGVhcnMgdGhlIGxpc3RlbmVyc1xuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5kaXNjb25uZWN0ID0gKCkgPT4ge1xuICAgICAgICAgICAgLy8gTm90ZToga2V5cyBwb3B1cCBoYW5kbGVzIGNsb3NpbmcgaXRzZWxmLiB0aGlzIGlzIGEgZmFsbGJhY2suXG4gICAgICAgICAgICBjbG9zZVBvcHVwKHRoaXMucG9wdXApO1xuICAgICAgICAgICAgdGhpcy5wb3B1cCA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmxpc3RlbmVycy5mb3JFYWNoKCh7IHJlamVjdCB9LCBsaXN0ZW5lcikgPT4ge1xuICAgICAgICAgICAgICAgIHJlamVjdChzdGFuZGFyZEVycm9ycy5wcm92aWRlci51c2VyUmVqZWN0ZWRSZXF1ZXN0KCdSZXF1ZXN0IHJlamVjdGVkJykpO1xuICAgICAgICAgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgbGlzdGVuZXIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmxpc3RlbmVycy5jbGVhcigpO1xuICAgICAgICB9O1xuICAgICAgICAvKipcbiAgICAgICAgICogV2FpdHMgZm9yIHRoZSBwb3B1cCB3aW5kb3cgdG8gZnVsbHkgbG9hZCBhbmQgdGhlbiBzZW5kcyBhIHZlcnNpb24gbWVzc2FnZS5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMud2FpdEZvclBvcHVwTG9hZGVkID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMucG9wdXAgJiYgIXRoaXMucG9wdXAuY2xvc2VkKSB7XG4gICAgICAgICAgICAgICAgLy8gSW4gY2FzZSB0aGUgdXNlciB1bi1mb2N1c2VkIHRoZSBwb3B1cCBiZXR3ZWVuIHJlcXVlc3RzLCBmb2N1cyBpdCBhZ2FpblxuICAgICAgICAgICAgICAgIHRoaXMucG9wdXAuZm9jdXMoKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wb3B1cDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxvZ1BvcHVwU2V0dXBTdGFydGVkKCk7XG4gICAgICAgICAgICB0aGlzLnBvcHVwID0gYXdhaXQgb3BlblBvcHVwKHRoaXMudXJsKTtcbiAgICAgICAgICAgIHRoaXMub25NZXNzYWdlKCh7IGV2ZW50IH0pID0+IGV2ZW50ID09PSAnUG9wdXBVbmxvYWQnKVxuICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRpc2Nvbm5lY3QoKTtcbiAgICAgICAgICAgICAgICBsb2dQb3B1cFVubG9hZFJlY2VpdmVkKCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5jYXRjaCgoKSA9PiB7IH0pO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMub25NZXNzYWdlKCh7IGV2ZW50IH0pID0+IGV2ZW50ID09PSAnUG9wdXBMb2FkZWQnKVxuICAgICAgICAgICAgICAgIC50aGVuKChtZXNzYWdlKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3N0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgIHJlcXVlc3RJZDogbWVzc2FnZS5pZCxcbiAgICAgICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbjogVkVSU0lPTixcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhOiB0aGlzLm1ldGFkYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgcHJlZmVyZW5jZTogdGhpcy5wcmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246IHdpbmRvdy5sb2NhdGlvbi50b1N0cmluZygpLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLnBvcHVwKVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoKTtcbiAgICAgICAgICAgICAgICBsb2dQb3B1cFNldHVwQ29tcGxldGVkKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucG9wdXA7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy51cmwgPSBuZXcgVVJMKHVybCk7XG4gICAgICAgIHRoaXMubWV0YWRhdGEgPSBtZXRhZGF0YTtcbiAgICAgICAgdGhpcy5wcmVmZXJlbmNlID0gcHJlZmVyZW5jZTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1Db21tdW5pY2F0b3IuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/communicator/Communicator.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/constants.js": /*!******************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/constants.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CBW_MOBILE_DEEPLINK_URL: () => (/* binding */ CBW_MOBILE_DEEPLINK_URL),\n/* harmony export */ CB_KEYS_URL: () => (/* binding */ CB_KEYS_URL),\n/* harmony export */ CB_WALLET_RPC_URL: () => (/* binding */ CB_WALLET_RPC_URL),\n/* harmony export */ WALLETLINK_URL: () => (/* binding */ WALLETLINK_URL)\n/* harmony export */ });\nconst CB_KEYS_URL = 'https://keys.coinbase.com/connect';\nconst CB_WALLET_RPC_URL = 'https://rpc.wallet.coinbase.com';\nconst WALLETLINK_URL = 'https://www.walletlink.org';\nconst CBW_MOBILE_DEEPLINK_URL = 'https://go.cb-w.com/walletlink';\n//# sourceMappingURL=constants.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvY29uc3RhbnRzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBTztBQUNBO0FBQ0E7QUFDQTtBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvY29yZS9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IENCX0tFWVNfVVJMID0gJ2h0dHBzOi8va2V5cy5jb2luYmFzZS5jb20vY29ubmVjdCc7XG5leHBvcnQgY29uc3QgQ0JfV0FMTEVUX1JQQ19VUkwgPSAnaHR0cHM6Ly9ycGMud2FsbGV0LmNvaW5iYXNlLmNvbSc7XG5leHBvcnQgY29uc3QgV0FMTEVUTElOS19VUkwgPSAnaHR0cHM6Ly93d3cud2FsbGV0bGluay5vcmcnO1xuZXhwb3J0IGNvbnN0IENCV19NT0JJTEVfREVFUExJTktfVVJMID0gJ2h0dHBzOi8vZ28uY2Itdy5jb20vd2FsbGV0bGluayc7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jb25zdGFudHMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/constants.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/constants.js": /*!************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/error/constants.js ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ errorValues: () => (/* binding */ errorValues),\n/* harmony export */ standardErrorCodes: () => (/* binding */ standardErrorCodes)\n/* harmony export */ });\nconst standardErrorCodes = {\n rpc: {\n invalidInput: -32000,\n resourceNotFound: -32001,\n resourceUnavailable: -32002,\n transactionRejected: -32003,\n methodNotSupported: -32004,\n limitExceeded: -32005,\n parse: -32700,\n invalidRequest: -32600,\n methodNotFound: -32601,\n invalidParams: -32602,\n internal: -32603,\n },\n provider: {\n userRejectedRequest: 4001,\n unauthorized: 4100,\n unsupportedMethod: 4200,\n disconnected: 4900,\n chainDisconnected: 4901,\n unsupportedChain: 4902,\n },\n};\nconst errorValues = {\n '-32700': {\n standard: 'JSON RPC 2.0',\n message: 'Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.',\n },\n '-32600': {\n standard: 'JSON RPC 2.0',\n message: 'The JSON sent is not a valid Request object.',\n },\n '-32601': {\n standard: 'JSON RPC 2.0',\n message: 'The method does not exist / is not available.',\n },\n '-32602': {\n standard: 'JSON RPC 2.0',\n message: 'Invalid method parameter(s).',\n },\n '-32603': {\n standard: 'JSON RPC 2.0',\n message: 'Internal JSON-RPC error.',\n },\n '-32000': {\n standard: 'EIP-1474',\n message: 'Invalid input.',\n },\n '-32001': {\n standard: 'EIP-1474',\n message: 'Resource not found.',\n },\n '-32002': {\n standard: 'EIP-1474',\n message: 'Resource unavailable.',\n },\n '-32003': {\n standard: 'EIP-1474',\n message: 'Transaction rejected.',\n },\n '-32004': {\n standard: 'EIP-1474',\n message: 'Method not supported.',\n },\n '-32005': {\n standard: 'EIP-1474',\n message: 'Request limit exceeded.',\n },\n '4001': {\n standard: 'EIP-1193',\n message: 'User rejected the request.',\n },\n '4100': {\n standard: 'EIP-1193',\n message: 'The requested account and/or method has not been authorized by the user.',\n },\n '4200': {\n standard: 'EIP-1193',\n message: 'The requested method is not supported by this Ethereum provider.',\n },\n '4900': {\n standard: 'EIP-1193',\n message: 'The provider is disconnected from all chains.',\n },\n '4901': {\n standard: 'EIP-1193',\n message: 'The provider is disconnected from the specified chain.',\n },\n '4902': {\n standard: 'EIP-3085',\n message: 'Unrecognized chain ID.',\n },\n};\n//# sourceMappingURL=constants.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvZXJyb3IvY29uc3RhbnRzLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvZXJyb3IvY29uc3RhbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBzdGFuZGFyZEVycm9yQ29kZXMgPSB7XG4gICAgcnBjOiB7XG4gICAgICAgIGludmFsaWRJbnB1dDogLTMyMDAwLFxuICAgICAgICByZXNvdXJjZU5vdEZvdW5kOiAtMzIwMDEsXG4gICAgICAgIHJlc291cmNlVW5hdmFpbGFibGU6IC0zMjAwMixcbiAgICAgICAgdHJhbnNhY3Rpb25SZWplY3RlZDogLTMyMDAzLFxuICAgICAgICBtZXRob2ROb3RTdXBwb3J0ZWQ6IC0zMjAwNCxcbiAgICAgICAgbGltaXRFeGNlZWRlZDogLTMyMDA1LFxuICAgICAgICBwYXJzZTogLTMyNzAwLFxuICAgICAgICBpbnZhbGlkUmVxdWVzdDogLTMyNjAwLFxuICAgICAgICBtZXRob2ROb3RGb3VuZDogLTMyNjAxLFxuICAgICAgICBpbnZhbGlkUGFyYW1zOiAtMzI2MDIsXG4gICAgICAgIGludGVybmFsOiAtMzI2MDMsXG4gICAgfSxcbiAgICBwcm92aWRlcjoge1xuICAgICAgICB1c2VyUmVqZWN0ZWRSZXF1ZXN0OiA0MDAxLFxuICAgICAgICB1bmF1dGhvcml6ZWQ6IDQxMDAsXG4gICAgICAgIHVuc3VwcG9ydGVkTWV0aG9kOiA0MjAwLFxuICAgICAgICBkaXNjb25uZWN0ZWQ6IDQ5MDAsXG4gICAgICAgIGNoYWluRGlzY29ubmVjdGVkOiA0OTAxLFxuICAgICAgICB1bnN1cHBvcnRlZENoYWluOiA0OTAyLFxuICAgIH0sXG59O1xuZXhwb3J0IGNvbnN0IGVycm9yVmFsdWVzID0ge1xuICAgICctMzI3MDAnOiB7XG4gICAgICAgIHN0YW5kYXJkOiAnSlNPTiBSUEMgMi4wJyxcbiAgICAgICAgbWVzc2FnZTogJ0ludmFsaWQgSlNPTiB3YXMgcmVjZWl2ZWQgYnkgdGhlIHNlcnZlci4gQW4gZXJyb3Igb2NjdXJyZWQgb24gdGhlIHNlcnZlciB3aGlsZSBwYXJzaW5nIHRoZSBKU09OIHRleHQuJyxcbiAgICB9LFxuICAgICctMzI2MDAnOiB7XG4gICAgICAgIHN0YW5kYXJkOiAnSlNPTiBSUEMgMi4wJyxcbiAgICAgICAgbWVzc2FnZTogJ1RoZSBKU09OIHNlbnQgaXMgbm90IGEgdmFsaWQgUmVxdWVzdCBvYmplY3QuJyxcbiAgICB9LFxuICAgICctMzI2MDEnOiB7XG4gICAgICAgIHN0YW5kYXJkOiAnSlNPTiBSUEMgMi4wJyxcbiAgICAgICAgbWVzc2FnZTogJ1RoZSBtZXRob2QgZG9lcyBub3QgZXhpc3QgLyBpcyBub3QgYXZhaWxhYmxlLicsXG4gICAgfSxcbiAgICAnLTMyNjAyJzoge1xuICAgICAgICBzdGFuZGFyZDogJ0pTT04gUlBDIDIuMCcsXG4gICAgICAgIG1lc3NhZ2U6ICdJbnZhbGlkIG1ldGhvZCBwYXJhbWV0ZXIocykuJyxcbiAgICB9LFxuICAgICctMzI2MDMnOiB7XG4gICAgICAgIHN0YW5kYXJkOiAnSlNPTiBSUEMgMi4wJyxcbiAgICAgICAgbWVzc2FnZTogJ0ludGVybmFsIEpTT04tUlBDIGVycm9yLicsXG4gICAgfSxcbiAgICAnLTMyMDAwJzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xNDc0JyxcbiAgICAgICAgbWVzc2FnZTogJ0ludmFsaWQgaW5wdXQuJyxcbiAgICB9LFxuICAgICctMzIwMDEnOiB7XG4gICAgICAgIHN0YW5kYXJkOiAnRUlQLTE0NzQnLFxuICAgICAgICBtZXNzYWdlOiAnUmVzb3VyY2Ugbm90IGZvdW5kLicsXG4gICAgfSxcbiAgICAnLTMyMDAyJzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xNDc0JyxcbiAgICAgICAgbWVzc2FnZTogJ1Jlc291cmNlIHVuYXZhaWxhYmxlLicsXG4gICAgfSxcbiAgICAnLTMyMDAzJzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xNDc0JyxcbiAgICAgICAgbWVzc2FnZTogJ1RyYW5zYWN0aW9uIHJlamVjdGVkLicsXG4gICAgfSxcbiAgICAnLTMyMDA0Jzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xNDc0JyxcbiAgICAgICAgbWVzc2FnZTogJ01ldGhvZCBub3Qgc3VwcG9ydGVkLicsXG4gICAgfSxcbiAgICAnLTMyMDA1Jzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xNDc0JyxcbiAgICAgICAgbWVzc2FnZTogJ1JlcXVlc3QgbGltaXQgZXhjZWVkZWQuJyxcbiAgICB9LFxuICAgICc0MDAxJzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xMTkzJyxcbiAgICAgICAgbWVzc2FnZTogJ1VzZXIgcmVqZWN0ZWQgdGhlIHJlcXVlc3QuJyxcbiAgICB9LFxuICAgICc0MTAwJzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xMTkzJyxcbiAgICAgICAgbWVzc2FnZTogJ1RoZSByZXF1ZXN0ZWQgYWNjb3VudCBhbmQvb3IgbWV0aG9kIGhhcyBub3QgYmVlbiBhdXRob3JpemVkIGJ5IHRoZSB1c2VyLicsXG4gICAgfSxcbiAgICAnNDIwMCc6IHtcbiAgICAgICAgc3RhbmRhcmQ6ICdFSVAtMTE5MycsXG4gICAgICAgIG1lc3NhZ2U6ICdUaGUgcmVxdWVzdGVkIG1ldGhvZCBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgRXRoZXJldW0gcHJvdmlkZXIuJyxcbiAgICB9LFxuICAgICc0OTAwJzoge1xuICAgICAgICBzdGFuZGFyZDogJ0VJUC0xMTkzJyxcbiAgICAgICAgbWVzc2FnZTogJ1RoZSBwcm92aWRlciBpcyBkaXNjb25uZWN0ZWQgZnJvbSBhbGwgY2hhaW5zLicsXG4gICAgfSxcbiAgICAnNDkwMSc6IHtcbiAgICAgICAgc3RhbmRhcmQ6ICdFSVAtMTE5MycsXG4gICAgICAgIG1lc3NhZ2U6ICdUaGUgcHJvdmlkZXIgaXMgZGlzY29ubmVjdGVkIGZyb20gdGhlIHNwZWNpZmllZCBjaGFpbi4nLFxuICAgIH0sXG4gICAgJzQ5MDInOiB7XG4gICAgICAgIHN0YW5kYXJkOiAnRUlQLTMwODUnLFxuICAgICAgICBtZXNzYWdlOiAnVW5yZWNvZ25pemVkIGNoYWluIElELicsXG4gICAgfSxcbn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jb25zdGFudHMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/constants.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js": /*!*********************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isActionableHttpRequestError: () => (/* binding */ isActionableHttpRequestError),\n/* harmony export */ isViemError: () => (/* binding */ isViemError),\n/* harmony export */ standardErrors: () => (/* binding */ standardErrors),\n/* harmony export */ viemHttpErrorToProviderError: () => (/* binding */ viemHttpErrorToProviderError)\n/* harmony export */ });\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/constants.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/utils.js\");\n\n\nconst standardErrors = {\n rpc: {\n parse: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.parse, arg),\n invalidRequest: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.invalidRequest, arg),\n invalidParams: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.invalidParams, arg),\n methodNotFound: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.methodNotFound, arg),\n internal: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.internal, arg),\n server: (opts) => {\n if (!opts || typeof opts !== 'object' || Array.isArray(opts)) {\n throw new Error('Ethereum RPC Server errors must provide single object argument.');\n }\n const { code } = opts;\n if (!Number.isInteger(code) || code > -32005 || code < -32099) {\n throw new Error('\"code\" must be an integer such that: -32099 <= code <= -32005');\n }\n return getEthJsonRpcError(code, opts);\n },\n invalidInput: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.invalidInput, arg),\n resourceNotFound: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.resourceNotFound, arg),\n resourceUnavailable: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.resourceUnavailable, arg),\n transactionRejected: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.transactionRejected, arg),\n methodNotSupported: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.methodNotSupported, arg),\n limitExceeded: (arg) => getEthJsonRpcError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.limitExceeded, arg),\n },\n provider: {\n userRejectedRequest: (arg) => {\n return getEthProviderError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.provider.userRejectedRequest, arg);\n },\n unauthorized: (arg) => {\n return getEthProviderError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.provider.unauthorized, arg);\n },\n unsupportedMethod: (arg) => {\n return getEthProviderError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.provider.unsupportedMethod, arg);\n },\n disconnected: (arg) => {\n return getEthProviderError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.provider.disconnected, arg);\n },\n chainDisconnected: (arg) => {\n return getEthProviderError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.provider.chainDisconnected, arg);\n },\n unsupportedChain: (arg) => {\n return getEthProviderError(_constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.provider.unsupportedChain, arg);\n },\n custom: (opts) => {\n if (!opts || typeof opts !== 'object' || Array.isArray(opts)) {\n throw new Error('Ethereum Provider custom errors must provide single object argument.');\n }\n const { code, message, data } = opts;\n if (!message || typeof message !== 'string') {\n throw new Error('\"message\" must be a nonempty string');\n }\n return new EthereumProviderError(code, message, data);\n },\n },\n};\n// Internal\nfunction getEthJsonRpcError(code, arg) {\n const [message, data] = parseOpts(arg);\n return new EthereumRpcError(code, message || (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.getMessageFromCode)(code), data);\n}\nfunction getEthProviderError(code, arg) {\n const [message, data] = parseOpts(arg);\n return new EthereumProviderError(code, message || (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.getMessageFromCode)(code), data);\n}\nfunction parseOpts(arg) {\n if (arg) {\n if (typeof arg === 'string') {\n return [arg];\n }\n if (typeof arg === 'object' && !Array.isArray(arg)) {\n const { message, data } = arg;\n if (message && typeof message !== 'string') {\n throw new Error('Must specify string message.');\n }\n return [message || undefined, data];\n }\n }\n return [];\n}\nclass EthereumRpcError extends Error {\n constructor(code, message, data) {\n if (!Number.isInteger(code)) {\n throw new Error('\"code\" must be an integer.');\n }\n if (!message || typeof message !== 'string') {\n throw new Error('\"message\" must be a nonempty string.');\n }\n super(message);\n this.code = code;\n if (data !== undefined) {\n this.data = data;\n }\n }\n}\nclass EthereumProviderError extends EthereumRpcError {\n /**\n * Create an Ethereum Provider JSON-RPC error.\n * `code` must be an integer in the 1000 <= 4999 range.\n */\n constructor(code, message, data) {\n if (!isValidEthProviderCode(code)) {\n throw new Error('\"code\" must be an integer such that: 1000 <= code <= 4999');\n }\n super(code, message, data);\n }\n}\nclass ActionableInsufficientBalanceError extends EthereumRpcError {\n}\nfunction isValidEthProviderCode(code) {\n return Number.isInteger(code) && code >= 1000 && code <= 4999;\n}\nfunction isActionableHttpRequestError(errorObject) {\n return (typeof errorObject === 'object' &&\n errorObject !== null &&\n 'code' in errorObject &&\n 'data' in errorObject &&\n errorObject.code === -32090 &&\n typeof errorObject.data === 'object' &&\n errorObject.data !== null &&\n 'type' in errorObject.data &&\n errorObject.data.type === 'INSUFFICIENT_FUNDS');\n}\nfunction isViemError(error) {\n // Check if object and has code, message, and details\n return typeof error === 'object' && error !== null && 'details' in error;\n}\nfunction viemHttpErrorToProviderError(error) {\n try {\n const details = JSON.parse(error.details);\n return new EthereumRpcError(details.code, details.message, details.data);\n }\n catch (_) {\n return null;\n }\n}\n//# sourceMappingURL=errors.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvZXJyb3IvZXJyb3JzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFvRDtBQUNKO0FBQ3pDO0FBQ1A7QUFDQSwyQ0FBMkMsNkRBQWtCO0FBQzdELG9EQUFvRCw2REFBa0I7QUFDdEUsbURBQW1ELDZEQUFrQjtBQUNyRSxvREFBb0QsNkRBQWtCO0FBQ3RFLDhDQUE4Qyw2REFBa0I7QUFDaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsT0FBTztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxrREFBa0QsNkRBQWtCO0FBQ3BFLHNEQUFzRCw2REFBa0I7QUFDeEUseURBQXlELDZEQUFrQjtBQUMzRSx5REFBeUQsNkRBQWtCO0FBQzNFLHdEQUF3RCw2REFBa0I7QUFDMUUsbURBQW1ELDZEQUFrQjtBQUNyRSxLQUFLO0FBQ0w7QUFDQTtBQUNBLHVDQUF1Qyw2REFBa0I7QUFDekQsU0FBUztBQUNUO0FBQ0EsdUNBQXVDLDZEQUFrQjtBQUN6RCxTQUFTO0FBQ1Q7QUFDQSx1Q0FBdUMsNkRBQWtCO0FBQ3pELFNBQVM7QUFDVDtBQUNBLHVDQUF1Qyw2REFBa0I7QUFDekQsU0FBUztBQUNUO0FBQ0EsdUNBQXVDLDZEQUFrQjtBQUN6RCxTQUFTO0FBQ1Q7QUFDQSx1Q0FBdUMsNkRBQWtCO0FBQ3pELFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELDZEQUFrQjtBQUNuRTtBQUNBO0FBQ0E7QUFDQSxzREFBc0QsNkRBQWtCO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGdCQUFnQjtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvY29yZS9lcnJvci9lcnJvcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3RhbmRhcmRFcnJvckNvZGVzIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgZ2V0TWVzc2FnZUZyb21Db2RlIH0gZnJvbSAnLi91dGlscy5qcyc7XG5leHBvcnQgY29uc3Qgc3RhbmRhcmRFcnJvcnMgPSB7XG4gICAgcnBjOiB7XG4gICAgICAgIHBhcnNlOiAoYXJnKSA9PiBnZXRFdGhKc29uUnBjRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnJwYy5wYXJzZSwgYXJnKSxcbiAgICAgICAgaW52YWxpZFJlcXVlc3Q6IChhcmcpID0+IGdldEV0aEpzb25ScGNFcnJvcihzdGFuZGFyZEVycm9yQ29kZXMucnBjLmludmFsaWRSZXF1ZXN0LCBhcmcpLFxuICAgICAgICBpbnZhbGlkUGFyYW1zOiAoYXJnKSA9PiBnZXRFdGhKc29uUnBjRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnJwYy5pbnZhbGlkUGFyYW1zLCBhcmcpLFxuICAgICAgICBtZXRob2ROb3RGb3VuZDogKGFyZykgPT4gZ2V0RXRoSnNvblJwY0Vycm9yKHN0YW5kYXJkRXJyb3JDb2Rlcy5ycGMubWV0aG9kTm90Rm91bmQsIGFyZyksXG4gICAgICAgIGludGVybmFsOiAoYXJnKSA9PiBnZXRFdGhKc29uUnBjRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnJwYy5pbnRlcm5hbCwgYXJnKSxcbiAgICAgICAgc2VydmVyOiAob3B0cykgPT4ge1xuICAgICAgICAgICAgaWYgKCFvcHRzIHx8IHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0JyB8fCBBcnJheS5pc0FycmF5KG9wdHMpKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdFdGhlcmV1bSBSUEMgU2VydmVyIGVycm9ycyBtdXN0IHByb3ZpZGUgc2luZ2xlIG9iamVjdCBhcmd1bWVudC4nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHsgY29kZSB9ID0gb3B0cztcbiAgICAgICAgICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcihjb2RlKSB8fCBjb2RlID4gLTMyMDA1IHx8IGNvZGUgPCAtMzIwOTkpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1wiY29kZVwiIG11c3QgYmUgYW4gaW50ZWdlciBzdWNoIHRoYXQ6IC0zMjA5OSA8PSBjb2RlIDw9IC0zMjAwNScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGdldEV0aEpzb25ScGNFcnJvcihjb2RlLCBvcHRzKTtcbiAgICAgICAgfSxcbiAgICAgICAgaW52YWxpZElucHV0OiAoYXJnKSA9PiBnZXRFdGhKc29uUnBjRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnJwYy5pbnZhbGlkSW5wdXQsIGFyZyksXG4gICAgICAgIHJlc291cmNlTm90Rm91bmQ6IChhcmcpID0+IGdldEV0aEpzb25ScGNFcnJvcihzdGFuZGFyZEVycm9yQ29kZXMucnBjLnJlc291cmNlTm90Rm91bmQsIGFyZyksXG4gICAgICAgIHJlc291cmNlVW5hdmFpbGFibGU6IChhcmcpID0+IGdldEV0aEpzb25ScGNFcnJvcihzdGFuZGFyZEVycm9yQ29kZXMucnBjLnJlc291cmNlVW5hdmFpbGFibGUsIGFyZyksXG4gICAgICAgIHRyYW5zYWN0aW9uUmVqZWN0ZWQ6IChhcmcpID0+IGdldEV0aEpzb25ScGNFcnJvcihzdGFuZGFyZEVycm9yQ29kZXMucnBjLnRyYW5zYWN0aW9uUmVqZWN0ZWQsIGFyZyksXG4gICAgICAgIG1ldGhvZE5vdFN1cHBvcnRlZDogKGFyZykgPT4gZ2V0RXRoSnNvblJwY0Vycm9yKHN0YW5kYXJkRXJyb3JDb2Rlcy5ycGMubWV0aG9kTm90U3VwcG9ydGVkLCBhcmcpLFxuICAgICAgICBsaW1pdEV4Y2VlZGVkOiAoYXJnKSA9PiBnZXRFdGhKc29uUnBjRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnJwYy5saW1pdEV4Y2VlZGVkLCBhcmcpLFxuICAgIH0sXG4gICAgcHJvdmlkZXI6IHtcbiAgICAgICAgdXNlclJlamVjdGVkUmVxdWVzdDogKGFyZykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGdldEV0aFByb3ZpZGVyRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnByb3ZpZGVyLnVzZXJSZWplY3RlZFJlcXVlc3QsIGFyZyk7XG4gICAgICAgIH0sXG4gICAgICAgIHVuYXV0aG9yaXplZDogKGFyZykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGdldEV0aFByb3ZpZGVyRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnByb3ZpZGVyLnVuYXV0aG9yaXplZCwgYXJnKTtcbiAgICAgICAgfSxcbiAgICAgICAgdW5zdXBwb3J0ZWRNZXRob2Q6IChhcmcpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBnZXRFdGhQcm92aWRlckVycm9yKHN0YW5kYXJkRXJyb3JDb2Rlcy5wcm92aWRlci51bnN1cHBvcnRlZE1ldGhvZCwgYXJnKTtcbiAgICAgICAgfSxcbiAgICAgICAgZGlzY29ubmVjdGVkOiAoYXJnKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0RXRoUHJvdmlkZXJFcnJvcihzdGFuZGFyZEVycm9yQ29kZXMucHJvdmlkZXIuZGlzY29ubmVjdGVkLCBhcmcpO1xuICAgICAgICB9LFxuICAgICAgICBjaGFpbkRpc2Nvbm5lY3RlZDogKGFyZykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGdldEV0aFByb3ZpZGVyRXJyb3Ioc3RhbmRhcmRFcnJvckNvZGVzLnByb3ZpZGVyLmNoYWluRGlzY29ubmVjdGVkLCBhcmcpO1xuICAgICAgICB9LFxuICAgICAgICB1bnN1cHBvcnRlZENoYWluOiAoYXJnKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0RXRoUHJvdmlkZXJFcnJvcihzdGFuZGFyZEVycm9yQ29kZXMucHJvdmlkZXIudW5zdXBwb3J0ZWRDaGFpbiwgYXJnKTtcbiAgICAgICAgfSxcbiAgICAgICAgY3VzdG9tOiAob3B0cykgPT4ge1xuICAgICAgICAgICAgaWYgKCFvcHRzIHx8IHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0JyB8fCBBcnJheS5pc0FycmF5KG9wdHMpKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdFdGhlcmV1bSBQcm92aWRlciBjdXN0b20gZXJyb3JzIG11c3QgcHJvdmlkZSBzaW5nbGUgb2JqZWN0IGFyZ3VtZW50LicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgeyBjb2RlLCBtZXNzYWdlLCBkYXRhIH0gPSBvcHRzO1xuICAgICAgICAgICAgaWYgKCFtZXNzYWdlIHx8IHR5cGVvZiBtZXNzYWdlICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignXCJtZXNzYWdlXCIgbXVzdCBiZSBhIG5vbmVtcHR5IHN0cmluZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIG5ldyBFdGhlcmV1bVByb3ZpZGVyRXJyb3IoY29kZSwgbWVzc2FnZSwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgfSxcbn07XG4vLyBJbnRlcm5hbFxuZnVuY3Rpb24gZ2V0RXRoSnNvblJwY0Vycm9yKGNvZGUsIGFyZykge1xuICAgIGNvbnN0IFttZXNzYWdlLCBkYXRhXSA9IHBhcnNlT3B0cyhhcmcpO1xuICAgIHJldHVybiBuZXcgRXRoZXJldW1ScGNFcnJvcihjb2RlLCBtZXNzYWdlIHx8IGdldE1lc3NhZ2VGcm9tQ29kZShjb2RlKSwgZGF0YSk7XG59XG5mdW5jdGlvbiBnZXRFdGhQcm92aWRlckVycm9yKGNvZGUsIGFyZykge1xuICAgIGNvbnN0IFttZXNzYWdlLCBkYXRhXSA9IHBhcnNlT3B0cyhhcmcpO1xuICAgIHJldHVybiBuZXcgRXRoZXJldW1Qcm92aWRlckVycm9yKGNvZGUsIG1lc3NhZ2UgfHwgZ2V0TWVzc2FnZUZyb21Db2RlKGNvZGUpLCBkYXRhKTtcbn1cbmZ1bmN0aW9uIHBhcnNlT3B0cyhhcmcpIHtcbiAgICBpZiAoYXJnKSB7XG4gICAgICAgIGlmICh0eXBlb2YgYXJnID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgcmV0dXJuIFthcmddO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgYXJnID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShhcmcpKSB7XG4gICAgICAgICAgICBjb25zdCB7IG1lc3NhZ2UsIGRhdGEgfSA9IGFyZztcbiAgICAgICAgICAgIGlmIChtZXNzYWdlICYmIHR5cGVvZiBtZXNzYWdlICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTXVzdCBzcGVjaWZ5IHN0cmluZyBtZXNzYWdlLicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIFttZXNzYWdlIHx8IHVuZGVmaW5lZCwgZGF0YV07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIFtdO1xufVxuY2xhc3MgRXRoZXJldW1ScGNFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcihjb2RlLCBtZXNzYWdlLCBkYXRhKSB7XG4gICAgICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcihjb2RlKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdcImNvZGVcIiBtdXN0IGJlIGFuIGludGVnZXIuJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFtZXNzYWdlIHx8IHR5cGVvZiBtZXNzYWdlICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdcIm1lc3NhZ2VcIiBtdXN0IGJlIGEgbm9uZW1wdHkgc3RyaW5nLicpO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgICAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICAgICAgICBpZiAoZGF0YSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgICAgICB9XG4gICAgfVxufVxuY2xhc3MgRXRoZXJldW1Qcm92aWRlckVycm9yIGV4dGVuZHMgRXRoZXJldW1ScGNFcnJvciB7XG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGFuIEV0aGVyZXVtIFByb3ZpZGVyIEpTT04tUlBDIGVycm9yLlxuICAgICAqIGBjb2RlYCBtdXN0IGJlIGFuIGludGVnZXIgaW4gdGhlIDEwMDAgPD0gNDk5OSByYW5nZS5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3Rvcihjb2RlLCBtZXNzYWdlLCBkYXRhKSB7XG4gICAgICAgIGlmICghaXNWYWxpZEV0aFByb3ZpZGVyQ29kZShjb2RlKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdcImNvZGVcIiBtdXN0IGJlIGFuIGludGVnZXIgc3VjaCB0aGF0OiAxMDAwIDw9IGNvZGUgPD0gNDk5OScpO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyKGNvZGUsIG1lc3NhZ2UsIGRhdGEpO1xuICAgIH1cbn1cbmNsYXNzIEFjdGlvbmFibGVJbnN1ZmZpY2llbnRCYWxhbmNlRXJyb3IgZXh0ZW5kcyBFdGhlcmV1bVJwY0Vycm9yIHtcbn1cbmZ1bmN0aW9uIGlzVmFsaWRFdGhQcm92aWRlckNvZGUoY29kZSkge1xuICAgIHJldHVybiBOdW1iZXIuaXNJbnRlZ2VyKGNvZGUpICYmIGNvZGUgPj0gMTAwMCAmJiBjb2RlIDw9IDQ5OTk7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNBY3Rpb25hYmxlSHR0cFJlcXVlc3RFcnJvcihlcnJvck9iamVjdCkge1xuICAgIHJldHVybiAodHlwZW9mIGVycm9yT2JqZWN0ID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBlcnJvck9iamVjdCAhPT0gbnVsbCAmJlxuICAgICAgICAnY29kZScgaW4gZXJyb3JPYmplY3QgJiZcbiAgICAgICAgJ2RhdGEnIGluIGVycm9yT2JqZWN0ICYmXG4gICAgICAgIGVycm9yT2JqZWN0LmNvZGUgPT09IC0zMjA5MCAmJlxuICAgICAgICB0eXBlb2YgZXJyb3JPYmplY3QuZGF0YSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgZXJyb3JPYmplY3QuZGF0YSAhPT0gbnVsbCAmJlxuICAgICAgICAndHlwZScgaW4gZXJyb3JPYmplY3QuZGF0YSAmJlxuICAgICAgICBlcnJvck9iamVjdC5kYXRhLnR5cGUgPT09ICdJTlNVRkZJQ0lFTlRfRlVORFMnKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc1ZpZW1FcnJvcihlcnJvcikge1xuICAgIC8vIENoZWNrIGlmIG9iamVjdCBhbmQgaGFzIGNvZGUsIG1lc3NhZ2UsIGFuZCBkZXRhaWxzXG4gICAgcmV0dXJuIHR5cGVvZiBlcnJvciA9PT0gJ29iamVjdCcgJiYgZXJyb3IgIT09IG51bGwgJiYgJ2RldGFpbHMnIGluIGVycm9yO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZpZW1IdHRwRXJyb3JUb1Byb3ZpZGVyRXJyb3IoZXJyb3IpIHtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBkZXRhaWxzID0gSlNPTi5wYXJzZShlcnJvci5kZXRhaWxzKTtcbiAgICAgICAgcmV0dXJuIG5ldyBFdGhlcmV1bVJwY0Vycm9yKGRldGFpbHMuY29kZSwgZGV0YWlscy5tZXNzYWdlLCBkZXRhaWxzLmRhdGEpO1xuICAgIH1cbiAgICBjYXRjaCAoXykge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1lcnJvcnMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/serialize.js": /*!************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/error/serialize.js ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ serializeError: () => (/* binding */ serializeError)\n/* harmony export */ });\n/* harmony import */ var _sdk_info_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../sdk-info.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js\");\n/* harmony import */ var _sign_walletlink_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../sign/walletlink/relay/type/Web3Response.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/Web3Response.js\");\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/constants.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/utils.js\");\n// TODO: error should not depend on walletlink. revisit this.\n\n\n\n\n/**\n * Serializes an error to a format that is compatible with the Ethereum JSON RPC error format.\n * See https://docs.cloud.coinbase.com/wallet-sdk/docs/errors\n * for more information.\n */\nfunction serializeError(error) {\n const serialized = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.serialize)(getErrorObject(error), {\n shouldIncludeStack: true,\n });\n const docUrl = new URL('https://docs.cloud.coinbase.com/wallet-sdk/docs/errors');\n docUrl.searchParams.set('version', _sdk_info_js__WEBPACK_IMPORTED_MODULE_1__.VERSION);\n docUrl.searchParams.set('code', serialized.code.toString());\n docUrl.searchParams.set('message', serialized.message);\n return Object.assign(Object.assign({}, serialized), { docUrl: docUrl.href });\n}\n/**\n * Converts an error to a serializable object.\n */\nfunction getErrorObject(error) {\n var _a;\n if (typeof error === 'string') {\n return {\n message: error,\n code: _constants_js__WEBPACK_IMPORTED_MODULE_2__.standardErrorCodes.rpc.internal,\n };\n }\n if ((0,_sign_walletlink_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_3__.isErrorResponse)(error)) {\n const message = error.errorMessage;\n const code = (_a = error.errorCode) !== null && _a !== void 0 ? _a : (message.match(/(denied|rejected)/i)\n ? _constants_js__WEBPACK_IMPORTED_MODULE_2__.standardErrorCodes.provider.userRejectedRequest\n : undefined);\n return Object.assign(Object.assign({}, error), { message,\n code, data: { method: error.method } });\n }\n return error;\n}\n//# sourceMappingURL=serialize.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvZXJyb3Ivc2VyaWFsaXplLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDNEM7QUFDdUM7QUFDL0I7QUFDYjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCx1QkFBdUIsb0RBQVM7QUFDaEM7QUFDQSxLQUFLO0FBQ0w7QUFDQSx1Q0FBdUMsaURBQU87QUFDOUM7QUFDQTtBQUNBLHlDQUF5QyxpQkFBaUIscUJBQXFCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQiw2REFBa0I7QUFDcEM7QUFDQTtBQUNBLFFBQVEsNEZBQWU7QUFDdkI7QUFDQTtBQUNBLGNBQWMsNkRBQWtCO0FBQ2hDO0FBQ0EsNkNBQTZDLFlBQVk7QUFDekQsMEJBQTBCLHdCQUF3QjtBQUNsRDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvZXJyb3Ivc2VyaWFsaXplLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IGVycm9yIHNob3VsZCBub3QgZGVwZW5kIG9uIHdhbGxldGxpbmsuIHJldmlzaXQgdGhpcy5cbmltcG9ydCB7IFZFUlNJT04gfSBmcm9tICcuLi8uLi9zZGstaW5mby5qcyc7XG5pbXBvcnQgeyBpc0Vycm9yUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9zaWduL3dhbGxldGxpbmsvcmVsYXkvdHlwZS9XZWIzUmVzcG9uc2UuanMnO1xuaW1wb3J0IHsgc3RhbmRhcmRFcnJvckNvZGVzIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgc2VyaWFsaXplIH0gZnJvbSAnLi91dGlscy5qcyc7XG4vKipcbiAqIFNlcmlhbGl6ZXMgYW4gZXJyb3IgdG8gYSBmb3JtYXQgdGhhdCBpcyBjb21wYXRpYmxlIHdpdGggdGhlIEV0aGVyZXVtIEpTT04gUlBDIGVycm9yIGZvcm1hdC5cbiAqIFNlZSBodHRwczovL2RvY3MuY2xvdWQuY29pbmJhc2UuY29tL3dhbGxldC1zZGsvZG9jcy9lcnJvcnNcbiAqIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplRXJyb3IoZXJyb3IpIHtcbiAgICBjb25zdCBzZXJpYWxpemVkID0gc2VyaWFsaXplKGdldEVycm9yT2JqZWN0KGVycm9yKSwge1xuICAgICAgICBzaG91bGRJbmNsdWRlU3RhY2s6IHRydWUsXG4gICAgfSk7XG4gICAgY29uc3QgZG9jVXJsID0gbmV3IFVSTCgnaHR0cHM6Ly9kb2NzLmNsb3VkLmNvaW5iYXNlLmNvbS93YWxsZXQtc2RrL2RvY3MvZXJyb3JzJyk7XG4gICAgZG9jVXJsLnNlYXJjaFBhcmFtcy5zZXQoJ3ZlcnNpb24nLCBWRVJTSU9OKTtcbiAgICBkb2NVcmwuc2VhcmNoUGFyYW1zLnNldCgnY29kZScsIHNlcmlhbGl6ZWQuY29kZS50b1N0cmluZygpKTtcbiAgICBkb2NVcmwuc2VhcmNoUGFyYW1zLnNldCgnbWVzc2FnZScsIHNlcmlhbGl6ZWQubWVzc2FnZSk7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgc2VyaWFsaXplZCksIHsgZG9jVXJsOiBkb2NVcmwuaHJlZiB9KTtcbn1cbi8qKlxuICogQ29udmVydHMgYW4gZXJyb3IgdG8gYSBzZXJpYWxpemFibGUgb2JqZWN0LlxuICovXG5mdW5jdGlvbiBnZXRFcnJvck9iamVjdChlcnJvcikge1xuICAgIHZhciBfYTtcbiAgICBpZiAodHlwZW9mIGVycm9yID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3IsXG4gICAgICAgICAgICBjb2RlOiBzdGFuZGFyZEVycm9yQ29kZXMucnBjLmludGVybmFsLFxuICAgICAgICB9O1xuICAgIH1cbiAgICBpZiAoaXNFcnJvclJlc3BvbnNlKGVycm9yKSkge1xuICAgICAgICBjb25zdCBtZXNzYWdlID0gZXJyb3IuZXJyb3JNZXNzYWdlO1xuICAgICAgICBjb25zdCBjb2RlID0gKF9hID0gZXJyb3IuZXJyb3JDb2RlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAobWVzc2FnZS5tYXRjaCgvKGRlbmllZHxyZWplY3RlZCkvaSlcbiAgICAgICAgICAgID8gc3RhbmRhcmRFcnJvckNvZGVzLnByb3ZpZGVyLnVzZXJSZWplY3RlZFJlcXVlc3RcbiAgICAgICAgICAgIDogdW5kZWZpbmVkKTtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgZXJyb3IpLCB7IG1lc3NhZ2UsXG4gICAgICAgICAgICBjb2RlLCBkYXRhOiB7IG1ldGhvZDogZXJyb3IubWV0aG9kIH0gfSk7XG4gICAgfVxuICAgIHJldHVybiBlcnJvcjtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNlcmlhbGl6ZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/serialize.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/utils.js": /*!********************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/error/utils.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ JSON_RPC_SERVER_ERROR_MESSAGE: () => (/* binding */ JSON_RPC_SERVER_ERROR_MESSAGE),\n/* harmony export */ getErrorCode: () => (/* binding */ getErrorCode),\n/* harmony export */ getMessageFromCode: () => (/* binding */ getMessageFromCode),\n/* harmony export */ isValidCode: () => (/* binding */ isValidCode),\n/* harmony export */ serialize: () => (/* binding */ serialize)\n/* harmony export */ });\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/constants.js\");\n\nconst FALLBACK_MESSAGE = 'Unspecified error message.';\nconst JSON_RPC_SERVER_ERROR_MESSAGE = 'Unspecified server error.';\n/**\n * Gets the message for a given code, or a fallback message if the code has\n * no corresponding message.\n */\nfunction getMessageFromCode(code, fallbackMessage = FALLBACK_MESSAGE) {\n if (code && Number.isInteger(code)) {\n const codeString = code.toString();\n if (hasKey(_constants_js__WEBPACK_IMPORTED_MODULE_0__.errorValues, codeString)) {\n return _constants_js__WEBPACK_IMPORTED_MODULE_0__.errorValues[codeString].message;\n }\n if (isJsonRpcServerError(code)) {\n return JSON_RPC_SERVER_ERROR_MESSAGE;\n }\n }\n return fallbackMessage;\n}\n/**\n * Returns whether the given code is valid.\n * A code is only valid if it has a message.\n */\nfunction isValidCode(code) {\n if (!Number.isInteger(code)) {\n return false;\n }\n const codeString = code.toString();\n if (_constants_js__WEBPACK_IMPORTED_MODULE_0__.errorValues[codeString]) {\n return true;\n }\n if (isJsonRpcServerError(code)) {\n return true;\n }\n return false;\n}\n/**\n * Returns the error code from an error object.\n */\nfunction getErrorCode(error) {\n var _a;\n if (typeof error === 'number') {\n return error;\n }\n if (isErrorWithCode(error)) {\n return (_a = error.code) !== null && _a !== void 0 ? _a : error.errorCode;\n }\n return undefined;\n}\nfunction isErrorWithCode(error) {\n return (typeof error === 'object' &&\n error !== null &&\n (typeof error.code === 'number' ||\n typeof error.errorCode === 'number'));\n}\nfunction serialize(error, { shouldIncludeStack = false } = {}) {\n const serialized = {};\n if (error &&\n typeof error === 'object' &&\n !Array.isArray(error) &&\n hasKey(error, 'code') &&\n isValidCode(error.code)) {\n const _error = error;\n serialized.code = _error.code;\n if (_error.message && typeof _error.message === 'string') {\n serialized.message = _error.message;\n if (hasKey(_error, 'data')) {\n serialized.data = _error.data;\n }\n }\n else {\n serialized.message = getMessageFromCode(serialized.code);\n serialized.data = { originalError: assignOriginalError(error) };\n }\n }\n else {\n serialized.code = _constants_js__WEBPACK_IMPORTED_MODULE_0__.standardErrorCodes.rpc.internal;\n serialized.message = hasStringProperty(error, 'message') ? error.message : FALLBACK_MESSAGE;\n serialized.data = { originalError: assignOriginalError(error) };\n }\n if (shouldIncludeStack) {\n serialized.stack = hasStringProperty(error, 'stack') ? error.stack : undefined;\n }\n return serialized;\n}\n// Internal\nfunction isJsonRpcServerError(code) {\n return code >= -32099 && code <= -32000;\n}\nfunction assignOriginalError(error) {\n if (error && typeof error === 'object' && !Array.isArray(error)) {\n return Object.assign({}, error);\n }\n return error;\n}\nfunction hasKey(obj, key) {\n return Object.prototype.hasOwnProperty.call(obj, key);\n}\nfunction hasStringProperty(obj, prop) {\n return (typeof obj === 'object' && obj !== null && prop in obj && typeof obj[prop] === 'string');\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvZXJyb3IvdXRpbHMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQWlFO0FBQ2pFO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLG1CQUFtQixzREFBVztBQUM5QixtQkFBbUIsc0RBQVc7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLHNEQUFXO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyw0QkFBNEIsNkJBQTZCLElBQUk7QUFDcEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLDZEQUFrQjtBQUM1QztBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0I7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9jb3JlL2Vycm9yL3V0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVycm9yVmFsdWVzLCBzdGFuZGFyZEVycm9yQ29kZXMgfSBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5jb25zdCBGQUxMQkFDS19NRVNTQUdFID0gJ1Vuc3BlY2lmaWVkIGVycm9yIG1lc3NhZ2UuJztcbmV4cG9ydCBjb25zdCBKU09OX1JQQ19TRVJWRVJfRVJST1JfTUVTU0FHRSA9ICdVbnNwZWNpZmllZCBzZXJ2ZXIgZXJyb3IuJztcbi8qKlxuICogR2V0cyB0aGUgbWVzc2FnZSBmb3IgYSBnaXZlbiBjb2RlLCBvciBhIGZhbGxiYWNrIG1lc3NhZ2UgaWYgdGhlIGNvZGUgaGFzXG4gKiBubyBjb3JyZXNwb25kaW5nIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRNZXNzYWdlRnJvbUNvZGUoY29kZSwgZmFsbGJhY2tNZXNzYWdlID0gRkFMTEJBQ0tfTUVTU0FHRSkge1xuICAgIGlmIChjb2RlICYmIE51bWJlci5pc0ludGVnZXIoY29kZSkpIHtcbiAgICAgICAgY29uc3QgY29kZVN0cmluZyA9IGNvZGUudG9TdHJpbmcoKTtcbiAgICAgICAgaWYgKGhhc0tleShlcnJvclZhbHVlcywgY29kZVN0cmluZykpIHtcbiAgICAgICAgICAgIHJldHVybiBlcnJvclZhbHVlc1tjb2RlU3RyaW5nXS5tZXNzYWdlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0pzb25ScGNTZXJ2ZXJFcnJvcihjb2RlKSkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT05fUlBDX1NFUlZFUl9FUlJPUl9NRVNTQUdFO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxsYmFja01lc3NhZ2U7XG59XG4vKipcbiAqIFJldHVybnMgd2hldGhlciB0aGUgZ2l2ZW4gY29kZSBpcyB2YWxpZC5cbiAqIEEgY29kZSBpcyBvbmx5IHZhbGlkIGlmIGl0IGhhcyBhIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkQ29kZShjb2RlKSB7XG4gICAgaWYgKCFOdW1iZXIuaXNJbnRlZ2VyKGNvZGUpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY29uc3QgY29kZVN0cmluZyA9IGNvZGUudG9TdHJpbmcoKTtcbiAgICBpZiAoZXJyb3JWYWx1ZXNbY29kZVN0cmluZ10pIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmIChpc0pzb25ScGNTZXJ2ZXJFcnJvcihjb2RlKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBlcnJvciBjb2RlIGZyb20gYW4gZXJyb3Igb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RXJyb3JDb2RlKGVycm9yKSB7XG4gICAgdmFyIF9hO1xuICAgIGlmICh0eXBlb2YgZXJyb3IgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiBlcnJvcjtcbiAgICB9XG4gICAgaWYgKGlzRXJyb3JXaXRoQ29kZShlcnJvcikpIHtcbiAgICAgICAgcmV0dXJuIChfYSA9IGVycm9yLmNvZGUpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGVycm9yLmVycm9yQ29kZTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbmZ1bmN0aW9uIGlzRXJyb3JXaXRoQ29kZShlcnJvcikge1xuICAgIHJldHVybiAodHlwZW9mIGVycm9yID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBlcnJvciAhPT0gbnVsbCAmJlxuICAgICAgICAodHlwZW9mIGVycm9yLmNvZGUgPT09ICdudW1iZXInIHx8XG4gICAgICAgICAgICB0eXBlb2YgZXJyb3IuZXJyb3JDb2RlID09PSAnbnVtYmVyJykpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHNlcmlhbGl6ZShlcnJvciwgeyBzaG91bGRJbmNsdWRlU3RhY2sgPSBmYWxzZSB9ID0ge30pIHtcbiAgICBjb25zdCBzZXJpYWxpemVkID0ge307XG4gICAgaWYgKGVycm9yICYmXG4gICAgICAgIHR5cGVvZiBlcnJvciA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgIUFycmF5LmlzQXJyYXkoZXJyb3IpICYmXG4gICAgICAgIGhhc0tleShlcnJvciwgJ2NvZGUnKSAmJlxuICAgICAgICBpc1ZhbGlkQ29kZShlcnJvci5jb2RlKSkge1xuICAgICAgICBjb25zdCBfZXJyb3IgPSBlcnJvcjtcbiAgICAgICAgc2VyaWFsaXplZC5jb2RlID0gX2Vycm9yLmNvZGU7XG4gICAgICAgIGlmIChfZXJyb3IubWVzc2FnZSAmJiB0eXBlb2YgX2Vycm9yLm1lc3NhZ2UgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICBzZXJpYWxpemVkLm1lc3NhZ2UgPSBfZXJyb3IubWVzc2FnZTtcbiAgICAgICAgICAgIGlmIChoYXNLZXkoX2Vycm9yLCAnZGF0YScpKSB7XG4gICAgICAgICAgICAgICAgc2VyaWFsaXplZC5kYXRhID0gX2Vycm9yLmRhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzZXJpYWxpemVkLm1lc3NhZ2UgPSBnZXRNZXNzYWdlRnJvbUNvZGUoc2VyaWFsaXplZC5jb2RlKTtcbiAgICAgICAgICAgIHNlcmlhbGl6ZWQuZGF0YSA9IHsgb3JpZ2luYWxFcnJvcjogYXNzaWduT3JpZ2luYWxFcnJvcihlcnJvcikgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgc2VyaWFsaXplZC5jb2RlID0gc3RhbmRhcmRFcnJvckNvZGVzLnJwYy5pbnRlcm5hbDtcbiAgICAgICAgc2VyaWFsaXplZC5tZXNzYWdlID0gaGFzU3RyaW5nUHJvcGVydHkoZXJyb3IsICdtZXNzYWdlJykgPyBlcnJvci5tZXNzYWdlIDogRkFMTEJBQ0tfTUVTU0FHRTtcbiAgICAgICAgc2VyaWFsaXplZC5kYXRhID0geyBvcmlnaW5hbEVycm9yOiBhc3NpZ25PcmlnaW5hbEVycm9yKGVycm9yKSB9O1xuICAgIH1cbiAgICBpZiAoc2hvdWxkSW5jbHVkZVN0YWNrKSB7XG4gICAgICAgIHNlcmlhbGl6ZWQuc3RhY2sgPSBoYXNTdHJpbmdQcm9wZXJ0eShlcnJvciwgJ3N0YWNrJykgPyBlcnJvci5zdGFjayA6IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHNlcmlhbGl6ZWQ7XG59XG4vLyBJbnRlcm5hbFxuZnVuY3Rpb24gaXNKc29uUnBjU2VydmVyRXJyb3IoY29kZSkge1xuICAgIHJldHVybiBjb2RlID49IC0zMjA5OSAmJiBjb2RlIDw9IC0zMjAwMDtcbn1cbmZ1bmN0aW9uIGFzc2lnbk9yaWdpbmFsRXJyb3IoZXJyb3IpIHtcbiAgICBpZiAoZXJyb3IgJiYgdHlwZW9mIGVycm9yID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShlcnJvcikpIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGVycm9yKTtcbiAgICB9XG4gICAgcmV0dXJuIGVycm9yO1xufVxuZnVuY3Rpb24gaGFzS2V5KG9iaiwga2V5KSB7XG4gICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSk7XG59XG5mdW5jdGlvbiBoYXNTdHJpbmdQcm9wZXJ0eShvYmosIHByb3ApIHtcbiAgICByZXR1cm4gKHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIG9iaiAhPT0gbnVsbCAmJiBwcm9wIGluIG9iaiAmJiB0eXBlb2Ygb2JqW3Byb3BdID09PSAnc3RyaW5nJyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD11dGlscy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/provider/interface.js": /*!***************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/provider/interface.js ***! \***************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ProviderEventEmitter: () => (/* binding */ ProviderEventEmitter)\n/* harmony export */ });\n/* harmony import */ var eventemitter3__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! eventemitter3 */ \"(app-pages-browser)/./node_modules/eventemitter3/index.mjs\");\n\nclass ProviderEventEmitter extends eventemitter3__WEBPACK_IMPORTED_MODULE_0__.EventEmitter {\n}\n//# sourceMappingURL=interface.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvcHJvdmlkZXIvaW50ZXJmYWNlLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQTZDO0FBQ3RDLG1DQUFtQyx1REFBWTtBQUN0RDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvY29yZS9wcm92aWRlci9pbnRlcmZhY2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnZXZlbnRlbWl0dGVyMyc7XG5leHBvcnQgY2xhc3MgUHJvdmlkZXJFdmVudEVtaXR0ZXIgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW50ZXJmYWNlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/provider/interface.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/storage/ScopedLocalStorage.js": /*!***********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/storage/ScopedLocalStorage.js ***! \***********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ScopedLocalStorage: () => (/* binding */ ScopedLocalStorage)\n/* harmony export */ });\n// Copyright (c) 2018-2024 Coinbase, Inc. <https://www.coinbase.com/>\n// TODO: clean up, or possibly deprecate Storage class\nclass ScopedLocalStorage {\n constructor(scope, module) {\n this.scope = scope;\n this.module = module;\n }\n storeObject(key, item) {\n this.setItem(key, JSON.stringify(item));\n }\n loadObject(key) {\n const item = this.getItem(key);\n return item ? JSON.parse(item) : undefined;\n }\n setItem(key, value) {\n localStorage.setItem(this.scopedKey(key), value);\n }\n getItem(key) {\n return localStorage.getItem(this.scopedKey(key));\n }\n removeItem(key) {\n localStorage.removeItem(this.scopedKey(key));\n }\n clear() {\n const prefix = this.scopedKey('');\n const keysToRemove = [];\n for (let i = 0; i < localStorage.length; i++) {\n const key = localStorage.key(i);\n if (typeof key === 'string' && key.startsWith(prefix)) {\n keysToRemove.push(key);\n }\n }\n keysToRemove.forEach((key) => localStorage.removeItem(key));\n }\n scopedKey(key) {\n return `-${this.scope}${this.module ? `:${this.module}` : ''}:${key}`;\n }\n static clearAll() {\n new ScopedLocalStorage('CBWSDK').clear();\n new ScopedLocalStorage('walletlink').clear();\n }\n}\n//# sourceMappingURL=ScopedLocalStorage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvc3RvcmFnZS9TY29wZWRMb2NhbFN0b3JhZ2UuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IseUJBQXlCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsV0FBVyxFQUFFLGtCQUFrQixZQUFZLE9BQU8sR0FBRyxJQUFJO0FBQzVFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvY29yZS9zdG9yYWdlL1Njb3BlZExvY2FsU3RvcmFnZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyNCBDb2luYmFzZSwgSW5jLiA8aHR0cHM6Ly93d3cuY29pbmJhc2UuY29tLz5cbi8vIFRPRE86IGNsZWFuIHVwLCBvciBwb3NzaWJseSBkZXByZWNhdGUgU3RvcmFnZSBjbGFzc1xuZXhwb3J0IGNsYXNzIFNjb3BlZExvY2FsU3RvcmFnZSB7XG4gICAgY29uc3RydWN0b3Ioc2NvcGUsIG1vZHVsZSkge1xuICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7XG4gICAgICAgIHRoaXMubW9kdWxlID0gbW9kdWxlO1xuICAgIH1cbiAgICBzdG9yZU9iamVjdChrZXksIGl0ZW0pIHtcbiAgICAgICAgdGhpcy5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkoaXRlbSkpO1xuICAgIH1cbiAgICBsb2FkT2JqZWN0KGtleSkge1xuICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5nZXRJdGVtKGtleSk7XG4gICAgICAgIHJldHVybiBpdGVtID8gSlNPTi5wYXJzZShpdGVtKSA6IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgc2V0SXRlbShrZXksIHZhbHVlKSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuc2NvcGVkS2V5KGtleSksIHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0SXRlbShrZXkpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuc2NvcGVkS2V5KGtleSkpO1xuICAgIH1cbiAgICByZW1vdmVJdGVtKGtleSkge1xuICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh0aGlzLnNjb3BlZEtleShrZXkpKTtcbiAgICB9XG4gICAgY2xlYXIoKSB7XG4gICAgICAgIGNvbnN0IHByZWZpeCA9IHRoaXMuc2NvcGVkS2V5KCcnKTtcbiAgICAgICAgY29uc3Qga2V5c1RvUmVtb3ZlID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbG9jYWxTdG9yYWdlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBsb2NhbFN0b3JhZ2Uua2V5KGkpO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBrZXkgPT09ICdzdHJpbmcnICYmIGtleS5zdGFydHNXaXRoKHByZWZpeCkpIHtcbiAgICAgICAgICAgICAgICBrZXlzVG9SZW1vdmUucHVzaChrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGtleXNUb1JlbW92ZS5mb3JFYWNoKChrZXkpID0+IGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSkpO1xuICAgIH1cbiAgICBzY29wZWRLZXkoa2V5KSB7XG4gICAgICAgIHJldHVybiBgLSR7dGhpcy5zY29wZX0ke3RoaXMubW9kdWxlID8gYDoke3RoaXMubW9kdWxlfWAgOiAnJ306JHtrZXl9YDtcbiAgICB9XG4gICAgc3RhdGljIGNsZWFyQWxsKCkge1xuICAgICAgICBuZXcgU2NvcGVkTG9jYWxTdG9yYWdlKCdDQldTREsnKS5jbGVhcigpO1xuICAgICAgICBuZXcgU2NvcGVkTG9jYWxTdG9yYWdlKCd3YWxsZXRsaW5rJykuY2xlYXIoKTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1TY29wZWRMb2NhbFN0b3JhZ2UuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/storage/ScopedLocalStorage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/communicator.js": /*!**************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/communicator.js ***! \**************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ logPopupSetupCompleted: () => (/* binding */ logPopupSetupCompleted),\n/* harmony export */ logPopupSetupStarted: () => (/* binding */ logPopupSetupStarted),\n/* harmony export */ logPopupUnloadReceived: () => (/* binding */ logPopupUnloadReceived)\n/* harmony export */ });\n/* harmony import */ var _logEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logEvent.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\");\n\nconst logPopupSetupStarted = () => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('communicator.popup_setup.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logPopupSetupCompleted = () => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('communicator.popup_setup.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logPopupUnloadReceived = () => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('communicator.popup_unload.received', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\n//# sourceMappingURL=communicator.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9jb21tdW5pY2F0b3IuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUErRjtBQUN4RjtBQUNQLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTztBQUNQLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTztBQUNQLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9jb21tdW5pY2F0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uVHlwZSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLCBDb21wb25lbnRUeXBlLCBsb2dFdmVudCB9IGZyb20gJy4uL2xvZ0V2ZW50LmpzJztcbmV4cG9ydCBjb25zdCBsb2dQb3B1cFNldHVwU3RhcnRlZCA9ICgpID0+IHtcbiAgICBsb2dFdmVudCgnY29tbXVuaWNhdG9yLnBvcHVwX3NldHVwLnN0YXJ0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmhpZ2gpO1xufTtcbmV4cG9ydCBjb25zdCBsb2dQb3B1cFNldHVwQ29tcGxldGVkID0gKCkgPT4ge1xuICAgIGxvZ0V2ZW50KCdjb21tdW5pY2F0b3IucG9wdXBfc2V0dXAuY29tcGxldGVkJywge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUudW5rbm93bixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nUG9wdXBVbmxvYWRSZWNlaXZlZCA9ICgpID0+IHtcbiAgICBsb2dFdmVudCgnY29tbXVuaWNhdG9yLnBvcHVwX3VubG9hZC5yZWNlaXZlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLnVua25vd24sXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29tbXVuaWNhdG9yLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/communicator.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/provider.js": /*!**********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/provider.js ***! \**********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ logEnableFunctionCalled: () => (/* binding */ logEnableFunctionCalled),\n/* harmony export */ logRequestError: () => (/* binding */ logRequestError),\n/* harmony export */ logRequestResponded: () => (/* binding */ logRequestResponded),\n/* harmony export */ logRequestStarted: () => (/* binding */ logRequestStarted),\n/* harmony export */ logSignerLoadedFromStorage: () => (/* binding */ logSignerLoadedFromStorage)\n/* harmony export */ });\n/* harmony import */ var _logEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logEvent.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\");\n\nconst logSignerLoadedFromStorage = ({ signerType }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('provider.signer.loaded_from_storage', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.measurement,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n signerType,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.low);\n};\nconst logRequestStarted = ({ method, correlationId, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('provider.request.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestError = ({ method, correlationId, signerType, errorMessage, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('provider.request.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n signerType,\n correlationId,\n errorMessage,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestResponded = ({ method, signerType, correlationId, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('provider.request.responded', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n signerType,\n correlationId,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logEnableFunctionCalled = () => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('provider.enable_function.called', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.measurement,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\n//# sourceMappingURL=provider.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9wcm92aWRlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBK0Y7QUFDeEYsc0NBQXNDLFlBQVk7QUFDekQsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQSxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sNkJBQTZCLHdCQUF3QjtBQUM1RCxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0EsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLDJCQUEyQixrREFBa0Q7QUFDcEYsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sK0JBQStCLG9DQUFvQztBQUMxRSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0E7QUFDQSxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ087QUFDUCxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQyxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9jb3JlL3RlbGVtZXRyeS9ldmVudHMvcHJvdmlkZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uVHlwZSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLCBDb21wb25lbnRUeXBlLCBsb2dFdmVudCB9IGZyb20gJy4uL2xvZ0V2ZW50LmpzJztcbmV4cG9ydCBjb25zdCBsb2dTaWduZXJMb2FkZWRGcm9tU3RvcmFnZSA9ICh7IHNpZ25lclR5cGUgfSkgPT4ge1xuICAgIGxvZ0V2ZW50KCdwcm92aWRlci5zaWduZXIubG9hZGVkX2Zyb21fc3RvcmFnZScsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLm1lYXN1cmVtZW50LFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIHNpZ25lclR5cGUsXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmxvdyk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1JlcXVlc3RTdGFydGVkID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCB9KSA9PiB7XG4gICAgbG9nRXZlbnQoJ3Byb3ZpZGVyLnJlcXVlc3Quc3RhcnRlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLnVua25vd24sXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nUmVxdWVzdEVycm9yID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCBzaWduZXJUeXBlLCBlcnJvck1lc3NhZ2UsIH0pID0+IHtcbiAgICBsb2dFdmVudCgncHJvdmlkZXIucmVxdWVzdC5lcnJvcicsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLmVycm9yLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgc2lnbmVyVHlwZSxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZXJyb3JNZXNzYWdlLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nUmVxdWVzdFJlc3BvbmRlZCA9ICh7IG1ldGhvZCwgc2lnbmVyVHlwZSwgY29ycmVsYXRpb25JZCwgfSkgPT4ge1xuICAgIGxvZ0V2ZW50KCdwcm92aWRlci5yZXF1ZXN0LnJlc3BvbmRlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLnVua25vd24sXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBzaWduZXJUeXBlLFxuICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nRW5hYmxlRnVuY3Rpb25DYWxsZWQgPSAoKSA9PiB7XG4gICAgbG9nRXZlbnQoJ3Byb3ZpZGVyLmVuYWJsZV9mdW5jdGlvbi5jYWxsZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS5tZWFzdXJlbWVudCxcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wcm92aWRlci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/provider.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-signer.js": /*!************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-signer.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ logHandshakeCompleted: () => (/* binding */ logHandshakeCompleted),\n/* harmony export */ logHandshakeError: () => (/* binding */ logHandshakeError),\n/* harmony export */ logHandshakeStarted: () => (/* binding */ logHandshakeStarted),\n/* harmony export */ logRequestCompleted: () => (/* binding */ logRequestCompleted),\n/* harmony export */ logRequestError: () => (/* binding */ logRequestError),\n/* harmony export */ logRequestStarted: () => (/* binding */ logRequestStarted)\n/* harmony export */ });\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _logEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logEvent.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\");\n\n\nconst logHandshakeStarted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_signer.handshake.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logHandshakeError = ({ method, correlationId, errorMessage, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_signer.handshake.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n errorMessage,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logHandshakeCompleted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_signer.handshake.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestStarted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_signer.request.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestError = ({ method, correlationId, errorMessage, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_signer.request.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n errorMessage,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestCompleted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_signer.request.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\n//# sourceMappingURL=scw-signer.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9zY3ctc2lnbmVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQWdEO0FBQytDO0FBQ3hGLCtCQUErQix3QkFBd0I7QUFDOUQ7QUFDQSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0EscUNBQXFDLGtEQUFLO0FBQzFDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTyw2QkFBNkIsc0NBQXNDO0FBQzFFO0FBQ0EsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLGtEQUFLO0FBQzFDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTyxpQ0FBaUMsd0JBQXdCO0FBQ2hFO0FBQ0EsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBLHFDQUFxQyxrREFBSztBQUMxQyxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sNkJBQTZCLHdCQUF3QjtBQUM1RDtBQUNBLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDO0FBQ0E7QUFDQSxxQ0FBcUMsa0RBQUs7QUFDMUMsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLDJCQUEyQixzQ0FBc0M7QUFDeEU7QUFDQSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsa0RBQUs7QUFDMUMsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLCtCQUErQix3QkFBd0I7QUFDOUQ7QUFDQSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0EscUNBQXFDLGtEQUFLO0FBQzFDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9zY3ctc2lnbmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0b3JlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvc3RvcmUuanMnO1xuaW1wb3J0IHsgQWN0aW9uVHlwZSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLCBDb21wb25lbnRUeXBlLCBsb2dFdmVudCB9IGZyb20gJy4uL2xvZ0V2ZW50LmpzJztcbmV4cG9ydCBjb25zdCBsb2dIYW5kc2hha2VTdGFydGVkID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGxvZ0V2ZW50KCdzY3dfc2lnbmVyLmhhbmRzaGFrZS5zdGFydGVkJywge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUudW5rbm93bixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgICAgICBtZXRob2QsXG4gICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgIGVuYWJsZUF1dG9TdWJBY2NvdW50czogKF9hID0gc3RvcmUuc3ViQWNjb3VudHNDb25maWcuZ2V0KCkpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5lbmFibGVBdXRvU3ViQWNjb3VudHMsXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmhpZ2gpO1xufTtcbmV4cG9ydCBjb25zdCBsb2dIYW5kc2hha2VFcnJvciA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgZXJyb3JNZXNzYWdlLCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGxvZ0V2ZW50KCdzY3dfc2lnbmVyLmhhbmRzaGFrZS5lcnJvcicsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLmVycm9yLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZXJyb3JNZXNzYWdlLFxuICAgICAgICBlbmFibGVBdXRvU3ViQWNjb3VudHM6IChfYSA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZW5hYmxlQXV0b1N1YkFjY291bnRzLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nSGFuZHNoYWtlQ29tcGxldGVkID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGxvZ0V2ZW50KCdzY3dfc2lnbmVyLmhhbmRzaGFrZS5jb21wbGV0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZW5hYmxlQXV0b1N1YkFjY291bnRzOiAoX2EgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVuYWJsZUF1dG9TdWJBY2NvdW50cyxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1JlcXVlc3RTdGFydGVkID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGxvZ0V2ZW50KCdzY3dfc2lnbmVyLnJlcXVlc3Quc3RhcnRlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLnVua25vd24sXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICBlbmFibGVBdXRvU3ViQWNjb3VudHM6IChfYSA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZW5hYmxlQXV0b1N1YkFjY291bnRzLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nUmVxdWVzdEVycm9yID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCBlcnJvck1lc3NhZ2UsIH0pID0+IHtcbiAgICB2YXIgX2E7XG4gICAgbG9nRXZlbnQoJ3Njd19zaWduZXIucmVxdWVzdC5lcnJvcicsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLmVycm9yLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZXJyb3JNZXNzYWdlLFxuICAgICAgICBlbmFibGVBdXRvU3ViQWNjb3VudHM6IChfYSA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZW5hYmxlQXV0b1N1YkFjY291bnRzLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nUmVxdWVzdENvbXBsZXRlZCA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgfSkgPT4ge1xuICAgIHZhciBfYTtcbiAgICBsb2dFdmVudCgnc2N3X3NpZ25lci5yZXF1ZXN0LmNvbXBsZXRlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLnVua25vd24sXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICBlbmFibGVBdXRvU3ViQWNjb3VudHM6IChfYSA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZW5hYmxlQXV0b1N1YkFjY291bnRzLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zY3ctc2lnbmVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-signer.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-sub-account.js": /*!*****************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-sub-account.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ logAddOwnerCompleted: () => (/* binding */ logAddOwnerCompleted),\n/* harmony export */ logAddOwnerError: () => (/* binding */ logAddOwnerError),\n/* harmony export */ logAddOwnerStarted: () => (/* binding */ logAddOwnerStarted),\n/* harmony export */ logInsufficientBalanceErrorHandlingCompleted: () => (/* binding */ logInsufficientBalanceErrorHandlingCompleted),\n/* harmony export */ logInsufficientBalanceErrorHandlingError: () => (/* binding */ logInsufficientBalanceErrorHandlingError),\n/* harmony export */ logInsufficientBalanceErrorHandlingStarted: () => (/* binding */ logInsufficientBalanceErrorHandlingStarted),\n/* harmony export */ logSubAccountRequestCompleted: () => (/* binding */ logSubAccountRequestCompleted),\n/* harmony export */ logSubAccountRequestError: () => (/* binding */ logSubAccountRequestError),\n/* harmony export */ logSubAccountRequestStarted: () => (/* binding */ logSubAccountRequestStarted)\n/* harmony export */ });\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _logEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logEvent.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\");\n\n\nconst logSubAccountRequestStarted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.request.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logSubAccountRequestCompleted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.request.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logSubAccountRequestError = ({ method, correlationId, errorMessage, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.request.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n errorMessage,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logAddOwnerStarted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.add_owner.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logAddOwnerCompleted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.add_owner.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logAddOwnerError = ({ method, correlationId, errorMessage, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.add_owner.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n errorMessage,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logInsufficientBalanceErrorHandlingStarted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.insufficient_balance.error_handling.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logInsufficientBalanceErrorHandlingCompleted = ({ method, correlationId, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.insufficient_balance.error_handling.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logInsufficientBalanceErrorHandlingError = ({ method, correlationId, errorMessage, }) => {\n var _a;\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('scw_sub_account.insufficient_balance.error_handling.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n errorMessage,\n enableAutoSubAccounts: (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _a === void 0 ? void 0 : _a.enableAutoSubAccounts,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\n//# sourceMappingURL=scw-sub-account.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9zY3ctc3ViLWFjY291bnQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBZ0Q7QUFDK0M7QUFDeEYsdUNBQXVDLHdCQUF3QjtBQUN0RTtBQUNBLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDO0FBQ0E7QUFDQSxxQ0FBcUMsa0RBQUs7QUFDMUMsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLHlDQUF5Qyx3QkFBd0I7QUFDeEU7QUFDQSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0EscUNBQXFDLGtEQUFLO0FBQzFDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTyxxQ0FBcUMsc0NBQXNDO0FBQ2xGO0FBQ0EsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLGtEQUFLO0FBQzFDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTyw4QkFBOEIsd0JBQXdCO0FBQzdEO0FBQ0EsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBLHFDQUFxQyxrREFBSztBQUMxQyxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sZ0NBQWdDLHdCQUF3QjtBQUMvRDtBQUNBLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDO0FBQ0E7QUFDQSxxQ0FBcUMsa0RBQUs7QUFDMUMsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLDRCQUE0QixzQ0FBc0M7QUFDekU7QUFDQSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsa0RBQUs7QUFDMUMsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLHNEQUFzRCx3QkFBd0I7QUFDckY7QUFDQSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0EscUNBQXFDLGtEQUFLO0FBQzFDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTyx3REFBd0Qsd0JBQXdCO0FBQ3ZGO0FBQ0EsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBLHFDQUFxQyxrREFBSztBQUMxQyxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sb0RBQW9ELHNDQUFzQztBQUNqRztBQUNBLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyxrREFBSztBQUMxQyxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9jb3JlL3RlbGVtZXRyeS9ldmVudHMvc2N3LXN1Yi1hY2NvdW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0b3JlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvc3RvcmUuanMnO1xuaW1wb3J0IHsgQWN0aW9uVHlwZSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLCBDb21wb25lbnRUeXBlLCBsb2dFdmVudCB9IGZyb20gJy4uL2xvZ0V2ZW50LmpzJztcbmV4cG9ydCBjb25zdCBsb2dTdWJBY2NvdW50UmVxdWVzdFN0YXJ0ZWQgPSAoeyBtZXRob2QsIGNvcnJlbGF0aW9uSWQsIH0pID0+IHtcbiAgICB2YXIgX2E7XG4gICAgbG9nRXZlbnQoJ3Njd19zdWJfYWNjb3VudC5yZXF1ZXN0LnN0YXJ0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZW5hYmxlQXV0b1N1YkFjY291bnRzOiAoX2EgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVuYWJsZUF1dG9TdWJBY2NvdW50cyxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1N1YkFjY291bnRSZXF1ZXN0Q29tcGxldGVkID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGxvZ0V2ZW50KCdzY3dfc3ViX2FjY291bnQucmVxdWVzdC5jb21wbGV0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZW5hYmxlQXV0b1N1YkFjY291bnRzOiAoX2EgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVuYWJsZUF1dG9TdWJBY2NvdW50cyxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1N1YkFjY291bnRSZXF1ZXN0RXJyb3IgPSAoeyBtZXRob2QsIGNvcnJlbGF0aW9uSWQsIGVycm9yTWVzc2FnZSwgfSkgPT4ge1xuICAgIHZhciBfYTtcbiAgICBsb2dFdmVudCgnc2N3X3N1Yl9hY2NvdW50LnJlcXVlc3QuZXJyb3InLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS5lcnJvcixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgICAgICBtZXRob2QsXG4gICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgIGVycm9yTWVzc2FnZSxcbiAgICAgICAgZW5hYmxlQXV0b1N1YkFjY291bnRzOiAoX2EgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVuYWJsZUF1dG9TdWJBY2NvdW50cyxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ0FkZE93bmVyU3RhcnRlZCA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgfSkgPT4ge1xuICAgIHZhciBfYTtcbiAgICBsb2dFdmVudCgnc2N3X3N1Yl9hY2NvdW50LmFkZF9vd25lci5zdGFydGVkJywge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUudW5rbm93bixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgICAgICBtZXRob2QsXG4gICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgIGVuYWJsZUF1dG9TdWJBY2NvdW50czogKF9hID0gc3RvcmUuc3ViQWNjb3VudHNDb25maWcuZ2V0KCkpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5lbmFibGVBdXRvU3ViQWNjb3VudHMsXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmhpZ2gpO1xufTtcbmV4cG9ydCBjb25zdCBsb2dBZGRPd25lckNvbXBsZXRlZCA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgfSkgPT4ge1xuICAgIHZhciBfYTtcbiAgICBsb2dFdmVudCgnc2N3X3N1Yl9hY2NvdW50LmFkZF9vd25lci5jb21wbGV0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZW5hYmxlQXV0b1N1YkFjY291bnRzOiAoX2EgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVuYWJsZUF1dG9TdWJBY2NvdW50cyxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ0FkZE93bmVyRXJyb3IgPSAoeyBtZXRob2QsIGNvcnJlbGF0aW9uSWQsIGVycm9yTWVzc2FnZSwgfSkgPT4ge1xuICAgIHZhciBfYTtcbiAgICBsb2dFdmVudCgnc2N3X3N1Yl9hY2NvdW50LmFkZF9vd25lci5lcnJvcicsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLmVycm9yLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZXJyb3JNZXNzYWdlLFxuICAgICAgICBlbmFibGVBdXRvU3ViQWNjb3VudHM6IChfYSA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZW5hYmxlQXV0b1N1YkFjY291bnRzLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nSW5zdWZmaWNpZW50QmFsYW5jZUVycm9ySGFuZGxpbmdTdGFydGVkID0gKHsgbWV0aG9kLCBjb3JyZWxhdGlvbklkLCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGxvZ0V2ZW50KCdzY3dfc3ViX2FjY291bnQuaW5zdWZmaWNpZW50X2JhbGFuY2UuZXJyb3JfaGFuZGxpbmcuc3RhcnRlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLnVua25vd24sXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICBlbmFibGVBdXRvU3ViQWNjb3VudHM6IChfYSA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZW5hYmxlQXV0b1N1YkFjY291bnRzLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nSW5zdWZmaWNpZW50QmFsYW5jZUVycm9ySGFuZGxpbmdDb21wbGV0ZWQgPSAoeyBtZXRob2QsIGNvcnJlbGF0aW9uSWQsIH0pID0+IHtcbiAgICB2YXIgX2E7XG4gICAgbG9nRXZlbnQoJ3Njd19zdWJfYWNjb3VudC5pbnN1ZmZpY2llbnRfYmFsYW5jZS5lcnJvcl9oYW5kbGluZy5jb21wbGV0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgZW5hYmxlQXV0b1N1YkFjY291bnRzOiAoX2EgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmVuYWJsZUF1dG9TdWJBY2NvdW50cyxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ0luc3VmZmljaWVudEJhbGFuY2VFcnJvckhhbmRsaW5nRXJyb3IgPSAoeyBtZXRob2QsIGNvcnJlbGF0aW9uSWQsIGVycm9yTWVzc2FnZSwgfSkgPT4ge1xuICAgIHZhciBfYTtcbiAgICBsb2dFdmVudCgnc2N3X3N1Yl9hY2NvdW50Lmluc3VmZmljaWVudF9iYWxhbmNlLmVycm9yX2hhbmRsaW5nLmVycm9yJywge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUuZXJyb3IsXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICBlcnJvck1lc3NhZ2UsXG4gICAgICAgIGVuYWJsZUF1dG9TdWJBY2NvdW50czogKF9hID0gc3RvcmUuc3ViQWNjb3VudHNDb25maWcuZ2V0KCkpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5lbmFibGVBdXRvU3ViQWNjb3VudHMsXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmhpZ2gpO1xufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNjdy1zdWItYWNjb3VudC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-sub-account.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/signer-selection.js": /*!******************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/signer-selection.js ***! \******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ logSignerSelectionRequested: () => (/* binding */ logSignerSelectionRequested),\n/* harmony export */ logSignerSelectionResponded: () => (/* binding */ logSignerSelectionResponded)\n/* harmony export */ });\n/* harmony import */ var _logEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logEvent.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\");\n\nconst logSignerSelectionRequested = () => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('signer.selection.requested', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logSignerSelectionResponded = (signerType) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('signer.selection.responded', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n signerType,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\n//# sourceMappingURL=signer-selection.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9zaWduZXItc2VsZWN0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUErRjtBQUN4RjtBQUNQLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTztBQUNQLElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDO0FBQ0EsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvY29yZS90ZWxlbWV0cnkvZXZlbnRzL3NpZ25lci1zZWxlY3Rpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uVHlwZSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLCBDb21wb25lbnRUeXBlLCBsb2dFdmVudCB9IGZyb20gJy4uL2xvZ0V2ZW50LmpzJztcbmV4cG9ydCBjb25zdCBsb2dTaWduZXJTZWxlY3Rpb25SZXF1ZXN0ZWQgPSAoKSA9PiB7XG4gICAgbG9nRXZlbnQoJ3NpZ25lci5zZWxlY3Rpb24ucmVxdWVzdGVkJywge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUudW5rbm93bixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nU2lnbmVyU2VsZWN0aW9uUmVzcG9uZGVkID0gKHNpZ25lclR5cGUpID0+IHtcbiAgICBsb2dFdmVudCgnc2lnbmVyLnNlbGVjdGlvbi5yZXNwb25kZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIHNpZ25lclR5cGUsXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmhpZ2gpO1xufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNpZ25lci1zZWxlY3Rpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/signer-selection.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/snackbar.js": /*!**********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/snackbar.js ***! \**********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ logSnackbarActionClicked: () => (/* binding */ logSnackbarActionClicked),\n/* harmony export */ logSnackbarShown: () => (/* binding */ logSnackbarShown)\n/* harmony export */ });\n/* harmony import */ var _logEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logEvent.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\");\n\nconst logSnackbarShown = ({ snackbarContext }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)(`snackbar.${snackbarContext}.shown`, {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.render,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.modal,\n snackbarContext,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logSnackbarActionClicked = ({ snackbarContext, snackbarAction, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)(`snackbar.${snackbarContext}.action_clicked`, {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.click,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.button,\n snackbarContext,\n snackbarAction,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\n//# sourceMappingURL=snackbar.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9zbmFja2Jhci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBK0Y7QUFDeEYsNEJBQTRCLGlCQUFpQjtBQUNwRCxJQUFJLHNEQUFRLGFBQWEsZ0JBQWdCO0FBQ3pDLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQSxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sb0NBQW9DLGtDQUFrQztBQUM3RSxJQUFJLHNEQUFRLGFBQWEsZ0JBQWdCO0FBQ3pDLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9zbmFja2Jhci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25UeXBlLCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UsIENvbXBvbmVudFR5cGUsIGxvZ0V2ZW50IH0gZnJvbSAnLi4vbG9nRXZlbnQuanMnO1xuZXhwb3J0IGNvbnN0IGxvZ1NuYWNrYmFyU2hvd24gPSAoeyBzbmFja2JhckNvbnRleHQgfSkgPT4ge1xuICAgIGxvZ0V2ZW50KGBzbmFja2Jhci4ke3NuYWNrYmFyQ29udGV4dH0uc2hvd25gLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS5yZW5kZXIsXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUubW9kYWwsXG4gICAgICAgIHNuYWNrYmFyQ29udGV4dCxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1NuYWNrYmFyQWN0aW9uQ2xpY2tlZCA9ICh7IHNuYWNrYmFyQ29udGV4dCwgc25hY2tiYXJBY3Rpb24sIH0pID0+IHtcbiAgICBsb2dFdmVudChgc25hY2tiYXIuJHtzbmFja2JhckNvbnRleHR9LmFjdGlvbl9jbGlja2VkYCwge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUuY2xpY2ssXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUuYnV0dG9uLFxuICAgICAgICBzbmFja2JhckNvbnRleHQsXG4gICAgICAgIHNuYWNrYmFyQWN0aW9uLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zbmFja2Jhci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/snackbar.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/walletlink-signer.js": /*!*******************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/walletlink-signer.js ***! \*******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ logHandshakeCompleted: () => (/* binding */ logHandshakeCompleted),\n/* harmony export */ logHandshakeError: () => (/* binding */ logHandshakeError),\n/* harmony export */ logHandshakeStarted: () => (/* binding */ logHandshakeStarted),\n/* harmony export */ logRequestCompleted: () => (/* binding */ logRequestCompleted),\n/* harmony export */ logRequestError: () => (/* binding */ logRequestError),\n/* harmony export */ logRequestStarted: () => (/* binding */ logRequestStarted),\n/* harmony export */ logWalletLinkConnectionConnectionFailed: () => (/* binding */ logWalletLinkConnectionConnectionFailed),\n/* harmony export */ logWalletLinkConnectionFetchUnseenEventsFailed: () => (/* binding */ logWalletLinkConnectionFetchUnseenEventsFailed)\n/* harmony export */ });\n/* harmony import */ var _logEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logEvent.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\");\n\nconst logHandshakeStarted = ({ method, correlationId, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.handshake.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logHandshakeError = ({ method, correlationId, errorMessage, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.handshake.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n errorMessage,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logHandshakeCompleted = ({ method, correlationId, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.handshake.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestStarted = ({ method, correlationId, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.request.started', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestError = ({ method, correlationId, errorMessage, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.request.error', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.error,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n errorMessage,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logRequestCompleted = ({ method, correlationId, }) => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.request.completed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.unknown,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n method,\n correlationId,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logWalletLinkConnectionConnectionFailed = () => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.walletlink_connection.connection_failed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.measurement,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\nconst logWalletLinkConnectionFetchUnseenEventsFailed = () => {\n (0,_logEvent_js__WEBPACK_IMPORTED_MODULE_0__.logEvent)('walletlink_signer.walletlink_connection.fetch_unseen_events_failed', {\n action: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ActionType.measurement,\n componentType: _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.ComponentType.unknown,\n }, _logEvent_js__WEBPACK_IMPORTED_MODULE_0__.AnalyticsEventImportance.high);\n};\n//# sourceMappingURL=walletlink-signer.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy93YWxsZXRsaW5rLXNpZ25lci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBK0Y7QUFDeEYsK0JBQStCLHdCQUF3QjtBQUM5RCxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0EsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLDZCQUE2QixzQ0FBc0M7QUFDMUUsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPLGlDQUFpQyx3QkFBd0I7QUFDaEUsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEM7QUFDQTtBQUNBLEtBQUssRUFBRSxrRUFBd0I7QUFDL0I7QUFDTyw2QkFBNkIsd0JBQXdCO0FBQzVELElBQUksc0RBQVE7QUFDWixnQkFBZ0Isb0RBQVU7QUFDMUIsdUJBQXVCLHVEQUFhO0FBQ3BDO0FBQ0E7QUFDQSxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sMkJBQTJCLHNDQUFzQztBQUN4RSxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0E7QUFDQSxLQUFLLEVBQUUsa0VBQXdCO0FBQy9CO0FBQ08sK0JBQStCLHdCQUF3QjtBQUM5RCxJQUFJLHNEQUFRO0FBQ1osZ0JBQWdCLG9EQUFVO0FBQzFCLHVCQUF1Qix1REFBYTtBQUNwQztBQUNBO0FBQ0EsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPO0FBQ1AsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEMsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNPO0FBQ1AsSUFBSSxzREFBUTtBQUNaLGdCQUFnQixvREFBVTtBQUMxQix1QkFBdUIsdURBQWE7QUFDcEMsS0FBSyxFQUFFLGtFQUF3QjtBQUMvQjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvY29yZS90ZWxlbWV0cnkvZXZlbnRzL3dhbGxldGxpbmstc2lnbmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvblR5cGUsIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZSwgQ29tcG9uZW50VHlwZSwgbG9nRXZlbnQgfSBmcm9tICcuLi9sb2dFdmVudC5qcyc7XG5leHBvcnQgY29uc3QgbG9nSGFuZHNoYWtlU3RhcnRlZCA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgfSkgPT4ge1xuICAgIGxvZ0V2ZW50KCd3YWxsZXRsaW5rX3NpZ25lci5oYW5kc2hha2Uuc3RhcnRlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLnVua25vd24sXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgIH0sIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZS5oaWdoKTtcbn07XG5leHBvcnQgY29uc3QgbG9nSGFuZHNoYWtlRXJyb3IgPSAoeyBtZXRob2QsIGNvcnJlbGF0aW9uSWQsIGVycm9yTWVzc2FnZSwgfSkgPT4ge1xuICAgIGxvZ0V2ZW50KCd3YWxsZXRsaW5rX3NpZ25lci5oYW5kc2hha2UuZXJyb3InLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS5lcnJvcixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgICAgICBtZXRob2QsXG4gICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgIGVycm9yTWVzc2FnZSxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ0hhbmRzaGFrZUNvbXBsZXRlZCA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgfSkgPT4ge1xuICAgIGxvZ0V2ZW50KCd3YWxsZXRsaW5rX3NpZ25lci5oYW5kc2hha2UuY29tcGxldGVkJywge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUudW5rbm93bixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgICAgICBtZXRob2QsXG4gICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmhpZ2gpO1xufTtcbmV4cG9ydCBjb25zdCBsb2dSZXF1ZXN0U3RhcnRlZCA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgfSkgPT4ge1xuICAgIGxvZ0V2ZW50KCd3YWxsZXRsaW5rX3NpZ25lci5yZXF1ZXN0LnN0YXJ0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1JlcXVlc3RFcnJvciA9ICh7IG1ldGhvZCwgY29ycmVsYXRpb25JZCwgZXJyb3JNZXNzYWdlLCB9KSA9PiB7XG4gICAgbG9nRXZlbnQoJ3dhbGxldGxpbmtfc2lnbmVyLnJlcXVlc3QuZXJyb3InLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS5lcnJvcixcbiAgICAgICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS51bmtub3duLFxuICAgICAgICBtZXRob2QsXG4gICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgIGVycm9yTWVzc2FnZSxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1JlcXVlc3RDb21wbGV0ZWQgPSAoeyBtZXRob2QsIGNvcnJlbGF0aW9uSWQsIH0pID0+IHtcbiAgICBsb2dFdmVudCgnd2FsbGV0bGlua19zaWduZXIucmVxdWVzdC5jb21wbGV0ZWQnLCB7XG4gICAgICAgIGFjdGlvbjogQWN0aW9uVHlwZS51bmtub3duLFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1dhbGxldExpbmtDb25uZWN0aW9uQ29ubmVjdGlvbkZhaWxlZCA9ICgpID0+IHtcbiAgICBsb2dFdmVudCgnd2FsbGV0bGlua19zaWduZXIud2FsbGV0bGlua19jb25uZWN0aW9uLmNvbm5lY3Rpb25fZmFpbGVkJywge1xuICAgICAgICBhY3Rpb246IEFjdGlvblR5cGUubWVhc3VyZW1lbnQsXG4gICAgICAgIGNvbXBvbmVudFR5cGU6IENvbXBvbmVudFR5cGUudW5rbm93bixcbiAgICB9LCBBbmFseXRpY3NFdmVudEltcG9ydGFuY2UuaGlnaCk7XG59O1xuZXhwb3J0IGNvbnN0IGxvZ1dhbGxldExpbmtDb25uZWN0aW9uRmV0Y2hVbnNlZW5FdmVudHNGYWlsZWQgPSAoKSA9PiB7XG4gICAgbG9nRXZlbnQoJ3dhbGxldGxpbmtfc2lnbmVyLndhbGxldGxpbmtfY29ubmVjdGlvbi5mZXRjaF91bnNlZW5fZXZlbnRzX2ZhaWxlZCcsIHtcbiAgICAgICAgYWN0aW9uOiBBY3Rpb25UeXBlLm1lYXN1cmVtZW50LFxuICAgICAgICBjb21wb25lbnRUeXBlOiBDb21wb25lbnRUeXBlLnVua25vd24sXG4gICAgfSwgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlLmhpZ2gpO1xufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXdhbGxldGxpbmstc2lnbmVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/walletlink-signer.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/initCCA.js": /*!**************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/initCCA.js ***! \**************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadTelemetryScript: () => (/* binding */ loadTelemetryScript)\n/* harmony export */ });\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _telemetry_content_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./telemetry-content.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/telemetry-content.js\");\n\n\nconst loadTelemetryScript = () => {\n return new Promise((resolve, reject) => {\n if (window.ClientAnalytics) {\n return resolve();\n }\n try {\n const script = document.createElement('script');\n script.textContent = _telemetry_content_js__WEBPACK_IMPORTED_MODULE_0__.TELEMETRY_SCRIPT_CONTENT;\n script.type = 'text/javascript';\n document.head.appendChild(script);\n initCCA();\n document.head.removeChild(script);\n resolve();\n }\n catch (_a) {\n console.error('Failed to execute inlined telemetry script');\n reject();\n }\n });\n};\nconst initCCA = () => {\n var _a, _b, _c;\n if (typeof window !== 'undefined') {\n const deviceId = (_c = (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.config.get().deviceId) !== null && _a !== void 0 ? _a : (_b = window.crypto) === null || _b === void 0 ? void 0 : _b.randomUUID()) !== null && _c !== void 0 ? _c : '';\n if (window.ClientAnalytics) {\n const { init, identify, PlatformName } = window.ClientAnalytics;\n init({\n isProd: true,\n amplitudeApiKey: 'c66737ad47ec354ced777935b0af822e',\n platform: PlatformName.web,\n projectName: 'base_account_sdk',\n showDebugLogging: false,\n version: '1.0.0',\n apiEndpoint: 'https://cca-lite.coinbase.com',\n });\n identify({ deviceId });\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.config.set({ deviceId });\n }\n }\n};\n//# sourceMappingURL=initCCA.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2luaXRDQ0EuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQTZDO0FBQ3FCO0FBQzNEO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLDJFQUF3QjtBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyxrREFBSztBQUMxQztBQUNBLG9CQUFvQiwrQkFBK0I7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYix1QkFBdUIsVUFBVTtBQUNqQyxZQUFZLGtEQUFLLGNBQWMsVUFBVTtBQUN6QztBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2luaXRDQ0EuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3RvcmUgfSBmcm9tICcuLi8uLi9zdG9yZS9zdG9yZS5qcyc7XG5pbXBvcnQgeyBURUxFTUVUUllfU0NSSVBUX0NPTlRFTlQgfSBmcm9tICcuL3RlbGVtZXRyeS1jb250ZW50LmpzJztcbmV4cG9ydCBjb25zdCBsb2FkVGVsZW1ldHJ5U2NyaXB0ID0gKCkgPT4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgIGlmICh3aW5kb3cuQ2xpZW50QW5hbHl0aWNzKSB7XG4gICAgICAgICAgICByZXR1cm4gcmVzb2x2ZSgpO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgICAgICAgIHNjcmlwdC50ZXh0Q29udGVudCA9IFRFTEVNRVRSWV9TQ1JJUFRfQ09OVEVOVDtcbiAgICAgICAgICAgIHNjcmlwdC50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7XG4gICAgICAgICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHNjcmlwdCk7XG4gICAgICAgICAgICBpbml0Q0NBKCk7XG4gICAgICAgICAgICBkb2N1bWVudC5oZWFkLnJlbW92ZUNoaWxkKHNjcmlwdCk7XG4gICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKF9hKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gZXhlY3V0ZSBpbmxpbmVkIHRlbGVtZXRyeSBzY3JpcHQnKTtcbiAgICAgICAgICAgIHJlamVjdCgpO1xuICAgICAgICB9XG4gICAgfSk7XG59O1xuY29uc3QgaW5pdENDQSA9ICgpID0+IHtcbiAgICB2YXIgX2EsIF9iLCBfYztcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgY29uc3QgZGV2aWNlSWQgPSAoX2MgPSAoX2EgPSBzdG9yZS5jb25maWcuZ2V0KCkuZGV2aWNlSWQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IChfYiA9IHdpbmRvdy5jcnlwdG8pID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5yYW5kb21VVUlEKCkpICE9PSBudWxsICYmIF9jICE9PSB2b2lkIDAgPyBfYyA6ICcnO1xuICAgICAgICBpZiAod2luZG93LkNsaWVudEFuYWx5dGljcykge1xuICAgICAgICAgICAgY29uc3QgeyBpbml0LCBpZGVudGlmeSwgUGxhdGZvcm1OYW1lIH0gPSB3aW5kb3cuQ2xpZW50QW5hbHl0aWNzO1xuICAgICAgICAgICAgaW5pdCh7XG4gICAgICAgICAgICAgICAgaXNQcm9kOiB0cnVlLFxuICAgICAgICAgICAgICAgIGFtcGxpdHVkZUFwaUtleTogJ2M2NjczN2FkNDdlYzM1NGNlZDc3NzkzNWIwYWY4MjJlJyxcbiAgICAgICAgICAgICAgICBwbGF0Zm9ybTogUGxhdGZvcm1OYW1lLndlYixcbiAgICAgICAgICAgICAgICBwcm9qZWN0TmFtZTogJ2Jhc2VfYWNjb3VudF9zZGsnLFxuICAgICAgICAgICAgICAgIHNob3dEZWJ1Z0xvZ2dpbmc6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZlcnNpb246ICcxLjAuMCcsXG4gICAgICAgICAgICAgICAgYXBpRW5kcG9pbnQ6ICdodHRwczovL2NjYS1saXRlLmNvaW5iYXNlLmNvbScsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlkZW50aWZ5KHsgZGV2aWNlSWQgfSk7XG4gICAgICAgICAgICBzdG9yZS5jb25maWcuc2V0KHsgZGV2aWNlSWQgfSk7XG4gICAgICAgIH1cbiAgICB9XG59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5pdENDQS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/initCCA.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js": /*!***************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js ***! \***************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ActionType: () => (/* binding */ ActionType),\n/* harmony export */ AnalyticsEventImportance: () => (/* binding */ AnalyticsEventImportance),\n/* harmony export */ ComponentType: () => (/* binding */ ComponentType),\n/* harmony export */ identify: () => (/* binding */ identify),\n/* harmony export */ logEvent: () => (/* binding */ logEvent)\n/* harmony export */ });\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _sdk_info_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../sdk-info.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js\");\n\n\nvar ComponentType;\n(function (ComponentType) {\n ComponentType[\"unknown\"] = \"unknown\";\n ComponentType[\"banner\"] = \"banner\";\n ComponentType[\"button\"] = \"button\";\n ComponentType[\"card\"] = \"card\";\n ComponentType[\"chart\"] = \"chart\";\n ComponentType[\"content_script\"] = \"content_script\";\n ComponentType[\"dropdown\"] = \"dropdown\";\n ComponentType[\"link\"] = \"link\";\n ComponentType[\"page\"] = \"page\";\n ComponentType[\"modal\"] = \"modal\";\n ComponentType[\"table\"] = \"table\";\n ComponentType[\"search_bar\"] = \"search_bar\";\n ComponentType[\"service_worker\"] = \"service_worker\";\n ComponentType[\"text\"] = \"text\";\n ComponentType[\"text_input\"] = \"text_input\";\n ComponentType[\"tray\"] = \"tray\";\n ComponentType[\"checkbox\"] = \"checkbox\";\n ComponentType[\"icon\"] = \"icon\";\n})(ComponentType || (ComponentType = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"unknown\"] = \"unknown\";\n ActionType[\"blur\"] = \"blur\";\n ActionType[\"click\"] = \"click\";\n ActionType[\"change\"] = \"change\";\n ActionType[\"dismiss\"] = \"dismiss\";\n ActionType[\"focus\"] = \"focus\";\n ActionType[\"hover\"] = \"hover\";\n ActionType[\"select\"] = \"select\";\n ActionType[\"measurement\"] = \"measurement\";\n ActionType[\"move\"] = \"move\";\n ActionType[\"process\"] = \"process\";\n ActionType[\"render\"] = \"render\";\n ActionType[\"scroll\"] = \"scroll\";\n ActionType[\"view\"] = \"view\";\n ActionType[\"search\"] = \"search\";\n ActionType[\"keyPress\"] = \"keyPress\";\n ActionType[\"error\"] = \"error\";\n})(ActionType || (ActionType = {}));\nvar AnalyticsEventImportance;\n(function (AnalyticsEventImportance) {\n AnalyticsEventImportance[\"low\"] = \"low\";\n AnalyticsEventImportance[\"high\"] = \"high\";\n})(AnalyticsEventImportance || (AnalyticsEventImportance = {}));\nfunction logEvent(name, event, importance) {\n var _a, _b, _c, _d;\n if (window.ClientAnalytics) {\n (_a = window.ClientAnalytics) === null || _a === void 0 ? void 0 : _a.logEvent(name, Object.assign(Object.assign({}, event), { sdkVersion: _sdk_info_js__WEBPACK_IMPORTED_MODULE_0__.VERSION, appName: (_c = (_b = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.config.get().metadata) === null || _b === void 0 ? void 0 : _b.appName) !== null && _c !== void 0 ? _c : '', appOrigin: window.location.origin, appPreferredSigner: (_d = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.config.get().preference) === null || _d === void 0 ? void 0 : _d.options }), importance);\n }\n}\nfunction identify(event) {\n var _a;\n if (window.ClientAnalytics) {\n (_a = window.ClientAnalytics) === null || _a === void 0 ? void 0 : _a.identify(event);\n }\n}\n\n//# sourceMappingURL=logEvent.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2xvZ0V2ZW50LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBNkM7QUFDRDtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQyxzQ0FBc0M7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDLGdDQUFnQztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUMsNERBQTREO0FBQ3REO0FBQ1A7QUFDQTtBQUNBLDJIQUEySCxZQUFZLFlBQVksaURBQU8sdUJBQXVCLGtEQUFLLDJLQUEySyxrREFBSywyRUFBMkU7QUFDamI7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUMrRDtBQUMvRCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L2xvZ0V2ZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0b3JlIH0gZnJvbSAnLi4vLi4vc3RvcmUvc3RvcmUuanMnO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gJy4uLy4uL3Nkay1pbmZvLmpzJztcbnZhciBDb21wb25lbnRUeXBlO1xuKGZ1bmN0aW9uIChDb21wb25lbnRUeXBlKSB7XG4gICAgQ29tcG9uZW50VHlwZVtcInVua25vd25cIl0gPSBcInVua25vd25cIjtcbiAgICBDb21wb25lbnRUeXBlW1wiYmFubmVyXCJdID0gXCJiYW5uZXJcIjtcbiAgICBDb21wb25lbnRUeXBlW1wiYnV0dG9uXCJdID0gXCJidXR0b25cIjtcbiAgICBDb21wb25lbnRUeXBlW1wiY2FyZFwiXSA9IFwiY2FyZFwiO1xuICAgIENvbXBvbmVudFR5cGVbXCJjaGFydFwiXSA9IFwiY2hhcnRcIjtcbiAgICBDb21wb25lbnRUeXBlW1wiY29udGVudF9zY3JpcHRcIl0gPSBcImNvbnRlbnRfc2NyaXB0XCI7XG4gICAgQ29tcG9uZW50VHlwZVtcImRyb3Bkb3duXCJdID0gXCJkcm9wZG93blwiO1xuICAgIENvbXBvbmVudFR5cGVbXCJsaW5rXCJdID0gXCJsaW5rXCI7XG4gICAgQ29tcG9uZW50VHlwZVtcInBhZ2VcIl0gPSBcInBhZ2VcIjtcbiAgICBDb21wb25lbnRUeXBlW1wibW9kYWxcIl0gPSBcIm1vZGFsXCI7XG4gICAgQ29tcG9uZW50VHlwZVtcInRhYmxlXCJdID0gXCJ0YWJsZVwiO1xuICAgIENvbXBvbmVudFR5cGVbXCJzZWFyY2hfYmFyXCJdID0gXCJzZWFyY2hfYmFyXCI7XG4gICAgQ29tcG9uZW50VHlwZVtcInNlcnZpY2Vfd29ya2VyXCJdID0gXCJzZXJ2aWNlX3dvcmtlclwiO1xuICAgIENvbXBvbmVudFR5cGVbXCJ0ZXh0XCJdID0gXCJ0ZXh0XCI7XG4gICAgQ29tcG9uZW50VHlwZVtcInRleHRfaW5wdXRcIl0gPSBcInRleHRfaW5wdXRcIjtcbiAgICBDb21wb25lbnRUeXBlW1widHJheVwiXSA9IFwidHJheVwiO1xuICAgIENvbXBvbmVudFR5cGVbXCJjaGVja2JveFwiXSA9IFwiY2hlY2tib3hcIjtcbiAgICBDb21wb25lbnRUeXBlW1wiaWNvblwiXSA9IFwiaWNvblwiO1xufSkoQ29tcG9uZW50VHlwZSB8fCAoQ29tcG9uZW50VHlwZSA9IHt9KSk7XG52YXIgQWN0aW9uVHlwZTtcbihmdW5jdGlvbiAoQWN0aW9uVHlwZSkge1xuICAgIEFjdGlvblR5cGVbXCJ1bmtub3duXCJdID0gXCJ1bmtub3duXCI7XG4gICAgQWN0aW9uVHlwZVtcImJsdXJcIl0gPSBcImJsdXJcIjtcbiAgICBBY3Rpb25UeXBlW1wiY2xpY2tcIl0gPSBcImNsaWNrXCI7XG4gICAgQWN0aW9uVHlwZVtcImNoYW5nZVwiXSA9IFwiY2hhbmdlXCI7XG4gICAgQWN0aW9uVHlwZVtcImRpc21pc3NcIl0gPSBcImRpc21pc3NcIjtcbiAgICBBY3Rpb25UeXBlW1wiZm9jdXNcIl0gPSBcImZvY3VzXCI7XG4gICAgQWN0aW9uVHlwZVtcImhvdmVyXCJdID0gXCJob3ZlclwiO1xuICAgIEFjdGlvblR5cGVbXCJzZWxlY3RcIl0gPSBcInNlbGVjdFwiO1xuICAgIEFjdGlvblR5cGVbXCJtZWFzdXJlbWVudFwiXSA9IFwibWVhc3VyZW1lbnRcIjtcbiAgICBBY3Rpb25UeXBlW1wibW92ZVwiXSA9IFwibW92ZVwiO1xuICAgIEFjdGlvblR5cGVbXCJwcm9jZXNzXCJdID0gXCJwcm9jZXNzXCI7XG4gICAgQWN0aW9uVHlwZVtcInJlbmRlclwiXSA9IFwicmVuZGVyXCI7XG4gICAgQWN0aW9uVHlwZVtcInNjcm9sbFwiXSA9IFwic2Nyb2xsXCI7XG4gICAgQWN0aW9uVHlwZVtcInZpZXdcIl0gPSBcInZpZXdcIjtcbiAgICBBY3Rpb25UeXBlW1wic2VhcmNoXCJdID0gXCJzZWFyY2hcIjtcbiAgICBBY3Rpb25UeXBlW1wia2V5UHJlc3NcIl0gPSBcImtleVByZXNzXCI7XG4gICAgQWN0aW9uVHlwZVtcImVycm9yXCJdID0gXCJlcnJvclwiO1xufSkoQWN0aW9uVHlwZSB8fCAoQWN0aW9uVHlwZSA9IHt9KSk7XG52YXIgQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlO1xuKGZ1bmN0aW9uIChBbmFseXRpY3NFdmVudEltcG9ydGFuY2UpIHtcbiAgICBBbmFseXRpY3NFdmVudEltcG9ydGFuY2VbXCJsb3dcIl0gPSBcImxvd1wiO1xuICAgIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZVtcImhpZ2hcIl0gPSBcImhpZ2hcIjtcbn0pKEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZSB8fCAoQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlID0ge30pKTtcbmV4cG9ydCBmdW5jdGlvbiBsb2dFdmVudChuYW1lLCBldmVudCwgaW1wb3J0YW5jZSkge1xuICAgIHZhciBfYSwgX2IsIF9jLCBfZDtcbiAgICBpZiAod2luZG93LkNsaWVudEFuYWx5dGljcykge1xuICAgICAgICAoX2EgPSB3aW5kb3cuQ2xpZW50QW5hbHl0aWNzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubG9nRXZlbnQobmFtZSwgT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBldmVudCksIHsgc2RrVmVyc2lvbjogVkVSU0lPTiwgYXBwTmFtZTogKF9jID0gKF9iID0gc3RvcmUuY29uZmlnLmdldCgpLm1ldGFkYXRhKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuYXBwTmFtZSkgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogJycsIGFwcE9yaWdpbjogd2luZG93LmxvY2F0aW9uLm9yaWdpbiwgYXBwUHJlZmVycmVkU2lnbmVyOiAoX2QgPSBzdG9yZS5jb25maWcuZ2V0KCkucHJlZmVyZW5jZSkgPT09IG51bGwgfHwgX2QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9kLm9wdGlvbnMgfSksIGltcG9ydGFuY2UpO1xuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBpZGVudGlmeShldmVudCkge1xuICAgIHZhciBfYTtcbiAgICBpZiAod2luZG93LkNsaWVudEFuYWx5dGljcykge1xuICAgICAgICAoX2EgPSB3aW5kb3cuQ2xpZW50QW5hbHl0aWNzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaWRlbnRpZnkoZXZlbnQpO1xuICAgIH1cbn1cbmV4cG9ydCB7IEFjdGlvblR5cGUsIEFuYWx5dGljc0V2ZW50SW1wb3J0YW5jZSwgQ29tcG9uZW50VHlwZSB9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bG9nRXZlbnQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/logEvent.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/telemetry-content.js": /*!************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/telemetry-content.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TELEMETRY_SCRIPT_CONTENT: () => (/* binding */ TELEMETRY_SCRIPT_CONTENT)\n/* harmony export */ });\n// This file is auto-generated by compile-assets.cjs\n// Do not edit manually - changes will be overwritten\nconst TELEMETRY_SCRIPT_CONTENT = `!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.ClientAnalytics=t():e.ClientAnalytics=t()}(this,(function(){return(()=>{var e={792:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],n=0;n<e.length;n++)t.push(255&e.charCodeAt(n));return t},bytesToString:function(e){for(var t=[],n=0;n<e.length;n++)t.push(String.fromCharCode(e[n]));return t.join(\"\")}}};e.exports=t},562:e=>{var t,n;t=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",n={rotl:function(e,t){return e<<t|e>>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&n.rotl(e,8)|4278255360&n.rotl(e,24);for(var t=0;t<e.length;t++)e[t]=n.endian(e[t]);return e},randomBytes:function(e){for(var t=[];e>0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],n=0,r=0;n<e.length;n++,r+=8)t[r>>>5]|=e[n]<<24-r%32;return t},wordsToBytes:function(e){for(var t=[],n=0;n<32*e.length;n+=8)t.push(e[n>>>5]>>>24-n%32&255);return t},bytesToHex:function(e){for(var t=[],n=0;n<e.length;n++)t.push((e[n]>>>4).toString(16)),t.push((15&e[n]).toString(16));return t.join(\"\")},hexToBytes:function(e){for(var t=[],n=0;n<e.length;n+=2)t.push(parseInt(e.substr(n,2),16));return t},bytesToBase64:function(e){for(var n=[],r=0;r<e.length;r+=3)for(var i=e[r]<<16|e[r+1]<<8|e[r+2],a=0;a<4;a++)8*r+6*a<=8*e.length?n.push(t.charAt(i>>>6*(3-a)&63)):n.push(\"=\");return n.join(\"\")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\\\\/]/gi,\"\");for(var n=[],r=0,i=0;r<e.length;i=++r%4)0!=i&&n.push((t.indexOf(e.charAt(r-1))&Math.pow(2,-2*i+8)-1)<<2*i|t.indexOf(e.charAt(r))>>>6-2*i);return n}},e.exports=n},335:e=>{function t(e){return!!e.constructor&&\"function\"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return\"function\"==typeof e.readFloatLE&&\"function\"==typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},762:(e,t,n)=>{var r,i,a,o,s;r=n(562),i=n(792).utf8,a=n(335),o=n(792).bin,(s=function(e,t){e.constructor==String?e=t&&\"binary\"===t.encoding?o.stringToBytes(e):i.stringToBytes(e):a(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var n=r.bytesToWords(e),c=8*e.length,u=1732584193,l=-271733879,d=-1732584194,p=271733878,m=0;m<n.length;m++)n[m]=16711935&(n[m]<<8|n[m]>>>24)|4278255360&(n[m]<<24|n[m]>>>8);n[c>>>5]|=128<<c%32,n[14+(c+64>>>9<<4)]=c;var f=s._ff,v=s._gg,g=s._hh,b=s._ii;for(m=0;m<n.length;m+=16){var h=u,w=l,y=d,T=p;u=f(u,l,d,p,n[m+0],7,-680876936),p=f(p,u,l,d,n[m+1],12,-389564586),d=f(d,p,u,l,n[m+2],17,606105819),l=f(l,d,p,u,n[m+3],22,-1044525330),u=f(u,l,d,p,n[m+4],7,-176418897),p=f(p,u,l,d,n[m+5],12,1200080426),d=f(d,p,u,l,n[m+6],17,-1473231341),l=f(l,d,p,u,n[m+7],22,-45705983),u=f(u,l,d,p,n[m+8],7,1770035416),p=f(p,u,l,d,n[m+9],12,-1958414417),d=f(d,p,u,l,n[m+10],17,-42063),l=f(l,d,p,u,n[m+11],22,-1990404162),u=f(u,l,d,p,n[m+12],7,1804603682),p=f(p,u,l,d,n[m+13],12,-40341101),d=f(d,p,u,l,n[m+14],17,-1502002290),u=v(u,l=f(l,d,p,u,n[m+15],22,1236535329),d,p,n[m+1],5,-165796510),p=v(p,u,l,d,n[m+6],9,-1069501632),d=v(d,p,u,l,n[m+11],14,643717713),l=v(l,d,p,u,n[m+0],20,-373897302),u=v(u,l,d,p,n[m+5],5,-701558691),p=v(p,u,l,d,n[m+10],9,38016083),d=v(d,p,u,l,n[m+15],14,-660478335),l=v(l,d,p,u,n[m+4],20,-405537848),u=v(u,l,d,p,n[m+9],5,568446438),p=v(p,u,l,d,n[m+14],9,-1019803690),d=v(d,p,u,l,n[m+3],14,-187363961),l=v(l,d,p,u,n[m+8],20,1163531501),u=v(u,l,d,p,n[m+13],5,-1444681467),p=v(p,u,l,d,n[m+2],9,-51403784),d=v(d,p,u,l,n[m+7],14,1735328473),u=g(u,l=v(l,d,p,u,n[m+12],20,-1926607734),d,p,n[m+5],4,-378558),p=g(p,u,l,d,n[m+8],11,-2022574463),d=g(d,p,u,l,n[m+11],16,1839030562),l=g(l,d,p,u,n[m+14],23,-35309556),u=g(u,l,d,p,n[m+1],4,-1530992060),p=g(p,u,l,d,n[m+4],11,1272893353),d=g(d,p,u,l,n[m+7],16,-155497632),l=g(l,d,p,u,n[m+10],23,-1094730640),u=g(u,l,d,p,n[m+13],4,681279174),p=g(p,u,l,d,n[m+0],11,-358537222),d=g(d,p,u,l,n[m+3],16,-722521979),l=g(l,d,p,u,n[m+6],23,76029189),u=g(u,l,d,p,n[m+9],4,-640364487),p=g(p,u,l,d,n[m+12],11,-421815835),d=g(d,p,u,l,n[m+15],16,530742520),u=b(u,l=g(l,d,p,u,n[m+2],23,-995338651),d,p,n[m+0],6,-198630844),p=b(p,u,l,d,n[m+7],10,1126891415),d=b(d,p,u,l,n[m+14],15,-1416354905),l=b(l,d,p,u,n[m+5],21,-57434055),u=b(u,l,d,p,n[m+12],6,1700485571),p=b(p,u,l,d,n[m+3],10,-1894986606),d=b(d,p,u,l,n[m+10],15,-1051523),l=b(l,d,p,u,n[m+1],21,-2054922799),u=b(u,l,d,p,n[m+8],6,1873313359),p=b(p,u,l,d,n[m+15],10,-30611744),d=b(d,p,u,l,n[m+6],15,-1560198380),l=b(l,d,p,u,n[m+13],21,1309151649),u=b(u,l,d,p,n[m+4],6,-145523070),p=b(p,u,l,d,n[m+11],10,-1120210379),d=b(d,p,u,l,n[m+2],15,718787259),l=b(l,d,p,u,n[m+9],21,-343485551),u=u+h>>>0,l=l+w>>>0,d=d+y>>>0,p=p+T>>>0}return r.endian([u,l,d,p])})._ff=function(e,t,n,r,i,a,o){var s=e+(t&n|~t&r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._gg=function(e,t,n,r,i,a,o){var s=e+(t&r|n&~r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._hh=function(e,t,n,r,i,a,o){var s=e+(t^n^r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._ii=function(e,t,n,r,i,a,o){var s=e+(n^(t|~r))+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._blocksize=16,s._digestsize=16,e.exports=function(e,t){if(null==e)throw new Error(\"Illegal argument \"+e);var n=r.wordsToBytes(s(e,t));return t&&t.asBytes?n:t&&t.asString?o.bytesToString(n):r.bytesToHex(n)}},2:(e,t,n)=>{\"use strict\";n.r(t),n.d(t,{Perfume:()=>ze,incrementUjNavigation:()=>Le,markStep:()=>Re,markStepOnce:()=>qe});var r,i,a={isResourceTiming:!1,isElementTiming:!1,maxTime:3e4,reportOptions:{},enableNavigationTracking:!0},o=window,s=o.console,c=o.navigator,u=o.performance,l=function(){return c.deviceMemory},d=function(){return c.hardwareConcurrency},p=\"mark.\",m=function(){return u&&!!u.getEntriesByType&&!!u.now&&!!u.mark},f=\"4g\",v=!1,g={},b={value:0},h={value:{beacon:0,css:0,fetch:0,img:0,other:0,script:0,total:0,xmlhttprequest:0}},w={value:0},y={value:0},T={},k={isHidden:!1,didChange:!1},_=function(){k.isHidden=!1,document.hidden&&(k.isHidden=document.hidden,k.didChange=!0)},S=function(e,t){try{var n=new PerformanceObserver((function(e){t(e.getEntries())}));return n.observe({type:e,buffered:!0}),n}catch(e){s.warn(\"Perfume.js:\",e)}return null},E=function(){return!!(d()&&d()<=4)||!!(l()&&l()<=4)},x=function(e,t){switch(e){case\"slow-2g\":case\"2g\":case\"3g\":return!0;default:return E()||t}},O=function(e){return parseFloat(e.toFixed(4))},j=function(e){return\"number\"!=typeof e?null:O(e/Math.pow(1024,2))},N=function(e,t,n,r,i){var s,u=function(){a.analyticsTracker&&(k.isHidden&&![\"CLS\",\"INP\"].includes(e)||a.analyticsTracker({attribution:r,metricName:e,data:t,navigatorInformation:c?{deviceMemory:l()||0,hardwareConcurrency:d()||0,serviceWorkerStatus:\"serviceWorker\"in c?c.serviceWorker.controller?\"controlled\":\"supported\":\"unsupported\",isLowEndDevice:E(),isLowEndExperience:x(f,v)}:{},rating:n,navigationType:i}))};[\"CLS\",\"INP\"].includes(e)?u():(s=u,\"requestIdleCallback\"in o?o.requestIdleCallback(s,{timeout:3e3}):s())},I=function(e){e.forEach((function(e){if(!(\"self\"!==e.name||e.startTime<b.value)){var t=e.duration-50;t>0&&(w.value+=t,y.value+=t)}}))};!function(e){e.instant=\"instant\",e.quick=\"quick\",e.moderate=\"moderate\",e.slow=\"slow\",e.unavoidable=\"unavoidable\"}(r||(r={}));var P,M,B,C,D,A=((i={})[r.instant]={vitalsThresholds:[100,200],maxOutlierThreshold:1e4},i[r.quick]={vitalsThresholds:[200,500],maxOutlierThreshold:1e4},i[r.moderate]={vitalsThresholds:[500,1e3],maxOutlierThreshold:1e4},i[r.slow]={vitalsThresholds:[1e3,2e3],maxOutlierThreshold:1e4},i[r.unavoidable]={vitalsThresholds:[2e3,5e3],maxOutlierThreshold:2e4},i),L={RT:[100,200],TBT:[200,600],NTBT:[200,600]},U=function(e,t){return L[e]?t<=L[e][0]?\"good\":t<=L[e][1]?\"needsImprovement\":\"poor\":null},R=function(e,t,n){Object.keys(t).forEach((function(e){\"number\"==typeof t[e]&&(t[e]=O(t[e]))})),N(e,t,null,n||{})},q=function(e){var t=e.attribution,n=e.name,r=e.rating,i=e.value,o=e.navigationType;\"FCP\"===n&&(b.value=i),[\"FCP\",\"LCP\"].includes(n)&&!T[0]&&(T[0]=S(\"longtask\",I)),\"FID\"===n&&setTimeout((function(){k.didChange||(q({attribution:t,name:\"TBT\",rating:U(\"TBT\",w.value),value:w.value,navigationType:o}),R(\"dataConsumption\",h.value))}),1e4);var s=O(i);s<=a.maxTime&&s>=0&&N(n,s,r,t,o)},F=function(){return window.performance&&performance.getEntriesByType&&performance.getEntriesByType(\"navigation\")[0]},z=function(e){if(\"loading\"===document.readyState)return\"loading\";var t=F();if(t){if(e<t.domInteractive)return\"loading\";if(0===t.domContentLoadedEventStart||e<t.domContentLoadedEventStart)return\"dom-interactive\";if(0===t.domComplete||e<t.domComplete)return\"dom-content-loaded\"}return\"complete\"},K=function(e){var t=e.nodeName;return 1===e.nodeType?t.toLowerCase():t.toUpperCase().replace(/^#/,\"\")},$=function(e,t){var n=\"\";try{for(;e&&9!==e.nodeType;){var r=e,i=r.id?\"#\"+r.id:K(r)+(r.className&&r.className.length?\".\"+r.className.replace(/\\\\s+/g,\".\"):\"\");if(n.length+i.length>(t||100)-1)return n||i;if(n=n?i+\">\"+n:i,r.id)break;e=r.parentNode}}catch(e){}return n},Q=-1,W=function(){return Q},H=function(e){addEventListener(\"pageshow\",(function(t){t.persisted&&(Q=t.timeStamp,e(t))}),!0)},V=function(){var e=F();return e&&e.activationStart||0},J=function(e,t){var n=F(),r=\"navigate\";return W()>=0?r=\"back-forward-cache\":n&&(r=document.prerendering||V()>0?\"prerender\":document.wasDiscarded?\"restore\":n.type.replace(/_/g,\"-\")),{name:e,value:void 0===t?-1:t,rating:\"good\",delta:0,entries:[],id:\"v3-\".concat(Date.now(),\"-\").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:r}},X=function(e,t,n){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){var r=new PerformanceObserver((function(e){Promise.resolve().then((function(){t(e.getEntries())}))}));return r.observe(Object.assign({type:e,buffered:!0},n||{})),r}}catch(e){}},G=function(e,t){var n=function n(r){\"pagehide\"!==r.type&&\"hidden\"!==document.visibilityState||(e(r),t&&(removeEventListener(\"visibilitychange\",n,!0),removeEventListener(\"pagehide\",n,!0)))};addEventListener(\"visibilitychange\",n,!0),addEventListener(\"pagehide\",n,!0)},Z=function(e,t,n,r){var i,a;return function(o){t.value>=0&&(o||r)&&((a=t.value-(i||0))||void 0===i)&&(i=t.value,t.delta=a,t.rating=function(e,t){return e>t[1]?\"poor\":e>t[0]?\"needs-improvement\":\"good\"}(t.value,n),e(t))}},Y=function(e){requestAnimationFrame((function(){return requestAnimationFrame((function(){return e()}))}))},ee=function(e){document.prerendering?addEventListener(\"prerenderingchange\",(function(){return e()}),!0):e()},te=-1,ne=function(){return\"hidden\"!==document.visibilityState||document.prerendering?1/0:0},re=function(e){\"hidden\"===document.visibilityState&&te>-1&&(te=\"visibilitychange\"===e.type?e.timeStamp:0,ae())},ie=function(){addEventListener(\"visibilitychange\",re,!0),addEventListener(\"prerenderingchange\",re,!0)},ae=function(){removeEventListener(\"visibilitychange\",re,!0),removeEventListener(\"prerenderingchange\",re,!0)},oe=function(){return te<0&&(te=ne(),ie(),H((function(){setTimeout((function(){te=ne(),ie()}),0)}))),{get firstHiddenTime(){return te}}},se=function(e,t){t=t||{},ee((function(){var n,r=[1800,3e3],i=oe(),a=J(\"FCP\"),o=X(\"paint\",(function(e){e.forEach((function(e){\"first-contentful-paint\"===e.name&&(o.disconnect(),e.startTime<i.firstHiddenTime&&(a.value=Math.max(e.startTime-V(),0),a.entries.push(e),n(!0)))}))}));o&&(n=Z(e,a,r,t.reportAllChanges),H((function(i){a=J(\"FCP\"),n=Z(e,a,r,t.reportAllChanges),Y((function(){a.value=performance.now()-i.timeStamp,n(!0)}))})))}))},ce={passive:!0,capture:!0},ue=new Date,le=function(e,t){P||(P=t,M=e,B=new Date,me(removeEventListener),de())},de=function(){if(M>=0&&M<B-ue){var e={entryType:\"first-input\",name:P.type,target:P.target,cancelable:P.cancelable,startTime:P.timeStamp,processingStart:P.timeStamp+M};C.forEach((function(t){t(e)})),C=[]}},pe=function(e){if(e.cancelable){var t=(e.timeStamp>1e12?new Date:performance.now())-e.timeStamp;\"pointerdown\"==e.type?function(e,t){var n=function(){le(e,t),i()},r=function(){i()},i=function(){removeEventListener(\"pointerup\",n,ce),removeEventListener(\"pointercancel\",r,ce)};addEventListener(\"pointerup\",n,ce),addEventListener(\"pointercancel\",r,ce)}(t,e):le(t,e)}},me=function(e){[\"mousedown\",\"keydown\",\"touchstart\",\"pointerdown\"].forEach((function(t){return e(t,pe,ce)}))},fe=0,ve=1/0,ge=0,be=function(e){e.forEach((function(e){e.interactionId&&(ve=Math.min(ve,e.interactionId),ge=Math.max(ge,e.interactionId),fe=ge?(ge-ve)/7+1:0)}))},he=function(){return D?fe:performance.interactionCount||0},we=0,ye=function(){return he()-we},Te=[],ke={},_e=function(e){var t=Te[Te.length-1],n=ke[e.interactionId];if(n||Te.length<10||e.duration>t.latency){if(n)n.entries.push(e),n.latency=Math.max(n.latency,e.duration);else{var r={id:e.interactionId,latency:e.duration,entries:[e]};ke[r.id]=r,Te.push(r)}Te.sort((function(e,t){return t.latency-e.latency})),Te.splice(10).forEach((function(e){delete ke[e.id]}))}},Se={},Ee=function e(t){document.prerendering?ee((function(){return e(t)})):\"complete\"!==document.readyState?addEventListener(\"load\",(function(){return e(t)}),!0):setTimeout(t,0)},xe=function(e,t){t=t||{};var n=[800,1800],r=J(\"TTFB\"),i=Z(e,r,n,t.reportAllChanges);Ee((function(){var a=F();if(a){var o=a.responseStart;if(o<=0||o>performance.now())return;r.value=Math.max(o-V(),0),r.entries=[a],i(!0),H((function(){r=J(\"TTFB\",0),(i=Z(e,r,n,t.reportAllChanges))(!0)}))}}))},Oe=function(e){e.forEach((function(e){e.identifier&&q({attribution:{identifier:e.identifier},name:\"ET\",rating:null,value:e.startTime})}))},je=function(e){e.forEach((function(e){if(a.isResourceTiming&&R(\"resourceTiming\",e),e.decodedBodySize&&e.initiatorType){var t=e.decodedBodySize/1e3;h.value[e.initiatorType]+=t,h.value.total+=t}}))},Ne=function(){!function(e,t){xe((function(e){!function(e){if(e.entries.length){var t=e.entries[0],n=t.activationStart||0,r=Math.max(t.domainLookupStart-n,0),i=Math.max(t.connectStart-n,0),a=Math.max(t.requestStart-n,0);e.attribution={waitingTime:r,dnsTime:i-r,connectionTime:a-i,requestTime:e.value-a,navigationEntry:t}}else e.attribution={waitingTime:0,dnsTime:0,connectionTime:0,requestTime:0}}(e),function(e){e.value>0&&q(e)}(e)}),t)}(0,a.reportOptions.ttfb),function(e,t){!function(e,t){t=t||{},ee((function(){var e,n=[.1,.25],r=J(\"CLS\"),i=-1,a=0,o=[],s=function(e){i>-1&&function(e){!function(e){if(e.entries.length){var t=e.entries.reduce((function(e,t){return e&&e.value>t.value?e:t}));if(t&&t.sources&&t.sources.length){var n=(r=t.sources).find((function(e){return e.node&&1===e.node.nodeType}))||r[0];if(n)return void(e.attribution={largestShiftTarget:$(n.node),largestShiftTime:t.startTime,largestShiftValue:t.value,largestShiftSource:n,largestShiftEntry:t,loadState:z(t.startTime)})}}var r;e.attribution={}}(e),function(e){q(e)}(e)}(e)},c=function(t){t.forEach((function(t){if(!t.hadRecentInput){var n=o[0],i=o[o.length-1];a&&t.startTime-i.startTime<1e3&&t.startTime-n.startTime<5e3?(a+=t.value,o.push(t)):(a=t.value,o=[t]),a>r.value&&(r.value=a,r.entries=o,e())}}))},u=X(\"layout-shift\",c);u&&(e=Z(s,r,n,t.reportAllChanges),se((function(t){i=t.value,r.value<0&&(r.value=0,e())})),G((function(){c(u.takeRecords()),e(!0)})),H((function(){a=0,i=-1,r=J(\"CLS\",0),e=Z(s,r,n,t.reportAllChanges),Y((function(){return e()}))})))}))}(0,t)}(0,a.reportOptions.cls),function(e,t){se((function(e){!function(e){if(e.entries.length){var t=F(),n=e.entries[e.entries.length-1];if(t){var r=t.activationStart||0,i=Math.max(0,t.responseStart-r);return void(e.attribution={timeToFirstByte:i,firstByteToFCP:e.value-i,loadState:z(e.entries[0].startTime),navigationEntry:t,fcpEntry:n})}}e.attribution={timeToFirstByte:0,firstByteToFCP:e.value,loadState:z(W())}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.fcp),function(e,t){!function(e,t){t=t||{},ee((function(){var n,r=[100,300],i=oe(),a=J(\"FID\"),o=function(e){e.startTime<i.firstHiddenTime&&(a.value=e.processingStart-e.startTime,a.entries.push(e),n(!0))},s=function(e){e.forEach(o)},c=X(\"first-input\",s);n=Z(e,a,r,t.reportAllChanges),c&&G((function(){s(c.takeRecords()),c.disconnect()}),!0),c&&H((function(){var i;a=J(\"FID\"),n=Z(e,a,r,t.reportAllChanges),C=[],M=-1,P=null,me(addEventListener),i=o,C.push(i),de()}))}))}((function(e){!function(e){var t=e.entries[0];e.attribution={eventTarget:$(t.target),eventType:t.name,eventTime:t.startTime,eventEntry:t,loadState:z(t.startTime)}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.fid),function(e,t){!function(e,t){t=t||{},ee((function(){var n,r=[2500,4e3],i=oe(),a=J(\"LCP\"),o=function(e){var t=e[e.length-1];if(t){var r=Math.max(t.startTime-V(),0);r<i.firstHiddenTime&&(a.value=r,a.entries=[t],n())}},s=X(\"largest-contentful-paint\",o);if(s){n=Z(e,a,r,t.reportAllChanges);var c=function(){Se[a.id]||(o(s.takeRecords()),s.disconnect(),Se[a.id]=!0,n(!0))};[\"keydown\",\"click\"].forEach((function(e){addEventListener(e,c,{once:!0,capture:!0})})),G(c,!0),H((function(i){a=J(\"LCP\"),n=Z(e,a,r,t.reportAllChanges),Y((function(){a.value=performance.now()-i.timeStamp,Se[a.id]=!0,n(!0)}))}))}}))}((function(e){!function(e){if(e.entries.length){var t=F();if(t){var n=t.activationStart||0,r=e.entries[e.entries.length-1],i=r.url&&performance.getEntriesByType(\"resource\").filter((function(e){return e.name===r.url}))[0],a=Math.max(0,t.responseStart-n),o=Math.max(a,i?(i.requestStart||i.startTime)-n:0),s=Math.max(o,i?i.responseEnd-n:0),c=Math.max(s,r?r.startTime-n:0),u={element:$(r.element),timeToFirstByte:a,resourceLoadDelay:o-a,resourceLoadTime:s-o,elementRenderDelay:c-s,navigationEntry:t,lcpEntry:r};return r.url&&(u.url=r.url),i&&(u.lcpResourceEntry=i),void(e.attribution=u)}}e.attribution={timeToFirstByte:0,resourceLoadDelay:0,resourceLoadTime:0,elementRenderDelay:e.value}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.lcp),function(e,t){!function(e,t){t=t||{},ee((function(){var n=[200,500];\"interactionCount\"in performance||D||(D=X(\"event\",be,{type:\"event\",buffered:!0,durationThreshold:0}));var r,i=J(\"INP\"),a=function(e){e.forEach((function(e){e.interactionId&&_e(e),\"first-input\"===e.entryType&&!Te.some((function(t){return t.entries.some((function(t){return e.duration===t.duration&&e.startTime===t.startTime}))}))&&_e(e)}));var t,n=(t=Math.min(Te.length-1,Math.floor(ye()/50)),Te[t]);n&&n.latency!==i.value&&(i.value=n.latency,i.entries=n.entries,r())},o=X(\"event\",a,{durationThreshold:t.durationThreshold||40});r=Z(e,i,n,t.reportAllChanges),o&&(o.observe({type:\"first-input\",buffered:!0}),G((function(){a(o.takeRecords()),i.value<0&&ye()>0&&(i.value=0,i.entries=[]),r(!0)})),H((function(){Te=[],we=he(),i=J(\"INP\"),r=Z(e,i,n,t.reportAllChanges)})))}))}((function(t){!function(e){if(e.entries.length){var t=e.entries.sort((function(e,t){return t.duration-e.duration||t.processingEnd-t.processingStart-(e.processingEnd-e.processingStart)}))[0];e.attribution={eventTarget:$(t.target),eventType:t.name,eventTime:t.startTime,eventEntry:t,loadState:z(t.startTime)}}else e.attribution={}}(t),e(t)}),t)}((function(e){return q(e)}),a.reportOptions.inp),a.isResourceTiming&&S(\"resource\",je),a.isElementTiming&&S(\"element\",Oe)},Ie=function(e){var t=\"usageDetails\"in e?e.usageDetails:{};R(\"storageEstimate\",{quota:j(e.quota),usage:j(e.usage),caches:j(t.caches),indexedDB:j(t.indexedDB),serviceWorker:j(t.serviceWorkerRegistrations)})},Pe={finalMarkToStepsMap:{},startMarkToStepsMap:{},active:{},navigationSteps:{}},Me=function(e){delete Pe.active[e]},Be=function(){return Pe.navigationSteps},Ce=function(e){var t;return null!==(t=Be()[e])&&void 0!==t?t:{}},De=function(e,t,n){var r=\"step.\"+e,i=u.getEntriesByName(p+t).length>0;if(u.getEntriesByName(p+n).length>0&&a.steps){var o=A[a.steps[e].threshold],s=o.maxOutlierThreshold,c=o.vitalsThresholds;if(i){var l=u.measure(r,p+t,p+n),d=l.duration;if(d<=s){var m=function(e,t){return e<=t[0]?\"good\":e<=t[1]?\"needsImprovement\":\"poor\"}(d,c);d>=0&&(N(\"userJourneyStep\",d,m,{stepName:e},void 0),u.measure(\"step.\".concat(e,\"_vitals_\").concat(m),{start:l.startTime+l.duration,end:l.startTime+l.duration,detail:{type:\"stepVital\",duration:d}}))}}}},Ae=function(){var e=Be(),t=Pe.startMarkToStepsMap,n=Object.keys(e).length;if(0===n)return{};var r={},i=n-1,a=Ce(i);if(Object.keys(a).forEach((function(e){var n,i=null!==(n=t[e])&&void 0!==n?n:[];Object.keys(i).forEach((function(e){r[e]=!0}))})),n>1){var o=Ce(i-1);Object.keys(o).forEach((function(e){var n,i=null!==(n=t[e])&&void 0!==n?n:[];Object.keys(i).forEach((function(e){r[e]=!0}))}))}return r},Le=function(){var e,t=Object.keys(Pe.navigationSteps).length;Pe.navigationSteps[t]={};var n=Ae();null===(e=a.onMarkStep)||void 0===e||e.call(a,\"\",Object.keys(n))},Ue=function(e){var t,n,r,i,o,s,c;if(Pe.finalMarkToStepsMap[e]){!function(e){var t=Pe.navigationSteps,n=Pe.finalMarkToStepsMap,r=Object.keys(t).length;if(0!==r){var i=r-1,a=Ce(i);if(a&&n[e]){var o=n[e];o&&Object.keys(o).forEach((function(e){if(a[e]){var n=Ce(i)||{};n[e]=!1,t[i]=n}if(r>1){var o=i-1,s=Ce(o);s[e]&&(s[e]=!1,t[o]=s)}}))}}}(e);var u=Pe.finalMarkToStepsMap[e];Object.keys(u).forEach((function(t){var n=u[t];n.forEach(Me),Promise.all(n.map((function(n){return function(e,t,n,r){return new(n||(n=Promise))((function(e,t){function i(e){try{o(r.next(e))}catch(e){t(e)}}function a(e){try{o(r.throw(e))}catch(e){t(e)}}function o(t){var r;t.done?e(t.value):(r=t.value,r instanceof n?r:new n((function(e){e(r)}))).then(i,a)}o((r=r.apply(undefined,[])).next())}))}(0,0,void 0,(function(){return function(e,t){var n,r,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(n)throw new TypeError(\"Generator is already executing.\");for(;o;)try{if(n=1,r&&(i=2&a[0]?r.return:a[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;switch(r=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,r=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){o=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){o.label=a[1];break}if(6===a[0]&&o.label<i[1]){o.label=i[1],i=a;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(a);break}i[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],r=0}finally{n=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}}(this,(function(r){switch(r.label){case 0:return[4,De(n,t,e)];case 1:return r.sent(),[2]}}))}))}))).catch((function(){}))}))}else r=e,i=Pe.navigationSteps,o=Object.keys(i).length,(c=Ce(s=(o>0?o:1)-1)||[])[r]=!0,i[s]=c,function(e){var t,n=null!==(t=Pe.startMarkToStepsMap[e])&&void 0!==t?t:[];Object.keys(n).forEach((function(e){Pe.active[e]||(Pe.active[e]=!0)}))}(e);if(a.enableNavigationTracking){var l=Ae();null===(t=a.onMarkStep)||void 0===t||t.call(a,e,Object.keys(l))}else null===(n=a.onMarkStep)||void 0===n||n.call(a,e,Object.keys(Pe.active))},Re=function(e){u.mark(p+e),Ue(e)},qe=function(e){0===u.getEntriesByName(p+e).length&&(u.mark(p+e),Ue(e))},Fe=0,ze=function(){function e(e){if(void 0===e&&(e={}),this.v=\"9.0.0-rc.3\",a.analyticsTracker=e.analyticsTracker,a.isResourceTiming=!!e.resourceTiming,a.isElementTiming=!!e.elementTiming,a.maxTime=e.maxMeasureTime||a.maxTime,a.reportOptions=e.reportOptions||a.reportOptions,a.steps=e.steps,a.onMarkStep=e.onMarkStep,a.enableNavigationTracking=e.enableNavigationTracking,m()){\"PerformanceObserver\"in o&&Ne(),void 0!==document.hidden&&document.addEventListener(\"visibilitychange\",_);var t=function(){if(!m())return{};var e=u.getEntriesByType(\"navigation\")[0];if(!e)return{};var t=e.responseStart,n=e.responseEnd;return{fetchTime:n-e.fetchStart,workerTime:e.workerStart>0?n-e.workerStart:0,totalTime:n-e.requestStart,downloadTime:n-t,timeToFirstByte:t-e.requestStart,headerSize:e.transferSize-e.encodedBodySize||0,dnsLookupTime:e.domainLookupEnd-e.domainLookupStart,redirectTime:e.redirectEnd-e.redirectStart}}();R(\"navigationTiming\",t),t.redirectTime&&q({attribution:{},name:\"RT\",rating:U(\"RT\",t.redirectTime),value:t.redirectTime}),R(\"networkInformation\",function(){if(\"connection\"in c){var e=c.connection;return\"object\"!=typeof e?{}:(f=e.effectiveType,v=!!e.saveData,{downlink:e.downlink,effectiveType:e.effectiveType,rtt:e.rtt,saveData:!!e.saveData})}return{}}()),c&&c.storage&&\"function\"==typeof c.storage.estimate&&c.storage.estimate().then(Ie),a.steps&&a.steps&&(Pe.startMarkToStepsMap={},Pe.finalMarkToStepsMap={},Pe.active={},Pe.navigationSteps={},Object.entries(a.steps).forEach((function(e){var t,n,r=e[0],i=e[1].marks,a=i[0],o=i[1],s=null!==(n=Pe.startMarkToStepsMap[a])&&void 0!==n?n:{};if(s[r]=!0,Pe.startMarkToStepsMap[a]=s,Pe.finalMarkToStepsMap[o]){var c=Pe.finalMarkToStepsMap[o][a]||[];c.push(r),Pe.finalMarkToStepsMap[o][a]=c}else Pe.finalMarkToStepsMap[o]=((t={})[a]=[r],t)})))}}return e.prototype.start=function(e){m()&&!g[e]&&(g[e]=!0,u.mark(\"mark_\".concat(e,\"_start\")))},e.prototype.end=function(e,t,n){if(void 0===t&&(t={}),void 0===n&&(n=!0),m()&&g[e]){u.mark(\"mark_\".concat(e,\"_end\")),delete g[e];var r=function(e){u.measure(e,\"mark_\".concat(e,\"_start\"),\"mark_\".concat(e,\"_end\"));var t=u.getEntriesByName(e).pop();return t&&\"measure\"===t.entryType?t.duration:-1}(e);n&&R(e,O(r),t)}},e.prototype.endPaint=function(e,t){var n=this;setTimeout((function(){n.end(e,t)}))},e.prototype.clear=function(e){delete g[e],u.clearMarks&&(u.clearMarks(\"mark_\".concat(e,\"_start\")),u.clearMarks(\"mark_\".concat(e,\"_end\")))},e.prototype.markNTBT=function(){var e=this;this.start(\"ntbt\"),y.value=0,clearTimeout(Fe),Fe=setTimeout((function(){e.end(\"ntbt\",{},!1),q({attribution:{},name:\"NTBT\",rating:U(\"NTBT\",y.value),value:y.value}),y.value=0}),2e3)},e}()},426:(e,t)=>{\"use strict\";Symbol.for(\"react.element\"),Symbol.for(\"react.portal\"),Symbol.for(\"react.fragment\"),Symbol.for(\"react.strict_mode\"),Symbol.for(\"react.profiler\"),Symbol.for(\"react.provider\"),Symbol.for(\"react.context\"),Symbol.for(\"react.forward_ref\"),Symbol.for(\"react.suspense\"),Symbol.for(\"react.memo\"),Symbol.for(\"react.lazy\"),Symbol.iterator;var n={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},r=Object.assign,i={};function a(e,t,r){this.props=e,this.context=t,this.refs=i,this.updater=r||n}function o(){}function s(e,t,r){this.props=e,this.context=t,this.refs=i,this.updater=r||n}a.prototype.isReactComponent={},a.prototype.setState=function(e,t){if(\"object\"!=typeof e&&\"function\"!=typeof e&&null!=e)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,e,t,\"setState\")},a.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,\"forceUpdate\")},o.prototype=a.prototype;var c=s.prototype=new o;c.constructor=s,r(c,a.prototype),c.isPureReactComponent=!0;Array.isArray,Object.prototype.hasOwnProperty;var u={current:null};t.useCallback=function(e,t){return u.current.useCallback(e,t)},t.useEffect=function(e,t){return u.current.useEffect(e,t)},t.useRef=function(e){return u.current.useRef(e)}},784:(e,t,n)=>{\"use strict\";e.exports=n(426)},353:function(e,t,n){var r;!function(i,a){\"use strict\";var o=\"function\",s=\"undefined\",c=\"object\",u=\"string\",l=\"major\",d=\"model\",p=\"name\",m=\"type\",f=\"vendor\",v=\"version\",g=\"architecture\",b=\"console\",h=\"mobile\",w=\"tablet\",y=\"smarttv\",T=\"wearable\",k=\"embedded\",_=\"Amazon\",S=\"Apple\",E=\"ASUS\",x=\"BlackBerry\",O=\"Browser\",j=\"Chrome\",N=\"Firefox\",I=\"Google\",P=\"Huawei\",M=\"LG\",B=\"Microsoft\",C=\"Motorola\",D=\"Opera\",A=\"Samsung\",L=\"Sharp\",U=\"Sony\",R=\"Xiaomi\",q=\"Zebra\",F=\"Facebook\",z=\"Chromium OS\",K=\"Mac OS\",$=function(e){for(var t={},n=0;n<e.length;n++)t[e[n].toUpperCase()]=e[n];return t},Q=function(e,t){return typeof e===u&&-1!==W(t).indexOf(W(e))},W=function(e){return e.toLowerCase()},H=function(e,t){if(typeof e===u)return e=e.replace(/^\\\\s\\\\s*/,\"\"),typeof t===s?e:e.substring(0,350)},V=function(e,t){for(var n,r,i,s,u,l,d=0;d<t.length&&!u;){var p=t[d],m=t[d+1];for(n=r=0;n<p.length&&!u&&p[n];)if(u=p[n++].exec(e))for(i=0;i<m.length;i++)l=u[++r],typeof(s=m[i])===c&&s.length>0?2===s.length?typeof s[1]==o?this[s[0]]=s[1].call(this,l):this[s[0]]=s[1]:3===s.length?typeof s[1]!==o||s[1].exec&&s[1].test?this[s[0]]=l?l.replace(s[1],s[2]):a:this[s[0]]=l?s[1].call(this,l,s[2]):a:4===s.length&&(this[s[0]]=l?s[3].call(this,l.replace(s[1],s[2])):a):this[s]=l||a;d+=2}},J=function(e,t){for(var n in t)if(typeof t[n]===c&&t[n].length>0){for(var r=0;r<t[n].length;r++)if(Q(t[n][r],e))return\"?\"===n?a:n}else if(Q(t[n],e))return\"?\"===n?a:n;return e},X={ME:\"4.90\",\"NT 3.11\":\"NT3.51\",\"NT 4.0\":\"NT4.0\",2e3:\"NT 5.0\",XP:[\"NT 5.1\",\"NT 5.2\"],Vista:\"NT 6.0\",7:\"NT 6.1\",8:\"NT 6.2\",8.1:\"NT 6.3\",10:[\"NT 6.4\",\"NT 10.0\"],RT:\"ARM\"},G={browser:[[/\\\\b(?:crmo|crios)\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"Chrome\"]],[/edg(?:e|ios|a)?\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"Edge\"]],[/(opera mini)\\\\/([-\\\\w\\\\.]+)/i,/(opera [mobiletab]{3,6})\\\\b.+version\\\\/([-\\\\w\\\\.]+)/i,/(opera)(?:.+version\\\\/|[\\\\/ ]+)([\\\\w\\\\.]+)/i],[p,v],[/opios[\\\\/ ]+([\\\\w\\\\.]+)/i],[v,[p,D+\" Mini\"]],[/\\\\bopr\\\\/([\\\\w\\\\.]+)/i],[v,[p,D]],[/(kindle)\\\\/([\\\\w\\\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\\\/ ]?([\\\\w\\\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\\\/ ]?([\\\\w\\\\.]*)/i,/(ba?idubrowser)[\\\\/ ]?([\\\\w\\\\.]+)/i,/(?:ms|\\\\()(ie) ([\\\\w\\\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\\\\/([-\\\\w\\\\.]+)/i,/(heytap|ovi)browser\\\\/([\\\\d\\\\.]+)/i,/(weibo)__([\\\\d\\\\.]+)/i],[p,v],[/(?:\\\\buc? ?browser|(?:juc.+)ucweb)[\\\\/ ]?([\\\\w\\\\.]+)/i],[v,[p,\"UC\"+O]],[/microm.+\\\\bqbcore\\\\/([\\\\w\\\\.]+)/i,/\\\\bqbcore\\\\/([\\\\w\\\\.]+).+microm/i],[v,[p,\"WeChat(Win) Desktop\"]],[/micromessenger\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"WeChat\"]],[/konqueror\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"Konqueror\"]],[/trident.+rv[: ]([\\\\w\\\\.]{1,9})\\\\b.+like gecko/i],[v,[p,\"IE\"]],[/ya(?:search)?browser\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"Yandex\"]],[/(avast|avg)\\\\/([\\\\w\\\\.]+)/i],[[p,/(.+)/,\"$1 Secure \"+O],v],[/\\\\bfocus\\\\/([\\\\w\\\\.]+)/i],[v,[p,N+\" Focus\"]],[/\\\\bopt\\\\/([\\\\w\\\\.]+)/i],[v,[p,D+\" Touch\"]],[/coc_coc\\\\w+\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"Coc Coc\"]],[/dolfin\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"Dolphin\"]],[/coast\\\\/([\\\\w\\\\.]+)/i],[v,[p,D+\" Coast\"]],[/miuibrowser\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"MIUI \"+O]],[/fxios\\\\/([-\\\\w\\\\.]+)/i],[v,[p,N]],[/\\\\bqihu|(qi?ho?o?|360)browser/i],[[p,\"360 \"+O]],[/(oculus|samsung|sailfish|huawei)browser\\\\/([\\\\w\\\\.]+)/i],[[p,/(.+)/,\"$1 \"+O],v],[/(comodo_dragon)\\\\/([\\\\w\\\\.]+)/i],[[p,/_/g,\" \"],v],[/(electron)\\\\/([\\\\w\\\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\\\/(20\\\\d\\\\d\\\\.[-\\\\w\\\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\\\/ ]?([\\\\w\\\\.]+)/i],[p,v],[/(metasr)[\\\\/ ]?([\\\\w\\\\.]+)/i,/(lbbrowser)/i,/\\\\[(linkedin)app\\\\]/i],[p],[/((?:fban\\\\/fbios|fb_iab\\\\/fb4a)(?!.+fbav)|;fbav\\\\/([\\\\w\\\\.]+);)/i],[[p,F],v],[/(kakao(?:talk|story))[\\\\/ ]([\\\\w\\\\.]+)/i,/(naver)\\\\(.*?(\\\\d+\\\\.[\\\\w\\\\.]+).*\\\\)/i,/safari (line)\\\\/([\\\\w\\\\.]+)/i,/\\\\b(line)\\\\/([\\\\w\\\\.]+)\\\\/iab/i,/(chromium|instagram)[\\\\/ ]([-\\\\w\\\\.]+)/i],[p,v],[/\\\\bgsa\\\\/([\\\\w\\\\.]+) .*safari\\\\//i],[v,[p,\"GSA\"]],[/musical_ly(?:.+app_?version\\\\/|_)([\\\\w\\\\.]+)/i],[v,[p,\"TikTok\"]],[/headlesschrome(?:\\\\/([\\\\w\\\\.]+)| )/i],[v,[p,j+\" Headless\"]],[/ wv\\\\).+(chrome)\\\\/([\\\\w\\\\.]+)/i],[[p,j+\" WebView\"],v],[/droid.+ version\\\\/([\\\\w\\\\.]+)\\\\b.+(?:mobile safari|safari)/i],[v,[p,\"Android \"+O]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\\\/v?([\\\\w\\\\.]+)/i],[p,v],[/version\\\\/([\\\\w\\\\.\\\\,]+) .*mobile\\\\/\\\\w+ (safari)/i],[v,[p,\"Mobile Safari\"]],[/version\\\\/([\\\\w(\\\\.|\\\\,)]+) .*(mobile ?safari|safari)/i],[v,p],[/webkit.+?(mobile ?safari|safari)(\\\\/[\\\\w\\\\.]+)/i],[p,[v,J,{\"1.0\":\"/8\",1.2:\"/1\",1.3:\"/3\",\"2.0\":\"/412\",\"2.0.2\":\"/416\",\"2.0.3\":\"/417\",\"2.0.4\":\"/419\",\"?\":\"/\"}]],[/(webkit|khtml)\\\\/([\\\\w\\\\.]+)/i],[p,v],[/(navigator|netscape\\\\d?)\\\\/([-\\\\w\\\\.]+)/i],[[p,\"Netscape\"],v],[/mobile vr; rv:([\\\\w\\\\.]+)\\\\).+firefox/i],[v,[p,N+\" Reality\"]],[/ekiohf.+(flow)\\\\/([\\\\w\\\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\\\/ ]?([\\\\w\\\\.\\\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\\\/([-\\\\w\\\\.]+)$/i,/(firefox)\\\\/([\\\\w\\\\.]+)/i,/(mozilla)\\\\/([\\\\w\\\\.]+) .+rv\\\\:.+gecko\\\\/\\\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\\\. ]?browser)[-\\\\/ ]?v?([\\\\w\\\\.]+)/i,/(links) \\\\(([\\\\w\\\\.]+)/i,/panasonic;(viera)/i],[p,v],[/(cobalt)\\\\/([\\\\w\\\\.]+)/i],[p,[v,/master.|lts./,\"\"]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\\\)]/i],[[g,\"amd64\"]],[/(ia32(?=;))/i],[[g,W]],[/((?:i[346]|x)86)[;\\\\)]/i],[[g,\"ia32\"]],[/\\\\b(aarch64|arm(v?8e?l?|_?64))\\\\b/i],[[g,\"arm64\"]],[/\\\\b(arm(?:v[67])?ht?n?[fl]p?)\\\\b/i],[[g,\"armhf\"]],[/windows (ce|mobile); ppc;/i],[[g,\"arm\"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\\\))/i],[[g,/ower/,\"\",W]],[/(sun4\\\\w)[;\\\\)]/i],[[g,\"sparc\"]],[/((?:avr32|ia64(?=;))|68k(?=\\\\))|\\\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\\\b|pa-risc)/i],[[g,W]]],device:[[/\\\\b(sch-i[89]0\\\\d|shw-m380s|sm-[ptx]\\\\w{2,4}|gt-[pn]\\\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[d,[f,A],[m,w]],[/\\\\b((?:s[cgp]h|gt|sm)-\\\\w+|sc[g-]?[\\\\d]+a?|galaxy nexus)/i,/samsung[- ]([-\\\\w]+)/i,/sec-(sgh\\\\w+)/i],[d,[f,A],[m,h]],[/(?:\\\\/|\\\\()(ip(?:hone|od)[\\\\w, ]*)(?:\\\\/|;)/i],[d,[f,S],[m,h]],[/\\\\((ipad);[-\\\\w\\\\),; ]+apple/i,/applecoremedia\\\\/[\\\\w\\\\.]+ \\\\((ipad)/i,/\\\\b(ipad)\\\\d\\\\d?,\\\\d\\\\d?[;\\\\]].+ios/i],[d,[f,S],[m,w]],[/(macintosh);/i],[d,[f,S]],[/\\\\b(sh-?[altvz]?\\\\d\\\\d[a-ekm]?)/i],[d,[f,L],[m,h]],[/\\\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\\\d{2})\\\\b(?!.+d\\\\/s)/i],[d,[f,P],[m,w]],[/(?:huawei|honor)([-\\\\w ]+)[;\\\\)]/i,/\\\\b(nexus 6p|\\\\w{2,4}e?-[atu]?[ln][\\\\dx][012359c][adn]?)\\\\b(?!.+d\\\\/s)/i],[d,[f,P],[m,h]],[/\\\\b(poco[\\\\w ]+)(?: bui|\\\\))/i,/\\\\b; (\\\\w+) build\\\\/hm\\\\1/i,/\\\\b(hm[-_ ]?note?[_ ]?(?:\\\\d\\\\w)?) bui/i,/\\\\b(redmi[\\\\-_ ]?(?:note|k)?[\\\\w_ ]+)(?: bui|\\\\))/i,/\\\\b(mi[-_ ]?(?:a\\\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\\\d?\\\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\\\))/i],[[d,/_/g,\" \"],[f,R],[m,h]],[/\\\\b(mi[-_ ]?(?:pad)(?:[\\\\w_ ]+))(?: bui|\\\\))/i],[[d,/_/g,\" \"],[f,R],[m,w]],[/; (\\\\w+) bui.+ oppo/i,/\\\\b(cph[12]\\\\d{3}|p(?:af|c[al]|d\\\\w|e[ar])[mt]\\\\d0|x9007|a101op)\\\\b/i],[d,[f,\"OPPO\"],[m,h]],[/vivo (\\\\w+)(?: bui|\\\\))/i,/\\\\b(v[12]\\\\d{3}\\\\w?[at])(?: bui|;)/i],[d,[f,\"Vivo\"],[m,h]],[/\\\\b(rmx[12]\\\\d{3})(?: bui|;|\\\\))/i],[d,[f,\"Realme\"],[m,h]],[/\\\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\\\b[\\\\w ]+build\\\\//i,/\\\\bmot(?:orola)?[- ](\\\\w*)/i,/((?:moto[\\\\w\\\\(\\\\) ]+|xt\\\\d{3,4}|nexus 6)(?= bui|\\\\)))/i],[d,[f,C],[m,h]],[/\\\\b(mz60\\\\d|xoom[2 ]{0,2}) build\\\\//i],[d,[f,C],[m,w]],[/((?=lg)?[vl]k\\\\-?\\\\d{3}) bui| 3\\\\.[-\\\\w; ]{10}lg?-([06cv9]{3,4})/i],[d,[f,M],[m,w]],[/(lm(?:-?f100[nv]?|-[\\\\w\\\\.]+)(?= bui|\\\\))|nexus [45])/i,/\\\\blg[-e;\\\\/ ]+((?!browser|netcast|android tv)\\\\w+)/i,/\\\\blg-?([\\\\d\\\\w]+) bui/i],[d,[f,M],[m,h]],[/(ideatab[-\\\\w ]+)/i,/lenovo ?(s[56]000[-\\\\w]+|tab(?:[\\\\w ]+)|yt[-\\\\d\\\\w]{6}|tb[-\\\\d\\\\w]{6})/i],[d,[f,\"Lenovo\"],[m,w]],[/(?:maemo|nokia).*(n900|lumia \\\\d+)/i,/nokia[-_ ]?([-\\\\w\\\\.]*)/i],[[d,/_/g,\" \"],[f,\"Nokia\"],[m,h]],[/(pixel c)\\\\b/i],[d,[f,I],[m,w]],[/droid.+; (pixel[\\\\daxl ]{0,6})(?: bui|\\\\))/i],[d,[f,I],[m,h]],[/droid.+ (a?\\\\d[0-2]{2}so|[c-g]\\\\d{4}|so[-gl]\\\\w+|xq-a\\\\w[4-7][12])(?= bui|\\\\).+chrome\\\\/(?![1-6]{0,1}\\\\d\\\\.))/i],[d,[f,U],[m,h]],[/sony tablet [ps]/i,/\\\\b(?:sony)?sgp\\\\w+(?: bui|\\\\))/i],[[d,\"Xperia Tablet\"],[f,U],[m,w]],[/ (kb2005|in20[12]5|be20[12][59])\\\\b/i,/(?:one)?(?:plus)? (a\\\\d0\\\\d\\\\d)(?: b|\\\\))/i],[d,[f,\"OnePlus\"],[m,h]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\\\\))/i,/(kf[a-z]+)( bui|\\\\)).+silk\\\\//i],[d,[f,_],[m,w]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\\\)).+silk\\\\//i],[[d,/(.+)/g,\"Fire Phone $1\"],[f,_],[m,h]],[/(playbook);[-\\\\w\\\\),; ]+(rim)/i],[d,f,[m,w]],[/\\\\b((?:bb[a-f]|st[hv])100-\\\\d)/i,/\\\\(bb10; (\\\\w+)/i],[d,[f,x],[m,h]],[/(?:\\\\b|asus_)(transfo[prime ]{4,10} \\\\w+|eeepc|slider \\\\w+|nexus 7|padfone|p00[cj])/i],[d,[f,E],[m,w]],[/ (z[bes]6[027][012][km][ls]|zenfone \\\\d\\\\w?)\\\\b/i],[d,[f,E],[m,h]],[/(nexus 9)/i],[d,[f,\"HTC\"],[m,w]],[/(htc)[-;_ ]{1,2}([\\\\w ]+(?=\\\\)| bui)|\\\\w+)/i,/(zte)[- ]([\\\\w ]+?)(?: bui|\\\\/|\\\\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\\\\.))|sony(?!-bra))[-_ ]?([-\\\\w]*)/i],[f,[d,/_/g,\" \"],[m,h]],[/droid.+; ([ab][1-7]-?[0178a]\\\\d\\\\d?)/i],[d,[f,\"Acer\"],[m,w]],[/droid.+; (m[1-5] note) bui/i,/\\\\bmz-([-\\\\w]{2,})/i],[d,[f,\"Meizu\"],[m,h]],[/(blackberry|benq|palm(?=\\\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\\\w]*)/i,/(hp) ([\\\\w ]+\\\\w)/i,/(asus)-?(\\\\w+)/i,/(microsoft); (lumia[\\\\w ]+)/i,/(lenovo)[-_ ]?([-\\\\w]+)/i,/(jolla)/i,/(oppo) ?([\\\\w ]+) bui/i],[f,d,[m,h]],[/(kobo)\\\\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\\\/([\\\\w\\\\.]+)/i,/(nook)[\\\\w ]+build\\\\/(\\\\w+)/i,/(dell) (strea[kpr\\\\d ]*[\\\\dko])/i,/(le[- ]+pan)[- ]+(\\\\w{1,9}) bui/i,/(trinity)[- ]*(t\\\\d{3}) bui/i,/(gigaset)[- ]+(q\\\\w{1,9}) bui/i,/(vodafone) ([\\\\w ]+)(?:\\\\)| bui)/i],[f,d,[m,w]],[/(surface duo)/i],[d,[f,B],[m,w]],[/droid [\\\\d\\\\.]+; (fp\\\\du?)(?: b|\\\\))/i],[d,[f,\"Fairphone\"],[m,h]],[/(u304aa)/i],[d,[f,\"AT&T\"],[m,h]],[/\\\\bsie-(\\\\w*)/i],[d,[f,\"Siemens\"],[m,h]],[/\\\\b(rct\\\\w+) b/i],[d,[f,\"RCA\"],[m,w]],[/\\\\b(venue[\\\\d ]{2,7}) b/i],[d,[f,\"Dell\"],[m,w]],[/\\\\b(q(?:mv|ta)\\\\w+) b/i],[d,[f,\"Verizon\"],[m,w]],[/\\\\b(?:barnes[& ]+noble |bn[rt])([\\\\w\\\\+ ]*) b/i],[d,[f,\"Barnes & Noble\"],[m,w]],[/\\\\b(tm\\\\d{3}\\\\w+) b/i],[d,[f,\"NuVision\"],[m,w]],[/\\\\b(k88) b/i],[d,[f,\"ZTE\"],[m,w]],[/\\\\b(nx\\\\d{3}j) b/i],[d,[f,\"ZTE\"],[m,h]],[/\\\\b(gen\\\\d{3}) b.+49h/i],[d,[f,\"Swiss\"],[m,h]],[/\\\\b(zur\\\\d{3}) b/i],[d,[f,\"Swiss\"],[m,w]],[/\\\\b((zeki)?tb.*\\\\b) b/i],[d,[f,\"Zeki\"],[m,w]],[/\\\\b([yr]\\\\d{2}) b/i,/\\\\b(dragon[- ]+touch |dt)(\\\\w{5}) b/i],[[f,\"Dragon Touch\"],d,[m,w]],[/\\\\b(ns-?\\\\w{0,9}) b/i],[d,[f,\"Insignia\"],[m,w]],[/\\\\b((nxa|next)-?\\\\w{0,9}) b/i],[d,[f,\"NextBook\"],[m,w]],[/\\\\b(xtreme\\\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[f,\"Voice\"],d,[m,h]],[/\\\\b(lvtel\\\\-)?(v1[12]) b/i],[[f,\"LvTel\"],d,[m,h]],[/\\\\b(ph-1) /i],[d,[f,\"Essential\"],[m,h]],[/\\\\b(v(100md|700na|7011|917g).*\\\\b) b/i],[d,[f,\"Envizen\"],[m,w]],[/\\\\b(trio[-\\\\w\\\\. ]+) b/i],[d,[f,\"MachSpeed\"],[m,w]],[/\\\\btu_(1491) b/i],[d,[f,\"Rotor\"],[m,w]],[/(shield[\\\\w ]+) b/i],[d,[f,\"Nvidia\"],[m,w]],[/(sprint) (\\\\w+)/i],[f,d,[m,h]],[/(kin\\\\.[onetw]{3})/i],[[d,/\\\\./g,\" \"],[f,B],[m,h]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\\\)/i],[d,[f,q],[m,w]],[/droid.+; (ec30|ps20|tc[2-8]\\\\d[kx])\\\\)/i],[d,[f,q],[m,h]],[/smart-tv.+(samsung)/i],[f,[m,y]],[/hbbtv.+maple;(\\\\d+)/i],[[d,/^/,\"SmartTV\"],[f,A],[m,y]],[/(nux; netcast.+smarttv|lg (netcast\\\\.tv-201\\\\d|android tv))/i],[[f,M],[m,y]],[/(apple) ?tv/i],[f,[d,S+\" TV\"],[m,y]],[/crkey/i],[[d,j+\"cast\"],[f,I],[m,y]],[/droid.+aft(\\\\w)( bui|\\\\))/i],[d,[f,_],[m,y]],[/\\\\(dtv[\\\\);].+(aquos)/i,/(aquos-tv[\\\\w ]+)\\\\)/i],[d,[f,L],[m,y]],[/(bravia[\\\\w ]+)( bui|\\\\))/i],[d,[f,U],[m,y]],[/(mitv-\\\\w{5}) bui/i],[d,[f,R],[m,y]],[/Hbbtv.*(technisat) (.*);/i],[f,d,[m,y]],[/\\\\b(roku)[\\\\dx]*[\\\\)\\\\/]((?:dvp-)?[\\\\d\\\\.]*)/i,/hbbtv\\\\/\\\\d+\\\\.\\\\d+\\\\.\\\\d+ +\\\\([\\\\w\\\\+ ]*; *([\\\\w\\\\d][^;]*);([^;]*)/i],[[f,H],[d,H],[m,y]],[/\\\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\\\b/i],[[m,y]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[f,d,[m,b]],[/droid.+; (shield) bui/i],[d,[f,\"Nvidia\"],[m,b]],[/(playstation [345portablevi]+)/i],[d,[f,U],[m,b]],[/\\\\b(xbox(?: one)?(?!; xbox))[\\\\); ]/i],[d,[f,B],[m,b]],[/((pebble))app/i],[f,d,[m,T]],[/(watch)(?: ?os[,\\\\/]|\\\\d,\\\\d\\\\/)[\\\\d\\\\.]+/i],[d,[f,S],[m,T]],[/droid.+; (glass) \\\\d/i],[d,[f,I],[m,T]],[/droid.+; (wt63?0{2,3})\\\\)/i],[d,[f,q],[m,T]],[/(quest( 2| pro)?)/i],[d,[f,F],[m,T]],[/(tesla)(?: qtcarbrowser|\\\\/[-\\\\w\\\\.]+)/i],[f,[m,k]],[/(aeobc)\\\\b/i],[d,[f,_],[m,k]],[/droid .+?; ([^;]+?)(?: bui|\\\\) applew).+? mobile safari/i],[d,[m,h]],[/droid .+?; ([^;]+?)(?: bui|\\\\) applew).+?(?! mobile) safari/i],[d,[m,w]],[/\\\\b((tablet|tab)[;\\\\/]|focus\\\\/\\\\d(?!.+mobile))/i],[[m,w]],[/(phone|mobile(?:[;\\\\/]| [ \\\\w\\\\/\\\\.]*safari)|pda(?=.+windows ce))/i],[[m,h]],[/(android[-\\\\w\\\\. ]{0,9});.+buil/i],[d,[f,\"Generic\"]]],engine:[[/windows.+ edge\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"EdgeHTML\"]],[/webkit\\\\/537\\\\.36.+chrome\\\\/(?!27)([\\\\w\\\\.]+)/i],[v,[p,\"Blink\"]],[/(presto)\\\\/([\\\\w\\\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\\\/([\\\\w\\\\.]+)/i,/ekioh(flow)\\\\/([\\\\w\\\\.]+)/i,/(khtml|tasman|links)[\\\\/ ]\\\\(?([\\\\w\\\\.]+)/i,/(icab)[\\\\/ ]([23]\\\\.[\\\\d\\\\.]+)/i,/\\\\b(libweb)/i],[p,v],[/rv\\\\:([\\\\w\\\\.]{1,9})\\\\b.+(gecko)/i],[v,p]],os:[[/microsoft (windows) (vista|xp)/i],[p,v],[/(windows) nt 6\\\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\\\/ ]?([\\\\d\\\\.\\\\w ]*)/i,/(windows)[\\\\/ ]?([ntce\\\\d\\\\. ]+\\\\w)(?!.+xbox)/i],[p,[v,J,X]],[/(win(?=3|9|n)|win 9x )([nt\\\\d\\\\.]+)/i],[[p,\"Windows\"],[v,J,X]],[/ip[honead]{2,4}\\\\b(?:.*os ([\\\\w]+) like mac|; opera)/i,/ios;fbsv\\\\/([\\\\d\\\\.]+)/i,/cfnetwork\\\\/.+darwin/i],[[v,/_/g,\".\"],[p,\"iOS\"]],[/(mac os x) ?([\\\\w\\\\. ]*)/i,/(macintosh|mac_powerpc\\\\b)(?!.+haiku)/i],[[p,K],[v,/_/g,\".\"]],[/droid ([\\\\w\\\\.]+)\\\\b.+(android[- ]x86|harmonyos)/i],[v,p],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\\\/ ]?([\\\\w\\\\.]*)/i,/(blackberry)\\\\w*\\\\/([\\\\w\\\\.]*)/i,/(tizen|kaios)[\\\\/ ]([\\\\w\\\\.]+)/i,/\\\\((series40);/i],[p,v],[/\\\\(bb(10);/i],[v,[p,x]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\\\/ ]?([\\\\w\\\\.]*)/i],[v,[p,\"Symbian\"]],[/mozilla\\\\/[\\\\d\\\\.]+ \\\\((?:mobile|tablet|tv|mobile; [\\\\w ]+); rv:.+ gecko\\\\/([\\\\w\\\\.]+)/i],[v,[p,N+\" OS\"]],[/web0s;.+rt(tv)/i,/\\\\b(?:hp)?wos(?:browser)?\\\\/([\\\\w\\\\.]+)/i],[v,[p,\"webOS\"]],[/watch(?: ?os[,\\\\/]|\\\\d,\\\\d\\\\/)([\\\\d\\\\.]+)/i],[v,[p,\"watchOS\"]],[/crkey\\\\/([\\\\d\\\\.]+)/i],[v,[p,j+\"cast\"]],[/(cros) [\\\\w]+(?:\\\\)| ([\\\\w\\\\.]+)\\\\b)/i],[[p,z],v],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\\\\/(\\\\d+\\\\.[\\\\w\\\\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\\\);]+)/i,/\\\\b(joli|palm)\\\\b ?(?:os)?\\\\/?([\\\\w\\\\.]*)/i,/(mint)[\\\\/\\\\(\\\\) ]?(\\\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\\\/ ]?(?!chrom|package)([-\\\\w\\\\.]*)/i,/(hurd|linux) ?([\\\\w\\\\.]*)/i,/(gnu) ?([\\\\w\\\\.]*)/i,/\\\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\\\/ ]?(?!amd|[ix346]{1,2}86)([\\\\w\\\\.]*)/i,/(haiku) (\\\\w+)/i],[p,v],[/(sunos) ?([\\\\w\\\\.\\\\d]*)/i],[[p,\"Solaris\"],v],[/((?:open)?solaris)[-\\\\/ ]?([\\\\w\\\\.]*)/i,/(aix) ((\\\\d)(?=\\\\.|\\\\)| )[\\\\w\\\\.])*/i,/\\\\b(beos|os\\\\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\\\\w\\\\.]*)/i],[p,v]]},Z=function(e,t){if(typeof e===c&&(t=e,e=a),!(this instanceof Z))return new Z(e,t).getResult();var n=typeof i!==s&&i.navigator?i.navigator:a,r=e||(n&&n.userAgent?n.userAgent:\"\"),b=n&&n.userAgentData?n.userAgentData:a,y=t?function(e,t){var n={};for(var r in e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return n}(G,t):G,T=n&&n.userAgent==r;return this.getBrowser=function(){var e,t={};return t[p]=a,t[v]=a,V.call(t,r,y.browser),t[l]=typeof(e=t[v])===u?e.replace(/[^\\\\d\\\\.]/g,\"\").split(\".\")[0]:a,T&&n&&n.brave&&typeof n.brave.isBrave==o&&(t[p]=\"Brave\"),t},this.getCPU=function(){var e={};return e[g]=a,V.call(e,r,y.cpu),e},this.getDevice=function(){var e={};return e[f]=a,e[d]=a,e[m]=a,V.call(e,r,y.device),T&&!e[m]&&b&&b.mobile&&(e[m]=h),T&&\"Macintosh\"==e[d]&&n&&typeof n.standalone!==s&&n.maxTouchPoints&&n.maxTouchPoints>2&&(e[d]=\"iPad\",e[m]=w),e},this.getEngine=function(){var e={};return e[p]=a,e[v]=a,V.call(e,r,y.engine),e},this.getOS=function(){var e={};return e[p]=a,e[v]=a,V.call(e,r,y.os),T&&!e[p]&&b&&\"Unknown\"!=b.platform&&(e[p]=b.platform.replace(/chrome os/i,z).replace(/macos/i,K)),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return r},this.setUA=function(e){return r=typeof e===u&&e.length>350?H(e,350):e,this},this.setUA(r),this};Z.VERSION=\"1.0.35\",Z.BROWSER=$([p,v,l]),Z.CPU=$([g]),Z.DEVICE=$([d,f,m,b,h,y,w,T,k]),Z.ENGINE=Z.OS=$([p,v]),typeof t!==s?(e.exports&&(t=e.exports=Z),t.UAParser=Z):n.amdO?(r=function(){return Z}.call(t,n,t,e))===a||(e.exports=r):typeof i!==s&&(i.UAParser=Z);var Y=typeof i!==s&&(i.jQuery||i.Zepto);if(Y&&!Y.ua){var ee=new Z;Y.ua=ee.getResult(),Y.ua.get=function(){return ee.getUA()},Y.ua.set=function(e){ee.setUA(e);var t=ee.getResult();for(var n in t)Y.ua[n]=t[n]}}}(\"object\"==typeof window?window:this)}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var a=t[r]={exports:{}};return e[r].call(a.exports,a,a.exports,n),a.exports}n.amdO={},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})};var r={};return(()=>{\"use strict\";n.r(r),n.d(r,{ActionType:()=>f,AmplitudePlatformName:()=>g,AnalyticsEventImportance:()=>l,AnalyticsQueries:()=>e,AuthStatus:()=>b,ComponentType:()=>m,IThresholdTier:()=>Jt,MetricType:()=>d,PlatformName:()=>v,SessionActions:()=>h,SessionAutomatedEvents:()=>w,SessionRank:()=>y,SubjectType:()=>p,UserTypeCommerce:()=>c,UserTypeInsto:()=>i,UserTypeRetail:()=>t,UserTypeRetailBusinessBanking:()=>s,UserTypeRetailEmployeeInternal:()=>a,UserTypeRetailEmployeePersonal:()=>o,UserTypeWallet:()=>u,automatedEvents:()=>xn,automatedMappingConfig:()=>In,clearMarkEntry:()=>Vn,clearPerformanceMarkEntries:()=>Xn,config:()=>A,createEventConfig:()=>On,createNewSpan:()=>Ln,createNewTrace:()=>Un,device:()=>W,endPerfMark:()=>Jn,exposeExperiment:()=>wn,flushQueue:()=>or,generateUUID:()=>V,getAnalyticsHeaders:()=>sr,getReferrerData:()=>le,getTracingHeaders:()=>An,getTracingId:()=>Dn,getUrlHostname:()=>pe,getUrlParams:()=>me,getUrlPathname:()=>fe,getUserContext:()=>ar,identify:()=>Tn,identifyFlow:()=>xe,identity:()=>H,identityFlow:()=>Se,incrementUjNavigation:()=>an,init:()=>yn,initNextJsTrackPageview:()=>_n,initTrackPageview:()=>kn,isEventKeyFormatValid:()=>we,isSessionEnded:()=>pt,location:()=>re,logEvent:()=>$t,logMetric:()=>Ht,logPageView:()=>on,logTrace:()=>Rn,markNTBT:()=>tn,markStep:()=>nn,markStepOnce:()=>rn,onVisibilityChange:()=>ln,optIn:()=>En,optOut:()=>Sn,perfMark:()=>Wn,persistentData:()=>oe,postMessage:()=>K,recordSessionDuration:()=>pn,removeFromIdentifyFlow:()=>Ee,savePersistentData:()=>st,sendScheduledEvents:()=>Bt,setBreadcrumbs:()=>ie,setConfig:()=>U,setLocation:()=>ae,setPagePath:()=>ve,setPageview:()=>Kt,setPersistentData:()=>se,setSessionStart:()=>dt,setTime:()=>Ue,startPerfMark:()=>Hn,timeStone:()=>Le,useEventLogger:()=>Yn,useLogEventOnMount:()=>tr,usePerformanceMarks:()=>rr});let e=function(e){return e.fbclid=\"fbclid\",e.gclid=\"gclid\",e.msclkid=\"msclkid\",e.ptclid=\"ptclid\",e.ttclid=\"ttclid\",e.utm_source=\"utm_source\",e.utm_medium=\"utm_medium\",e.utm_campaign=\"utm_campaign\",e.utm_term=\"utm_term\",e.utm_content=\"utm_content\",e}({});const t=0,i=1,a=2,o=3,s=4,c=5,u=6;let l=function(e){return e.low=\"low\",e.high=\"high\",e}({}),d=function(e){return e.count=\"count\",e.rate=\"rate\",e.gauge=\"gauge\",e.distribution=\"distribution\",e.histogram=\"histogram\",e}({}),p=function(e){return e.commerce_merchant=\"commerce_merchant\",e.device=\"device\",e.edp_fingerprint_id=\"edp_fingerprint_id\",e.nft_user=\"nft_user\",e.user=\"user\",e.wallet_user=\"wallet_user\",e.uuid=\"user_uuid\",e}({}),m=function(e){return e.unknown=\"unknown\",e.banner=\"banner\",e.button=\"button\",e.card=\"card\",e.chart=\"chart\",e.content_script=\"content_script\",e.dropdown=\"dropdown\",e.link=\"link\",e.page=\"page\",e.modal=\"modal\",e.table=\"table\",e.search_bar=\"search_bar\",e.service_worker=\"service_worker\",e.text=\"text\",e.text_input=\"text_input\",e.tray=\"tray\",e.checkbox=\"checkbox\",e.icon=\"icon\",e}({}),f=function(e){return e.unknown=\"unknown\",e.blur=\"blur\",e.click=\"click\",e.change=\"change\",e.dismiss=\"dismiss\",e.focus=\"focus\",e.hover=\"hover\",e.select=\"select\",e.measurement=\"measurement\",e.move=\"move\",e.process=\"process\",e.render=\"render\",e.scroll=\"scroll\",e.view=\"view\",e.search=\"search\",e.keyPress=\"keyPress\",e}({}),v=function(e){return e.unknown=\"unknown\",e.web=\"web\",e.android=\"android\",e.ios=\"ios\",e.mobile_web=\"mobile_web\",e.tablet_web=\"tablet_web\",e.server=\"server\",e.windows=\"windows\",e.macos=\"macos\",e.extension=\"extension\",e}({}),g=function(e){return e.web=\"Web\",e.ios=\"iOS\",e.android=\"Android\",e}({}),b=function(e){return e[e.notLoggedIn=0]=\"notLoggedIn\",e[e.loggedIn=1]=\"loggedIn\",e}({}),h=function(e){return e.ac=\"ac\",e.af=\"af\",e.ah=\"ah\",e.al=\"al\",e.am=\"am\",e.ar=\"ar\",e.as=\"as\",e}({}),w=function(e){return e.pv=\"pv\",e}({}),y=function(e){return e.xs=\"xs\",e.s=\"s\",e.m=\"m\",e.l=\"l\",e.xl=\"xl\",e.xxl=\"xxl\",e}({});const T=\"https://analytics-service-dev.cbhq.net\",k=3e5,_=5e3,S=\"analytics-db\",E=\"experiment-exposure-db\",x=\"Analytics SDK:\",O=Object.values(e),j=\"pageview\",N=\"session_duration\",I={navigationTiming:{eventName:\"perf_navigation_timing\"},redirectTime:{eventName:\"perf_redirect_time\"},RT:{eventName:\"perf_redirect_time\"},TTFB:{eventName:\"perf_time_to_first_byte\"},networkInformation:{eventName:\"perf_network_information\"},storageEstimate:{eventName:\"perf_storage_estimate\"},FCP:{eventName:\"perf_first_contentful_paint\"},FID:{eventName:\"perf_first_input_delay\"},LCP:{eventName:\"perf_largest_contentful_paint\"},CLS:{eventName:\"perf_cumulative_layout_shift\"},TBT:{eventName:\"perf_total_blocking_time\"},NTBT:{eventName:\"perf_navigation_total_blocking_time\"},INP:{eventName:\"perf_interact_to_next_paint\"},ET:{eventName:\"perf_element_timing\"},userJourneyStep:{eventName:\"perf_user_journey_step\"}},P=\"1\",M=\"web\";function B(){return B=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},B.apply(this,arguments)}const C=/^(https?:\\\\/\\\\/)/;function D(e){return{eventsEndpoint:e+\"/amp\",metricsEndPoint:e+\"/metrics\",exposureEndpoint:e+\"/track-exposures\",tracesEndpoint:e+\"/traces\"}}const A=B({authCookie:\"logged_in\",amplitudeApiKey:\"\",batchEventsPeriod:_,batchEventsThreshold:30,batchMetricsPeriod:_,batchMetricsThreshold:30,batchTracesPeriod:_,batchTracesThreshold:30,headers:{},interactionManager:null,isAlwaysAuthed:!1,isProd:!1,isInternalApplication:!1,onError:(e,t)=>{console.error(x,e,t)},platform:v.unknown,projectName:\"\",ricTimeoutScheduleEvent:1e3,ricTimeoutSetDevice:500,showDebugLogging:!1,trackUserId:!1,version:null,apiEndpoint:T},D(T),{steps:{}}),L=[].reduce(((e,t)=>n=>e(t(n))),(e=>{if(!e.isProd)return e.isInternalApplication?(e.apiEndpoint=\"https://analytics-service-internal-dev.cbhq.net\",B({},e,D(e.apiEndpoint))):e;const t=(e=>e.apiEndpoint?C.test(e.apiEndpoint)?e.apiEndpoint:\\`https://\\${e.apiEndpoint}\\`:e.isInternalApplication?\"https://analytics-service-internal.cbhq.net\":\"https://as.coinbase.com\")(e);return B({},e,{apiEndpoint:t},D(t))})),U=e=>{const{batchEventsThreshold:t,batchMetricsThreshold:n,batchTracesThreshold:r}=e,i=[t,n,r];for(const e of i)if((e||0)>30){console.warn(\"You are setting the threshhold for the batch limit to be greater than 30. This may cause request overload.\");break}Object.assign(A,L(e))},R=[v.web,v.mobile_web,v.tablet_web];function q(){return\"android\"===A.platform}function F(){return\"ios\"===A.platform}function z(){return R.includes(A.platform)}function K(e){if(z()&&navigator&&\"serviceWorker\"in navigator&&navigator.serviceWorker.controller)try{navigator.serviceWorker.controller.postMessage(e)}catch(e){e instanceof Error&&A.onError(e)}}var $=n(353),Q=n.n($);const W={amplitudeOSName:null,amplitudeOSVersion:null,amplitudeDeviceModel:null,amplitudePlatform:null,browserName:null,browserMajor:null,osName:null,userAgent:null,width:null,height:null},H={countryCode:null,deviceId:null,device_os:null,isOptOut:!1,languageCode:null,locale:null,jwt:null,session_lcc_id:null,userAgent:null,userId:null},V=e=>e?(e^16*Math.random()>>e/4).toString(16):\"10000000-1000-4000-8000-100000000000\".replace(/[018]/g,V),J=()=>A.isAlwaysAuthed||!!H.userId,X=()=>{const e={};return H.countryCode&&(e.country_code=H.countryCode),e},G=()=>{const{platform:e}=A;if(e===v.web)switch(!0){case window.matchMedia(\"(max-width: 560px)\").matches:return v.mobile_web;case window.matchMedia(\"(max-width: 1024px, min-width: 561px)\").matches:return v.tablet_web}return e},Z=()=>{var e,t,n,r,i;z()?(\"requestIdleCallback\"in window?window.requestIdleCallback(ne,{timeout:A.ricTimeoutSetDevice}):ne(),W.amplitudePlatform=g.web,W.userAgent=(null==(e=window)||null==(e=e.navigator)?void 0:e.userAgent)||null,ee({height:null!=(t=null==(n=window)?void 0:n.innerHeight)?t:null,width:null!=(r=null==(i=window)?void 0:i.innerWidth)?r:null})):F()?(W.amplitudePlatform=g.ios,W.userAgent=H.userAgent,W.userAgent&&ne()):q()&&(W.userAgent=H.userAgent,W.amplitudePlatform=g.android,W.userAgent&&ne())},Y=e=>{Object.assign(H,e),z()&&K({identity:{isAuthed:!!H.userId,locale:H.locale||null}})},ee=e=>{W.height=e.height,W.width=e.width},te=()=>{U({platform:G()}),z()&&K({config:{platform:A.platform}})},ne=()=>{var e;performance.mark&&performance.mark(\"ua_parser_start\");const t=new(Q())(null!=(e=W.userAgent)?e:\"\").getResult();W.browserName=t.browser.name||null,W.browserMajor=t.browser.major||null,W.osName=t.os.name||null,W.amplitudeOSName=W.browserName,W.amplitudeOSVersion=W.browserMajor,W.amplitudeDeviceModel=W.osName,K({device:{browserName:W.browserName,osName:W.osName}}),performance.mark&&(performance.mark(\"ua_parser_end\"),performance.measure(\"ua_parser\",\"ua_parser_start\",\"ua_parser_end\"))},re={breadcrumbs:[],initialUAAData:{},pageKey:\"\",pageKeyRegex:{},pagePath:\"\",prevPageKey:\"\",prevPagePath:\"\"};function ie(e){Object.assign(re,{breadcrumbs:e})}function ae(e){Object.assign(re,e)}const oe={eventId:0,sequenceNumber:0,sessionId:0,lastEventTime:0,sessionStart:0,sessionUUID:null,userId:null,ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0};function se(e){Object.assign(oe,e)}function ce(){var e,t;return null!=(e=null==(t=document)?void 0:t.referrer)?e:\"\"}function ue(){return ue=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ue.apply(this,arguments)}const le=()=>{const e=ce();if(!e)return{};const t=new URL(e);return t.hostname===pe()?{}:{referrer:e,referring_domain:t.hostname}},de=()=>{const e=new URLSearchParams(me()),t={};return O.forEach((n=>{e.has(n)&&(t[n]=(e.get(n)||\"\").toLowerCase())})),t},pe=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.hostname)||\"\"},me=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.search)||\"\"},fe=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.pathname)||\"\"},ve=()=>{const e=A.overrideWindowLocation?re.pagePath:fe()+me();e&&e!==re.pagePath&&(e!==re.pagePath&&ge(),re.pagePath=e,re.pageKeyRegex&&Object.keys(re.pageKeyRegex).some((e=>{if(re.pageKeyRegex[e].test(re.pagePath))return re.pageKey=e,!0})))},ge=()=>{if(z()){const e=ce();if(!re.prevPagePath&&e){const t=new URL(e);if(t.hostname===pe())return void(re.prevPagePath=t.pathname)}}re.prevPagePath=re.pagePath,re.prevPageKey=re.pageKey},be=e=>{z()&&Object.assign(e,z()?(Object.keys(re.initialUAAData).length>0||(new URLSearchParams(me()),re.initialUAAData=ue({},(()=>{const e={};return O.forEach((t=>{oe[t]&&(e[t]=oe[t])})),e})(),de(),le())),re.initialUAAData):re.initialUAAData)},he=/^[a-zd]+(_[a-zd]+)*$/;function we(e){return he.test(e)}function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ye.apply(this,arguments)}const Te=[\"action\",\"component_type\",\"component_name\",\"context\",\"logging_id\"],ke=[\"num_non_hardware_accounts\",\"ujs\"],_e=\"ujs_\",Se={};function Ee(e){e.forEach((e=>{ke.includes(e)&&delete Se[e]}))}function xe(e){var t;const n=Object.entries(e).reduce(((e,t)=>{const[n,r]=t;return!Te.includes(n)&&ke.includes(n)?we(n)?ye({},e,{[n]:r}):(A.onError(new Error(\"IdentityFlow property names must have snake case format\"),{[n]:r}),e):e}),{});null!=(t=n.ujs)&&t.length&&(n.ujs=n.ujs.map((e=>\\`\\${_e}\\${e}\\`))),Object.assign(Se,n)}function Oe(){return A.platform!==v.unknown||(A.onError(new Error(\"SDK platform not initialized\")),!1)}const je={eventsQueue:[],eventsScheduled:!1,metricsQueue:[],metricsScheduled:!1,tracesQueue:[],tracesScheduled:!1};function Ne(e){Object.assign(je,e)}const Ie={ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0,sqs:0},Pe={ac:20,af:5,ah:1,al:1,am:0,ar:10,as:20},Me={pv:25},Be={xs:0,s:1,m:1,l:2,xl:2,xxl:2},Ce=e=>e<15?y.xs:e<60?y.s:e<240?y.m:e<960?y.l:e<3840?y.xl:y.xxl,De=e=>{Object.assign(Ie,e)};function Ae(){return(new Date).getTime()}const Le={timeStart:Ae(),timeOnPagePath:0,timeOnPageKey:0,prevTimeOnPagePath:0,prevTimeOnPageKey:0,sessionDuration:0,sessionEnd:0,sessionStart:0,prevSessionDuration:0};function Ue(e){Object.assign(Le,e)}const Re=(e,t)=>t.some((t=>e instanceof t));let qe,Fe;const ze=new WeakMap,Ke=new WeakMap,$e=new WeakMap,Qe=new WeakMap,We=new WeakMap;let He={get(e,t,n){if(e instanceof IDBTransaction){if(\"done\"===t)return Ke.get(e);if(\"objectStoreNames\"===t)return e.objectStoreNames||$e.get(e);if(\"store\"===t)return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return Je(e[t])},set:(e,t,n)=>(e[t]=n,!0),has:(e,t)=>e instanceof IDBTransaction&&(\"done\"===t||\"store\"===t)||t in e};function Ve(e){return\"function\"==typeof e?(t=e)!==IDBDatabase.prototype.transaction||\"objectStoreNames\"in IDBTransaction.prototype?(Fe||(Fe=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(Xe(this),e),Je(ze.get(this))}:function(...e){return Je(t.apply(Xe(this),e))}:function(e,...n){const r=t.call(Xe(this),e,...n);return $e.set(r,e.sort?e.sort():[e]),Je(r)}:(e instanceof IDBTransaction&&function(e){if(Ke.has(e))return;const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener(\"complete\",i),e.removeEventListener(\"error\",a),e.removeEventListener(\"abort\",a)},i=()=>{t(),r()},a=()=>{n(e.error||new DOMException(\"AbortError\",\"AbortError\")),r()};e.addEventListener(\"complete\",i),e.addEventListener(\"error\",a),e.addEventListener(\"abort\",a)}));Ke.set(e,t)}(e),Re(e,qe||(qe=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]))?new Proxy(e,He):e);var t}function Je(e){if(e instanceof IDBRequest)return function(e){const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener(\"success\",i),e.removeEventListener(\"error\",a)},i=()=>{t(Je(e.result)),r()},a=()=>{n(e.error),r()};e.addEventListener(\"success\",i),e.addEventListener(\"error\",a)}));return t.then((t=>{t instanceof IDBCursor&&ze.set(t,e)})).catch((()=>{})),We.set(t,e),t}(e);if(Qe.has(e))return Qe.get(e);const t=Ve(e);return t!==e&&(Qe.set(e,t),We.set(t,e)),t}const Xe=e=>We.get(e),Ge=[\"get\",\"getKey\",\"getAll\",\"getAllKeys\",\"count\"],Ze=[\"put\",\"add\",\"delete\",\"clear\"],Ye=new Map;function et(e,t){if(!(e instanceof IDBDatabase)||t in e||\"string\"!=typeof t)return;if(Ye.get(t))return Ye.get(t);const n=t.replace(/FromIndex$/,\"\"),r=t!==n,i=Ze.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!i&&!Ge.includes(n))return;const a=async function(e,...t){const a=this.transaction(e,i?\"readwrite\":\"readonly\");let o=a.store;return r&&(o=o.index(t.shift())),(await Promise.all([o[n](...t),i&&a.done]))[0]};return Ye.set(t,a),a}var tt;tt=He,He={...tt,get:(e,t,n)=>et(e,t)||tt.get(e,t,n),has:(e,t)=>!!et(e,t)||tt.has(e,t)};const nt={isReady:!1,idbKeyval:null};function rt(e){Object.assign(nt,e)}const it={},at=async e=>{if(!nt.idbKeyval)return Promise.resolve(null);try{return await nt.idbKeyval.get(e)}catch(e){return A.onError(new Error(\"IndexedDB:Get:InternalError\")),Promise.resolve(null)}},ot=async(e,t)=>{if(nt.idbKeyval)try{await nt.idbKeyval.set(e,t)}catch(e){A.onError(new Error(\"IndexedDB:Set:InternalError\"))}},st=()=>{\"server\"!==A.platform&&(se({sessionStart:Le.sessionStart,ac:Ie.ac,af:Ie.af,ah:Ie.ah,al:Ie.al,am:Ie.am,ar:Ie.ar,as:Ie.as,pv:Ie.pv}),H.userId&&se({userId:H.userId}),ot(S,oe))},ct=\"rgb(5,177,105)\",ut=e=>{const{metricName:t,data:n}=e,r=e.importance||l.low;if(!A.showDebugLogging||!console)return;const i=\\`%c \\${x}\\`,a=\\`color:\\${ct};font-size:11px;\\`,o=\\`Importance: \\${r}\\`;console.group(i,a,t,o),n.forEach((e=>{e.event_type?console.log(e.event_type,e):console.log(e)})),console.groupEnd()},lt=e=>{const{metricName:t,data:n}=e,r=e.importance||l.low;if(!A.showDebugLogging||!console)return;const i=\\`color:\\${ct};font-size:11px;\\`,a=\\`%c \\${x}\\`,o=\\`Importance: \\${r}\\`;console.log(a,i,t,n,o)},dt=()=>{const e=Ae();oe.sessionId&&oe.lastEventTime&&oe.sessionUUID&&!pt(e)||(oe.sessionId=e,oe.sessionUUID=V(),Ue({sessionStart:e}),lt({metricName:\"Started new session:\",data:{persistentData:oe,timeStone:Le}})),oe.lastEventTime=e},pt=e=>e-oe.lastEventTime>18e5;function mt(){return mt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mt.apply(this,arguments)}const ft=e=>{var t;(e=>{switch(e.action){case f.click:Ie.ac+=1;break;case f.focus:Ie.af+=1;break;case f.hover:Ie.ah+=1;break;case f.move:Ie.am+=1;break;case f.scroll:Ie.al+=1;break;case f.search:Ie.ar+=1;break;case f.select:Ie.as+=1}})(t=e),t.event_type!==j?t.event_type===N&&((e=>{if(!e.session_rank)return;const t=e.session_rank;Object.values(h).forEach((e=>{Ie.sqs+=Ie[e]*Pe[e]})),Object.values(w).forEach((e=>{Ie.sqs+=Ie[e]*Me[e]})),Ie.sqs*=Be[t]})(t),Object.assign(t,Ie),De({ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0,sqs:0})):Ie.pv+=1;const n=e.event_type;delete e.event_type;const r=e.deviceId?e.deviceId:null,i=e.timestamp;return delete e.timestamp,se({eventId:oe.eventId+1}),se({sequenceNumber:oe.sequenceNumber+1}),dt(),st(),{device_id:H.deviceId||r||null,user_id:H.userId,timestamp:i,event_id:oe.eventId,session_id:oe.sessionId||-1,event_type:n,version_name:A.version||null,platform:W.amplitudePlatform,os_name:W.amplitudeOSName,os_version:W.amplitudeOSVersion,device_model:W.amplitudeDeviceModel,language:H.languageCode,event_properties:mt({},e,{session_uuid:oe.sessionUUID,height:W.height,width:W.width}),user_properties:X(),uuid:V(),library:{name:\"@cbhq/client-analytics\",version:\"10.6.0\"},sequence_number:oe.sequenceNumber,user_agent:W.userAgent||H.userAgent}},vt=e=>e.map((e=>ft(e)));function gt(){return gt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gt.apply(this,arguments)}const bt=e=>e.map((e=>(e=>{const t=e.tags||{},n=gt({authed:J()?\"true\":\"false\",platform:A.platform},t,{project_name:A.projectName,version_name:A.version||null});return{metric_name:e.metricName,page_path:e.pagePath||null,value:e.value,tags:n,type:e.metricType}})(e))),ht=e=>0!==je.metricsQueue.length&&(je.metricsQueue.length>=A.batchMetricsThreshold||(je.metricsScheduled||(je.metricsScheduled=!0,setTimeout((()=>{je.metricsScheduled=!1,e(bt(je.metricsQueue)),je.metricsQueue=[]}),A.batchMetricsPeriod)),!1)),wt=e=>0!==je.tracesQueue.length&&(je.tracesQueue.length>=A.batchTracesThreshold||(je.tracesScheduled||(je.tracesScheduled=!0,setTimeout((()=>{je.tracesScheduled=!1,e(je.tracesQueue),je.tracesQueue=[]}),A.batchTracesPeriod)),!1)),yt=e=>{var t;z()&&null!=(t=window)&&t.requestIdleCallback?window.requestIdleCallback(e,{timeout:A.ricTimeoutScheduleEvent}):(q()||F())&&A.interactionManager?A.interactionManager.runAfterInteractions(e):e()};function Tt(){return Tt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Tt.apply(this,arguments)}const kt=\"application/x-www-form-urlencoded; charset=UTF-8\",_t=e=>{const{data:t,importance:n,isJSON:r,onError:i,url:a}=e,o=r?\"application/json\":kt,s=n||l.low,c=r?JSON.stringify(t):new URLSearchParams(t).toString();function u(){const e=new XMLHttpRequest;e.open(\"POST\",a,!0),Object.keys(A.headers||{}).forEach((t=>{e.setRequestHeader(t,A.headers[t])})),e.setRequestHeader(\"Content-Type\",kt),H.jwt&&e.setRequestHeader(\"authorization\",\\`Bearer \\${H.jwt}\\`),e.send(c)}if(!z()||r||!(\"sendBeacon\"in navigator)||s!==l.low||A.headers&&0!==Object.keys(A.headers).length)if(z()&&!r)u();else{const e=Tt({},A.headers,{\"Content-Type\":o});H.jwt&&(e.Authorization=\\`Bearer \\${H.jwt}\\`),fetch(a,{method:\"POST\",mode:\"no-cors\",headers:e,body:c}).catch((e=>{i(e,{context:\"AnalyticsSDKApiError\"})}))}else{const e=new Blob([c],{type:kt});try{navigator.sendBeacon.bind(navigator)(a,e)||u()}catch(e){console.error(e),u()}}};var St=n(762),Et=n.n(St);const xt=(e,t,n)=>{const r=e||\"\";return Et()(\"2\"+r+t+n)};function Ot(){return Ot=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ot.apply(this,arguments)}class jt extends Error{constructor(e){super(e),this.name=\"CircularJsonReference\",this.message=e,\"function\"==typeof Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error(e).stack}}class Nt extends jt{constructor(...e){super(...e),this.name=\"DomReferenceInAnalyticsEvent\"}}function It(){return It=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},It.apply(this,arguments)}const Pt=(e,t=l.low)=>{var n;e&&je.eventsQueue.push(e),nt.isReady&&(!A.trackUserId||H.userId?(t===l.high||(n=Mt,0!==je.eventsQueue.length&&(je.eventsQueue.length>=A.batchEventsThreshold||(je.eventsScheduled||(je.eventsScheduled=!0,setTimeout((()=>{je.eventsScheduled=!1,n(vt(je.eventsQueue)),je.eventsQueue=[]}),A.batchEventsPeriod)),0))))&&Bt():je.eventsQueue.length>10&&(A.trackUserId=!1,A.onError(new Error(\"userId not set in Logged-in\"))))},Mt=(e,t=l.low)=>{if(H.isOptOut||0===e.length)return;let n;try{n=JSON.stringify(e)}catch(t){const r=e.map((e=>e.event_type)).join(\", \"),[i,a]=(e=>{try{const n=[];for(const r of e){const e=Ot({},r);r.event_properties&&(e.event_properties=Ot({},e.event_properties,{currentTarget:null,target:null,relatedTarget:null,_dispatchInstances:null,_targetInst:null,view:(t=r.event_properties.view,[\"string\",\"number\",\"boolean\"].includes(typeof t)?r.event_properties.view:null)})),n.push(e)}return[!0,JSON.stringify(n)]}catch(e){return[!1,\"\"]}var t})(e);if(!i)return void A.onError(new jt(t instanceof Error?t.message:\"unknown\"),{listEventType:r});n=a,A.onError(new Nt(\"Found DOM element reference\"),{listEventType:r,stringifiedEventData:n})}const r=Ae().toString(),i=It({},{e:n,v:\"2\",upload_time:r},{client:A.amplitudeApiKey,checksum:xt(A.amplitudeApiKey,n,r)});_t({url:A.eventsEndpoint,data:i,importance:t,onError:A.onError}),ut({metricName:\"Batch Events\",data:e,importance:t})},Bt=()=>{Mt(vt(je.eventsQueue)),Ne({eventsQueue:[]})};function Ct(){return Ct=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ct.apply(this,arguments)}const Dt=Object.values(f),At=Object.values(m),Lt=e=>Dt.includes(e)?e:f.unknown,Ut=e=>At.includes(e)?e:m.unknown,Rt=(e,t,n)=>{const r={auth:J()?b.loggedIn:b.notLoggedIn,action:Lt(e),component_type:Ut(t),logging_id:n,platform:A.platform,project_name:A.projectName};return\"number\"==typeof H.userTypeEnum&&(r.user_type_enum=H.userTypeEnum),r},qt=e=>{const t=Ae();if(!e)return A.onError(new Error(\"missing logData\")),Ct({},Rt(f.unknown,m.unknown),{locale:H.locale,session_lcc_id:H.session_lcc_id,timestamp:t,time_start:Le.timeStart});const n=Ct({},e,Rt(e.action,e.componentType,e.loggingId),{locale:H.locale,session_lcc_id:H.session_lcc_id,timestamp:t,time_start:Le.timeStart});return delete n.componentType,delete n.loggingId,n},Ft={blacklistRegex:[],isEnabled:!1};function zt(){return{page_key:re.pageKey,page_path:re.pagePath,prev_page_key:re.prevPageKey,prev_page_path:re.prevPagePath}}function Kt(e){Object.assign(Ft,e)}function $t(e,t,n=l.low){if(H.isOptOut)return;if(!Oe())return;const r=qt(t);!function(e){Ft.isEnabled&&(ve(),Object.assign(e,zt()))}(r),be(r),function(e){Object.keys(Se).length>0&&Object.assign(e,Se)}(r),r.has_double_fired=!1,r.event_type=e,n===l.high?Pt(r,n):yt((()=>{Pt(r)}))}function Qt(e,t=!1){t?_t({url:A.metricsEndPoint,data:{metrics:e},isJSON:!0,onError:A.onError}):yt((()=>{_t({url:A.metricsEndPoint,data:{metrics:e},isJSON:!0,onError:A.onError})})),ut({metricName:\"Batch Metrics\",data:e})}function Wt(){return Wt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Wt.apply(this,arguments)}function Ht(e){if(!Oe())return;v.server!==A.platform&&!e.pagePath&&re.pagePath&&(e.pagePath=re.pagePath);const t=Object.keys(Se).length?Wt({},e.tags,Se):e.tags;t&&Object.assign(e,{tags:t}),je.metricsQueue.push(e),ht(Qt)&&(Qt(bt(je.metricsQueue)),je.metricsQueue=[])}function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Vt.apply(this,arguments)}let Jt=function(e){return e.instant=\"instant\",e.quick=\"quick\",e.moderate=\"moderate\",e.slow=\"slow\",e.unavoidable=\"unavoidable\",e}({});function Xt(e){return e.toLowerCase()}let Gt={};const Zt=(e,t)=>{null!=A&&A.onMarkStep&&A.onMarkStep(e,t),xe({ujs:t})};let Yt;const en={Perfume:()=>{},markStep:e=>{},markStepOnce:e=>{},incrementUjNavigation:()=>{}},tn=()=>{z()&&Yt&&Yt.markNTBT&&Yt.markNTBT()},nn=e=>{z()&&Yt&&en.markStep&&en.markStep(e)},rn=e=>{z()&&Yt&&en.markStepOnce&&en.markStepOnce(e)},an=()=>{z()&&Yt&&en.incrementUjNavigation&&en.incrementUjNavigation()};function on(e={callMarkNTBT:!0}){\"unknown\"!==A.platform&&(Ft.blacklistRegex.some((e=>e.test(fe())))||($t(j,{action:f.render,componentType:m.page}),e.callMarkNTBT&&tn()))}let sn=!1,cn=!1;const un=e=>{sn=!e.persisted},ln=(e,t=\"hidden\",n=!1)=>{cn||(addEventListener(\"pagehide\",un),addEventListener(\"beforeunload\",(()=>{})),cn=!0),addEventListener(\"visibilitychange\",(({timeStamp:n})=>{document.visibilityState===t&&e({timeStamp:n,isUnloading:sn})}),{capture:!0,once:n})},dn=36e3;function pn(){const e=pt(Ae());if(e&&(O.forEach((e=>{oe[e]&&delete oe[e]})),st()),!oe.lastEventTime||!Le.sessionStart||!e)return;const t=Math.round((oe.lastEventTime-Le.sessionStart)/1e3);if(t<1||t>dn)return;const n=Ce(t);$t(N,{action:f.measurement,componentType:m.page,session_duration:t,session_end:oe.lastEventTime,session_start:Le.sessionStart,session_rank:n})}function mn(){return mn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mn.apply(this,arguments)}const fn=[],vn=[],gn=()=>{const e=fn.shift();e&&e()},bn=()=>{const e=vn.shift();e&&e()};let hn={};function wn(e){const t=function(e){return{test_name:e.testName,group_name:e.group,subject_id:e.subjectId,exposed_at:Ae(),subject_type:e.subjectType,platform:A.platform}}(e);hn[e.testName]=hn[e.testName]||0,hn[e.testName]+k>Ae()?lt({metricName:\\`Event: exposeExperiment \\${e.testName} not sent\\`,data:t}):(hn[e.testName]=Ae(),ot(E,hn),lt({metricName:\\`Event: exposeExperiment \\${e.testName} sent\\`,data:t}),_t({url:A.exposureEndpoint,data:[t],onError:(t,n)=>{hn[e.testName]=0,ot(E,hn),A.onError(t,n)},isJSON:!0,importance:l.high}))}const yn=e=>{var t,r,i;U(e),z()&&(H.languageCode=(null==(t=navigator)?void 0:t.languages[0])||(null==(r=navigator)?void 0:r.language)||\"\"),te(),(()=>{var e;if(z()&&null!=(e=window)&&e.indexedDB){const e=function(e,t,{blocked:n,upgrade:r,blocking:i,terminated:a}={}){const o=indexedDB.open(e,t),s=Je(o);return r&&o.addEventListener(\"upgradeneeded\",(e=>{r(Je(o.result),e.oldVersion,e.newVersion,Je(o.transaction),e)})),n&&o.addEventListener(\"blocked\",(e=>n(e.oldVersion,e.newVersion,e))),s.then((e=>{a&&e.addEventListener(\"close\",(()=>a())),i&&e.addEventListener(\"versionchange\",(e=>i(e.oldVersion,e.newVersion,e)))})).catch((()=>{})),s}(\"keyval-store\",1,{upgrade(e){e.createObjectStore(\"keyval\")}});rt({idbKeyval:{get:async t=>(await e).get(\"keyval\",t),set:async(t,n)=>(await e).put(\"keyval\",n,t),delete:async t=>(await e).delete(\"keyval\",t),keys:async()=>(await e).getAllKeys(\"keyval\")}})}else rt({idbKeyval:{get:async e=>new Promise((t=>{t(it[e])})),set:async(e,t)=>new Promise((n=>{it[e]=t,n(e)})),delete:async e=>new Promise((()=>{delete it[e]})),keys:async()=>new Promise((e=>{e(Object.keys(it))}))}})})(),lt({metricName:\"Initialized Analytics:\",data:{deviceId:H.deviceId}}),fn.push((()=>{Pt()})),(async()=>{const e=await at(S);rt({isReady:!0}),gn(),e&&(bn(),se({eventId:e.eventId||oe.eventId,sequenceNumber:e.sequenceNumber||oe.sequenceNumber,sessionId:e.sessionId||oe.sessionId,lastEventTime:e.lastEventTime||oe.lastEventTime,sessionUUID:e.sessionUUID||oe.sessionUUID}),function(e){se(mn({},function(e){const t={};return O.forEach((n=>{e[n]&&(t[n]=e[n])})),t}(e),de()))}(e),Ue({sessionStart:e.sessionStart||oe.sessionStart}),De({ac:e.ac||Ie.ac,af:e.af||Ie.af,ah:e.ah||Ie.ah,al:e.al||Ie.al,am:e.am||Ie.am,ar:e.ar||Ie.ar,as:e.as||Ie.as,pv:e.pv||Ie.pv}),A.trackUserId&&Y({userId:e.userId||H.userId}),pn(),lt({metricName:\"Initialized Analytics IndexedDB:\",data:e}))})(),async function(){at(E).then((e=>{hn=null!=e?e:{}})).catch((e=>{e instanceof Error&&A.onError(e)}))}(),Z(),z()&&(ln((()=>{se({lastEventTime:Ae()}),st(),Bt()}),\"hidden\"),ln((()=>{pn()}),\"visible\")),z()&&(i=()=>{var e,t,n,r;te(),ee({width:null!=(e=null==(t=window)?void 0:t.innerWidth)?e:null,height:null!=(n=null==(r=window)?void 0:r.innerHeight)?n:null})},addEventListener(\"resize\",(()=>{requestAnimationFrame((()=>{i()}))}))),(()=>{if(z())try{const e=n(2);en.markStep=e.markStep,en.markStepOnce=e.markStepOnce,en.incrementUjNavigation=e.incrementUjNavigation,Yt=new e.Perfume({analyticsTracker:e=>{const{data:t,attribution:n,metricName:r,navigatorInformation:i,rating:a}=e,o=I[r],s=(null==n?void 0:n.category)||null;if(!o&&!s)return;const c=(null==i?void 0:i.deviceMemory)||0,u=(null==i?void 0:i.hardwareConcurrency)||0,l=(null==i?void 0:i.isLowEndDevice)||!1,p=(null==i?void 0:i.isLowEndExperience)||!1,v=(null==i?void 0:i.serviceWorkerStatus)||\"unsupported\",g=Vt({deviceMemory:c,hardwareConcurrency:u,isLowEndDevice:l,isLowEndExperience:p,serviceWorkerStatus:v},Gt),b={is_low_end_device:l,is_low_end_experience:p,page_key:re.pageKey||\"\",save_data:t.saveData||!1,service_worker:v,is_perf_metric:!0};if(\"navigationTiming\"===r)t&&\"number\"==typeof t.redirectTime&&Ht({metricName:I.redirectTime.eventName,metricType:d.histogram,tags:b,value:t.redirectTime||0});else if(\"TTFB\"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,vitalsScore:a||null},g)),Ht({metricName:I.TTFB.eventName,metricType:d.histogram,tags:Vt({},b),value:t}),a&&Ht({metricName:\\`perf_web_vitals_ttfb_\\${a}\\`,metricType:d.count,tags:b,value:1});else if(\"networkInformation\"===r)null!=t&&t.effectiveType&&(Gt=t,$t(o.eventName,{action:f.measurement,componentType:m.page,networkInformationDownlink:t.downlink,networkInformationEffectiveType:t.effectiveType,networkInformationRtt:t.rtt,networkInformationSaveData:t.saveData,navigatorDeviceMemory:c,navigatorHardwareConcurrency:u}));else if(\"storageEstimate\"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page},t,g)),Ht({metricName:\"perf_storage_estimate_caches\",metricType:d.histogram,tags:b,value:t.caches}),Ht({metricName:\"perf_storage_estimate_indexed_db\",metricType:d.histogram,tags:b,value:t.indexedDB});else if(\"CLS\"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page,score:100*t||null,vitalsScore:a||null},g)),a&&Ht({metricName:\\`perf_web_vitals_cls_\\${a}\\`,metricType:d.count,tags:b,value:1});else if(\"FID\"===r){const e=(null==n?void 0:n.performanceEntry)||null,r=parseInt((null==e?void 0:e.processingStart)||\"\");$t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,processingStart:null!=e&&e.processingStart?r:null,startTime:null!=e&&e.startTime?parseInt(e.startTime):null,vitalsScore:a||null},g)),a&&Ht({metricName:\\`perf_web_vitals_fidVitals_\\${a}\\`,metricType:d.count,tags:b,value:1})}else\"userJourneyStep\"===r?($t(\"perf_user_journey_step\",Vt({action:f.measurement,componentType:m.page,duration:t||null,rating:null!=a?a:null,step_name:(null==n?void 0:n.stepName)||\"\"},g)),Ht({metricName:\\`user_journey_step.\\${A.projectName}.\\${A.platform}.\\${(null==n?void 0:n.stepName)||\"\"}_vitals_\\${a}\\`,metricType:d.count,tags:b,value:1}),Ht({metricName:\\`user_journey_step.\\${A.projectName}.\\${A.platform}.\\${(null==n?void 0:n.stepName)||\"\"}\\`,metricType:d.distribution,tags:b,value:t||null})):I[r]&&t&&($t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,vitalsScore:a||null},g)),a&&(Ht({metricName:\\`perf_web_vitals_\\${Xt(r)}_\\${a}\\`,metricType:d.count,tags:b,value:1}),\"LCP\"===r&&Ht({metricName:\\`perf_web_vitals_\\${Xt(r)}\\`,metricType:d.distribution,tags:b,value:t})))},maxMeasureTime:3e4,steps:A.steps,onMarkStep:Zt})}catch(e){e instanceof Error&&A.onError(e)}})()},Tn=e=>{Y(e),e.userAgent&&Z(),lt({metricName:\"Identify:\",data:{countryCode:H.countryCode,deviceId:H.deviceId,userId:H.userId}})},kn=({blacklistRegex:e,pageKeyRegex:t,browserHistory:n})=>{Kt({blacklistRegex:e||[],isEnabled:!0}),ae({pageKeyRegex:t}),on({callMarkNTBT:!1}),n.listen((()=>{on()}))},_n=({blacklistRegex:e,pageKeyRegex:t,nextJsRouter:n})=>{Kt({blacklistRegex:e||[],isEnabled:!0}),ae({pageKeyRegex:t}),on({callMarkNTBT:!1}),n.events.on(\"routeChangeComplete\",(()=>{on()}))},Sn=()=>{Y({isOptOut:!0}),ot(S,{})},En=()=>{Y({isOptOut:!1})},xn={Button:{label:\"cb_button\",uuid:\"e921a074-40e6-4371-8700-134d5cd633e6\",componentType:m.button}};function On(e,t,n){return{componentName:e,actions:t,data:n}}function jn(){return jn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jn.apply(this,arguments)}function Nn(e,t,n){const{componentName:r,data:i}=n;$t(e.label,jn({componentType:e.componentType,action:t,loggingId:e.uuid,component_name:r},i))}const In={actionMapping:{onPress:f.click,onHover:f.hover},handlers:{Button:{[f.click]:e=>Nn(xn.Button,f.click,e),[f.hover]:e=>Nn(xn.Button,f.hover,e)}}};function Pn(e,t=!1){t?_t({url:A.tracesEndpoint,data:{traces:e},isJSON:!0,onError:A.onError}):yt((()=>{_t({url:A.tracesEndpoint,data:{traces:e},isJSON:!0,onError:A.onError})})),ut({metricName:\"Batch Traces\",data:e})}function Mn(){return Mn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Mn.apply(this,arguments)}const Bn=1e6;function Cn(e){return e*Bn}function Dn(e=function(){var e;return null==(e=window)?void 0:e.crypto}()){const t=new Uint32Array(2);return null==e||e.getRandomValues(t),((BigInt(t[0])<<BigInt(32))+BigInt(t[1])).toString()}function An(e,t){return{\"x-datadog-origin\":\"rum\",\"x-datadog-parent-id\":t,\"x-datadog-sampling-priority\":\"1\",\"x-datadog-trace-id\":e}}function Ln(e){var t;const{name:n,traceId:r,spanId:i,start:a,duration:o,resource:s,meta:c}=e;return{duration:o?Cn(o):0,name:n,resource:s,service:A.projectName,span_id:null!=i?i:Dn(),start:a?Cn(a):0,trace_id:null!=r?r:Dn(),parent_id:P,type:M,meta:Mn({platform:A.platform},re.pageKey?{page_key:re.pageKey}:{},null!=(t=Se.ujs)&&t.length?{last_ujs:Se.ujs[Se.ujs.length-1]}:{},null!=c?c:{})}}function Un(e){return[Ln(e)]}function Rn(e,t){Oe()&&function(e){return e.length>0}(e)&&(t&&function(e,t){e.forEach((e=>function(e,t){const n=Mn({},e.meta,t.meta),r={start:t.start?Cn(t.start):e.start,duration:t.duration?Cn(t.duration):e.duration};Object.assign(e,t,Mn({meta:n},r))}(e,t)))}(e,t),je.tracesQueue.push(e),wt(Pn)&&(Pn(je.tracesQueue),je.tracesQueue=[]))}function qn(e){var t=function(e,t){if(\"object\"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,\"string\");if(\"object\"!=typeof r)return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(e)}(e);return\"symbol\"==typeof t?t:String(t)}function Fn(){return Fn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Fn.apply(this,arguments)}function zn(){return void 0!==typeof window&&\"performance\"in window&&\"mark\"in performance&&\"getEntriesByName\"in performance}function Kn(e,t){return\\`perf_\\${e}\\${null!=t&&t.label?\\`_\\${t.label}\\`:\"\"}\\`}function $n(e,t,n){return\\`\\${Kn(e,n)}__\\${t}\\`}let Qn={};function Wn(e,t,n){if(!zn())return;const r=$n(e,t,n);if(performance.mark(r),\"end\"===t){const t=Kn(e,n);!function(e,t,n){try{performance.measure(e,t,n)}catch(e){A.onError(e)}}(t,$n(e,\"start\",n),r);const i=performance.getEntriesByName(t).pop();i&&Ht(Fn({metricName:e,metricType:d.distribution,value:i.duration},null!=n&&n.tags?{tags:n.tags}:{}))}}function Hn(e,t){if(!zn())return;const n=$n(e,\"start\",t);Qn[n]||(Wn(e,\"start\",t),Qn[n]=!0)}function Vn(e,t){const n=$n(e,\"start\",t),r=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(Qn,[n].map(qn));Qn=r}function Jn(e,t){if(!zn())return;const n=$n(e,\"start\",t);Qn[n]&&(Wn(e,\"end\",t),Vn(e,t))}function Xn(){zn()&&(performance.clearMarks(),Qn={})}var Gn=n(784);function Zn(){return Zn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Zn.apply(this,arguments)}function Yn(e,t,n=l.low){const r=(0,Gn.useRef)(t);return(0,Gn.useEffect)((()=>{r.current=t}),[t]),(0,Gn.useCallback)((t=>{$t(e,Zn({},r.current,t),n)}),[e,n])}function er(){return er=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},er.apply(this,arguments)}function tr(e,t,n=l.low){(0,Gn.useEffect)((()=>{const r=er({},t,{action:f.render});$t(e,r,n)}),[])}function nr(){return nr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nr.apply(this,arguments)}const rr=function(e,t){return{markStartPerf:(0,Gn.useCallback)((()=>Hn(e,t)),[e,t]),markEndPerf:(0,Gn.useCallback)((n=>Jn(e,nr({},t,n))),[e,t])}};function ir(){return ir=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ir.apply(this,arguments)}function ar(){return Object.entries(ir({},Se,zt(),{sessionUUID:oe.sessionUUID,userId:oe.userId})).reduce(((e,t)=>{return null!=(n=t[1])&&\"\"!==n?ir({},e,{[t[0]]:t[1]}):e;var n}),{})}async function or(){return new Promise((e=>{Mt(vt(je.eventsQueue)),Qt(bt(je.metricsQueue),!0),Pn(je.tracesQueue,!0),Ne({eventsQueue:[],metricsQueue:[],tracesQueue:[]}),e()}))}function sr(){return{\"X-CB-Device-ID\":H.deviceId||\"unknown\",\"X-CB-Is-Logged-In\":H.userId?\"true\":\"false\",\"X-CB-Pagekey\":re.pageKey||\"unknown\",\"X-CB-UJS\":(e=Se.ujs,void 0===e||0===e.length?\"\":e.join(\",\")),\"X-CB-Platform\":A.platform||\"unknown\",\"X-CB-Project-Name\":A.projectName||\"unknown\",\"X-CB-Session-UUID\":oe.sessionUUID||\"unknown\",\"X-CB-Version-Name\":A.version?String(A.version):\"unknown\"};var e}})(),r})()}));`;\n//# sourceMappingURL=telemetry-content.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L3RlbGVtZXRyeS1jb250ZW50LmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ08saURBQWlELG1NQUFtTSxrQkFBa0IsWUFBWSxPQUFPLFFBQVEsT0FBTyxNQUFNLDBCQUEwQiw0REFBNEQsMkJBQTJCLDJEQUEyRCxNQUFNLDBCQUEwQixpQkFBaUIsV0FBVyxnQ0FBZ0MsU0FBUywyQkFBMkIsaUJBQWlCLFdBQVcsc0NBQXNDLHFCQUFxQixZQUFZLFNBQVMsUUFBUSx3RUFBd0UsbUJBQW1CLHFCQUFxQixvQkFBb0IscUJBQXFCLG9CQUFvQiw2RUFBNkUsWUFBWSxXQUFXLHdCQUF3QixTQUFTLHlCQUF5QixhQUFhLElBQUksMENBQTBDLFNBQVMsMEJBQTBCLHFCQUFxQixXQUFXLGlDQUFpQyxTQUFTLDBCQUEwQixpQkFBaUIsY0FBYyxvQ0FBb0MsU0FBUyx3QkFBd0IsaUJBQWlCLFdBQVcsbUVBQW1FLGtCQUFrQix3QkFBd0IsaUJBQWlCLFdBQVcsd0NBQXdDLFNBQVMsMkJBQTJCLGlCQUFpQixXQUFXLDZDQUE2QyxJQUFJLHFFQUFxRSxrQkFBa0IsMkJBQTJCLGtDQUFrQyxxQkFBcUIsV0FBVywwR0FBMEcsVUFBVSxhQUFhLFNBQVMsY0FBYyw0RkFBNEYsc0JBQXNCLG1DQUFtQyxvRkFBb0YscUJBQXFCLGVBQWUsY0FBYyw4REFBOEQsNkxBQTZMLGlHQUFpRyxXQUFXLHFFQUFxRSwwQ0FBMEMsb0NBQW9DLFFBQVEsV0FBVyxPQUFPLG9CQUFvQiw4cEVBQThwRSwyQkFBMkIsOEJBQThCLDZCQUE2Qix3QkFBd0IsK0JBQStCLDZCQUE2Qix3QkFBd0IsK0JBQStCLDBCQUEwQix3QkFBd0IsK0JBQStCLDZCQUE2Qix3QkFBd0IsMERBQTBELGtEQUFrRCw2QkFBNkIsd0VBQXdFLGFBQWEsYUFBYSxjQUFjLGdGQUFnRixFQUFFLFdBQVcsbUVBQW1FLDZCQUE2QixpRUFBaUUsc0JBQXNCLGNBQWMsNkJBQTZCLHdCQUF3QixrREFBa0QsaUJBQWlCLElBQUksUUFBUSxJQUFJLE9BQU8sd0VBQXdFLElBQUksUUFBUSxJQUFJLFFBQVEsS0FBSyxJQUFJLHlCQUF5QixjQUFjLDJFQUEyRSxpQkFBaUIsSUFBSSwyQ0FBMkMsa0JBQWtCLEdBQUcsa0JBQWtCLG1CQUFtQixJQUFJLFNBQVMsd0JBQXdCLFlBQVksY0FBYyx1Q0FBdUMsaUJBQWlCLFVBQVUseUNBQXlDLHVCQUF1QixlQUFlLGdDQUFnQyxlQUFlLG9EQUFvRCx1QkFBdUIsbUJBQW1CLGlGQUFpRiwwREFBMEQsc01BQXNNLEdBQUcsMkJBQTJCLElBQUksc0ZBQXNGLFlBQVksT0FBTyxlQUFlLHVCQUF1Qiw0Q0FBNEMsb0JBQW9CLDhCQUE4QixJQUFJLGFBQWEsb0dBQW9HLFNBQVMsR0FBRyxzQkFBc0IsY0FBYyxtREFBbUQsYUFBYSxtREFBbUQsZ0JBQWdCLG1EQUFtRCxZQUFZLG1EQUFtRCxtQkFBbUIsbURBQW1ELE9BQU8sMENBQTBDLGlCQUFpQix3RUFBd0UsbUJBQW1CLG9DQUFvQyxzQ0FBc0MsbUJBQW1CLEVBQUUsZUFBZSxxRUFBcUUsa0hBQWtILGlCQUFpQixnRkFBZ0YsZ0NBQWdDLE9BQU8sV0FBVyxpQ0FBaUMsY0FBYyx1R0FBdUcsZUFBZSxtREFBbUQsVUFBVSxNQUFNLHNDQUFzQyw0RkFBNEYsaUVBQWlFLGlCQUFpQixlQUFlLGlCQUFpQix1RUFBdUUsaUJBQWlCLFNBQVMsSUFBSSxLQUFLLGtCQUFrQixFQUFFLHVHQUF1Ryw0Q0FBNEMsNEJBQTRCLGdCQUFnQixVQUFVLFNBQVMsbUJBQW1CLFNBQVMsZUFBZSx5Q0FBeUMsa0NBQWtDLE1BQU0sY0FBYyxVQUFVLCtCQUErQixpQkFBaUIsdUJBQXVCLCtJQUErSSxxS0FBcUssbUJBQW1CLElBQUksd0RBQXdELDJDQUEyQyxtQ0FBbUMsa0JBQWtCLEdBQUcsR0FBRyxnQ0FBZ0MsbUJBQW1CLE1BQU0sTUFBTSxXQUFXLGlCQUFpQixvQkFBb0IseUpBQXlKLDRFQUE0RSxxQkFBcUIsUUFBUSxtQkFBbUIsa0dBQWtHLHVEQUF1RCxtQkFBbUIsZUFBZSxrQ0FBa0MseUNBQXlDLFdBQVcsR0FBRyxHQUFHLGdCQUFnQix3RUFBd0UsV0FBVyxVQUFVLHFCQUFxQix1RUFBdUUsZ0JBQWdCLGdHQUFnRyxlQUFlLHdGQUF3RixlQUFlLDhGQUE4RixlQUFlLHlDQUF5Qyx1QkFBdUIsYUFBYSxLQUFLLEtBQUssc0JBQXNCLFlBQVksa0JBQWtCLE9BQU8sZ0JBQWdCLDhEQUE4RCx1QkFBdUIsaUpBQWlKLEdBQUcsR0FBRyxpREFBaUQsdURBQXVELDRDQUE0QyxHQUFHLElBQUksR0FBRyxLQUFLLHNCQUFzQiw4QkFBOEIscURBQXFELGVBQWUsaUJBQWlCLE9BQU8saUlBQWlJLHVCQUF1QixLQUFLLFNBQVMsZ0JBQWdCLGlCQUFpQixnRUFBZ0Usb0NBQW9DLGlCQUFpQixZQUFZLGNBQWMsSUFBSSxjQUFjLGlGQUFpRiwwRUFBMEUsZUFBZSxnQkFBZ0Isd0VBQXdFLGtCQUFrQixHQUFHLGlDQUFpQyx1QkFBdUIsdUdBQXVHLEdBQUcsZUFBZSw0Q0FBNEMsb0JBQW9CLGVBQWUsWUFBWSxnQkFBZ0IsNENBQTRDLDBDQUEwQyxnRUFBZ0UsS0FBSyxPQUFPLG1EQUFtRCxzQkFBc0IsdUJBQXVCLDJCQUEyQixzQ0FBc0MsZ0JBQWdCLElBQUksTUFBTSxrQkFBa0IscUNBQXFDLFlBQVksd0VBQXdFLFlBQVksc0JBQXNCLGtCQUFrQixRQUFRLDJEQUEyRCxlQUFlLFVBQVUsTUFBTSxzQkFBc0Isb0NBQW9DLDREQUE0RCxrREFBa0QsSUFBSSxHQUFHLGdCQUFnQix1QkFBdUIsaUJBQWlCLGFBQWEsd0JBQXdCLHlDQUF5QyxFQUFFLEdBQUcsZ0JBQWdCLHVCQUF1QixpRkFBaUYsNEJBQTRCLDhDQUE4QyxHQUFHLGVBQWUsZUFBZSxnQkFBZ0IsYUFBYSxxQkFBcUIsNElBQTRJLGVBQWUsc0ZBQXNGLG9CQUFvQix3REFBd0QsZ0JBQWdCLGdCQUFnQixJQUFJLEtBQUssdUNBQXVDLGVBQWUsT0FBTyxnQkFBZ0Isd0RBQXdELGtCQUFrQixhQUFhLHFCQUFxQixzQ0FBc0MsOEJBQThCLEdBQUcsbUNBQW1DLHNDQUFzQyxtQ0FBbUMsU0FBUyxnQ0FBZ0Msc0pBQXNKLEdBQUcsTUFBTSxpQkFBaUIsZ0JBQWdCLEtBQUssSUFBSSxJQUFJLGVBQWUsdUJBQXVCLHNCQUFzQiwyQkFBMkIsNklBQTZJLEdBQUcsdUJBQXVCLGtEQUFrRCxxQ0FBcUMsaUJBQWlCLHlCQUF5QixpQkFBaUIsa0VBQWtFLFdBQVcsR0FBRyxJQUFJLEdBQUcsTUFBTSxzQ0FBc0MsZ0JBQWdCLGFBQWEscUJBQXFCLDBDQUEwQyxNQUFNLDJEQUEyRCwyQkFBMkIsNEdBQTRHLEdBQUcsZUFBZSwyREFBMkQsZ0JBQWdCLEtBQUssSUFBSSxLQUFLLHNDQUFzQyxlQUFlLE9BQU8sZ0JBQWdCLGtEQUFrRCwrRkFBK0YsZUFBZSxhQUFhLHNCQUFzQiwrQ0FBK0Msa0NBQWtDLHVCQUF1QixNQUFNLGtHQUFrRyxHQUFHLEdBQUcsY0FBYyxhQUFhLG1CQUFtQixlQUFlLHNHQUFzRyxnQkFBZ0IsS0FBSyxJQUFJLEtBQUssc0NBQXNDLGVBQWUsT0FBTyxnQkFBZ0IsbURBQW1ELG9CQUFvQixNQUFNLGtDQUFrQyxvREFBb0QsbUNBQW1DLE1BQU0sOEJBQThCLGlCQUFpQixpRUFBaUUseUNBQXlDLHNCQUFzQixtQkFBbUIsRUFBRSwwQkFBMEIsdURBQXVELHdEQUF3RCxHQUFHLElBQUksR0FBRyxjQUFjLGFBQWEscUJBQXFCLFVBQVUsTUFBTSxpSUFBaUksc0JBQXNCLDZKQUE2Six1SUFBdUksNkVBQTZFLGVBQWUscUZBQXFGLGdCQUFnQixLQUFLLElBQUksS0FBSyxzQ0FBc0MsZUFBZSxPQUFPLGdCQUFnQixnQkFBZ0Isc0RBQXNELDZDQUE2QyxHQUFHLCtCQUErQix1QkFBdUIsMEVBQTBFLG1DQUFtQywwREFBMEQsR0FBRyxVQUFVLEdBQUcsNERBQTRELG9FQUFvRSxnQkFBZ0IsMENBQTBDLEVBQUUsNkNBQTZDLCtCQUErQixnQkFBZ0IscUVBQXFFLGlCQUFpQix1REFBdUQsSUFBSSxHQUFHLGNBQWMsYUFBYSxxQkFBcUIsb0NBQW9DLG9HQUFvRyxNQUFNLGVBQWUsc0dBQXNHLHNCQUFzQixTQUFTLEtBQUssY0FBYyxZQUFZLCtGQUErRixnQkFBZ0IsMkNBQTJDLHFCQUFxQiw0SEFBNEgsRUFBRSxLQUFLLHNCQUFzQix1QkFBdUIsVUFBVSxvQkFBb0IsZ0JBQWdCLG9CQUFvQixlQUFlLDBCQUEwQixnQkFBZ0IsTUFBTSwyQ0FBMkMsb0JBQW9CLG1EQUFtRCw4Q0FBOEMsMkVBQTJFLE1BQU0sd0NBQXdDLFNBQVMsb0JBQW9CLHdEQUF3RCxNQUFNLGdDQUFnQyxXQUFXLDJEQUEyRCxnRUFBZ0UsNkJBQTZCLE1BQU0sZUFBZSw0REFBNEQsa0JBQWtCLFFBQVEsZUFBZSx1Q0FBdUMseUNBQXlDLG9DQUFvQyxRQUFRLEdBQUcsUUFBUSxjQUFjLG9DQUFvQyx5Q0FBeUMsb0NBQW9DLFFBQVEsR0FBRyxHQUFHLFNBQVMsZUFBZSwrQ0FBK0MseUJBQXlCLFdBQVcsaUVBQWlFLGdCQUFnQixrQkFBa0IsOEJBQThCLGFBQWEsMEVBQTBFLFVBQVUsa0JBQWtCLFlBQVksV0FBVyx1Q0FBdUMsU0FBUyxnQkFBZ0IsZUFBZSxRQUFRLGtCQUFrQix3QkFBd0IsS0FBSyxJQUFJLGdDQUFnQyxvQ0FBb0MsV0FBVyw2Q0FBNkMseUJBQXlCLDBDQUEwQyxjQUFjLElBQUksYUFBYSxTQUFTLE1BQU0sY0FBYyxJQUFJLGNBQWMsU0FBUyxNQUFNLGNBQWMsTUFBTSxpRUFBaUUsS0FBSyxjQUFjLG9DQUFvQyxHQUFHLHdCQUF3QixxQkFBcUIsZUFBZSx3QkFBd0IscUJBQXFCLFlBQVksaUJBQWlCLFVBQVUsaUNBQWlDLDJEQUEyRCxZQUFZLElBQUksY0FBYyxtQkFBbUIsbUJBQW1CLDREQUE0RCxLQUFLLEVBQUUsS0FBSyxrSEFBa0gseUNBQXlDLGtCQUFrQixNQUFNLHlCQUF5QixvQkFBb0IsOEJBQThCLFNBQVMsa0NBQWtDLFNBQVMsMEVBQTBFLElBQUksU0FBUyx5Q0FBeUMsYUFBYSxNQUFNLDJCQUEyQixpQkFBaUIsTUFBTSxvQkFBb0IsMkJBQTJCLE1BQU0sK0JBQStCLFNBQVMsY0FBYyxTQUFTLFlBQVksUUFBUSxNQUFNLHFCQUFxQixPQUFPLGdDQUFnQyxVQUFVLG1CQUFtQixnQkFBZ0IsMkJBQTJCLDRCQUE0QixHQUFHLEdBQUcsdUJBQXVCLEdBQUcsR0FBRyx5R0FBeUcsOERBQThELG9DQUFvQyxnQ0FBZ0MsR0FBRyxJQUFJLCtCQUErQixXQUFXLGdFQUFnRSw2RUFBNkUsZ0JBQWdCLGtCQUFrQixnQkFBZ0Isd0RBQXdELG9CQUFvQixjQUFjLG9CQUFvQixrVUFBa1UsMEdBQTBHLGlCQUFpQixpQkFBaUIsMENBQTBDLGVBQWUsc0NBQXNDLE9BQU8sa1NBQWtTLEdBQUcsMkNBQTJDLGNBQWMsOERBQThELG9DQUFvQyxxQkFBcUIsbUJBQW1CLDJCQUEyQixvQ0FBb0Msa0ZBQWtGLEVBQUUsU0FBUyxtSUFBbUksMEJBQTBCLGFBQWEsc0JBQXNCLDhDQUE4QyxrR0FBa0csa0VBQWtFLHVDQUF1Qyx5Q0FBeUMscUNBQXFDLFlBQVksS0FBSyxxQ0FBcUMseURBQXlELGlDQUFpQyxvQkFBb0IsZ0NBQWdDLDZDQUE2QyxrQkFBa0IsaUVBQWlFLGtDQUFrQyxnREFBZ0QsSUFBSSxnQkFBZ0Isb0NBQW9DLFdBQVcsdUJBQXVCLFdBQVcsR0FBRywrQkFBK0IsNEdBQTRHLGlDQUFpQyxXQUFXLHdFQUF3RSxlQUFlLFFBQVEsY0FBYyxvREFBb0QsWUFBWSxPQUFPLEdBQUcsR0FBRyxhQUFhLGFBQWEseVVBQXlVLE9BQU8scUJBQXFCLFNBQVMsZ0NBQWdDLGlDQUFpQyw4QkFBOEIsc0JBQXNCLGtCQUFrQiwwREFBMEQsY0FBYyxrQkFBa0IsMERBQTBELCtCQUErQixvQ0FBb0MsMExBQTBMLGtEQUFrRCxxQ0FBcUMsc0RBQXNELHlCQUF5Qix3QkFBd0IsMkRBQTJELDhDQUE4QyxPQUFPLGNBQWMsNEJBQTRCLGtDQUFrQywyQkFBMkIsZ0NBQWdDLHNCQUFzQiw0QkFBNEIsZUFBZSxhQUFhLGlCQUFpQixxQkFBcUIsTUFBTSxlQUFlLGFBQWEsdWNBQXVjLFlBQVksS0FBSyxXQUFXLCtCQUErQixTQUFTLGlCQUFpQiw2Q0FBNkMsZUFBZSx1QkFBdUIsaUJBQWlCLG9GQUFvRixpQkFBaUIsd0JBQXdCLGVBQWUsRUFBRSxvQkFBb0IsVUFBVSxxQkFBcUIsNkJBQTZCLFdBQVcsbVVBQW1VLE1BQU0saUJBQWlCLGtEQUFrRCxZQUFZLGNBQWMsc0NBQXNDLG9DQUFvQyxTQUFTLElBQUkscUtBQXFLLElBQUkscUtBQXFLLElBQUksazdCQUFrN0IsSUFBSSw4NUJBQTg1QixtQkFBbUIseWpCQUF5akIsR0FBRyxnUEFBZ1AsK0ZBQStGLHdIQUF3SCx3aEJBQXdoQix3SEFBd0gsaUNBQWlDLGtDQUFrQyxxSkFBcUosSUFBSSxtREFBbUQsd0NBQXdDLDBDQUEwQyw0Q0FBNEMsMEhBQTBILElBQUksWUFBWSxJQUFJLDZNQUE2TSxpQ0FBaUMsV0FBVyw2RUFBNkUsMkNBQTJDLGtIQUFrSCxFQUFFLGlFQUFpRSx5QkFBeUIsSUFBSSw0R0FBNEcsZ1ZBQWdWLG9DQUFvQyxFQUFFLHFIQUFxSCxFQUFFLGtCQUFrQiwyQ0FBMkMsRUFBRSxVQUFVLGlMQUFpTCxJQUFJLGlFQUFpRSxJQUFJLHFEQUFxRCxFQUFFLGtCQUFrQixFQUFFLEdBQUcsYUFBYSxJQUFJLHlGQUF5RixtS0FBbUssRUFBRSxhQUFhLEVBQUUsNktBQTZLLGdCQUFnQixJQUFJLHVEQUF1RCxFQUFFLFlBQVksRUFBRSw2REFBNkQsSUFBSSwrUEFBK1AsRUFBRSxZQUFZLEVBQUUsMktBQTJLLFdBQVcsb0VBQW9FLDBEQUEwRCxNQUFNLHFMQUFxTCxJQUFJLElBQUksZ0hBQWdILHlFQUF5RSwrREFBK0QsbUNBQW1DLEdBQUcscUxBQXFMLDRTQUE0UyxJQUFJLDZCQUE2QixFQUFFLDZCQUE2QixJQUFJLCtHQUErRyx5TEFBeUwsSUFBSSw2S0FBNkssRUFBRSxvRkFBb0YsRUFBRSx5Q0FBeUMsRUFBRSwrQ0FBK0MsRUFBRSwyRkFBMkYsRUFBRSxxQ0FBcUMsRUFBRSxrREFBa0QsSUFBSSxzREFBc0QsSUFBSSw2Y0FBNmMsRUFBRSw2Q0FBNkMsMkVBQTJFLG1HQUFtRyxrREFBa0QsZ05BQWdOLGlIQUFpSCxFQUFFLG1EQUFtRCw2R0FBNkcsYUFBYSxJQUFJLElBQUksc0VBQXNFLG1GQUFtRixtSEFBbUgsWUFBWSw4SEFBOEgsMENBQTBDLFFBQVEsSUFBSSxrS0FBa0ssSUFBSSxtRUFBbUUsSUFBSSw4RUFBOEUsNkRBQTZELGdGQUFnRixJQUFJLEVBQUUsb1pBQW9aLElBQUksNEZBQTRGLGdOQUFnTixJQUFJLCtCQUErQixjQUFjLHFZQUFxWSxzQkFBc0IsNkNBQTZDLHlHQUF5RyxVQUFVLHFEQUFxRCxrUEFBa1AsdUhBQXVILGFBQWEsd0dBQXdHLDZYQUE2WCxJQUFJLG9DQUFvQyxJQUFJLDhRQUE4USxpQkFBaUIsOEVBQThFLDRJQUE0SSxTQUFTLHVFQUF1RSxTQUFTLDRCQUE0QixrQ0FBa0MsV0FBVyx5S0FBeUssd0JBQXdCLFNBQVMsa0NBQWtDLDJCQUEyQixTQUFTLGdNQUFnTSwyQkFBMkIsU0FBUyw0Q0FBNEMsdUJBQXVCLFNBQVMsMElBQTBJLDJCQUEyQixPQUFPLDZIQUE2SCx1QkFBdUIsU0FBUyx3QkFBd0Isb0RBQW9ELHFCQUFxQix3TEFBd0wsU0FBUyxnRUFBZ0Usd0NBQXdDLGFBQWEsYUFBYSx3Q0FBd0Msa0JBQWtCLHNCQUFzQixZQUFZLHFCQUFxQiw4QkFBOEIsdUNBQXVDLE1BQU0sY0FBYyxXQUFXLCtCQUErQixZQUFZLFlBQVksb0RBQW9ELFNBQVMsU0FBUywwQ0FBMEMsY0FBYyxJQUFJLElBQUksYUFBYSwrREFBK0QsdUJBQXVCLEVBQUUsOERBQThELDRGQUE0RixlQUFlLHdDQUF3QyxTQUFTLEdBQUcsU0FBUyxZQUFZLGFBQWEsY0FBYywydkRBQTJ2RCxFQUFFLGtCQUFrQix1T0FBdU8sR0FBRyxFQUFFLGtDQUFrQyxrQkFBa0IsbUNBQW1DLEdBQUcsZ0JBQWdCLDZHQUE2RyxHQUFHLGdCQUFnQixnTUFBZ00sR0FBRyxnQkFBZ0IseVdBQXlXLEdBQUcsZ0JBQWdCLDJTQUEyUyxHQUFHLGdCQUFnQiwyTUFBMk0sR0FBRyxnQkFBZ0IscURBQXFELEdBQUcsZ0JBQWdCLHFFQUFxRSxHQUFHLGdCQUFnQiwrRUFBK0UsR0FBRyxnQkFBZ0IsbUJBQW1CLEdBQUcsZ0JBQWdCLGlFQUFpRSxHQUFHLEVBQUUsb0xBQW9MLGtCQUFrQixtQ0FBbUMsZUFBZSwrQkFBK0IsS0FBSywrQkFBK0IsT0FBTyxvQ0FBb0MscUJBQXFCLHFDQUFxQyxrQkFBa0Isa0NBQWtDLE1BQU0sd0NBQXdDLE1BQU0sbUNBQW1DLE1BQU0sMENBQTBDLE1BQU0seUNBQXlDLE1BQU0scUNBQXFDLE9BQU8sZ0RBQWdELE1BQU0sd0NBQXdDLEtBQUssZ0NBQWdDLGtCQUFrQixvQ0FBb0MsZUFBZSxhQUFhLHdEQUF3RCxZQUFZLG1CQUFtQixLQUFLLG1CQUFtQixzRUFBc0UsU0FBUyx5QkFBeUIsMkJBQTJCLGNBQWMsT0FBTyx1SEFBdUgsV0FBVywwTEFBMEwsOEZBQThGLHFCQUFxQixxSkFBcUosT0FBTyxTQUFTLHVDQUF1QyxpSEFBaUgsd0JBQXdCLDJFQUEyRSxjQUFjLHVHQUF1RyxXQUFXLElBQUksY0FBYyxPQUFPLFNBQVMsTUFBTSxzRUFBc0UsYUFBYSwrQkFBK0IsMkhBQTJILE1BQU0sc0JBQXNCLHFDQUFxQyxhQUFhLDZCQUE2QixhQUFhLHlCQUF5QixhQUFhLDhCQUE4QixjQUFjLHVGQUF1RixrREFBa0QsU0FBUyxrQ0FBa0Msc0JBQXNCLFNBQVMsbUxBQW1MLElBQUksZ0pBQWdKLG9KQUFvSixXQUFXLHVEQUF1RCxRQUFRLE1BQU0sV0FBVyxHQUFHLHdCQUF3Qix5RUFBeUUsNEZBQTRGLFNBQVMsUUFBUSxjQUFjLG1FQUFtRSw4QkFBOEIsb0hBQW9ILDBIQUEwSCw0SkFBNEosT0FBTywyQkFBMkIsVUFBVSwyQ0FBMkMsRUFBRSxRQUFRLGtDQUFrQyxTQUFTLEdBQUcsYUFBYSxVQUFVLFFBQVEscUJBQXFCLEVBQUUsU0FBUyxNQUFNLHNEQUFzRCx5REFBeUQsd01BQXdNLFFBQVEsMkNBQTJDLDJIQUEySCxLQUFLLGdDQUFnQywyQkFBMkIsNkNBQTZDLGVBQWUsa0JBQWtCLGNBQWMsRUFBRSxlQUFlLG9CQUFvQixVQUFVLDRJQUE0SSxlQUFlLG9CQUFvQixjQUFjLFFBQVEsMkRBQTJELGNBQWMseURBQXlELFlBQVksbUJBQW1CLEtBQUssbUJBQW1CLHNFQUFzRSxTQUFTLDBCQUEwQixjQUFjLGFBQWEsZUFBZSxtQkFBbUIsMkJBQTJCLEVBQUUsd0NBQXdDLFNBQVMsdUNBQXVDLHNCQUFzQiw4Q0FBOEMsS0FBSyxTQUFTLE1BQU0scUVBQXFFLFNBQVMsTUFBTSxtRUFBbUUsU0FBUyxNQUFNLHFFQUFxRSxTQUFTLHVEQUF1RCxpSEFBaUgsK0RBQStELElBQUksU0FBUyxRQUFRLGFBQWEsd0JBQXdCLG1CQUFtQiw4REFBOEQsc0RBQXNELFFBQVEscUhBQXFILE9BQU8sV0FBVyxzQkFBc0Isb0JBQW9CLEtBQUssc0RBQXNELDJCQUEyQixlQUFlLGtCQUFrQixjQUFjLHlEQUF5RCxZQUFZLG1CQUFtQixLQUFLLG1CQUFtQixzRUFBc0UsU0FBUywwQkFBMEIsb0lBQW9JLGVBQWUsZUFBZSw2QkFBNkIsR0FBRyxlQUFlLE1BQU0sMENBQTBDLGFBQWEsaURBQWlELElBQUksTUFBTSxtRkFBbUYsTUFBTSxPQUFPLElBQUksRUFBRSxxREFBcUQsR0FBRyxHQUFHLEVBQUUsMEJBQTBCLGNBQWMseUZBQXlGLFVBQVUseUdBQXlHLGVBQWUsb0JBQW9CLFVBQVUsOENBQThDLEtBQUssc0NBQXNDLEtBQUssTUFBTSxLQUFLLDRCQUE0Qix1RUFBdUUscUJBQXFCLGNBQWMsMkJBQTJCLFVBQVUsOEpBQThKLGVBQWUsb0JBQW9CLDRDQUE0QyxVQUFVLGlGQUFpRixRQUFRLFdBQVcsZ0NBQWdDLCtCQUErQiwrREFBK0Qsd0ZBQXdGLGdCQUFnQixxR0FBcUcsZUFBZSw0UEFBNFAsNENBQTRDLGdCQUFnQiwrQkFBK0Isa0JBQWtCLGdDQUFnQywyQ0FBMkMsMkNBQTJDLG9CQUFvQiw2QkFBNkIsYUFBYSxzR0FBc0csUUFBUSxRQUFRLFFBQVEsNkRBQTZELDZGQUE2RixHQUFHLFlBQVkscUdBQXFHLE1BQU0sZUFBZSw4Q0FBOEMsNkJBQTZCLGFBQWEsb0VBQW9FLFFBQVEsb0JBQW9CLFFBQVEsZ0JBQWdCLDhEQUE4RCxHQUFHLG1CQUFtQixvQ0FBb0MsZ0JBQWdCLGlCQUFpQixJQUFJLDhCQUE4QixjQUFjLDBDQUEwQyxxSEFBcUgsaUJBQWlCLGtFQUFrRSw4QkFBOEIsNERBQTRELDRFQUE0RSwrQkFBK0IscURBQXFELGNBQWMsaUZBQWlGLHFCQUFxQixPQUFPLFVBQVUsNkVBQTZFLFVBQVUsMkJBQTJCLGVBQWUsb0JBQW9CLFdBQVcsY0FBYyw4Q0FBOEMsSUFBSSxpQ0FBaUMsU0FBUyxrRkFBa0YsaUJBQWlCLG9CQUFvQiw0QkFBNEIsU0FBUyxxREFBcUQsU0FBUyw0QkFBNEIscUdBQXFHLGdCQUFnQixnQkFBZ0IsWUFBWSw0QkFBNEIsTUFBTSxvQkFBb0IseUJBQXlCLHdDQUF3QyxnQkFBZ0IsRUFBRSxnQkFBZ0IsSUFBSSxlQUFlLHNCQUFzQixFQUFFLEdBQUcsc0NBQXNDLHdEQUF3RCxzQkFBc0IsUUFBUSxNQUFNLG9CQUFvQix5QkFBeUIsd0NBQXdDLG1CQUFtQixJQUFJLGVBQWUsYUFBYSxFQUFFLHNCQUFzQixFQUFFLEdBQUcsdUJBQXVCLFNBQVMsYUFBYSwrRkFBK0YsZUFBZSxNQUFNLHdDQUF3QyxnQ0FBZ0Msc0JBQXNCLCtCQUErQixjQUFjLHlEQUF5RCxZQUFZLG1CQUFtQixLQUFLLG1CQUFtQixzRUFBc0UsU0FBUywwQkFBMEIsYUFBYSxNQUFNLEtBQUssaUJBQWlCLHNCQUFzQixNQUFNLHNCQUFzQixNQUFNLHNCQUFzQixNQUFNLHFCQUFxQixNQUFNLHVCQUF1QixNQUFNLHVCQUF1QixNQUFNLHdCQUF3QixnREFBZ0QsMEJBQTBCLHVCQUF1Qiw4QkFBOEIsb0JBQW9CLGlDQUFpQyxvQkFBb0IsaUJBQWlCLDZCQUE2Qiw4Q0FBOEMsWUFBWSxxQkFBcUIsb0JBQW9CLGlEQUFpRCw4QkFBOEIscUJBQXFCLE1BQU0sbUNBQW1DLGFBQWEsOFRBQThULElBQUksMERBQTBELHdDQUF3QywrQ0FBK0Msd0VBQXdFLHlCQUF5QixjQUFjLHlEQUF5RCxZQUFZLG1CQUFtQixLQUFLLG1CQUFtQixzRUFBc0UsU0FBUywwQkFBMEIsMkJBQTJCLGtCQUFrQixPQUFPLDhDQUE4QyxJQUFJLHdEQUF3RCxFQUFFLE9BQU8sNEZBQTRGLDBKQUEwSixpRUFBaUUsNEtBQTRLLDBEQUEwRCxvQ0FBb0MsTUFBTSwyRUFBMkUsa0NBQWtDLHFGQUFxRixjQUFjLHlEQUF5RCxZQUFZLG1CQUFtQixLQUFLLG1CQUFtQixzRUFBc0UsU0FBUywwQkFBMEIsNkNBQTZDLHNCQUFzQixNQUFNLDZDQUE2QyxnR0FBZ0csYUFBYSwyQkFBMkIsNkNBQTZDLGVBQWUsbUNBQW1DLCtGQUErRixNQUFNLGNBQWMsZ0hBQWdILEtBQUssYUFBYSxZQUFZLGlCQUFpQixFQUFFLG9DQUFvQyxNQUFNLGFBQWEsOENBQThDLGFBQWEsS0FBSywrQkFBK0IsRUFBRSxHQUFHLEtBQUssc0JBQXNCLFFBQVEsRUFBRSxJQUFJLCtDQUErQyxTQUFTLHdCQUF3Qix5QkFBeUIsbUJBQW1CLGNBQWMsd0JBQXdCLGNBQWMseURBQXlELFlBQVksbUJBQW1CLEtBQUssbUJBQW1CLHNFQUFzRSxTQUFTLDBCQUEwQix1QkFBdUIsZUFBZSxtTEFBbUwsb0JBQW9CLGtCQUFrQixzREFBc0QsY0FBYyx5REFBeUQsWUFBWSxtQkFBbUIsS0FBSyxtQkFBbUIsc0VBQXNFLFNBQVMsMEJBQTBCLHVCQUF1QixNQUFNLDJOQUEyTiw4REFBOEQsc0lBQXNJLGtCQUFrQixtQ0FBbUMsTUFBTSxJQUFJLG9CQUFvQixTQUFTLHVEQUF1RCxJQUFJLFdBQVcsa0JBQWtCLGFBQWEsSUFBSSw2Q0FBNkMscUJBQXFCLDBNQUEwTSxhQUFhLDZCQUE2QixTQUFTLGNBQWMsTUFBTSxLQUFLLDRFQUE0RSxnQkFBZ0IsRUFBRSxxREFBcUQsdUNBQXVDLEVBQUUsK0JBQStCLEVBQUUsd0JBQXdCLEVBQUUsNERBQTRELEVBQUUsSUFBSSwyREFBMkQsTUFBTSw4Q0FBOEMsRUFBRSxTQUFTLDJCQUEyQixlQUFlLEdBQUcsY0FBYyx5REFBeUQsWUFBWSxtQkFBbUIsS0FBSyxtQkFBbUIsc0VBQXNFLFNBQVMsMEJBQTBCLDZIQUE2SCxTQUFTLGlJQUFpSSwyRUFBMkUsUUFBUSxhQUFhLDBEQUEwRCwwQkFBMEIsb0ZBQW9GLEVBQUUsYUFBYSw2Q0FBNkMsb0ZBQW9GLEVBQUUsbURBQW1ELEtBQUssZ0NBQWdDLGNBQWMsT0FBTyx1R0FBdUcsZUFBZSxvQkFBb0IseUJBQXlCLHFCQUFxQixnQkFBZ0IsY0FBYyxhQUFhLDJDQUEyQyxzQkFBc0IsOENBQThDLHFFQUFxRSxNQUFNLEdBQUcsb0JBQW9CLE1BQU0sNEJBQTRCLFVBQVUsNkJBQTZCLFdBQVcsSUFBSSw0QkFBNEIsVUFBVSw2QkFBNkIsRUFBRSxPQUFPLGtDQUFrQyxFQUFFLGNBQWMseURBQXlELFlBQVksbUJBQW1CLEtBQUssbUJBQW1CLHNFQUFzRSxTQUFTLDBCQUEwQixlQUFlLGdCQUFnQiwwRUFBMEUsb0NBQW9DLG1CQUFtQixvQkFBb0IsT0FBTywrRUFBK0UsY0FBYyx5REFBeUQsWUFBWSxtQkFBbUIsS0FBSyxtQkFBbUIsc0VBQXNFLFNBQVMsMEJBQTBCLG1CQUFtQiw2R0FBNkcsR0FBRyxFQUFFLGVBQWUsdUJBQXVCLFVBQVUsaUJBQWlCLDZDQUE2QyxNQUFNLEdBQUcsT0FBTyxVQUFVLGNBQWMsZUFBZSxtQkFBbUIsOEJBQThCLFNBQVMsb0NBQW9DLFFBQVEscUNBQXFDLFFBQVEsNkNBQTZDLFNBQVMsK0RBQStELGVBQWUsZ0JBQWdCLEVBQUUsMkVBQTJFLHFDQUFxQyx5QkFBeUIsZ0JBQWdCLGFBQWEsZ0JBQWdCLDBCQUEwQiw0RUFBNEUsaURBQWlELFlBQVksSUFBSSxpQ0FBaUMsMkJBQTJCLEVBQUUsR0FBRyxrQkFBa0IsRUFBRSxTQUFTLGNBQWMsaUJBQWlCLHNCQUFzQixvQkFBb0Isd0RBQXdELDJEQUEyRCxvQkFBb0IsY0FBYyxNQUFNLHVJQUF1SSxFQUFFLGNBQWMseURBQXlELFlBQVksbUJBQW1CLEtBQUssbUJBQW1CLHNFQUFzRSxTQUFTLDBCQUEwQiwwQkFBMEIsbUJBQW1CLE9BQU8sU0FBUyxtQkFBbUIsUUFBUSxVQUFVLGVBQWUsb0JBQW9CLE9BQU8sK0hBQStILElBQUksMkRBQTJELHdDQUF3QyxZQUFZLGtCQUFrQixvQ0FBb0Msd0NBQXdDLFlBQVksY0FBYyxNQUFNLGdEQUFnRCx5Q0FBeUMsNkJBQTZCLEdBQUcsYUFBYSxVQUFVLCtIQUErSCxNQUFNLHVDQUF1QyxzQkFBc0IsNENBQTRDLEdBQUcsRUFBRSxvQ0FBb0Msa0RBQWtELDhEQUE4RCxvRkFBb0Ysb0hBQW9ILGdCQUFnQixLQUFLLG1CQUFtQixXQUFXLCtCQUErQixFQUFFLElBQUksV0FBVyw4S0FBOEssRUFBRSxTQUFTLFdBQVcsOEJBQThCLFNBQVMsb0NBQW9DLGFBQWEscUNBQXFDLGFBQWEsa0NBQWtDLG1CQUFtQixJQUFJLEVBQUUsUUFBUSwwQ0FBMEMscUJBQXFCLGdCQUFnQixLQUFLLGNBQWMsb0JBQW9CLElBQUksV0FBVyxvQkFBb0IsK01BQStNLGNBQWMsUUFBUSxhQUFhLFdBQVcsc0JBQXNCLGtCQUFrQixLQUFLLFdBQVcsUUFBUSw2Q0FBNkMsTUFBTSx3SEFBd0gsb0JBQW9CLDBCQUEwQixXQUFXLHFEQUFxRCxHQUFHLHFCQUFxQixnQkFBZ0IsZ0JBQWdCLGNBQWMsaUNBQWlDLEdBQUcsc0JBQXNCLElBQUksbUJBQW1CLFlBQVkscUJBQXFCLEtBQUssMkJBQTJCLFlBQVksU0FBUywwSEFBMEgsRUFBRSxpQ0FBaUMsNEJBQTRCLElBQUksR0FBRyxVQUFVLFdBQVcsYUFBYSx5SEFBeUgscUJBQXFCLE1BQU0sa0VBQWtFLDhDQUE4QyxpQkFBaUIseU9BQXlPLGlHQUFpRyxRQUFRLGlJQUFpSSxrRUFBa0UsMEZBQTBGLEVBQUUsc0NBQXNDLCtFQUErRSxTQUFTLDZEQUE2RCxZQUFZLFNBQVMscUNBQXFDLEVBQUUscUNBQXFDLEVBQUUsaUZBQWlGLHlQQUF5UCxHQUFHLGlEQUFpRCwwQ0FBMEMsV0FBVyx1RkFBdUYsTUFBTSw4RkFBOEYsRUFBRSxxQ0FBcUMsZ0ZBQWdGLFlBQVksb0NBQW9DLEVBQUUscUNBQXFDLEVBQUUsbUJBQW1CLHFHQUFxRyxtQkFBbUIsMkxBQTJMLFlBQVksMENBQTBDLEVBQUUscUNBQXFDLEVBQUUsMkRBQTJELDJIQUEySCxTQUFTLGtDQUFrQyxjQUFjLElBQUksV0FBVyxJQUFJLGdDQUFnQyxXQUFXLEVBQUUscUNBQXFDLE1BQU0sa0NBQWtDLGNBQWMsSUFBSSxXQUFXLElBQUksZ0NBQWdDLGtEQUFrRCxnQ0FBZ0MsK0VBQStFLGFBQWEsZ0NBQWdDLE1BQU0sSUFBSSxFQUFFLHFDQUFxQyxpQkFBaUIsZ0NBQWdDLE1BQU0sNENBQTRDLElBQUksZ0RBQWdELEVBQUUsU0FBUyxrQ0FBa0MsSUFBSSxRQUFRLDBCQUEwQiw2QkFBNkIsK0RBQStELEVBQUUsTUFBTSxpREFBaUQsSUFBSSxJQUFJLGtDQUFrQyxNQUFNLGVBQWUsTUFBTSxnQkFBZ0IsaUJBQWlCLEtBQUssR0FBRyxNQUFNLCtDQUErQyxJQUFJLElBQUksa0NBQWtDLE1BQU0sZUFBZSxNQUFNLGdCQUFnQiwwQ0FBMEMsS0FBSyxHQUFHLFNBQVMsR0FBRyxZQUFZLFNBQVMsRUFBRSxTQUFTLEdBQUcsWUFBWSxFQUFFLEtBQUssUUFBUSx1RkFBdUYsbUJBQW1CLE9BQU8sa0NBQWtDLGNBQWMseURBQXlELFlBQVksbUJBQW1CLEtBQUssbUJBQW1CLHNFQUFzRSxTQUFTLDBCQUEwQixtQkFBbUIsTUFBTSx1QkFBdUIsR0FBRyxlQUFlLHlFQUF5RSxLQUFLLFVBQVUsZUFBZSxnQ0FBZ0MsV0FBVyxRQUFRLDZFQUE2RSxvQkFBb0IsTUFBTSwyQkFBMkIsU0FBUyw2QkFBNkIsV0FBVyxJQUFJLDJCQUEyQixTQUFTLDZCQUE2QixFQUFFLE9BQU8saUNBQWlDLEVBQUUsY0FBYyx5REFBeUQsWUFBWSxtQkFBbUIsS0FBSyxtQkFBbUIsc0VBQXNFLFNBQVMsMEJBQTBCLGFBQWEsZUFBZSxZQUFZLHlCQUF5QixNQUFNLHdDQUF3QyxJQUFJLDJCQUEyQiwwRkFBMEYsaUJBQWlCLE9BQU8sMkdBQTJHLGVBQWUsTUFBTSxNQUFNLCtEQUErRCxHQUFHLE9BQU8sc0pBQXNKLG9CQUFvQixhQUFhLG9CQUFvQixHQUFHLDZCQUE2QixpQ0FBaUMsR0FBRyxhQUFhLEdBQUcsZUFBZSxjQUFjLGlCQUFpQixrQkFBa0Isa0JBQWtCLHVCQUF1Qiw0QkFBNEIsYUFBYSxtQkFBbUIsaUZBQWlGLHNCQUFzQixPQUFPLEtBQUssUUFBUSw2RUFBNkUsZUFBZSxvQkFBb0IseUNBQXlDLDRCQUE0QixlQUFlLHlCQUF5QiwrQkFBK0Isb0VBQW9FLGlCQUFpQixJQUFJLHFDQUFxQyxjQUFjLHlEQUF5RCxZQUFZLG1CQUFtQixLQUFLLG1CQUFtQixzRUFBc0UsU0FBUywwQkFBMEIsY0FBYyw4R0FBOEcsaUJBQWlCLGdCQUFnQixFQUFFLEdBQUcsdUJBQXVCLFFBQVEsTUFBTSxHQUFHLG1CQUFtQixXQUFXLFFBQVEsS0FBSyxFQUFFLEdBQUcsVUFBVSxtQkFBbUIsZ0JBQWdCLGtCQUFrQixrQ0FBa0MsZ0JBQWdCLGlCQUFpQixJQUFJLDJCQUEyQixTQUFTLGNBQWMsc0JBQXNCLDhDQUE4QyxVQUFVLHdEQUF3RCxrQkFBa0IsWUFBWSxHQUFHLElBQUksaUJBQWlCLGdCQUFnQix3QkFBd0Isa0NBQWtDLGlCQUFpQix3Q0FBd0Msb0JBQW9CLFlBQVksa0JBQWtCLFFBQVEsV0FBVyx3Q0FBd0MsU0FBUyxpQkFBaUIsS0FBSyxpQkFBaUIsZ0JBQWdCLHdCQUF3QiwrQkFBK0IsY0FBYyxxQ0FBcUMsRUFBRSxjQUFjLGNBQWMseURBQXlELFlBQVksbUJBQW1CLEtBQUssbUJBQW1CLHNFQUFzRSxTQUFTLDBCQUEwQix5QkFBeUIseUJBQXlCLDZCQUE2QixZQUFZLCtCQUErQixVQUFVLGlCQUFpQixTQUFTLGNBQWMseURBQXlELFlBQVksbUJBQW1CLEtBQUssbUJBQW1CLHNFQUFzRSxTQUFTLDBCQUEwQix5QkFBeUIsdUJBQXVCLGFBQWEsSUFBSSxnQkFBZ0IsRUFBRSxVQUFVLE1BQU0sY0FBYyx5REFBeUQsWUFBWSxtQkFBbUIsS0FBSyxtQkFBbUIsc0VBQXNFLFNBQVMsMEJBQTBCLHVCQUF1QixPQUFPLG1HQUFtRyxpQkFBaUIsY0FBYyx5REFBeUQsWUFBWSxtQkFBbUIsS0FBSyxtQkFBbUIsc0VBQXNFLFNBQVMsMEJBQTBCLGNBQWMsMkJBQTJCLFVBQVUsNENBQTRDLG1CQUFtQixtQ0FBbUMsSUFBSSxZQUFZLElBQUksTUFBTSxJQUFJLEVBQUUsb0JBQW9CLHdCQUF3Qiw0RUFBNEUsOENBQThDLE1BQU0sR0FBRyxjQUFjLE9BQU8sa1hBQWtYLE9BQU8sTUFBTSxJQUFJLEdBQUc7QUFDeG5rRiIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L3RlbGVtZXRyeS1jb250ZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRoaXMgZmlsZSBpcyBhdXRvLWdlbmVyYXRlZCBieSBjb21waWxlLWFzc2V0cy5janNcbi8vIERvIG5vdCBlZGl0IG1hbnVhbGx5IC0gY2hhbmdlcyB3aWxsIGJlIG92ZXJ3cml0dGVuXG5leHBvcnQgY29uc3QgVEVMRU1FVFJZX1NDUklQVF9DT05URU5UID0gYCFmdW5jdGlvbihlLHQpe1wib2JqZWN0XCI9PXR5cGVvZiBleHBvcnRzJiZcIm9iamVjdFwiPT10eXBlb2YgbW9kdWxlP21vZHVsZS5leHBvcnRzPXQoKTpcImZ1bmN0aW9uXCI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFtdLHQpOlwib2JqZWN0XCI9PXR5cGVvZiBleHBvcnRzP2V4cG9ydHMuQ2xpZW50QW5hbHl0aWNzPXQoKTplLkNsaWVudEFuYWx5dGljcz10KCl9KHRoaXMsKGZ1bmN0aW9uKCl7cmV0dXJuKCgpPT57dmFyIGU9ezc5MjplPT57dmFyIHQ9e3V0Zjg6e3N0cmluZ1RvQnl0ZXM6ZnVuY3Rpb24oZSl7cmV0dXJuIHQuYmluLnN0cmluZ1RvQnl0ZXModW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KGUpKSl9LGJ5dGVzVG9TdHJpbmc6ZnVuY3Rpb24oZSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUodC5iaW4uYnl0ZXNUb1N0cmluZyhlKSkpfX0sYmluOntzdHJpbmdUb0J5dGVzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxlLmxlbmd0aDtuKyspdC5wdXNoKDI1NSZlLmNoYXJDb2RlQXQobikpO3JldHVybiB0fSxieXRlc1RvU3RyaW5nOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxlLmxlbmd0aDtuKyspdC5wdXNoKFN0cmluZy5mcm9tQ2hhckNvZGUoZVtuXSkpO3JldHVybiB0LmpvaW4oXCJcIil9fX07ZS5leHBvcnRzPXR9LDU2MjplPT57dmFyIHQsbjt0PVwiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrL1wiLG49e3JvdGw6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZTw8dHxlPj4+MzItdH0scm90cjpmdW5jdGlvbihlLHQpe3JldHVybiBlPDwzMi10fGU+Pj50fSxlbmRpYW46ZnVuY3Rpb24oZSl7aWYoZS5jb25zdHJ1Y3Rvcj09TnVtYmVyKXJldHVybiAxNjcxMTkzNSZuLnJvdGwoZSw4KXw0Mjc4MjU1MzYwJm4ucm90bChlLDI0KTtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyllW3RdPW4uZW5kaWFuKGVbdF0pO3JldHVybiBlfSxyYW5kb21CeXRlczpmdW5jdGlvbihlKXtmb3IodmFyIHQ9W107ZT4wO2UtLSl0LnB1c2goTWF0aC5mbG9vcigyNTYqTWF0aC5yYW5kb20oKSkpO3JldHVybiB0fSxieXRlc1RvV29yZHM6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PVtdLG49MCxyPTA7bjxlLmxlbmd0aDtuKysscis9OCl0W3I+Pj41XXw9ZVtuXTw8MjQtciUzMjtyZXR1cm4gdH0sd29yZHNUb0J5dGVzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPTA7bjwzMiplLmxlbmd0aDtuKz04KXQucHVzaChlW24+Pj41XT4+PjI0LW4lMzImMjU1KTtyZXR1cm4gdH0sYnl0ZXNUb0hleDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9W10sbj0wO248ZS5sZW5ndGg7bisrKXQucHVzaCgoZVtuXT4+PjQpLnRvU3RyaW5nKDE2KSksdC5wdXNoKCgxNSZlW25dKS50b1N0cmluZygxNikpO3JldHVybiB0LmpvaW4oXCJcIil9LGhleFRvQnl0ZXM6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PVtdLG49MDtuPGUubGVuZ3RoO24rPTIpdC5wdXNoKHBhcnNlSW50KGUuc3Vic3RyKG4sMiksMTYpKTtyZXR1cm4gdH0sYnl0ZXNUb0Jhc2U2NDpmdW5jdGlvbihlKXtmb3IodmFyIG49W10scj0wO3I8ZS5sZW5ndGg7cis9Mylmb3IodmFyIGk9ZVtyXTw8MTZ8ZVtyKzFdPDw4fGVbcisyXSxhPTA7YTw0O2ErKyk4KnIrNiphPD04KmUubGVuZ3RoP24ucHVzaCh0LmNoYXJBdChpPj4+NiooMy1hKSY2MykpOm4ucHVzaChcIj1cIik7cmV0dXJuIG4uam9pbihcIlwiKX0sYmFzZTY0VG9CeXRlczpmdW5jdGlvbihlKXtlPWUucmVwbGFjZSgvW15BLVowLTkrXFxcXC9dL2dpLFwiXCIpO2Zvcih2YXIgbj1bXSxyPTAsaT0wO3I8ZS5sZW5ndGg7aT0rK3IlNCkwIT1pJiZuLnB1c2goKHQuaW5kZXhPZihlLmNoYXJBdChyLTEpKSZNYXRoLnBvdygyLC0yKmkrOCktMSk8PDIqaXx0LmluZGV4T2YoZS5jaGFyQXQocikpPj4+Ni0yKmkpO3JldHVybiBufX0sZS5leHBvcnRzPW59LDMzNTplPT57ZnVuY3Rpb24gdChlKXtyZXR1cm4hIWUuY29uc3RydWN0b3ImJlwiZnVuY3Rpb25cIj09dHlwZW9mIGUuY29uc3RydWN0b3IuaXNCdWZmZXImJmUuY29uc3RydWN0b3IuaXNCdWZmZXIoZSl9ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiYodChlKXx8ZnVuY3Rpb24oZSl7cmV0dXJuXCJmdW5jdGlvblwiPT10eXBlb2YgZS5yZWFkRmxvYXRMRSYmXCJmdW5jdGlvblwiPT10eXBlb2YgZS5zbGljZSYmdChlLnNsaWNlKDAsMCkpfShlKXx8ISFlLl9pc0J1ZmZlcil9fSw3NjI6KGUsdCxuKT0+e3ZhciByLGksYSxvLHM7cj1uKDU2MiksaT1uKDc5MikudXRmOCxhPW4oMzM1KSxvPW4oNzkyKS5iaW4sKHM9ZnVuY3Rpb24oZSx0KXtlLmNvbnN0cnVjdG9yPT1TdHJpbmc/ZT10JiZcImJpbmFyeVwiPT09dC5lbmNvZGluZz9vLnN0cmluZ1RvQnl0ZXMoZSk6aS5zdHJpbmdUb0J5dGVzKGUpOmEoZSk/ZT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChlLDApOkFycmF5LmlzQXJyYXkoZSl8fGUuY29uc3RydWN0b3I9PT1VaW50OEFycmF5fHwoZT1lLnRvU3RyaW5nKCkpO2Zvcih2YXIgbj1yLmJ5dGVzVG9Xb3JkcyhlKSxjPTgqZS5sZW5ndGgsdT0xNzMyNTg0MTkzLGw9LTI3MTczMzg3OSxkPS0xNzMyNTg0MTk0LHA9MjcxNzMzODc4LG09MDttPG4ubGVuZ3RoO20rKyluW21dPTE2NzExOTM1JihuW21dPDw4fG5bbV0+Pj4yNCl8NDI3ODI1NTM2MCYoblttXTw8MjR8blttXT4+PjgpO25bYz4+PjVdfD0xMjg8PGMlMzIsblsxNCsoYys2ND4+Pjk8PDQpXT1jO3ZhciBmPXMuX2ZmLHY9cy5fZ2csZz1zLl9oaCxiPXMuX2lpO2ZvcihtPTA7bTxuLmxlbmd0aDttKz0xNil7dmFyIGg9dSx3PWwseT1kLFQ9cDt1PWYodSxsLGQscCxuW20rMF0sNywtNjgwODc2OTM2KSxwPWYocCx1LGwsZCxuW20rMV0sMTIsLTM4OTU2NDU4NiksZD1mKGQscCx1LGwsblttKzJdLDE3LDYwNjEwNTgxOSksbD1mKGwsZCxwLHUsblttKzNdLDIyLC0xMDQ0NTI1MzMwKSx1PWYodSxsLGQscCxuW20rNF0sNywtMTc2NDE4ODk3KSxwPWYocCx1LGwsZCxuW20rNV0sMTIsMTIwMDA4MDQyNiksZD1mKGQscCx1LGwsblttKzZdLDE3LC0xNDczMjMxMzQxKSxsPWYobCxkLHAsdSxuW20rN10sMjIsLTQ1NzA1OTgzKSx1PWYodSxsLGQscCxuW20rOF0sNywxNzcwMDM1NDE2KSxwPWYocCx1LGwsZCxuW20rOV0sMTIsLTE5NTg0MTQ0MTcpLGQ9ZihkLHAsdSxsLG5bbSsxMF0sMTcsLTQyMDYzKSxsPWYobCxkLHAsdSxuW20rMTFdLDIyLC0xOTkwNDA0MTYyKSx1PWYodSxsLGQscCxuW20rMTJdLDcsMTgwNDYwMzY4MikscD1mKHAsdSxsLGQsblttKzEzXSwxMiwtNDAzNDExMDEpLGQ9ZihkLHAsdSxsLG5bbSsxNF0sMTcsLTE1MDIwMDIyOTApLHU9dih1LGw9ZihsLGQscCx1LG5bbSsxNV0sMjIsMTIzNjUzNTMyOSksZCxwLG5bbSsxXSw1LC0xNjU3OTY1MTApLHA9dihwLHUsbCxkLG5bbSs2XSw5LC0xMDY5NTAxNjMyKSxkPXYoZCxwLHUsbCxuW20rMTFdLDE0LDY0MzcxNzcxMyksbD12KGwsZCxwLHUsblttKzBdLDIwLC0zNzM4OTczMDIpLHU9dih1LGwsZCxwLG5bbSs1XSw1LC03MDE1NTg2OTEpLHA9dihwLHUsbCxkLG5bbSsxMF0sOSwzODAxNjA4MyksZD12KGQscCx1LGwsblttKzE1XSwxNCwtNjYwNDc4MzM1KSxsPXYobCxkLHAsdSxuW20rNF0sMjAsLTQwNTUzNzg0OCksdT12KHUsbCxkLHAsblttKzldLDUsNTY4NDQ2NDM4KSxwPXYocCx1LGwsZCxuW20rMTRdLDksLTEwMTk4MDM2OTApLGQ9dihkLHAsdSxsLG5bbSszXSwxNCwtMTg3MzYzOTYxKSxsPXYobCxkLHAsdSxuW20rOF0sMjAsMTE2MzUzMTUwMSksdT12KHUsbCxkLHAsblttKzEzXSw1LC0xNDQ0NjgxNDY3KSxwPXYocCx1LGwsZCxuW20rMl0sOSwtNTE0MDM3ODQpLGQ9dihkLHAsdSxsLG5bbSs3XSwxNCwxNzM1MzI4NDczKSx1PWcodSxsPXYobCxkLHAsdSxuW20rMTJdLDIwLC0xOTI2NjA3NzM0KSxkLHAsblttKzVdLDQsLTM3ODU1OCkscD1nKHAsdSxsLGQsblttKzhdLDExLC0yMDIyNTc0NDYzKSxkPWcoZCxwLHUsbCxuW20rMTFdLDE2LDE4MzkwMzA1NjIpLGw9ZyhsLGQscCx1LG5bbSsxNF0sMjMsLTM1MzA5NTU2KSx1PWcodSxsLGQscCxuW20rMV0sNCwtMTUzMDk5MjA2MCkscD1nKHAsdSxsLGQsblttKzRdLDExLDEyNzI4OTMzNTMpLGQ9ZyhkLHAsdSxsLG5bbSs3XSwxNiwtMTU1NDk3NjMyKSxsPWcobCxkLHAsdSxuW20rMTBdLDIzLC0xMDk0NzMwNjQwKSx1PWcodSxsLGQscCxuW20rMTNdLDQsNjgxMjc5MTc0KSxwPWcocCx1LGwsZCxuW20rMF0sMTEsLTM1ODUzNzIyMiksZD1nKGQscCx1LGwsblttKzNdLDE2LC03MjI1MjE5NzkpLGw9ZyhsLGQscCx1LG5bbSs2XSwyMyw3NjAyOTE4OSksdT1nKHUsbCxkLHAsblttKzldLDQsLTY0MDM2NDQ4NykscD1nKHAsdSxsLGQsblttKzEyXSwxMSwtNDIxODE1ODM1KSxkPWcoZCxwLHUsbCxuW20rMTVdLDE2LDUzMDc0MjUyMCksdT1iKHUsbD1nKGwsZCxwLHUsblttKzJdLDIzLC05OTUzMzg2NTEpLGQscCxuW20rMF0sNiwtMTk4NjMwODQ0KSxwPWIocCx1LGwsZCxuW20rN10sMTAsMTEyNjg5MTQxNSksZD1iKGQscCx1LGwsblttKzE0XSwxNSwtMTQxNjM1NDkwNSksbD1iKGwsZCxwLHUsblttKzVdLDIxLC01NzQzNDA1NSksdT1iKHUsbCxkLHAsblttKzEyXSw2LDE3MDA0ODU1NzEpLHA9YihwLHUsbCxkLG5bbSszXSwxMCwtMTg5NDk4NjYwNiksZD1iKGQscCx1LGwsblttKzEwXSwxNSwtMTA1MTUyMyksbD1iKGwsZCxwLHUsblttKzFdLDIxLC0yMDU0OTIyNzk5KSx1PWIodSxsLGQscCxuW20rOF0sNiwxODczMzEzMzU5KSxwPWIocCx1LGwsZCxuW20rMTVdLDEwLC0zMDYxMTc0NCksZD1iKGQscCx1LGwsblttKzZdLDE1LC0xNTYwMTk4MzgwKSxsPWIobCxkLHAsdSxuW20rMTNdLDIxLDEzMDkxNTE2NDkpLHU9Yih1LGwsZCxwLG5bbSs0XSw2LC0xNDU1MjMwNzApLHA9YihwLHUsbCxkLG5bbSsxMV0sMTAsLTExMjAyMTAzNzkpLGQ9YihkLHAsdSxsLG5bbSsyXSwxNSw3MTg3ODcyNTkpLGw9YihsLGQscCx1LG5bbSs5XSwyMSwtMzQzNDg1NTUxKSx1PXUraD4+PjAsbD1sK3c+Pj4wLGQ9ZCt5Pj4+MCxwPXArVD4+PjB9cmV0dXJuIHIuZW5kaWFuKFt1LGwsZCxwXSl9KS5fZmY9ZnVuY3Rpb24oZSx0LG4scixpLGEsbyl7dmFyIHM9ZSsodCZufH50JnIpKyhpPj4+MCkrbztyZXR1cm4oczw8YXxzPj4+MzItYSkrdH0scy5fZ2c9ZnVuY3Rpb24oZSx0LG4scixpLGEsbyl7dmFyIHM9ZSsodCZyfG4mfnIpKyhpPj4+MCkrbztyZXR1cm4oczw8YXxzPj4+MzItYSkrdH0scy5faGg9ZnVuY3Rpb24oZSx0LG4scixpLGEsbyl7dmFyIHM9ZSsodF5uXnIpKyhpPj4+MCkrbztyZXR1cm4oczw8YXxzPj4+MzItYSkrdH0scy5faWk9ZnVuY3Rpb24oZSx0LG4scixpLGEsbyl7dmFyIHM9ZSsobl4odHx+cikpKyhpPj4+MCkrbztyZXR1cm4oczw8YXxzPj4+MzItYSkrdH0scy5fYmxvY2tzaXplPTE2LHMuX2RpZ2VzdHNpemU9MTYsZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYobnVsbD09ZSl0aHJvdyBuZXcgRXJyb3IoXCJJbGxlZ2FsIGFyZ3VtZW50IFwiK2UpO3ZhciBuPXIud29yZHNUb0J5dGVzKHMoZSx0KSk7cmV0dXJuIHQmJnQuYXNCeXRlcz9uOnQmJnQuYXNTdHJpbmc/by5ieXRlc1RvU3RyaW5nKG4pOnIuYnl0ZXNUb0hleChuKX19LDI6KGUsdCxuKT0+e1widXNlIHN0cmljdFwiO24ucih0KSxuLmQodCx7UGVyZnVtZTooKT0+emUsaW5jcmVtZW50VWpOYXZpZ2F0aW9uOigpPT5MZSxtYXJrU3RlcDooKT0+UmUsbWFya1N0ZXBPbmNlOigpPT5xZX0pO3ZhciByLGksYT17aXNSZXNvdXJjZVRpbWluZzohMSxpc0VsZW1lbnRUaW1pbmc6ITEsbWF4VGltZTozZTQscmVwb3J0T3B0aW9uczp7fSxlbmFibGVOYXZpZ2F0aW9uVHJhY2tpbmc6ITB9LG89d2luZG93LHM9by5jb25zb2xlLGM9by5uYXZpZ2F0b3IsdT1vLnBlcmZvcm1hbmNlLGw9ZnVuY3Rpb24oKXtyZXR1cm4gYy5kZXZpY2VNZW1vcnl9LGQ9ZnVuY3Rpb24oKXtyZXR1cm4gYy5oYXJkd2FyZUNvbmN1cnJlbmN5fSxwPVwibWFyay5cIixtPWZ1bmN0aW9uKCl7cmV0dXJuIHUmJiEhdS5nZXRFbnRyaWVzQnlUeXBlJiYhIXUubm93JiYhIXUubWFya30sZj1cIjRnXCIsdj0hMSxnPXt9LGI9e3ZhbHVlOjB9LGg9e3ZhbHVlOntiZWFjb246MCxjc3M6MCxmZXRjaDowLGltZzowLG90aGVyOjAsc2NyaXB0OjAsdG90YWw6MCx4bWxodHRwcmVxdWVzdDowfX0sdz17dmFsdWU6MH0seT17dmFsdWU6MH0sVD17fSxrPXtpc0hpZGRlbjohMSxkaWRDaGFuZ2U6ITF9LF89ZnVuY3Rpb24oKXtrLmlzSGlkZGVuPSExLGRvY3VtZW50LmhpZGRlbiYmKGsuaXNIaWRkZW49ZG9jdW1lbnQuaGlkZGVuLGsuZGlkQ2hhbmdlPSEwKX0sUz1mdW5jdGlvbihlLHQpe3RyeXt2YXIgbj1uZXcgUGVyZm9ybWFuY2VPYnNlcnZlcigoZnVuY3Rpb24oZSl7dChlLmdldEVudHJpZXMoKSl9KSk7cmV0dXJuIG4ub2JzZXJ2ZSh7dHlwZTplLGJ1ZmZlcmVkOiEwfSksbn1jYXRjaChlKXtzLndhcm4oXCJQZXJmdW1lLmpzOlwiLGUpfXJldHVybiBudWxsfSxFPWZ1bmN0aW9uKCl7cmV0dXJuISEoZCgpJiZkKCk8PTQpfHwhIShsKCkmJmwoKTw9NCl9LHg9ZnVuY3Rpb24oZSx0KXtzd2l0Y2goZSl7Y2FzZVwic2xvdy0yZ1wiOmNhc2VcIjJnXCI6Y2FzZVwiM2dcIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiBFKCl8fHR9fSxPPWZ1bmN0aW9uKGUpe3JldHVybiBwYXJzZUZsb2F0KGUudG9GaXhlZCg0KSl9LGo9ZnVuY3Rpb24oZSl7cmV0dXJuXCJudW1iZXJcIiE9dHlwZW9mIGU/bnVsbDpPKGUvTWF0aC5wb3coMTAyNCwyKSl9LE49ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgcyx1PWZ1bmN0aW9uKCl7YS5hbmFseXRpY3NUcmFja2VyJiYoay5pc0hpZGRlbiYmIVtcIkNMU1wiLFwiSU5QXCJdLmluY2x1ZGVzKGUpfHxhLmFuYWx5dGljc1RyYWNrZXIoe2F0dHJpYnV0aW9uOnIsbWV0cmljTmFtZTplLGRhdGE6dCxuYXZpZ2F0b3JJbmZvcm1hdGlvbjpjP3tkZXZpY2VNZW1vcnk6bCgpfHwwLGhhcmR3YXJlQ29uY3VycmVuY3k6ZCgpfHwwLHNlcnZpY2VXb3JrZXJTdGF0dXM6XCJzZXJ2aWNlV29ya2VyXCJpbiBjP2Muc2VydmljZVdvcmtlci5jb250cm9sbGVyP1wiY29udHJvbGxlZFwiOlwic3VwcG9ydGVkXCI6XCJ1bnN1cHBvcnRlZFwiLGlzTG93RW5kRGV2aWNlOkUoKSxpc0xvd0VuZEV4cGVyaWVuY2U6eChmLHYpfTp7fSxyYXRpbmc6bixuYXZpZ2F0aW9uVHlwZTppfSkpfTtbXCJDTFNcIixcIklOUFwiXS5pbmNsdWRlcyhlKT91KCk6KHM9dSxcInJlcXVlc3RJZGxlQ2FsbGJhY2tcImluIG8/by5yZXF1ZXN0SWRsZUNhbGxiYWNrKHMse3RpbWVvdXQ6M2UzfSk6cygpKX0sST1mdW5jdGlvbihlKXtlLmZvckVhY2goKGZ1bmN0aW9uKGUpe2lmKCEoXCJzZWxmXCIhPT1lLm5hbWV8fGUuc3RhcnRUaW1lPGIudmFsdWUpKXt2YXIgdD1lLmR1cmF0aW9uLTUwO3Q+MCYmKHcudmFsdWUrPXQseS52YWx1ZSs9dCl9fSkpfTshZnVuY3Rpb24oZSl7ZS5pbnN0YW50PVwiaW5zdGFudFwiLGUucXVpY2s9XCJxdWlja1wiLGUubW9kZXJhdGU9XCJtb2RlcmF0ZVwiLGUuc2xvdz1cInNsb3dcIixlLnVuYXZvaWRhYmxlPVwidW5hdm9pZGFibGVcIn0ocnx8KHI9e30pKTt2YXIgUCxNLEIsQyxELEE9KChpPXt9KVtyLmluc3RhbnRdPXt2aXRhbHNUaHJlc2hvbGRzOlsxMDAsMjAwXSxtYXhPdXRsaWVyVGhyZXNob2xkOjFlNH0saVtyLnF1aWNrXT17dml0YWxzVGhyZXNob2xkczpbMjAwLDUwMF0sbWF4T3V0bGllclRocmVzaG9sZDoxZTR9LGlbci5tb2RlcmF0ZV09e3ZpdGFsc1RocmVzaG9sZHM6WzUwMCwxZTNdLG1heE91dGxpZXJUaHJlc2hvbGQ6MWU0fSxpW3Iuc2xvd109e3ZpdGFsc1RocmVzaG9sZHM6WzFlMywyZTNdLG1heE91dGxpZXJUaHJlc2hvbGQ6MWU0fSxpW3IudW5hdm9pZGFibGVdPXt2aXRhbHNUaHJlc2hvbGRzOlsyZTMsNWUzXSxtYXhPdXRsaWVyVGhyZXNob2xkOjJlNH0saSksTD17UlQ6WzEwMCwyMDBdLFRCVDpbMjAwLDYwMF0sTlRCVDpbMjAwLDYwMF19LFU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gTFtlXT90PD1MW2VdWzBdP1wiZ29vZFwiOnQ8PUxbZV1bMV0/XCJuZWVkc0ltcHJvdmVtZW50XCI6XCJwb29yXCI6bnVsbH0sUj1mdW5jdGlvbihlLHQsbil7T2JqZWN0LmtleXModCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7XCJudW1iZXJcIj09dHlwZW9mIHRbZV0mJih0W2VdPU8odFtlXSkpfSkpLE4oZSx0LG51bGwsbnx8e30pfSxxPWZ1bmN0aW9uKGUpe3ZhciB0PWUuYXR0cmlidXRpb24sbj1lLm5hbWUscj1lLnJhdGluZyxpPWUudmFsdWUsbz1lLm5hdmlnYXRpb25UeXBlO1wiRkNQXCI9PT1uJiYoYi52YWx1ZT1pKSxbXCJGQ1BcIixcIkxDUFwiXS5pbmNsdWRlcyhuKSYmIVRbMF0mJihUWzBdPVMoXCJsb25ndGFza1wiLEkpKSxcIkZJRFwiPT09biYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtrLmRpZENoYW5nZXx8KHEoe2F0dHJpYnV0aW9uOnQsbmFtZTpcIlRCVFwiLHJhdGluZzpVKFwiVEJUXCIsdy52YWx1ZSksdmFsdWU6dy52YWx1ZSxuYXZpZ2F0aW9uVHlwZTpvfSksUihcImRhdGFDb25zdW1wdGlvblwiLGgudmFsdWUpKX0pLDFlNCk7dmFyIHM9TyhpKTtzPD1hLm1heFRpbWUmJnM+PTAmJk4obixzLHIsdCxvKX0sRj1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cucGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUmJnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoXCJuYXZpZ2F0aW9uXCIpWzBdfSx6PWZ1bmN0aW9uKGUpe2lmKFwibG9hZGluZ1wiPT09ZG9jdW1lbnQucmVhZHlTdGF0ZSlyZXR1cm5cImxvYWRpbmdcIjt2YXIgdD1GKCk7aWYodCl7aWYoZTx0LmRvbUludGVyYWN0aXZlKXJldHVyblwibG9hZGluZ1wiO2lmKDA9PT10LmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0fHxlPHQuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQpcmV0dXJuXCJkb20taW50ZXJhY3RpdmVcIjtpZigwPT09dC5kb21Db21wbGV0ZXx8ZTx0LmRvbUNvbXBsZXRlKXJldHVyblwiZG9tLWNvbnRlbnQtbG9hZGVkXCJ9cmV0dXJuXCJjb21wbGV0ZVwifSxLPWZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWU7cmV0dXJuIDE9PT1lLm5vZGVUeXBlP3QudG9Mb3dlckNhc2UoKTp0LnRvVXBwZXJDYXNlKCkucmVwbGFjZSgvXiMvLFwiXCIpfSwkPWZ1bmN0aW9uKGUsdCl7dmFyIG49XCJcIjt0cnl7Zm9yKDtlJiY5IT09ZS5ub2RlVHlwZTspe3ZhciByPWUsaT1yLmlkP1wiI1wiK3IuaWQ6SyhyKSsoci5jbGFzc05hbWUmJnIuY2xhc3NOYW1lLmxlbmd0aD9cIi5cIityLmNsYXNzTmFtZS5yZXBsYWNlKC9cXFxccysvZyxcIi5cIik6XCJcIik7aWYobi5sZW5ndGgraS5sZW5ndGg+KHR8fDEwMCktMSlyZXR1cm4gbnx8aTtpZihuPW4/aStcIj5cIituOmksci5pZClicmVhaztlPXIucGFyZW50Tm9kZX19Y2F0Y2goZSl7fXJldHVybiBufSxRPS0xLFc9ZnVuY3Rpb24oKXtyZXR1cm4gUX0sSD1mdW5jdGlvbihlKXthZGRFdmVudExpc3RlbmVyKFwicGFnZXNob3dcIiwoZnVuY3Rpb24odCl7dC5wZXJzaXN0ZWQmJihRPXQudGltZVN0YW1wLGUodCkpfSksITApfSxWPWZ1bmN0aW9uKCl7dmFyIGU9RigpO3JldHVybiBlJiZlLmFjdGl2YXRpb25TdGFydHx8MH0sSj1mdW5jdGlvbihlLHQpe3ZhciBuPUYoKSxyPVwibmF2aWdhdGVcIjtyZXR1cm4gVygpPj0wP3I9XCJiYWNrLWZvcndhcmQtY2FjaGVcIjpuJiYocj1kb2N1bWVudC5wcmVyZW5kZXJpbmd8fFYoKT4wP1wicHJlcmVuZGVyXCI6ZG9jdW1lbnQud2FzRGlzY2FyZGVkP1wicmVzdG9yZVwiOm4udHlwZS5yZXBsYWNlKC9fL2csXCItXCIpKSx7bmFtZTplLHZhbHVlOnZvaWQgMD09PXQ/LTE6dCxyYXRpbmc6XCJnb29kXCIsZGVsdGE6MCxlbnRyaWVzOltdLGlkOlwidjMtXCIuY29uY2F0KERhdGUubm93KCksXCItXCIpLmNvbmNhdChNYXRoLmZsb29yKDg5OTk5OTk5OTk5OTkqTWF0aC5yYW5kb20oKSkrMWUxMiksbmF2aWdhdGlvblR5cGU6cn19LFg9ZnVuY3Rpb24oZSx0LG4pe3RyeXtpZihQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMuaW5jbHVkZXMoZSkpe3ZhciByPW5ldyBQZXJmb3JtYW5jZU9ic2VydmVyKChmdW5jdGlvbihlKXtQcm9taXNlLnJlc29sdmUoKS50aGVuKChmdW5jdGlvbigpe3QoZS5nZXRFbnRyaWVzKCkpfSkpfSkpO3JldHVybiByLm9ic2VydmUoT2JqZWN0LmFzc2lnbih7dHlwZTplLGJ1ZmZlcmVkOiEwfSxufHx7fSkpLHJ9fWNhdGNoKGUpe319LEc9ZnVuY3Rpb24oZSx0KXt2YXIgbj1mdW5jdGlvbiBuKHIpe1wicGFnZWhpZGVcIiE9PXIudHlwZSYmXCJoaWRkZW5cIiE9PWRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZXx8KGUociksdCYmKHJlbW92ZUV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsbiwhMCkscmVtb3ZlRXZlbnRMaXN0ZW5lcihcInBhZ2VoaWRlXCIsbiwhMCkpKX07YWRkRXZlbnRMaXN0ZW5lcihcInZpc2liaWxpdHljaGFuZ2VcIixuLCEwKSxhZGRFdmVudExpc3RlbmVyKFwicGFnZWhpZGVcIixuLCEwKX0sWj1mdW5jdGlvbihlLHQsbixyKXt2YXIgaSxhO3JldHVybiBmdW5jdGlvbihvKXt0LnZhbHVlPj0wJiYob3x8cikmJigoYT10LnZhbHVlLShpfHwwKSl8fHZvaWQgMD09PWkpJiYoaT10LnZhbHVlLHQuZGVsdGE9YSx0LnJhdGluZz1mdW5jdGlvbihlLHQpe3JldHVybiBlPnRbMV0/XCJwb29yXCI6ZT50WzBdP1wibmVlZHMtaW1wcm92ZW1lbnRcIjpcImdvb2RcIn0odC52YWx1ZSxuKSxlKHQpKX19LFk9ZnVuY3Rpb24oZSl7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKChmdW5jdGlvbigpe3JldHVybiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKGZ1bmN0aW9uKCl7cmV0dXJuIGUoKX0pKX0pKX0sZWU9ZnVuY3Rpb24oZSl7ZG9jdW1lbnQucHJlcmVuZGVyaW5nP2FkZEV2ZW50TGlzdGVuZXIoXCJwcmVyZW5kZXJpbmdjaGFuZ2VcIiwoZnVuY3Rpb24oKXtyZXR1cm4gZSgpfSksITApOmUoKX0sdGU9LTEsbmU9ZnVuY3Rpb24oKXtyZXR1cm5cImhpZGRlblwiIT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlfHxkb2N1bWVudC5wcmVyZW5kZXJpbmc/MS8wOjB9LHJlPWZ1bmN0aW9uKGUpe1wiaGlkZGVuXCI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJnRlPi0xJiYodGU9XCJ2aXNpYmlsaXR5Y2hhbmdlXCI9PT1lLnR5cGU/ZS50aW1lU3RhbXA6MCxhZSgpKX0saWU9ZnVuY3Rpb24oKXthZGRFdmVudExpc3RlbmVyKFwidmlzaWJpbGl0eWNoYW5nZVwiLHJlLCEwKSxhZGRFdmVudExpc3RlbmVyKFwicHJlcmVuZGVyaW5nY2hhbmdlXCIscmUsITApfSxhZT1mdW5jdGlvbigpe3JlbW92ZUV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIscmUsITApLHJlbW92ZUV2ZW50TGlzdGVuZXIoXCJwcmVyZW5kZXJpbmdjaGFuZ2VcIixyZSwhMCl9LG9lPWZ1bmN0aW9uKCl7cmV0dXJuIHRlPDAmJih0ZT1uZSgpLGllKCksSCgoZnVuY3Rpb24oKXtzZXRUaW1lb3V0KChmdW5jdGlvbigpe3RlPW5lKCksaWUoKX0pLDApfSkpKSx7Z2V0IGZpcnN0SGlkZGVuVGltZSgpe3JldHVybiB0ZX19fSxzZT1mdW5jdGlvbihlLHQpe3Q9dHx8e30sZWUoKGZ1bmN0aW9uKCl7dmFyIG4scj1bMTgwMCwzZTNdLGk9b2UoKSxhPUooXCJGQ1BcIiksbz1YKFwicGFpbnRcIiwoZnVuY3Rpb24oZSl7ZS5mb3JFYWNoKChmdW5jdGlvbihlKXtcImZpcnN0LWNvbnRlbnRmdWwtcGFpbnRcIj09PWUubmFtZSYmKG8uZGlzY29ubmVjdCgpLGUuc3RhcnRUaW1lPGkuZmlyc3RIaWRkZW5UaW1lJiYoYS52YWx1ZT1NYXRoLm1heChlLnN0YXJ0VGltZS1WKCksMCksYS5lbnRyaWVzLnB1c2goZSksbighMCkpKX0pKX0pKTtvJiYobj1aKGUsYSxyLHQucmVwb3J0QWxsQ2hhbmdlcyksSCgoZnVuY3Rpb24oaSl7YT1KKFwiRkNQXCIpLG49WihlLGEscix0LnJlcG9ydEFsbENoYW5nZXMpLFkoKGZ1bmN0aW9uKCl7YS52YWx1ZT1wZXJmb3JtYW5jZS5ub3coKS1pLnRpbWVTdGFtcCxuKCEwKX0pKX0pKSl9KSl9LGNlPXtwYXNzaXZlOiEwLGNhcHR1cmU6ITB9LHVlPW5ldyBEYXRlLGxlPWZ1bmN0aW9uKGUsdCl7UHx8KFA9dCxNPWUsQj1uZXcgRGF0ZSxtZShyZW1vdmVFdmVudExpc3RlbmVyKSxkZSgpKX0sZGU9ZnVuY3Rpb24oKXtpZihNPj0wJiZNPEItdWUpe3ZhciBlPXtlbnRyeVR5cGU6XCJmaXJzdC1pbnB1dFwiLG5hbWU6UC50eXBlLHRhcmdldDpQLnRhcmdldCxjYW5jZWxhYmxlOlAuY2FuY2VsYWJsZSxzdGFydFRpbWU6UC50aW1lU3RhbXAscHJvY2Vzc2luZ1N0YXJ0OlAudGltZVN0YW1wK019O0MuZm9yRWFjaCgoZnVuY3Rpb24odCl7dChlKX0pKSxDPVtdfX0scGU9ZnVuY3Rpb24oZSl7aWYoZS5jYW5jZWxhYmxlKXt2YXIgdD0oZS50aW1lU3RhbXA+MWUxMj9uZXcgRGF0ZTpwZXJmb3JtYW5jZS5ub3coKSktZS50aW1lU3RhbXA7XCJwb2ludGVyZG93blwiPT1lLnR5cGU/ZnVuY3Rpb24oZSx0KXt2YXIgbj1mdW5jdGlvbigpe2xlKGUsdCksaSgpfSxyPWZ1bmN0aW9uKCl7aSgpfSxpPWZ1bmN0aW9uKCl7cmVtb3ZlRXZlbnRMaXN0ZW5lcihcInBvaW50ZXJ1cFwiLG4sY2UpLHJlbW92ZUV2ZW50TGlzdGVuZXIoXCJwb2ludGVyY2FuY2VsXCIscixjZSl9O2FkZEV2ZW50TGlzdGVuZXIoXCJwb2ludGVydXBcIixuLGNlKSxhZGRFdmVudExpc3RlbmVyKFwicG9pbnRlcmNhbmNlbFwiLHIsY2UpfSh0LGUpOmxlKHQsZSl9fSxtZT1mdW5jdGlvbihlKXtbXCJtb3VzZWRvd25cIixcImtleWRvd25cIixcInRvdWNoc3RhcnRcIixcInBvaW50ZXJkb3duXCJdLmZvckVhY2goKGZ1bmN0aW9uKHQpe3JldHVybiBlKHQscGUsY2UpfSkpfSxmZT0wLHZlPTEvMCxnZT0wLGJlPWZ1bmN0aW9uKGUpe2UuZm9yRWFjaCgoZnVuY3Rpb24oZSl7ZS5pbnRlcmFjdGlvbklkJiYodmU9TWF0aC5taW4odmUsZS5pbnRlcmFjdGlvbklkKSxnZT1NYXRoLm1heChnZSxlLmludGVyYWN0aW9uSWQpLGZlPWdlPyhnZS12ZSkvNysxOjApfSkpfSxoZT1mdW5jdGlvbigpe3JldHVybiBEP2ZlOnBlcmZvcm1hbmNlLmludGVyYWN0aW9uQ291bnR8fDB9LHdlPTAseWU9ZnVuY3Rpb24oKXtyZXR1cm4gaGUoKS13ZX0sVGU9W10sa2U9e30sX2U9ZnVuY3Rpb24oZSl7dmFyIHQ9VGVbVGUubGVuZ3RoLTFdLG49a2VbZS5pbnRlcmFjdGlvbklkXTtpZihufHxUZS5sZW5ndGg8MTB8fGUuZHVyYXRpb24+dC5sYXRlbmN5KXtpZihuKW4uZW50cmllcy5wdXNoKGUpLG4ubGF0ZW5jeT1NYXRoLm1heChuLmxhdGVuY3ksZS5kdXJhdGlvbik7ZWxzZXt2YXIgcj17aWQ6ZS5pbnRlcmFjdGlvbklkLGxhdGVuY3k6ZS5kdXJhdGlvbixlbnRyaWVzOltlXX07a2Vbci5pZF09cixUZS5wdXNoKHIpfVRlLnNvcnQoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQubGF0ZW5jeS1lLmxhdGVuY3l9KSksVGUuc3BsaWNlKDEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtkZWxldGUga2VbZS5pZF19KSl9fSxTZT17fSxFZT1mdW5jdGlvbiBlKHQpe2RvY3VtZW50LnByZXJlbmRlcmluZz9lZSgoZnVuY3Rpb24oKXtyZXR1cm4gZSh0KX0pKTpcImNvbXBsZXRlXCIhPT1kb2N1bWVudC5yZWFkeVN0YXRlP2FkZEV2ZW50TGlzdGVuZXIoXCJsb2FkXCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGUodCl9KSwhMCk6c2V0VGltZW91dCh0LDApfSx4ZT1mdW5jdGlvbihlLHQpe3Q9dHx8e307dmFyIG49WzgwMCwxODAwXSxyPUooXCJUVEZCXCIpLGk9WihlLHIsbix0LnJlcG9ydEFsbENoYW5nZXMpO0VlKChmdW5jdGlvbigpe3ZhciBhPUYoKTtpZihhKXt2YXIgbz1hLnJlc3BvbnNlU3RhcnQ7aWYobzw9MHx8bz5wZXJmb3JtYW5jZS5ub3coKSlyZXR1cm47ci52YWx1ZT1NYXRoLm1heChvLVYoKSwwKSxyLmVudHJpZXM9W2FdLGkoITApLEgoKGZ1bmN0aW9uKCl7cj1KKFwiVFRGQlwiLDApLChpPVooZSxyLG4sdC5yZXBvcnRBbGxDaGFuZ2VzKSkoITApfSkpfX0pKX0sT2U9ZnVuY3Rpb24oZSl7ZS5mb3JFYWNoKChmdW5jdGlvbihlKXtlLmlkZW50aWZpZXImJnEoe2F0dHJpYnV0aW9uOntpZGVudGlmaWVyOmUuaWRlbnRpZmllcn0sbmFtZTpcIkVUXCIscmF0aW5nOm51bGwsdmFsdWU6ZS5zdGFydFRpbWV9KX0pKX0samU9ZnVuY3Rpb24oZSl7ZS5mb3JFYWNoKChmdW5jdGlvbihlKXtpZihhLmlzUmVzb3VyY2VUaW1pbmcmJlIoXCJyZXNvdXJjZVRpbWluZ1wiLGUpLGUuZGVjb2RlZEJvZHlTaXplJiZlLmluaXRpYXRvclR5cGUpe3ZhciB0PWUuZGVjb2RlZEJvZHlTaXplLzFlMztoLnZhbHVlW2UuaW5pdGlhdG9yVHlwZV0rPXQsaC52YWx1ZS50b3RhbCs9dH19KSl9LE5lPWZ1bmN0aW9uKCl7IWZ1bmN0aW9uKGUsdCl7eGUoKGZ1bmN0aW9uKGUpeyFmdW5jdGlvbihlKXtpZihlLmVudHJpZXMubGVuZ3RoKXt2YXIgdD1lLmVudHJpZXNbMF0sbj10LmFjdGl2YXRpb25TdGFydHx8MCxyPU1hdGgubWF4KHQuZG9tYWluTG9va3VwU3RhcnQtbiwwKSxpPU1hdGgubWF4KHQuY29ubmVjdFN0YXJ0LW4sMCksYT1NYXRoLm1heCh0LnJlcXVlc3RTdGFydC1uLDApO2UuYXR0cmlidXRpb249e3dhaXRpbmdUaW1lOnIsZG5zVGltZTppLXIsY29ubmVjdGlvblRpbWU6YS1pLHJlcXVlc3RUaW1lOmUudmFsdWUtYSxuYXZpZ2F0aW9uRW50cnk6dH19ZWxzZSBlLmF0dHJpYnV0aW9uPXt3YWl0aW5nVGltZTowLGRuc1RpbWU6MCxjb25uZWN0aW9uVGltZTowLHJlcXVlc3RUaW1lOjB9fShlKSxmdW5jdGlvbihlKXtlLnZhbHVlPjAmJnEoZSl9KGUpfSksdCl9KDAsYS5yZXBvcnRPcHRpb25zLnR0ZmIpLGZ1bmN0aW9uKGUsdCl7IWZ1bmN0aW9uKGUsdCl7dD10fHx7fSxlZSgoZnVuY3Rpb24oKXt2YXIgZSxuPVsuMSwuMjVdLHI9SihcIkNMU1wiKSxpPS0xLGE9MCxvPVtdLHM9ZnVuY3Rpb24oZSl7aT4tMSYmZnVuY3Rpb24oZSl7IWZ1bmN0aW9uKGUpe2lmKGUuZW50cmllcy5sZW5ndGgpe3ZhciB0PWUuZW50cmllcy5yZWR1Y2UoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUmJmUudmFsdWU+dC52YWx1ZT9lOnR9KSk7aWYodCYmdC5zb3VyY2VzJiZ0LnNvdXJjZXMubGVuZ3RoKXt2YXIgbj0ocj10LnNvdXJjZXMpLmZpbmQoKGZ1bmN0aW9uKGUpe3JldHVybiBlLm5vZGUmJjE9PT1lLm5vZGUubm9kZVR5cGV9KSl8fHJbMF07aWYobilyZXR1cm4gdm9pZChlLmF0dHJpYnV0aW9uPXtsYXJnZXN0U2hpZnRUYXJnZXQ6JChuLm5vZGUpLGxhcmdlc3RTaGlmdFRpbWU6dC5zdGFydFRpbWUsbGFyZ2VzdFNoaWZ0VmFsdWU6dC52YWx1ZSxsYXJnZXN0U2hpZnRTb3VyY2U6bixsYXJnZXN0U2hpZnRFbnRyeTp0LGxvYWRTdGF0ZTp6KHQuc3RhcnRUaW1lKX0pfX12YXIgcjtlLmF0dHJpYnV0aW9uPXt9fShlKSxmdW5jdGlvbihlKXtxKGUpfShlKX0oZSl9LGM9ZnVuY3Rpb24odCl7dC5mb3JFYWNoKChmdW5jdGlvbih0KXtpZighdC5oYWRSZWNlbnRJbnB1dCl7dmFyIG49b1swXSxpPW9bby5sZW5ndGgtMV07YSYmdC5zdGFydFRpbWUtaS5zdGFydFRpbWU8MWUzJiZ0LnN0YXJ0VGltZS1uLnN0YXJ0VGltZTw1ZTM/KGErPXQudmFsdWUsby5wdXNoKHQpKTooYT10LnZhbHVlLG89W3RdKSxhPnIudmFsdWUmJihyLnZhbHVlPWEsci5lbnRyaWVzPW8sZSgpKX19KSl9LHU9WChcImxheW91dC1zaGlmdFwiLGMpO3UmJihlPVoocyxyLG4sdC5yZXBvcnRBbGxDaGFuZ2VzKSxzZSgoZnVuY3Rpb24odCl7aT10LnZhbHVlLHIudmFsdWU8MCYmKHIudmFsdWU9MCxlKCkpfSkpLEcoKGZ1bmN0aW9uKCl7Yyh1LnRha2VSZWNvcmRzKCkpLGUoITApfSkpLEgoKGZ1bmN0aW9uKCl7YT0wLGk9LTEscj1KKFwiQ0xTXCIsMCksZT1aKHMscixuLHQucmVwb3J0QWxsQ2hhbmdlcyksWSgoZnVuY3Rpb24oKXtyZXR1cm4gZSgpfSkpfSkpKX0pKX0oMCx0KX0oMCxhLnJlcG9ydE9wdGlvbnMuY2xzKSxmdW5jdGlvbihlLHQpe3NlKChmdW5jdGlvbihlKXshZnVuY3Rpb24oZSl7aWYoZS5lbnRyaWVzLmxlbmd0aCl7dmFyIHQ9RigpLG49ZS5lbnRyaWVzW2UuZW50cmllcy5sZW5ndGgtMV07aWYodCl7dmFyIHI9dC5hY3RpdmF0aW9uU3RhcnR8fDAsaT1NYXRoLm1heCgwLHQucmVzcG9uc2VTdGFydC1yKTtyZXR1cm4gdm9pZChlLmF0dHJpYnV0aW9uPXt0aW1lVG9GaXJzdEJ5dGU6aSxmaXJzdEJ5dGVUb0ZDUDplLnZhbHVlLWksbG9hZFN0YXRlOnooZS5lbnRyaWVzWzBdLnN0YXJ0VGltZSksbmF2aWdhdGlvbkVudHJ5OnQsZmNwRW50cnk6bn0pfX1lLmF0dHJpYnV0aW9uPXt0aW1lVG9GaXJzdEJ5dGU6MCxmaXJzdEJ5dGVUb0ZDUDplLnZhbHVlLGxvYWRTdGF0ZTp6KFcoKSl9fShlKSxmdW5jdGlvbihlKXtxKGUpfShlKX0pLHQpfSgwLGEucmVwb3J0T3B0aW9ucy5mY3ApLGZ1bmN0aW9uKGUsdCl7IWZ1bmN0aW9uKGUsdCl7dD10fHx7fSxlZSgoZnVuY3Rpb24oKXt2YXIgbixyPVsxMDAsMzAwXSxpPW9lKCksYT1KKFwiRklEXCIpLG89ZnVuY3Rpb24oZSl7ZS5zdGFydFRpbWU8aS5maXJzdEhpZGRlblRpbWUmJihhLnZhbHVlPWUucHJvY2Vzc2luZ1N0YXJ0LWUuc3RhcnRUaW1lLGEuZW50cmllcy5wdXNoKGUpLG4oITApKX0scz1mdW5jdGlvbihlKXtlLmZvckVhY2gobyl9LGM9WChcImZpcnN0LWlucHV0XCIscyk7bj1aKGUsYSxyLHQucmVwb3J0QWxsQ2hhbmdlcyksYyYmRygoZnVuY3Rpb24oKXtzKGMudGFrZVJlY29yZHMoKSksYy5kaXNjb25uZWN0KCl9KSwhMCksYyYmSCgoZnVuY3Rpb24oKXt2YXIgaTthPUooXCJGSURcIiksbj1aKGUsYSxyLHQucmVwb3J0QWxsQ2hhbmdlcyksQz1bXSxNPS0xLFA9bnVsbCxtZShhZGRFdmVudExpc3RlbmVyKSxpPW8sQy5wdXNoKGkpLGRlKCl9KSl9KSl9KChmdW5jdGlvbihlKXshZnVuY3Rpb24oZSl7dmFyIHQ9ZS5lbnRyaWVzWzBdO2UuYXR0cmlidXRpb249e2V2ZW50VGFyZ2V0OiQodC50YXJnZXQpLGV2ZW50VHlwZTp0Lm5hbWUsZXZlbnRUaW1lOnQuc3RhcnRUaW1lLGV2ZW50RW50cnk6dCxsb2FkU3RhdGU6eih0LnN0YXJ0VGltZSl9fShlKSxmdW5jdGlvbihlKXtxKGUpfShlKX0pLHQpfSgwLGEucmVwb3J0T3B0aW9ucy5maWQpLGZ1bmN0aW9uKGUsdCl7IWZ1bmN0aW9uKGUsdCl7dD10fHx7fSxlZSgoZnVuY3Rpb24oKXt2YXIgbixyPVsyNTAwLDRlM10saT1vZSgpLGE9SihcIkxDUFwiKSxvPWZ1bmN0aW9uKGUpe3ZhciB0PWVbZS5sZW5ndGgtMV07aWYodCl7dmFyIHI9TWF0aC5tYXgodC5zdGFydFRpbWUtVigpLDApO3I8aS5maXJzdEhpZGRlblRpbWUmJihhLnZhbHVlPXIsYS5lbnRyaWVzPVt0XSxuKCkpfX0scz1YKFwibGFyZ2VzdC1jb250ZW50ZnVsLXBhaW50XCIsbyk7aWYocyl7bj1aKGUsYSxyLHQucmVwb3J0QWxsQ2hhbmdlcyk7dmFyIGM9ZnVuY3Rpb24oKXtTZVthLmlkXXx8KG8ocy50YWtlUmVjb3JkcygpKSxzLmRpc2Nvbm5lY3QoKSxTZVthLmlkXT0hMCxuKCEwKSl9O1tcImtleWRvd25cIixcImNsaWNrXCJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2FkZEV2ZW50TGlzdGVuZXIoZSxjLHtvbmNlOiEwLGNhcHR1cmU6ITB9KX0pKSxHKGMsITApLEgoKGZ1bmN0aW9uKGkpe2E9SihcIkxDUFwiKSxuPVooZSxhLHIsdC5yZXBvcnRBbGxDaGFuZ2VzKSxZKChmdW5jdGlvbigpe2EudmFsdWU9cGVyZm9ybWFuY2Uubm93KCktaS50aW1lU3RhbXAsU2VbYS5pZF09ITAsbighMCl9KSl9KSl9fSkpfSgoZnVuY3Rpb24oZSl7IWZ1bmN0aW9uKGUpe2lmKGUuZW50cmllcy5sZW5ndGgpe3ZhciB0PUYoKTtpZih0KXt2YXIgbj10LmFjdGl2YXRpb25TdGFydHx8MCxyPWUuZW50cmllc1tlLmVudHJpZXMubGVuZ3RoLTFdLGk9ci51cmwmJnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoXCJyZXNvdXJjZVwiKS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBlLm5hbWU9PT1yLnVybH0pKVswXSxhPU1hdGgubWF4KDAsdC5yZXNwb25zZVN0YXJ0LW4pLG89TWF0aC5tYXgoYSxpPyhpLnJlcXVlc3RTdGFydHx8aS5zdGFydFRpbWUpLW46MCkscz1NYXRoLm1heChvLGk/aS5yZXNwb25zZUVuZC1uOjApLGM9TWF0aC5tYXgocyxyP3Iuc3RhcnRUaW1lLW46MCksdT17ZWxlbWVudDokKHIuZWxlbWVudCksdGltZVRvRmlyc3RCeXRlOmEscmVzb3VyY2VMb2FkRGVsYXk6by1hLHJlc291cmNlTG9hZFRpbWU6cy1vLGVsZW1lbnRSZW5kZXJEZWxheTpjLXMsbmF2aWdhdGlvbkVudHJ5OnQsbGNwRW50cnk6cn07cmV0dXJuIHIudXJsJiYodS51cmw9ci51cmwpLGkmJih1LmxjcFJlc291cmNlRW50cnk9aSksdm9pZChlLmF0dHJpYnV0aW9uPXUpfX1lLmF0dHJpYnV0aW9uPXt0aW1lVG9GaXJzdEJ5dGU6MCxyZXNvdXJjZUxvYWREZWxheTowLHJlc291cmNlTG9hZFRpbWU6MCxlbGVtZW50UmVuZGVyRGVsYXk6ZS52YWx1ZX19KGUpLGZ1bmN0aW9uKGUpe3EoZSl9KGUpfSksdCl9KDAsYS5yZXBvcnRPcHRpb25zLmxjcCksZnVuY3Rpb24oZSx0KXshZnVuY3Rpb24oZSx0KXt0PXR8fHt9LGVlKChmdW5jdGlvbigpe3ZhciBuPVsyMDAsNTAwXTtcImludGVyYWN0aW9uQ291bnRcImluIHBlcmZvcm1hbmNlfHxEfHwoRD1YKFwiZXZlbnRcIixiZSx7dHlwZTpcImV2ZW50XCIsYnVmZmVyZWQ6ITAsZHVyYXRpb25UaHJlc2hvbGQ6MH0pKTt2YXIgcixpPUooXCJJTlBcIiksYT1mdW5jdGlvbihlKXtlLmZvckVhY2goKGZ1bmN0aW9uKGUpe2UuaW50ZXJhY3Rpb25JZCYmX2UoZSksXCJmaXJzdC1pbnB1dFwiPT09ZS5lbnRyeVR5cGUmJiFUZS5zb21lKChmdW5jdGlvbih0KXtyZXR1cm4gdC5lbnRyaWVzLnNvbWUoKGZ1bmN0aW9uKHQpe3JldHVybiBlLmR1cmF0aW9uPT09dC5kdXJhdGlvbiYmZS5zdGFydFRpbWU9PT10LnN0YXJ0VGltZX0pKX0pKSYmX2UoZSl9KSk7dmFyIHQsbj0odD1NYXRoLm1pbihUZS5sZW5ndGgtMSxNYXRoLmZsb29yKHllKCkvNTApKSxUZVt0XSk7biYmbi5sYXRlbmN5IT09aS52YWx1ZSYmKGkudmFsdWU9bi5sYXRlbmN5LGkuZW50cmllcz1uLmVudHJpZXMscigpKX0sbz1YKFwiZXZlbnRcIixhLHtkdXJhdGlvblRocmVzaG9sZDp0LmR1cmF0aW9uVGhyZXNob2xkfHw0MH0pO3I9WihlLGksbix0LnJlcG9ydEFsbENoYW5nZXMpLG8mJihvLm9ic2VydmUoe3R5cGU6XCJmaXJzdC1pbnB1dFwiLGJ1ZmZlcmVkOiEwfSksRygoZnVuY3Rpb24oKXthKG8udGFrZVJlY29yZHMoKSksaS52YWx1ZTwwJiZ5ZSgpPjAmJihpLnZhbHVlPTAsaS5lbnRyaWVzPVtdKSxyKCEwKX0pKSxIKChmdW5jdGlvbigpe1RlPVtdLHdlPWhlKCksaT1KKFwiSU5QXCIpLHI9WihlLGksbix0LnJlcG9ydEFsbENoYW5nZXMpfSkpKX0pKX0oKGZ1bmN0aW9uKHQpeyFmdW5jdGlvbihlKXtpZihlLmVudHJpZXMubGVuZ3RoKXt2YXIgdD1lLmVudHJpZXMuc29ydCgoZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5kdXJhdGlvbi1lLmR1cmF0aW9ufHx0LnByb2Nlc3NpbmdFbmQtdC5wcm9jZXNzaW5nU3RhcnQtKGUucHJvY2Vzc2luZ0VuZC1lLnByb2Nlc3NpbmdTdGFydCl9KSlbMF07ZS5hdHRyaWJ1dGlvbj17ZXZlbnRUYXJnZXQ6JCh0LnRhcmdldCksZXZlbnRUeXBlOnQubmFtZSxldmVudFRpbWU6dC5zdGFydFRpbWUsZXZlbnRFbnRyeTp0LGxvYWRTdGF0ZTp6KHQuc3RhcnRUaW1lKX19ZWxzZSBlLmF0dHJpYnV0aW9uPXt9fSh0KSxlKHQpfSksdCl9KChmdW5jdGlvbihlKXtyZXR1cm4gcShlKX0pLGEucmVwb3J0T3B0aW9ucy5pbnApLGEuaXNSZXNvdXJjZVRpbWluZyYmUyhcInJlc291cmNlXCIsamUpLGEuaXNFbGVtZW50VGltaW5nJiZTKFwiZWxlbWVudFwiLE9lKX0sSWU9ZnVuY3Rpb24oZSl7dmFyIHQ9XCJ1c2FnZURldGFpbHNcImluIGU/ZS51c2FnZURldGFpbHM6e307UihcInN0b3JhZ2VFc3RpbWF0ZVwiLHtxdW90YTpqKGUucXVvdGEpLHVzYWdlOmooZS51c2FnZSksY2FjaGVzOmoodC5jYWNoZXMpLGluZGV4ZWREQjpqKHQuaW5kZXhlZERCKSxzZXJ2aWNlV29ya2VyOmoodC5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9ucyl9KX0sUGU9e2ZpbmFsTWFya1RvU3RlcHNNYXA6e30sc3RhcnRNYXJrVG9TdGVwc01hcDp7fSxhY3RpdmU6e30sbmF2aWdhdGlvblN0ZXBzOnt9fSxNZT1mdW5jdGlvbihlKXtkZWxldGUgUGUuYWN0aXZlW2VdfSxCZT1mdW5jdGlvbigpe3JldHVybiBQZS5uYXZpZ2F0aW9uU3RlcHN9LENlPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBudWxsIT09KHQ9QmUoKVtlXSkmJnZvaWQgMCE9PXQ/dDp7fX0sRGU9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPVwic3RlcC5cIitlLGk9dS5nZXRFbnRyaWVzQnlOYW1lKHArdCkubGVuZ3RoPjA7aWYodS5nZXRFbnRyaWVzQnlOYW1lKHArbikubGVuZ3RoPjAmJmEuc3RlcHMpe3ZhciBvPUFbYS5zdGVwc1tlXS50aHJlc2hvbGRdLHM9by5tYXhPdXRsaWVyVGhyZXNob2xkLGM9by52aXRhbHNUaHJlc2hvbGRzO2lmKGkpe3ZhciBsPXUubWVhc3VyZShyLHArdCxwK24pLGQ9bC5kdXJhdGlvbjtpZihkPD1zKXt2YXIgbT1mdW5jdGlvbihlLHQpe3JldHVybiBlPD10WzBdP1wiZ29vZFwiOmU8PXRbMV0/XCJuZWVkc0ltcHJvdmVtZW50XCI6XCJwb29yXCJ9KGQsYyk7ZD49MCYmKE4oXCJ1c2VySm91cm5leVN0ZXBcIixkLG0se3N0ZXBOYW1lOmV9LHZvaWQgMCksdS5tZWFzdXJlKFwic3RlcC5cIi5jb25jYXQoZSxcIl92aXRhbHNfXCIpLmNvbmNhdChtKSx7c3RhcnQ6bC5zdGFydFRpbWUrbC5kdXJhdGlvbixlbmQ6bC5zdGFydFRpbWUrbC5kdXJhdGlvbixkZXRhaWw6e3R5cGU6XCJzdGVwVml0YWxcIixkdXJhdGlvbjpkfX0pKX19fX0sQWU9ZnVuY3Rpb24oKXt2YXIgZT1CZSgpLHQ9UGUuc3RhcnRNYXJrVG9TdGVwc01hcCxuPU9iamVjdC5rZXlzKGUpLmxlbmd0aDtpZigwPT09bilyZXR1cm57fTt2YXIgcj17fSxpPW4tMSxhPUNlKGkpO2lmKE9iamVjdC5rZXlzKGEpLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuLGk9bnVsbCE9PShuPXRbZV0pJiZ2b2lkIDAhPT1uP246W107T2JqZWN0LmtleXMoaSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cltlXT0hMH0pKX0pKSxuPjEpe3ZhciBvPUNlKGktMSk7T2JqZWN0LmtleXMobykuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG4saT1udWxsIT09KG49dFtlXSkmJnZvaWQgMCE9PW4/bjpbXTtPYmplY3Qua2V5cyhpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyW2VdPSEwfSkpfSkpfXJldHVybiByfSxMZT1mdW5jdGlvbigpe3ZhciBlLHQ9T2JqZWN0LmtleXMoUGUubmF2aWdhdGlvblN0ZXBzKS5sZW5ndGg7UGUubmF2aWdhdGlvblN0ZXBzW3RdPXt9O3ZhciBuPUFlKCk7bnVsbD09PShlPWEub25NYXJrU3RlcCl8fHZvaWQgMD09PWV8fGUuY2FsbChhLFwiXCIsT2JqZWN0LmtleXMobikpfSxVZT1mdW5jdGlvbihlKXt2YXIgdCxuLHIsaSxvLHMsYztpZihQZS5maW5hbE1hcmtUb1N0ZXBzTWFwW2VdKXshZnVuY3Rpb24oZSl7dmFyIHQ9UGUubmF2aWdhdGlvblN0ZXBzLG49UGUuZmluYWxNYXJrVG9TdGVwc01hcCxyPU9iamVjdC5rZXlzKHQpLmxlbmd0aDtpZigwIT09cil7dmFyIGk9ci0xLGE9Q2UoaSk7aWYoYSYmbltlXSl7dmFyIG89bltlXTtvJiZPYmplY3Qua2V5cyhvKS5mb3JFYWNoKChmdW5jdGlvbihlKXtpZihhW2VdKXt2YXIgbj1DZShpKXx8e307bltlXT0hMSx0W2ldPW59aWYocj4xKXt2YXIgbz1pLTEscz1DZShvKTtzW2VdJiYoc1tlXT0hMSx0W29dPXMpfX0pKX19fShlKTt2YXIgdT1QZS5maW5hbE1hcmtUb1N0ZXBzTWFwW2VdO09iamVjdC5rZXlzKHUpLmZvckVhY2goKGZ1bmN0aW9uKHQpe3ZhciBuPXVbdF07bi5mb3JFYWNoKE1lKSxQcm9taXNlLmFsbChuLm1hcCgoZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBuZXcobnx8KG49UHJvbWlzZSkpKChmdW5jdGlvbihlLHQpe2Z1bmN0aW9uIGkoZSl7dHJ5e28oci5uZXh0KGUpKX1jYXRjaChlKXt0KGUpfX1mdW5jdGlvbiBhKGUpe3RyeXtvKHIudGhyb3coZSkpfWNhdGNoKGUpe3QoZSl9fWZ1bmN0aW9uIG8odCl7dmFyIHI7dC5kb25lP2UodC52YWx1ZSk6KHI9dC52YWx1ZSxyIGluc3RhbmNlb2Ygbj9yOm5ldyBuKChmdW5jdGlvbihlKXtlKHIpfSkpKS50aGVuKGksYSl9bygocj1yLmFwcGx5KHVuZGVmaW5lZCxbXSkpLm5leHQoKSl9KSl9KDAsMCx2b2lkIDAsKGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7dmFyIG4scixpLGEsbz17bGFiZWw6MCxzZW50OmZ1bmN0aW9uKCl7aWYoMSZpWzBdKXRocm93IGlbMV07cmV0dXJuIGlbMV19LHRyeXM6W10sb3BzOltdfTtyZXR1cm4gYT17bmV4dDpzKDApLHRocm93OnMoMSkscmV0dXJuOnMoMil9LFwiZnVuY3Rpb25cIj09dHlwZW9mIFN5bWJvbCYmKGFbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSksYTtmdW5jdGlvbiBzKGEpe3JldHVybiBmdW5jdGlvbihzKXtyZXR1cm4gZnVuY3Rpb24oYSl7aWYobil0aHJvdyBuZXcgVHlwZUVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLlwiKTtmb3IoO287KXRyeXtpZihuPTEsciYmKGk9MiZhWzBdP3IucmV0dXJuOmFbMF0/ci50aHJvd3x8KChpPXIucmV0dXJuKSYmaS5jYWxsKHIpLDApOnIubmV4dCkmJiEoaT1pLmNhbGwocixhWzFdKSkuZG9uZSlyZXR1cm4gaTtzd2l0Y2gocj0wLGkmJihhPVsyJmFbMF0saS52YWx1ZV0pLGFbMF0pe2Nhc2UgMDpjYXNlIDE6aT1hO2JyZWFrO2Nhc2UgNDpyZXR1cm4gby5sYWJlbCsrLHt2YWx1ZTphWzFdLGRvbmU6ITF9O2Nhc2UgNTpvLmxhYmVsKysscj1hWzFdLGE9WzBdO2NvbnRpbnVlO2Nhc2UgNzphPW8ub3BzLnBvcCgpLG8udHJ5cy5wb3AoKTtjb250aW51ZTtkZWZhdWx0OmlmKCEoKGk9KGk9by50cnlzKS5sZW5ndGg+MCYmaVtpLmxlbmd0aC0xXSl8fDYhPT1hWzBdJiYyIT09YVswXSkpe289MDtjb250aW51ZX1pZigzPT09YVswXSYmKCFpfHxhWzFdPmlbMF0mJmFbMV08aVszXSkpe28ubGFiZWw9YVsxXTticmVha31pZig2PT09YVswXSYmby5sYWJlbDxpWzFdKXtvLmxhYmVsPWlbMV0saT1hO2JyZWFrfWlmKGkmJm8ubGFiZWw8aVsyXSl7by5sYWJlbD1pWzJdLG8ub3BzLnB1c2goYSk7YnJlYWt9aVsyXSYmby5vcHMucG9wKCksby50cnlzLnBvcCgpO2NvbnRpbnVlfWE9dC5jYWxsKGUsbyl9Y2F0Y2goZSl7YT1bNixlXSxyPTB9ZmluYWxseXtuPWk9MH1pZig1JmFbMF0pdGhyb3cgYVsxXTtyZXR1cm57dmFsdWU6YVswXT9hWzFdOnZvaWQgMCxkb25lOiEwfX0oW2Esc10pfX19KHRoaXMsKGZ1bmN0aW9uKHIpe3N3aXRjaChyLmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsRGUobix0LGUpXTtjYXNlIDE6cmV0dXJuIHIuc2VudCgpLFsyXX19KSl9KSl9KSkpLmNhdGNoKChmdW5jdGlvbigpe30pKX0pKX1lbHNlIHI9ZSxpPVBlLm5hdmlnYXRpb25TdGVwcyxvPU9iamVjdC5rZXlzKGkpLmxlbmd0aCwoYz1DZShzPShvPjA/bzoxKS0xKXx8W10pW3JdPSEwLGlbc109YyxmdW5jdGlvbihlKXt2YXIgdCxuPW51bGwhPT0odD1QZS5zdGFydE1hcmtUb1N0ZXBzTWFwW2VdKSYmdm9pZCAwIT09dD90OltdO09iamVjdC5rZXlzKG4pLmZvckVhY2goKGZ1bmN0aW9uKGUpe1BlLmFjdGl2ZVtlXXx8KFBlLmFjdGl2ZVtlXT0hMCl9KSl9KGUpO2lmKGEuZW5hYmxlTmF2aWdhdGlvblRyYWNraW5nKXt2YXIgbD1BZSgpO251bGw9PT0odD1hLm9uTWFya1N0ZXApfHx2b2lkIDA9PT10fHx0LmNhbGwoYSxlLE9iamVjdC5rZXlzKGwpKX1lbHNlIG51bGw9PT0obj1hLm9uTWFya1N0ZXApfHx2b2lkIDA9PT1ufHxuLmNhbGwoYSxlLE9iamVjdC5rZXlzKFBlLmFjdGl2ZSkpfSxSZT1mdW5jdGlvbihlKXt1Lm1hcmsocCtlKSxVZShlKX0scWU9ZnVuY3Rpb24oZSl7MD09PXUuZ2V0RW50cmllc0J5TmFtZShwK2UpLmxlbmd0aCYmKHUubWFyayhwK2UpLFVlKGUpKX0sRmU9MCx6ZT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSl7aWYodm9pZCAwPT09ZSYmKGU9e30pLHRoaXMudj1cIjkuMC4wLXJjLjNcIixhLmFuYWx5dGljc1RyYWNrZXI9ZS5hbmFseXRpY3NUcmFja2VyLGEuaXNSZXNvdXJjZVRpbWluZz0hIWUucmVzb3VyY2VUaW1pbmcsYS5pc0VsZW1lbnRUaW1pbmc9ISFlLmVsZW1lbnRUaW1pbmcsYS5tYXhUaW1lPWUubWF4TWVhc3VyZVRpbWV8fGEubWF4VGltZSxhLnJlcG9ydE9wdGlvbnM9ZS5yZXBvcnRPcHRpb25zfHxhLnJlcG9ydE9wdGlvbnMsYS5zdGVwcz1lLnN0ZXBzLGEub25NYXJrU3RlcD1lLm9uTWFya1N0ZXAsYS5lbmFibGVOYXZpZ2F0aW9uVHJhY2tpbmc9ZS5lbmFibGVOYXZpZ2F0aW9uVHJhY2tpbmcsbSgpKXtcIlBlcmZvcm1hbmNlT2JzZXJ2ZXJcImluIG8mJk5lKCksdm9pZCAwIT09ZG9jdW1lbnQuaGlkZGVuJiZkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidmlzaWJpbGl0eWNoYW5nZVwiLF8pO3ZhciB0PWZ1bmN0aW9uKCl7aWYoIW0oKSlyZXR1cm57fTt2YXIgZT11LmdldEVudHJpZXNCeVR5cGUoXCJuYXZpZ2F0aW9uXCIpWzBdO2lmKCFlKXJldHVybnt9O3ZhciB0PWUucmVzcG9uc2VTdGFydCxuPWUucmVzcG9uc2VFbmQ7cmV0dXJue2ZldGNoVGltZTpuLWUuZmV0Y2hTdGFydCx3b3JrZXJUaW1lOmUud29ya2VyU3RhcnQ+MD9uLWUud29ya2VyU3RhcnQ6MCx0b3RhbFRpbWU6bi1lLnJlcXVlc3RTdGFydCxkb3dubG9hZFRpbWU6bi10LHRpbWVUb0ZpcnN0Qnl0ZTp0LWUucmVxdWVzdFN0YXJ0LGhlYWRlclNpemU6ZS50cmFuc2ZlclNpemUtZS5lbmNvZGVkQm9keVNpemV8fDAsZG5zTG9va3VwVGltZTplLmRvbWFpbkxvb2t1cEVuZC1lLmRvbWFpbkxvb2t1cFN0YXJ0LHJlZGlyZWN0VGltZTplLnJlZGlyZWN0RW5kLWUucmVkaXJlY3RTdGFydH19KCk7UihcIm5hdmlnYXRpb25UaW1pbmdcIix0KSx0LnJlZGlyZWN0VGltZSYmcSh7YXR0cmlidXRpb246e30sbmFtZTpcIlJUXCIscmF0aW5nOlUoXCJSVFwiLHQucmVkaXJlY3RUaW1lKSx2YWx1ZTp0LnJlZGlyZWN0VGltZX0pLFIoXCJuZXR3b3JrSW5mb3JtYXRpb25cIixmdW5jdGlvbigpe2lmKFwiY29ubmVjdGlvblwiaW4gYyl7dmFyIGU9Yy5jb25uZWN0aW9uO3JldHVyblwib2JqZWN0XCIhPXR5cGVvZiBlP3t9OihmPWUuZWZmZWN0aXZlVHlwZSx2PSEhZS5zYXZlRGF0YSx7ZG93bmxpbms6ZS5kb3dubGluayxlZmZlY3RpdmVUeXBlOmUuZWZmZWN0aXZlVHlwZSxydHQ6ZS5ydHQsc2F2ZURhdGE6ISFlLnNhdmVEYXRhfSl9cmV0dXJue319KCkpLGMmJmMuc3RvcmFnZSYmXCJmdW5jdGlvblwiPT10eXBlb2YgYy5zdG9yYWdlLmVzdGltYXRlJiZjLnN0b3JhZ2UuZXN0aW1hdGUoKS50aGVuKEllKSxhLnN0ZXBzJiZhLnN0ZXBzJiYoUGUuc3RhcnRNYXJrVG9TdGVwc01hcD17fSxQZS5maW5hbE1hcmtUb1N0ZXBzTWFwPXt9LFBlLmFjdGl2ZT17fSxQZS5uYXZpZ2F0aW9uU3RlcHM9e30sT2JqZWN0LmVudHJpZXMoYS5zdGVwcykuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIHQsbixyPWVbMF0saT1lWzFdLm1hcmtzLGE9aVswXSxvPWlbMV0scz1udWxsIT09KG49UGUuc3RhcnRNYXJrVG9TdGVwc01hcFthXSkmJnZvaWQgMCE9PW4/bjp7fTtpZihzW3JdPSEwLFBlLnN0YXJ0TWFya1RvU3RlcHNNYXBbYV09cyxQZS5maW5hbE1hcmtUb1N0ZXBzTWFwW29dKXt2YXIgYz1QZS5maW5hbE1hcmtUb1N0ZXBzTWFwW29dW2FdfHxbXTtjLnB1c2gociksUGUuZmluYWxNYXJrVG9TdGVwc01hcFtvXVthXT1jfWVsc2UgUGUuZmluYWxNYXJrVG9TdGVwc01hcFtvXT0oKHQ9e30pW2FdPVtyXSx0KX0pKSl9fXJldHVybiBlLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbihlKXttKCkmJiFnW2VdJiYoZ1tlXT0hMCx1Lm1hcmsoXCJtYXJrX1wiLmNvbmNhdChlLFwiX3N0YXJ0XCIpKSl9LGUucHJvdG90eXBlLmVuZD1mdW5jdGlvbihlLHQsbil7aWYodm9pZCAwPT09dCYmKHQ9e30pLHZvaWQgMD09PW4mJihuPSEwKSxtKCkmJmdbZV0pe3UubWFyayhcIm1hcmtfXCIuY29uY2F0KGUsXCJfZW5kXCIpKSxkZWxldGUgZ1tlXTt2YXIgcj1mdW5jdGlvbihlKXt1Lm1lYXN1cmUoZSxcIm1hcmtfXCIuY29uY2F0KGUsXCJfc3RhcnRcIiksXCJtYXJrX1wiLmNvbmNhdChlLFwiX2VuZFwiKSk7dmFyIHQ9dS5nZXRFbnRyaWVzQnlOYW1lKGUpLnBvcCgpO3JldHVybiB0JiZcIm1lYXN1cmVcIj09PXQuZW50cnlUeXBlP3QuZHVyYXRpb246LTF9KGUpO24mJlIoZSxPKHIpLHQpfX0sZS5wcm90b3R5cGUuZW5kUGFpbnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7bi5lbmQoZSx0KX0pKX0sZS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oZSl7ZGVsZXRlIGdbZV0sdS5jbGVhck1hcmtzJiYodS5jbGVhck1hcmtzKFwibWFya19cIi5jb25jYXQoZSxcIl9zdGFydFwiKSksdS5jbGVhck1hcmtzKFwibWFya19cIi5jb25jYXQoZSxcIl9lbmRcIikpKX0sZS5wcm90b3R5cGUubWFya05UQlQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuc3RhcnQoXCJudGJ0XCIpLHkudmFsdWU9MCxjbGVhclRpbWVvdXQoRmUpLEZlPXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS5lbmQoXCJudGJ0XCIse30sITEpLHEoe2F0dHJpYnV0aW9uOnt9LG5hbWU6XCJOVEJUXCIscmF0aW5nOlUoXCJOVEJUXCIseS52YWx1ZSksdmFsdWU6eS52YWx1ZX0pLHkudmFsdWU9MH0pLDJlMyl9LGV9KCl9LDQyNjooZSx0KT0+e1widXNlIHN0cmljdFwiO1N5bWJvbC5mb3IoXCJyZWFjdC5lbGVtZW50XCIpLFN5bWJvbC5mb3IoXCJyZWFjdC5wb3J0YWxcIiksU3ltYm9sLmZvcihcInJlYWN0LmZyYWdtZW50XCIpLFN5bWJvbC5mb3IoXCJyZWFjdC5zdHJpY3RfbW9kZVwiKSxTeW1ib2wuZm9yKFwicmVhY3QucHJvZmlsZXJcIiksU3ltYm9sLmZvcihcInJlYWN0LnByb3ZpZGVyXCIpLFN5bWJvbC5mb3IoXCJyZWFjdC5jb250ZXh0XCIpLFN5bWJvbC5mb3IoXCJyZWFjdC5mb3J3YXJkX3JlZlwiKSxTeW1ib2wuZm9yKFwicmVhY3Quc3VzcGVuc2VcIiksU3ltYm9sLmZvcihcInJlYWN0Lm1lbW9cIiksU3ltYm9sLmZvcihcInJlYWN0LmxhenlcIiksU3ltYm9sLml0ZXJhdG9yO3ZhciBuPXtpc01vdW50ZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hMX0sZW5xdWV1ZUZvcmNlVXBkYXRlOmZ1bmN0aW9uKCl7fSxlbnF1ZXVlUmVwbGFjZVN0YXRlOmZ1bmN0aW9uKCl7fSxlbnF1ZXVlU2V0U3RhdGU6ZnVuY3Rpb24oKXt9fSxyPU9iamVjdC5hc3NpZ24saT17fTtmdW5jdGlvbiBhKGUsdCxyKXt0aGlzLnByb3BzPWUsdGhpcy5jb250ZXh0PXQsdGhpcy5yZWZzPWksdGhpcy51cGRhdGVyPXJ8fG59ZnVuY3Rpb24gbygpe31mdW5jdGlvbiBzKGUsdCxyKXt0aGlzLnByb3BzPWUsdGhpcy5jb250ZXh0PXQsdGhpcy5yZWZzPWksdGhpcy51cGRhdGVyPXJ8fG59YS5wcm90b3R5cGUuaXNSZWFjdENvbXBvbmVudD17fSxhLnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihlLHQpe2lmKFwib2JqZWN0XCIhPXR5cGVvZiBlJiZcImZ1bmN0aW9uXCIhPXR5cGVvZiBlJiZudWxsIT1lKXRocm93IEVycm9yKFwic2V0U3RhdGUoLi4uKTogdGFrZXMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcyB0byB1cGRhdGUgb3IgYSBmdW5jdGlvbiB3aGljaCByZXR1cm5zIGFuIG9iamVjdCBvZiBzdGF0ZSB2YXJpYWJsZXMuXCIpO3RoaXMudXBkYXRlci5lbnF1ZXVlU2V0U3RhdGUodGhpcyxlLHQsXCJzZXRTdGF0ZVwiKX0sYS5wcm90b3R5cGUuZm9yY2VVcGRhdGU9ZnVuY3Rpb24oZSl7dGhpcy51cGRhdGVyLmVucXVldWVGb3JjZVVwZGF0ZSh0aGlzLGUsXCJmb3JjZVVwZGF0ZVwiKX0sby5wcm90b3R5cGU9YS5wcm90b3R5cGU7dmFyIGM9cy5wcm90b3R5cGU9bmV3IG87Yy5jb25zdHJ1Y3Rvcj1zLHIoYyxhLnByb3RvdHlwZSksYy5pc1B1cmVSZWFjdENvbXBvbmVudD0hMDtBcnJheS5pc0FycmF5LE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIHU9e2N1cnJlbnQ6bnVsbH07dC51c2VDYWxsYmFjaz1mdW5jdGlvbihlLHQpe3JldHVybiB1LmN1cnJlbnQudXNlQ2FsbGJhY2soZSx0KX0sdC51c2VFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdS5jdXJyZW50LnVzZUVmZmVjdChlLHQpfSx0LnVzZVJlZj1mdW5jdGlvbihlKXtyZXR1cm4gdS5jdXJyZW50LnVzZVJlZihlKX19LDc4NDooZSx0LG4pPT57XCJ1c2Ugc3RyaWN0XCI7ZS5leHBvcnRzPW4oNDI2KX0sMzUzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjshZnVuY3Rpb24oaSxhKXtcInVzZSBzdHJpY3RcIjt2YXIgbz1cImZ1bmN0aW9uXCIscz1cInVuZGVmaW5lZFwiLGM9XCJvYmplY3RcIix1PVwic3RyaW5nXCIsbD1cIm1ham9yXCIsZD1cIm1vZGVsXCIscD1cIm5hbWVcIixtPVwidHlwZVwiLGY9XCJ2ZW5kb3JcIix2PVwidmVyc2lvblwiLGc9XCJhcmNoaXRlY3R1cmVcIixiPVwiY29uc29sZVwiLGg9XCJtb2JpbGVcIix3PVwidGFibGV0XCIseT1cInNtYXJ0dHZcIixUPVwid2VhcmFibGVcIixrPVwiZW1iZWRkZWRcIixfPVwiQW1hem9uXCIsUz1cIkFwcGxlXCIsRT1cIkFTVVNcIix4PVwiQmxhY2tCZXJyeVwiLE89XCJCcm93c2VyXCIsaj1cIkNocm9tZVwiLE49XCJGaXJlZm94XCIsST1cIkdvb2dsZVwiLFA9XCJIdWF3ZWlcIixNPVwiTEdcIixCPVwiTWljcm9zb2Z0XCIsQz1cIk1vdG9yb2xhXCIsRD1cIk9wZXJhXCIsQT1cIlNhbXN1bmdcIixMPVwiU2hhcnBcIixVPVwiU29ueVwiLFI9XCJYaWFvbWlcIixxPVwiWmVicmFcIixGPVwiRmFjZWJvb2tcIix6PVwiQ2hyb21pdW0gT1NcIixLPVwiTWFjIE9TXCIsJD1mdW5jdGlvbihlKXtmb3IodmFyIHQ9e30sbj0wO248ZS5sZW5ndGg7bisrKXRbZVtuXS50b1VwcGVyQ2FzZSgpXT1lW25dO3JldHVybiB0fSxRPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHR5cGVvZiBlPT09dSYmLTEhPT1XKHQpLmluZGV4T2YoVyhlKSl9LFc9ZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9Mb3dlckNhc2UoKX0sSD1mdW5jdGlvbihlLHQpe2lmKHR5cGVvZiBlPT09dSlyZXR1cm4gZT1lLnJlcGxhY2UoL15cXFxcc1xcXFxzKi8sXCJcIiksdHlwZW9mIHQ9PT1zP2U6ZS5zdWJzdHJpbmcoMCwzNTApfSxWPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuLHIsaSxzLHUsbCxkPTA7ZDx0Lmxlbmd0aCYmIXU7KXt2YXIgcD10W2RdLG09dFtkKzFdO2ZvcihuPXI9MDtuPHAubGVuZ3RoJiYhdSYmcFtuXTspaWYodT1wW24rK10uZXhlYyhlKSlmb3IoaT0wO2k8bS5sZW5ndGg7aSsrKWw9dVsrK3JdLHR5cGVvZihzPW1baV0pPT09YyYmcy5sZW5ndGg+MD8yPT09cy5sZW5ndGg/dHlwZW9mIHNbMV09PW8/dGhpc1tzWzBdXT1zWzFdLmNhbGwodGhpcyxsKTp0aGlzW3NbMF1dPXNbMV06Mz09PXMubGVuZ3RoP3R5cGVvZiBzWzFdIT09b3x8c1sxXS5leGVjJiZzWzFdLnRlc3Q/dGhpc1tzWzBdXT1sP2wucmVwbGFjZShzWzFdLHNbMl0pOmE6dGhpc1tzWzBdXT1sP3NbMV0uY2FsbCh0aGlzLGwsc1syXSk6YTo0PT09cy5sZW5ndGgmJih0aGlzW3NbMF1dPWw/c1szXS5jYWxsKHRoaXMsbC5yZXBsYWNlKHNbMV0sc1syXSkpOmEpOnRoaXNbc109bHx8YTtkKz0yfX0sSj1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbiBpbiB0KWlmKHR5cGVvZiB0W25dPT09YyYmdFtuXS5sZW5ndGg+MCl7Zm9yKHZhciByPTA7cjx0W25dLmxlbmd0aDtyKyspaWYoUSh0W25dW3JdLGUpKXJldHVyblwiP1wiPT09bj9hOm59ZWxzZSBpZihRKHRbbl0sZSkpcmV0dXJuXCI/XCI9PT1uP2E6bjtyZXR1cm4gZX0sWD17TUU6XCI0LjkwXCIsXCJOVCAzLjExXCI6XCJOVDMuNTFcIixcIk5UIDQuMFwiOlwiTlQ0LjBcIiwyZTM6XCJOVCA1LjBcIixYUDpbXCJOVCA1LjFcIixcIk5UIDUuMlwiXSxWaXN0YTpcIk5UIDYuMFwiLDc6XCJOVCA2LjFcIiw4OlwiTlQgNi4yXCIsOC4xOlwiTlQgNi4zXCIsMTA6W1wiTlQgNi40XCIsXCJOVCAxMC4wXCJdLFJUOlwiQVJNXCJ9LEc9e2Jyb3dzZXI6W1svXFxcXGIoPzpjcm1vfGNyaW9zKVxcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLFwiQ2hyb21lXCJdXSxbL2VkZyg/OmV8aW9zfGEpP1xcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLFwiRWRnZVwiXV0sWy8ob3BlcmEgbWluaSlcXFxcLyhbLVxcXFx3XFxcXC5dKykvaSwvKG9wZXJhIFttb2JpbGV0YWJdezMsNn0pXFxcXGIuK3ZlcnNpb25cXFxcLyhbLVxcXFx3XFxcXC5dKykvaSwvKG9wZXJhKSg/Oi4rdmVyc2lvblxcXFwvfFtcXFxcLyBdKykoW1xcXFx3XFxcXC5dKykvaV0sW3Asdl0sWy9vcGlvc1tcXFxcLyBdKyhbXFxcXHdcXFxcLl0rKS9pXSxbdixbcCxEK1wiIE1pbmlcIl1dLFsvXFxcXGJvcHJcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbdixbcCxEXV0sWy8oa2luZGxlKVxcXFwvKFtcXFxcd1xcXFwuXSspL2ksLyhsdW5hc2NhcGV8bWF4dGhvbnxuZXRmcm9udHxqYXNtaW5lfGJsYXplcilbXFxcXC8gXT8oW1xcXFx3XFxcXC5dKikvaSwvKGF2YW50IHxpZW1vYmlsZXxzbGltKSg/OmJyb3dzZXIpP1tcXFxcLyBdPyhbXFxcXHdcXFxcLl0qKS9pLC8oYmE/aWR1YnJvd3NlcilbXFxcXC8gXT8oW1xcXFx3XFxcXC5dKykvaSwvKD86bXN8XFxcXCgpKGllKSAoW1xcXFx3XFxcXC5dKykvaSwvKGZsb2NrfHJvY2ttZWx0fG1pZG9yaXxlcGlwaGFueXxzaWxrfHNreWZpcmV8Ym9sdHxpcm9ufHZpdmFsZGl8aXJpZGl1bXxwaGFudG9tanN8Ym93c2VyfHF1YXJrfHF1cHppbGxhfGZhbGtvbnxyZWtvbnF8cHVmZmlufGJyYXZlfHdoYWxlKD8hLituYXZlcil8cXFicm93c2VybGl0ZXxxcXxkdWNrZHVja2dvKVxcXFwvKFstXFxcXHdcXFxcLl0rKS9pLC8oaGV5dGFwfG92aSlicm93c2VyXFxcXC8oW1xcXFxkXFxcXC5dKykvaSwvKHdlaWJvKV9fKFtcXFxcZFxcXFwuXSspL2ldLFtwLHZdLFsvKD86XFxcXGJ1Yz8gP2Jyb3dzZXJ8KD86anVjLispdWN3ZWIpW1xcXFwvIF0/KFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLFwiVUNcIitPXV0sWy9taWNyb20uK1xcXFxicWJjb3JlXFxcXC8oW1xcXFx3XFxcXC5dKykvaSwvXFxcXGJxYmNvcmVcXFxcLyhbXFxcXHdcXFxcLl0rKS4rbWljcm9tL2ldLFt2LFtwLFwiV2VDaGF0KFdpbikgRGVza3RvcFwiXV0sWy9taWNyb21lc3NlbmdlclxcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLFwiV2VDaGF0XCJdXSxbL2tvbnF1ZXJvclxcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLFwiS29ucXVlcm9yXCJdXSxbL3RyaWRlbnQuK3J2WzogXShbXFxcXHdcXFxcLl17MSw5fSlcXFxcYi4rbGlrZSBnZWNrby9pXSxbdixbcCxcIklFXCJdXSxbL3lhKD86c2VhcmNoKT9icm93c2VyXFxcXC8oW1xcXFx3XFxcXC5dKykvaV0sW3YsW3AsXCJZYW5kZXhcIl1dLFsvKGF2YXN0fGF2ZylcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbW3AsLyguKykvLFwiJDEgU2VjdXJlIFwiK09dLHZdLFsvXFxcXGJmb2N1c1xcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLE4rXCIgRm9jdXNcIl1dLFsvXFxcXGJvcHRcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbdixbcCxEK1wiIFRvdWNoXCJdXSxbL2NvY19jb2NcXFxcdytcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbdixbcCxcIkNvYyBDb2NcIl1dLFsvZG9sZmluXFxcXC8oW1xcXFx3XFxcXC5dKykvaV0sW3YsW3AsXCJEb2xwaGluXCJdXSxbL2NvYXN0XFxcXC8oW1xcXFx3XFxcXC5dKykvaV0sW3YsW3AsRCtcIiBDb2FzdFwiXV0sWy9taXVpYnJvd3NlclxcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLFwiTUlVSSBcIitPXV0sWy9meGlvc1xcXFwvKFstXFxcXHdcXFxcLl0rKS9pXSxbdixbcCxOXV0sWy9cXFxcYnFpaHV8KHFpP2hvP28/fDM2MClicm93c2VyL2ldLFtbcCxcIjM2MCBcIitPXV0sWy8ob2N1bHVzfHNhbXN1bmd8c2FpbGZpc2h8aHVhd2VpKWJyb3dzZXJcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbW3AsLyguKykvLFwiJDEgXCIrT10sdl0sWy8oY29tb2RvX2RyYWdvbilcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbW3AsL18vZyxcIiBcIl0sdl0sWy8oZWxlY3Ryb24pXFxcXC8oW1xcXFx3XFxcXC5dKykgc2FmYXJpL2ksLyh0ZXNsYSkoPzogcXRjYXJicm93c2VyfFxcXFwvKDIwXFxcXGRcXFxcZFxcXFwuWy1cXFxcd1xcXFwuXSspKS9pLC9tPyhxcWJyb3dzZXJ8YmFpZHVib3hhcHB8MjM0NUV4cGxvcmVyKVtcXFxcLyBdPyhbXFxcXHdcXFxcLl0rKS9pXSxbcCx2XSxbLyhtZXRhc3IpW1xcXFwvIF0/KFtcXFxcd1xcXFwuXSspL2ksLyhsYmJyb3dzZXIpL2ksL1xcXFxbKGxpbmtlZGluKWFwcFxcXFxdL2ldLFtwXSxbLygoPzpmYmFuXFxcXC9mYmlvc3xmYl9pYWJcXFxcL2ZiNGEpKD8hLitmYmF2KXw7ZmJhdlxcXFwvKFtcXFxcd1xcXFwuXSspOykvaV0sW1twLEZdLHZdLFsvKGtha2FvKD86dGFsa3xzdG9yeSkpW1xcXFwvIF0oW1xcXFx3XFxcXC5dKykvaSwvKG5hdmVyKVxcXFwoLio/KFxcXFxkK1xcXFwuW1xcXFx3XFxcXC5dKykuKlxcXFwpL2ksL3NhZmFyaSAobGluZSlcXFxcLyhbXFxcXHdcXFxcLl0rKS9pLC9cXFxcYihsaW5lKVxcXFwvKFtcXFxcd1xcXFwuXSspXFxcXC9pYWIvaSwvKGNocm9taXVtfGluc3RhZ3JhbSlbXFxcXC8gXShbLVxcXFx3XFxcXC5dKykvaV0sW3Asdl0sWy9cXFxcYmdzYVxcXFwvKFtcXFxcd1xcXFwuXSspIC4qc2FmYXJpXFxcXC8vaV0sW3YsW3AsXCJHU0FcIl1dLFsvbXVzaWNhbF9seSg/Oi4rYXBwXz92ZXJzaW9uXFxcXC98XykoW1xcXFx3XFxcXC5dKykvaV0sW3YsW3AsXCJUaWtUb2tcIl1dLFsvaGVhZGxlc3NjaHJvbWUoPzpcXFxcLyhbXFxcXHdcXFxcLl0rKXwgKS9pXSxbdixbcCxqK1wiIEhlYWRsZXNzXCJdXSxbLyB3dlxcXFwpLisoY2hyb21lKVxcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFtbcCxqK1wiIFdlYlZpZXdcIl0sdl0sWy9kcm9pZC4rIHZlcnNpb25cXFxcLyhbXFxcXHdcXFxcLl0rKVxcXFxiLisoPzptb2JpbGUgc2FmYXJpfHNhZmFyaSkvaV0sW3YsW3AsXCJBbmRyb2lkIFwiK09dXSxbLyhjaHJvbWV8b21uaXdlYnxhcm9yYXxbdGl6ZW5va2FdezV9ID9icm93c2VyKVxcXFwvdj8oW1xcXFx3XFxcXC5dKykvaV0sW3Asdl0sWy92ZXJzaW9uXFxcXC8oW1xcXFx3XFxcXC5cXFxcLF0rKSAuKm1vYmlsZVxcXFwvXFxcXHcrIChzYWZhcmkpL2ldLFt2LFtwLFwiTW9iaWxlIFNhZmFyaVwiXV0sWy92ZXJzaW9uXFxcXC8oW1xcXFx3KFxcXFwufFxcXFwsKV0rKSAuKihtb2JpbGUgP3NhZmFyaXxzYWZhcmkpL2ldLFt2LHBdLFsvd2Via2l0Lis/KG1vYmlsZSA/c2FmYXJpfHNhZmFyaSkoXFxcXC9bXFxcXHdcXFxcLl0rKS9pXSxbcCxbdixKLHtcIjEuMFwiOlwiLzhcIiwxLjI6XCIvMVwiLDEuMzpcIi8zXCIsXCIyLjBcIjpcIi80MTJcIixcIjIuMC4yXCI6XCIvNDE2XCIsXCIyLjAuM1wiOlwiLzQxN1wiLFwiMi4wLjRcIjpcIi80MTlcIixcIj9cIjpcIi9cIn1dXSxbLyh3ZWJraXR8a2h0bWwpXFxcXC8oW1xcXFx3XFxcXC5dKykvaV0sW3Asdl0sWy8obmF2aWdhdG9yfG5ldHNjYXBlXFxcXGQ/KVxcXFwvKFstXFxcXHdcXFxcLl0rKS9pXSxbW3AsXCJOZXRzY2FwZVwiXSx2XSxbL21vYmlsZSB2cjsgcnY6KFtcXFxcd1xcXFwuXSspXFxcXCkuK2ZpcmVmb3gvaV0sW3YsW3AsTitcIiBSZWFsaXR5XCJdXSxbL2VraW9oZi4rKGZsb3cpXFxcXC8oW1xcXFx3XFxcXC5dKykvaSwvKHN3aWZ0Zm94KS9pLC8oaWNlZHJhZ29ufGljZXdlYXNlbHxjYW1pbm98Y2hpbWVyYXxmZW5uZWN8bWFlbW8gYnJvd3NlcnxtaW5pbW98Y29ua2Vyb3J8a2xhcilbXFxcXC8gXT8oW1xcXFx3XFxcXC5cXFxcK10rKS9pLC8oc2VhbW9ua2V5fGstbWVsZW9ufGljZWNhdHxpY2VhcGV8ZmlyZWJpcmR8cGhvZW5peHxwYWxlbW9vbnxiYXNpbGlza3x3YXRlcmZveClcXFxcLyhbLVxcXFx3XFxcXC5dKykkL2ksLyhmaXJlZm94KVxcXFwvKFtcXFxcd1xcXFwuXSspL2ksLyhtb3ppbGxhKVxcXFwvKFtcXFxcd1xcXFwuXSspIC4rcnZcXFxcOi4rZ2Vja29cXFxcL1xcXFxkKy9pLC8ocG9sYXJpc3xseW54fGRpbGxvfGljYWJ8ZG9yaXN8YW1heWF8dzNtfG5ldHN1cmZ8c2xlaXBuaXJ8b2JpZ298bW9zYWljfCg/OmdvfGljZXx1cClbXFxcXC4gXT9icm93c2VyKVstXFxcXC8gXT92PyhbXFxcXHdcXFxcLl0rKS9pLC8obGlua3MpIFxcXFwoKFtcXFxcd1xcXFwuXSspL2ksL3BhbmFzb25pYzsodmllcmEpL2ldLFtwLHZdLFsvKGNvYmFsdClcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbcCxbdiwvbWFzdGVyLnxsdHMuLyxcIlwiXV1dLGNwdTpbWy8oPzooYW1kfHgoPzooPzo4Nnw2NClbLV9dKT98d293fHdpbik2NClbO1xcXFwpXS9pXSxbW2csXCJhbWQ2NFwiXV0sWy8oaWEzMig/PTspKS9pXSxbW2csV11dLFsvKCg/OmlbMzQ2XXx4KTg2KVs7XFxcXCldL2ldLFtbZyxcImlhMzJcIl1dLFsvXFxcXGIoYWFyY2g2NHxhcm0odj84ZT9sP3xfPzY0KSlcXFxcYi9pXSxbW2csXCJhcm02NFwiXV0sWy9cXFxcYihhcm0oPzp2WzY3XSk/aHQ/bj9bZmxdcD8pXFxcXGIvaV0sW1tnLFwiYXJtaGZcIl1dLFsvd2luZG93cyAoY2V8bW9iaWxlKTsgcHBjOy9pXSxbW2csXCJhcm1cIl1dLFsvKCg/OnBwY3xwb3dlcnBjKSg/OjY0KT8pKD86IG1hY3w7fFxcXFwpKS9pXSxbW2csL293ZXIvLFwiXCIsV11dLFsvKHN1bjRcXFxcdylbO1xcXFwpXS9pXSxbW2csXCJzcGFyY1wiXV0sWy8oKD86YXZyMzJ8aWE2NCg/PTspKXw2OGsoPz1cXFxcKSl8XFxcXGJhcm0oPz12KD86WzEtN118WzUtN10xKWw/fDt8ZWFiaSl8KD89YXRtZWwgKWF2cnwoPzppcml4fG1pcHN8c3BhcmMpKD86NjQpP1xcXFxifHBhLXJpc2MpL2ldLFtbZyxXXV1dLGRldmljZTpbWy9cXFxcYihzY2gtaVs4OV0wXFxcXGR8c2h3LW0zODBzfHNtLVtwdHhdXFxcXHd7Miw0fXxndC1bcG5dXFxcXGR7Miw0fXxzZ2gtdDhbNTZdOXxuZXh1cyAxMCkvaV0sW2QsW2YsQV0sW20sd11dLFsvXFxcXGIoKD86c1tjZ3BdaHxndHxzbSktXFxcXHcrfHNjW2ctXT9bXFxcXGRdK2E/fGdhbGF4eSBuZXh1cykvaSwvc2Ftc3VuZ1stIF0oWy1cXFxcd10rKS9pLC9zZWMtKHNnaFxcXFx3KykvaV0sW2QsW2YsQV0sW20saF1dLFsvKD86XFxcXC98XFxcXCgpKGlwKD86aG9uZXxvZClbXFxcXHcsIF0qKSg/OlxcXFwvfDspL2ldLFtkLFtmLFNdLFttLGhdXSxbL1xcXFwoKGlwYWQpO1stXFxcXHdcXFxcKSw7IF0rYXBwbGUvaSwvYXBwbGVjb3JlbWVkaWFcXFxcL1tcXFxcd1xcXFwuXSsgXFxcXCgoaXBhZCkvaSwvXFxcXGIoaXBhZClcXFxcZFxcXFxkPyxcXFxcZFxcXFxkP1s7XFxcXF1dLitpb3MvaV0sW2QsW2YsU10sW20sd11dLFsvKG1hY2ludG9zaCk7L2ldLFtkLFtmLFNdXSxbL1xcXFxiKHNoLT9bYWx0dnpdP1xcXFxkXFxcXGRbYS1la21dPykvaV0sW2QsW2YsTF0sW20saF1dLFsvXFxcXGIoKD86YWdbcnNdWzIzXT98YmFoMj98c2h0P3xidHYpLWE/W2x3XVxcXFxkezJ9KVxcXFxiKD8hLitkXFxcXC9zKS9pXSxbZCxbZixQXSxbbSx3XV0sWy8oPzpodWF3ZWl8aG9ub3IpKFstXFxcXHcgXSspWztcXFxcKV0vaSwvXFxcXGIobmV4dXMgNnB8XFxcXHd7Miw0fWU/LVthdHVdP1tsbl1bXFxcXGR4XVswMTIzNTljXVthZG5dPylcXFxcYig/IS4rZFxcXFwvcykvaV0sW2QsW2YsUF0sW20saF1dLFsvXFxcXGIocG9jb1tcXFxcdyBdKykoPzogYnVpfFxcXFwpKS9pLC9cXFxcYjsgKFxcXFx3KykgYnVpbGRcXFxcL2htXFxcXDEvaSwvXFxcXGIoaG1bLV8gXT9ub3RlP1tfIF0/KD86XFxcXGRcXFxcdyk/KSBidWkvaSwvXFxcXGIocmVkbWlbXFxcXC1fIF0/KD86bm90ZXxrKT9bXFxcXHdfIF0rKSg/OiBidWl8XFxcXCkpL2ksL1xcXFxiKG1pWy1fIF0/KD86YVxcXFxkfG9uZXxvbmVbXyBdcGx1c3xub3RlIGx0ZXxtYXh8Y2MpP1tfIF0/KD86XFxcXGQ/XFxcXHc/KVtfIF0/KD86cGx1c3xzZXxsaXRlKT8pKD86IGJ1aXxcXFxcKSkvaV0sW1tkLC9fL2csXCIgXCJdLFtmLFJdLFttLGhdXSxbL1xcXFxiKG1pWy1fIF0/KD86cGFkKSg/OltcXFxcd18gXSspKSg/OiBidWl8XFxcXCkpL2ldLFtbZCwvXy9nLFwiIFwiXSxbZixSXSxbbSx3XV0sWy87IChcXFxcdyspIGJ1aS4rIG9wcG8vaSwvXFxcXGIoY3BoWzEyXVxcXFxkezN9fHAoPzphZnxjW2FsXXxkXFxcXHd8ZVthcl0pW210XVxcXFxkMHx4OTAwN3xhMTAxb3ApXFxcXGIvaV0sW2QsW2YsXCJPUFBPXCJdLFttLGhdXSxbL3Zpdm8gKFxcXFx3KykoPzogYnVpfFxcXFwpKS9pLC9cXFxcYih2WzEyXVxcXFxkezN9XFxcXHc/W2F0XSkoPzogYnVpfDspL2ldLFtkLFtmLFwiVml2b1wiXSxbbSxoXV0sWy9cXFxcYihybXhbMTJdXFxcXGR7M30pKD86IGJ1aXw7fFxcXFwpKS9pXSxbZCxbZixcIlJlYWxtZVwiXSxbbSxoXV0sWy9cXFxcYihtaWxlc3RvbmV8ZHJvaWQoPzpbMi00eF18ICg/OmJpb25pY3x4Mnxwcm98cmF6cikpPzo/KCA0Zyk/KVxcXFxiW1xcXFx3IF0rYnVpbGRcXFxcLy9pLC9cXFxcYm1vdCg/Om9yb2xhKT9bLSBdKFxcXFx3KikvaSwvKCg/Om1vdG9bXFxcXHdcXFxcKFxcXFwpIF0rfHh0XFxcXGR7Myw0fXxuZXh1cyA2KSg/PSBidWl8XFxcXCkpKS9pXSxbZCxbZixDXSxbbSxoXV0sWy9cXFxcYihtejYwXFxcXGR8eG9vbVsyIF17MCwyfSkgYnVpbGRcXFxcLy9pXSxbZCxbZixDXSxbbSx3XV0sWy8oKD89bGcpP1t2bF1rXFxcXC0/XFxcXGR7M30pIGJ1aXwgM1xcXFwuWy1cXFxcdzsgXXsxMH1sZz8tKFswNmN2OV17Myw0fSkvaV0sW2QsW2YsTV0sW20sd11dLFsvKGxtKD86LT9mMTAwW252XT98LVtcXFxcd1xcXFwuXSspKD89IGJ1aXxcXFxcKSl8bmV4dXMgWzQ1XSkvaSwvXFxcXGJsZ1stZTtcXFxcLyBdKygoPyFicm93c2VyfG5ldGNhc3R8YW5kcm9pZCB0dilcXFxcdyspL2ksL1xcXFxibGctPyhbXFxcXGRcXFxcd10rKSBidWkvaV0sW2QsW2YsTV0sW20saF1dLFsvKGlkZWF0YWJbLVxcXFx3IF0rKS9pLC9sZW5vdm8gPyhzWzU2XTAwMFstXFxcXHddK3x0YWIoPzpbXFxcXHcgXSspfHl0Wy1cXFxcZFxcXFx3XXs2fXx0YlstXFxcXGRcXFxcd117Nn0pL2ldLFtkLFtmLFwiTGVub3ZvXCJdLFttLHddXSxbLyg/Om1hZW1vfG5va2lhKS4qKG45MDB8bHVtaWEgXFxcXGQrKS9pLC9ub2tpYVstXyBdPyhbLVxcXFx3XFxcXC5dKikvaV0sW1tkLC9fL2csXCIgXCJdLFtmLFwiTm9raWFcIl0sW20saF1dLFsvKHBpeGVsIGMpXFxcXGIvaV0sW2QsW2YsSV0sW20sd11dLFsvZHJvaWQuKzsgKHBpeGVsW1xcXFxkYXhsIF17MCw2fSkoPzogYnVpfFxcXFwpKS9pXSxbZCxbZixJXSxbbSxoXV0sWy9kcm9pZC4rIChhP1xcXFxkWzAtMl17Mn1zb3xbYy1nXVxcXFxkezR9fHNvWy1nbF1cXFxcdyt8eHEtYVxcXFx3WzQtN11bMTJdKSg/PSBidWl8XFxcXCkuK2Nocm9tZVxcXFwvKD8hWzEtNl17MCwxfVxcXFxkXFxcXC4pKS9pXSxbZCxbZixVXSxbbSxoXV0sWy9zb255IHRhYmxldCBbcHNdL2ksL1xcXFxiKD86c29ueSk/c2dwXFxcXHcrKD86IGJ1aXxcXFxcKSkvaV0sW1tkLFwiWHBlcmlhIFRhYmxldFwiXSxbZixVXSxbbSx3XV0sWy8gKGtiMjAwNXxpbjIwWzEyXTV8YmUyMFsxMl1bNTldKVxcXFxiL2ksLyg/Om9uZSk/KD86cGx1cyk/IChhXFxcXGQwXFxcXGRcXFxcZCkoPzogYnxcXFxcKSkvaV0sW2QsW2YsXCJPbmVQbHVzXCJdLFttLGhdXSxbLyhhbGV4YSl3ZWJtL2ksLyhrZlthLXpdezJ9d2l8YWVvW2Mtcl17Mn0pKCBidWl8XFxcXCkpL2ksLyhrZlthLXpdKykoIGJ1aXxcXFxcKSkuK3NpbGtcXFxcLy9pXSxbZCxbZixfXSxbbSx3XV0sWy8oKD86c2R8a2YpWzAzNDloaWpvcnN0dXddKykoIGJ1aXxcXFxcKSkuK3NpbGtcXFxcLy9pXSxbW2QsLyguKykvZyxcIkZpcmUgUGhvbmUgJDFcIl0sW2YsX10sW20saF1dLFsvKHBsYXlib29rKTtbLVxcXFx3XFxcXCksOyBdKyhyaW0pL2ldLFtkLGYsW20sd11dLFsvXFxcXGIoKD86YmJbYS1mXXxzdFtodl0pMTAwLVxcXFxkKS9pLC9cXFxcKGJiMTA7IChcXFxcdyspL2ldLFtkLFtmLHhdLFttLGhdXSxbLyg/OlxcXFxifGFzdXNfKSh0cmFuc2ZvW3ByaW1lIF17NCwxMH0gXFxcXHcrfGVlZXBjfHNsaWRlciBcXFxcdyt8bmV4dXMgN3xwYWRmb25lfHAwMFtjal0pL2ldLFtkLFtmLEVdLFttLHddXSxbLyAoeltiZXNdNlswMjddWzAxMl1ba21dW2xzXXx6ZW5mb25lIFxcXFxkXFxcXHc/KVxcXFxiL2ldLFtkLFtmLEVdLFttLGhdXSxbLyhuZXh1cyA5KS9pXSxbZCxbZixcIkhUQ1wiXSxbbSx3XV0sWy8oaHRjKVstO18gXXsxLDJ9KFtcXFxcdyBdKyg/PVxcXFwpfCBidWkpfFxcXFx3KykvaSwvKHp0ZSlbLSBdKFtcXFxcdyBdKz8pKD86IGJ1aXxcXFxcL3xcXFxcKSkvaSwvKGFsY2F0ZWx8Z2Vla3NwaG9uZXxuZXhpYW58cGFuYXNvbmljKD8hKD86O3xcXFxcLikpfHNvbnkoPyEtYnJhKSlbLV8gXT8oWy1cXFxcd10qKS9pXSxbZixbZCwvXy9nLFwiIFwiXSxbbSxoXV0sWy9kcm9pZC4rOyAoW2FiXVsxLTddLT9bMDE3OGFdXFxcXGRcXFxcZD8pL2ldLFtkLFtmLFwiQWNlclwiXSxbbSx3XV0sWy9kcm9pZC4rOyAobVsxLTVdIG5vdGUpIGJ1aS9pLC9cXFxcYm16LShbLVxcXFx3XXsyLH0pL2ldLFtkLFtmLFwiTWVpenVcIl0sW20saF1dLFsvKGJsYWNrYmVycnl8YmVucXxwYWxtKD89XFxcXC0pfHNvbnllcmljc3NvbnxhY2VyfGFzdXN8ZGVsbHxtZWl6dXxtb3Rvcm9sYXxwb2x5dHJvbilbLV8gXT8oWy1cXFxcd10qKS9pLC8oaHApIChbXFxcXHcgXStcXFxcdykvaSwvKGFzdXMpLT8oXFxcXHcrKS9pLC8obWljcm9zb2Z0KTsgKGx1bWlhW1xcXFx3IF0rKS9pLC8obGVub3ZvKVstXyBdPyhbLVxcXFx3XSspL2ksLyhqb2xsYSkvaSwvKG9wcG8pID8oW1xcXFx3IF0rKSBidWkvaV0sW2YsZCxbbSxoXV0sWy8oa29ibylcXFxccyhlcmVhZGVyfHRvdWNoKS9pLC8oYXJjaG9zKSAoZ2FtZXBhZDI/KS9pLC8oaHApLisodG91Y2hwYWQoPyEuK3RhYmxldCl8dGFibGV0KS9pLC8oa2luZGxlKVxcXFwvKFtcXFxcd1xcXFwuXSspL2ksLyhub29rKVtcXFxcdyBdK2J1aWxkXFxcXC8oXFxcXHcrKS9pLC8oZGVsbCkgKHN0cmVhW2twclxcXFxkIF0qW1xcXFxka29dKS9pLC8obGVbLSBdK3BhbilbLSBdKyhcXFxcd3sxLDl9KSBidWkvaSwvKHRyaW5pdHkpWy0gXSoodFxcXFxkezN9KSBidWkvaSwvKGdpZ2FzZXQpWy0gXSsocVxcXFx3ezEsOX0pIGJ1aS9pLC8odm9kYWZvbmUpIChbXFxcXHcgXSspKD86XFxcXCl8IGJ1aSkvaV0sW2YsZCxbbSx3XV0sWy8oc3VyZmFjZSBkdW8pL2ldLFtkLFtmLEJdLFttLHddXSxbL2Ryb2lkIFtcXFxcZFxcXFwuXSs7IChmcFxcXFxkdT8pKD86IGJ8XFxcXCkpL2ldLFtkLFtmLFwiRmFpcnBob25lXCJdLFttLGhdXSxbLyh1MzA0YWEpL2ldLFtkLFtmLFwiQVQmVFwiXSxbbSxoXV0sWy9cXFxcYnNpZS0oXFxcXHcqKS9pXSxbZCxbZixcIlNpZW1lbnNcIl0sW20saF1dLFsvXFxcXGIocmN0XFxcXHcrKSBiL2ldLFtkLFtmLFwiUkNBXCJdLFttLHddXSxbL1xcXFxiKHZlbnVlW1xcXFxkIF17Miw3fSkgYi9pXSxbZCxbZixcIkRlbGxcIl0sW20sd11dLFsvXFxcXGIocSg/Om12fHRhKVxcXFx3KykgYi9pXSxbZCxbZixcIlZlcml6b25cIl0sW20sd11dLFsvXFxcXGIoPzpiYXJuZXNbJiBdK25vYmxlIHxibltydF0pKFtcXFxcd1xcXFwrIF0qKSBiL2ldLFtkLFtmLFwiQmFybmVzICYgTm9ibGVcIl0sW20sd11dLFsvXFxcXGIodG1cXFxcZHszfVxcXFx3KykgYi9pXSxbZCxbZixcIk51VmlzaW9uXCJdLFttLHddXSxbL1xcXFxiKGs4OCkgYi9pXSxbZCxbZixcIlpURVwiXSxbbSx3XV0sWy9cXFxcYihueFxcXFxkezN9aikgYi9pXSxbZCxbZixcIlpURVwiXSxbbSxoXV0sWy9cXFxcYihnZW5cXFxcZHszfSkgYi4rNDloL2ldLFtkLFtmLFwiU3dpc3NcIl0sW20saF1dLFsvXFxcXGIoenVyXFxcXGR7M30pIGIvaV0sW2QsW2YsXCJTd2lzc1wiXSxbbSx3XV0sWy9cXFxcYigoemVraSk/dGIuKlxcXFxiKSBiL2ldLFtkLFtmLFwiWmVraVwiXSxbbSx3XV0sWy9cXFxcYihbeXJdXFxcXGR7Mn0pIGIvaSwvXFxcXGIoZHJhZ29uWy0gXSt0b3VjaCB8ZHQpKFxcXFx3ezV9KSBiL2ldLFtbZixcIkRyYWdvbiBUb3VjaFwiXSxkLFttLHddXSxbL1xcXFxiKG5zLT9cXFxcd3swLDl9KSBiL2ldLFtkLFtmLFwiSW5zaWduaWFcIl0sW20sd11dLFsvXFxcXGIoKG54YXxuZXh0KS0/XFxcXHd7MCw5fSkgYi9pXSxbZCxbZixcIk5leHRCb29rXCJdLFttLHddXSxbL1xcXFxiKHh0cmVtZVxcXFxfKT8odigxWzA0NV18MlswMTVdfFszNDY5XTB8N1swNV0pKSBiL2ldLFtbZixcIlZvaWNlXCJdLGQsW20saF1dLFsvXFxcXGIobHZ0ZWxcXFxcLSk/KHYxWzEyXSkgYi9pXSxbW2YsXCJMdlRlbFwiXSxkLFttLGhdXSxbL1xcXFxiKHBoLTEpIC9pXSxbZCxbZixcIkVzc2VudGlhbFwiXSxbbSxoXV0sWy9cXFxcYih2KDEwMG1kfDcwMG5hfDcwMTF8OTE3ZykuKlxcXFxiKSBiL2ldLFtkLFtmLFwiRW52aXplblwiXSxbbSx3XV0sWy9cXFxcYih0cmlvWy1cXFxcd1xcXFwuIF0rKSBiL2ldLFtkLFtmLFwiTWFjaFNwZWVkXCJdLFttLHddXSxbL1xcXFxidHVfKDE0OTEpIGIvaV0sW2QsW2YsXCJSb3RvclwiXSxbbSx3XV0sWy8oc2hpZWxkW1xcXFx3IF0rKSBiL2ldLFtkLFtmLFwiTnZpZGlhXCJdLFttLHddXSxbLyhzcHJpbnQpIChcXFxcdyspL2ldLFtmLGQsW20saF1dLFsvKGtpblxcXFwuW29uZXR3XXszfSkvaV0sW1tkLC9cXFxcLi9nLFwiIFwiXSxbZixCXSxbbSxoXV0sWy9kcm9pZC4rOyAoY2M2NjY2P3xldDVbMTZdfG1jWzIzOV1bMjNdeD98dmM4WzAzXXg/KVxcXFwpL2ldLFtkLFtmLHFdLFttLHddXSxbL2Ryb2lkLis7IChlYzMwfHBzMjB8dGNbMi04XVxcXFxkW2t4XSlcXFxcKS9pXSxbZCxbZixxXSxbbSxoXV0sWy9zbWFydC10di4rKHNhbXN1bmcpL2ldLFtmLFttLHldXSxbL2hiYnR2LittYXBsZTsoXFxcXGQrKS9pXSxbW2QsL14vLFwiU21hcnRUVlwiXSxbZixBXSxbbSx5XV0sWy8obnV4OyBuZXRjYXN0LitzbWFydHR2fGxnIChuZXRjYXN0XFxcXC50di0yMDFcXFxcZHxhbmRyb2lkIHR2KSkvaV0sW1tmLE1dLFttLHldXSxbLyhhcHBsZSkgP3R2L2ldLFtmLFtkLFMrXCIgVFZcIl0sW20seV1dLFsvY3JrZXkvaV0sW1tkLGorXCJjYXN0XCJdLFtmLEldLFttLHldXSxbL2Ryb2lkLithZnQoXFxcXHcpKCBidWl8XFxcXCkpL2ldLFtkLFtmLF9dLFttLHldXSxbL1xcXFwoZHR2W1xcXFwpO10uKyhhcXVvcykvaSwvKGFxdW9zLXR2W1xcXFx3IF0rKVxcXFwpL2ldLFtkLFtmLExdLFttLHldXSxbLyhicmF2aWFbXFxcXHcgXSspKCBidWl8XFxcXCkpL2ldLFtkLFtmLFVdLFttLHldXSxbLyhtaXR2LVxcXFx3ezV9KSBidWkvaV0sW2QsW2YsUl0sW20seV1dLFsvSGJidHYuKih0ZWNobmlzYXQpICguKik7L2ldLFtmLGQsW20seV1dLFsvXFxcXGIocm9rdSlbXFxcXGR4XSpbXFxcXClcXFxcL10oKD86ZHZwLSk/W1xcXFxkXFxcXC5dKikvaSwvaGJidHZcXFxcL1xcXFxkK1xcXFwuXFxcXGQrXFxcXC5cXFxcZCsgK1xcXFwoW1xcXFx3XFxcXCsgXSo7ICooW1xcXFx3XFxcXGRdW147XSopOyhbXjtdKikvaV0sW1tmLEhdLFtkLEhdLFttLHldXSxbL1xcXFxiKGFuZHJvaWQgdHZ8c21hcnRbLSBdP3R2fG9wZXJhIHR2fHR2OyBydjopXFxcXGIvaV0sW1ttLHldXSxbLyhvdXlhKS9pLC8obmludGVuZG8pIChbd2lkczN1dGNoXSspL2ldLFtmLGQsW20sYl1dLFsvZHJvaWQuKzsgKHNoaWVsZCkgYnVpL2ldLFtkLFtmLFwiTnZpZGlhXCJdLFttLGJdXSxbLyhwbGF5c3RhdGlvbiBbMzQ1cG9ydGFibGV2aV0rKS9pXSxbZCxbZixVXSxbbSxiXV0sWy9cXFxcYih4Ym94KD86IG9uZSk/KD8hOyB4Ym94KSlbXFxcXCk7IF0vaV0sW2QsW2YsQl0sW20sYl1dLFsvKChwZWJibGUpKWFwcC9pXSxbZixkLFttLFRdXSxbLyh3YXRjaCkoPzogP29zWyxcXFxcL118XFxcXGQsXFxcXGRcXFxcLylbXFxcXGRcXFxcLl0rL2ldLFtkLFtmLFNdLFttLFRdXSxbL2Ryb2lkLis7IChnbGFzcykgXFxcXGQvaV0sW2QsW2YsSV0sW20sVF1dLFsvZHJvaWQuKzsgKHd0NjM/MHsyLDN9KVxcXFwpL2ldLFtkLFtmLHFdLFttLFRdXSxbLyhxdWVzdCggMnwgcHJvKT8pL2ldLFtkLFtmLEZdLFttLFRdXSxbLyh0ZXNsYSkoPzogcXRjYXJicm93c2VyfFxcXFwvWy1cXFxcd1xcXFwuXSspL2ldLFtmLFttLGtdXSxbLyhhZW9iYylcXFxcYi9pXSxbZCxbZixfXSxbbSxrXV0sWy9kcm9pZCAuKz87IChbXjtdKz8pKD86IGJ1aXxcXFxcKSBhcHBsZXcpLis/IG1vYmlsZSBzYWZhcmkvaV0sW2QsW20saF1dLFsvZHJvaWQgLis/OyAoW147XSs/KSg/OiBidWl8XFxcXCkgYXBwbGV3KS4rPyg/ISBtb2JpbGUpIHNhZmFyaS9pXSxbZCxbbSx3XV0sWy9cXFxcYigodGFibGV0fHRhYilbO1xcXFwvXXxmb2N1c1xcXFwvXFxcXGQoPyEuK21vYmlsZSkpL2ldLFtbbSx3XV0sWy8ocGhvbmV8bW9iaWxlKD86WztcXFxcL118IFsgXFxcXHdcXFxcL1xcXFwuXSpzYWZhcmkpfHBkYSg/PS4rd2luZG93cyBjZSkpL2ldLFtbbSxoXV0sWy8oYW5kcm9pZFstXFxcXHdcXFxcLiBdezAsOX0pOy4rYnVpbC9pXSxbZCxbZixcIkdlbmVyaWNcIl1dXSxlbmdpbmU6W1svd2luZG93cy4rIGVkZ2VcXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbdixbcCxcIkVkZ2VIVE1MXCJdXSxbL3dlYmtpdFxcXFwvNTM3XFxcXC4zNi4rY2hyb21lXFxcXC8oPyEyNykoW1xcXFx3XFxcXC5dKykvaV0sW3YsW3AsXCJCbGlua1wiXV0sWy8ocHJlc3RvKVxcXFwvKFtcXFxcd1xcXFwuXSspL2ksLyh3ZWJraXR8dHJpZGVudHxuZXRmcm9udHxuZXRzdXJmfGFtYXlhfGx5bnh8dzNtfGdvYW5uYSlcXFxcLyhbXFxcXHdcXFxcLl0rKS9pLC9la2lvaChmbG93KVxcXFwvKFtcXFxcd1xcXFwuXSspL2ksLyhraHRtbHx0YXNtYW58bGlua3MpW1xcXFwvIF1cXFxcKD8oW1xcXFx3XFxcXC5dKykvaSwvKGljYWIpW1xcXFwvIF0oWzIzXVxcXFwuW1xcXFxkXFxcXC5dKykvaSwvXFxcXGIobGlid2ViKS9pXSxbcCx2XSxbL3J2XFxcXDooW1xcXFx3XFxcXC5dezEsOX0pXFxcXGIuKyhnZWNrbykvaV0sW3YscF1dLG9zOltbL21pY3Jvc29mdCAod2luZG93cykgKHZpc3RhfHhwKS9pXSxbcCx2XSxbLyh3aW5kb3dzKSBudCA2XFxcXC4yOyAoYXJtKS9pLC8od2luZG93cyAoPzpwaG9uZSg/OiBvcyk/fG1vYmlsZSkpW1xcXFwvIF0/KFtcXFxcZFxcXFwuXFxcXHcgXSopL2ksLyh3aW5kb3dzKVtcXFxcLyBdPyhbbnRjZVxcXFxkXFxcXC4gXStcXFxcdykoPyEuK3hib3gpL2ldLFtwLFt2LEosWF1dLFsvKHdpbig/PTN8OXxuKXx3aW4gOXggKShbbnRcXFxcZFxcXFwuXSspL2ldLFtbcCxcIldpbmRvd3NcIl0sW3YsSixYXV0sWy9pcFtob25lYWRdezIsNH1cXFxcYig/Oi4qb3MgKFtcXFxcd10rKSBsaWtlIG1hY3w7IG9wZXJhKS9pLC9pb3M7ZmJzdlxcXFwvKFtcXFxcZFxcXFwuXSspL2ksL2NmbmV0d29ya1xcXFwvLitkYXJ3aW4vaV0sW1t2LC9fL2csXCIuXCJdLFtwLFwiaU9TXCJdXSxbLyhtYWMgb3MgeCkgPyhbXFxcXHdcXFxcLiBdKikvaSwvKG1hY2ludG9zaHxtYWNfcG93ZXJwY1xcXFxiKSg/IS4raGFpa3UpL2ldLFtbcCxLXSxbdiwvXy9nLFwiLlwiXV0sWy9kcm9pZCAoW1xcXFx3XFxcXC5dKylcXFxcYi4rKGFuZHJvaWRbLSBdeDg2fGhhcm1vbnlvcykvaV0sW3YscF0sWy8oYW5kcm9pZHx3ZWJvc3xxbnh8YmFkYXxyaW0gdGFibGV0IG9zfG1hZW1vfG1lZWdvfHNhaWxmaXNoKVstXFxcXC8gXT8oW1xcXFx3XFxcXC5dKikvaSwvKGJsYWNrYmVycnkpXFxcXHcqXFxcXC8oW1xcXFx3XFxcXC5dKikvaSwvKHRpemVufGthaW9zKVtcXFxcLyBdKFtcXFxcd1xcXFwuXSspL2ksL1xcXFwoKHNlcmllczQwKTsvaV0sW3Asdl0sWy9cXFxcKGJiKDEwKTsvaV0sW3YsW3AseF1dLFsvKD86c3ltYmlhbiA/b3N8c3ltYm9zfHM2MCg/PTspfHNlcmllczYwKVstXFxcXC8gXT8oW1xcXFx3XFxcXC5dKikvaV0sW3YsW3AsXCJTeW1iaWFuXCJdXSxbL21vemlsbGFcXFxcL1tcXFxcZFxcXFwuXSsgXFxcXCgoPzptb2JpbGV8dGFibGV0fHR2fG1vYmlsZTsgW1xcXFx3IF0rKTsgcnY6LisgZ2Vja29cXFxcLyhbXFxcXHdcXFxcLl0rKS9pXSxbdixbcCxOK1wiIE9TXCJdXSxbL3dlYjBzOy4rcnQodHYpL2ksL1xcXFxiKD86aHApP3dvcyg/OmJyb3dzZXIpP1xcXFwvKFtcXFxcd1xcXFwuXSspL2ldLFt2LFtwLFwid2ViT1NcIl1dLFsvd2F0Y2goPzogP29zWyxcXFxcL118XFxcXGQsXFxcXGRcXFxcLykoW1xcXFxkXFxcXC5dKykvaV0sW3YsW3AsXCJ3YXRjaE9TXCJdXSxbL2Nya2V5XFxcXC8oW1xcXFxkXFxcXC5dKykvaV0sW3YsW3AsaitcImNhc3RcIl1dLFsvKGNyb3MpIFtcXFxcd10rKD86XFxcXCl8IChbXFxcXHdcXFxcLl0rKVxcXFxiKS9pXSxbW3Asel0sdl0sWy9wYW5hc29uaWM7KHZpZXJhKS9pLC8obmV0cmFuZ2UpbW1oL2ksLyhuZXR0dilcXFxcLyhcXFxcZCtcXFxcLltcXFxcd1xcXFwuXSspL2ksLyhuaW50ZW5kb3xwbGF5c3RhdGlvbikgKFt3aWRzMzQ1cG9ydGFibGV2dWNoXSspL2ksLyh4Ym94KTsgK3hib3ggKFteXFxcXCk7XSspL2ksL1xcXFxiKGpvbGl8cGFsbSlcXFxcYiA/KD86b3MpP1xcXFwvPyhbXFxcXHdcXFxcLl0qKS9pLC8obWludClbXFxcXC9cXFxcKFxcXFwpIF0/KFxcXFx3KikvaSwvKG1hZ2VpYXx2ZWN0b3JsaW51eClbOyBdL2ksLyhba3hsbl0/dWJ1bnR1fGRlYmlhbnxzdXNlfG9wZW5zdXNlfGdlbnRvb3xhcmNoKD89IGxpbnV4KXxzbGFja3dhcmV8ZmVkb3JhfG1hbmRyaXZhfGNlbnRvc3xwY2xpbnV4b3N8cmVkID9oYXR8emVud2Fsa3xsaW5wdXN8cmFzcGJpYW58cGxhbiA5fG1pbml4fHJpc2Mgb3N8Y29udGlraXxkZWVwaW58bWFuamFyb3xlbGVtZW50YXJ5IG9zfHNhYmF5b258bGluc3BpcmUpKD86IGdudVxcXFwvbGludXgpPyg/OiBlbnRlcnByaXNlKT8oPzpbLSBdbGludXgpPyg/Oi1nbnUpP1stXFxcXC8gXT8oPyFjaHJvbXxwYWNrYWdlKShbLVxcXFx3XFxcXC5dKikvaSwvKGh1cmR8bGludXgpID8oW1xcXFx3XFxcXC5dKikvaSwvKGdudSkgPyhbXFxcXHdcXFxcLl0qKS9pLC9cXFxcYihbLWZyZW50b3BjZ2hzXXswLDV9YnNkfGRyYWdvbmZseSlbXFxcXC8gXT8oPyFhbWR8W2l4MzQ2XXsxLDJ9ODYpKFtcXFxcd1xcXFwuXSopL2ksLyhoYWlrdSkgKFxcXFx3KykvaV0sW3Asdl0sWy8oc3Vub3MpID8oW1xcXFx3XFxcXC5cXFxcZF0qKS9pXSxbW3AsXCJTb2xhcmlzXCJdLHZdLFsvKCg/Om9wZW4pP3NvbGFyaXMpWy1cXFxcLyBdPyhbXFxcXHdcXFxcLl0qKS9pLC8oYWl4KSAoKFxcXFxkKSg/PVxcXFwufFxcXFwpfCApW1xcXFx3XFxcXC5dKSovaSwvXFxcXGIoYmVvc3xvc1xcXFwvMnxhbWlnYW9zfG1vcnBob3N8b3BlbnZtc3xmdWNoc2lhfGhwLXV4fHNlcmVuaXR5b3MpL2ksLyh1bml4KSA/KFtcXFxcd1xcXFwuXSopL2ldLFtwLHZdXX0sWj1mdW5jdGlvbihlLHQpe2lmKHR5cGVvZiBlPT09YyYmKHQ9ZSxlPWEpLCEodGhpcyBpbnN0YW5jZW9mIFopKXJldHVybiBuZXcgWihlLHQpLmdldFJlc3VsdCgpO3ZhciBuPXR5cGVvZiBpIT09cyYmaS5uYXZpZ2F0b3I/aS5uYXZpZ2F0b3I6YSxyPWV8fChuJiZuLnVzZXJBZ2VudD9uLnVzZXJBZ2VudDpcIlwiKSxiPW4mJm4udXNlckFnZW50RGF0YT9uLnVzZXJBZ2VudERhdGE6YSx5PXQ/ZnVuY3Rpb24oZSx0KXt2YXIgbj17fTtmb3IodmFyIHIgaW4gZSl0W3JdJiZ0W3JdLmxlbmd0aCUyPT0wP25bcl09dFtyXS5jb25jYXQoZVtyXSk6bltyXT1lW3JdO3JldHVybiBufShHLHQpOkcsVD1uJiZuLnVzZXJBZ2VudD09cjtyZXR1cm4gdGhpcy5nZXRCcm93c2VyPWZ1bmN0aW9uKCl7dmFyIGUsdD17fTtyZXR1cm4gdFtwXT1hLHRbdl09YSxWLmNhbGwodCxyLHkuYnJvd3NlciksdFtsXT10eXBlb2YoZT10W3ZdKT09PXU/ZS5yZXBsYWNlKC9bXlxcXFxkXFxcXC5dL2csXCJcIikuc3BsaXQoXCIuXCIpWzBdOmEsVCYmbiYmbi5icmF2ZSYmdHlwZW9mIG4uYnJhdmUuaXNCcmF2ZT09byYmKHRbcF09XCJCcmF2ZVwiKSx0fSx0aGlzLmdldENQVT1mdW5jdGlvbigpe3ZhciBlPXt9O3JldHVybiBlW2ddPWEsVi5jYWxsKGUscix5LmNwdSksZX0sdGhpcy5nZXREZXZpY2U9ZnVuY3Rpb24oKXt2YXIgZT17fTtyZXR1cm4gZVtmXT1hLGVbZF09YSxlW21dPWEsVi5jYWxsKGUscix5LmRldmljZSksVCYmIWVbbV0mJmImJmIubW9iaWxlJiYoZVttXT1oKSxUJiZcIk1hY2ludG9zaFwiPT1lW2RdJiZuJiZ0eXBlb2Ygbi5zdGFuZGFsb25lIT09cyYmbi5tYXhUb3VjaFBvaW50cyYmbi5tYXhUb3VjaFBvaW50cz4yJiYoZVtkXT1cImlQYWRcIixlW21dPXcpLGV9LHRoaXMuZ2V0RW5naW5lPWZ1bmN0aW9uKCl7dmFyIGU9e307cmV0dXJuIGVbcF09YSxlW3ZdPWEsVi5jYWxsKGUscix5LmVuZ2luZSksZX0sdGhpcy5nZXRPUz1mdW5jdGlvbigpe3ZhciBlPXt9O3JldHVybiBlW3BdPWEsZVt2XT1hLFYuY2FsbChlLHIseS5vcyksVCYmIWVbcF0mJmImJlwiVW5rbm93blwiIT1iLnBsYXRmb3JtJiYoZVtwXT1iLnBsYXRmb3JtLnJlcGxhY2UoL2Nocm9tZSBvcy9pLHopLnJlcGxhY2UoL21hY29zL2ksSykpLGV9LHRoaXMuZ2V0UmVzdWx0PWZ1bmN0aW9uKCl7cmV0dXJue3VhOnRoaXMuZ2V0VUEoKSxicm93c2VyOnRoaXMuZ2V0QnJvd3NlcigpLGVuZ2luZTp0aGlzLmdldEVuZ2luZSgpLG9zOnRoaXMuZ2V0T1MoKSxkZXZpY2U6dGhpcy5nZXREZXZpY2UoKSxjcHU6dGhpcy5nZXRDUFUoKX19LHRoaXMuZ2V0VUE9ZnVuY3Rpb24oKXtyZXR1cm4gcn0sdGhpcy5zZXRVQT1mdW5jdGlvbihlKXtyZXR1cm4gcj10eXBlb2YgZT09PXUmJmUubGVuZ3RoPjM1MD9IKGUsMzUwKTplLHRoaXN9LHRoaXMuc2V0VUEociksdGhpc307Wi5WRVJTSU9OPVwiMS4wLjM1XCIsWi5CUk9XU0VSPSQoW3AsdixsXSksWi5DUFU9JChbZ10pLFouREVWSUNFPSQoW2QsZixtLGIsaCx5LHcsVCxrXSksWi5FTkdJTkU9Wi5PUz0kKFtwLHZdKSx0eXBlb2YgdCE9PXM/KGUuZXhwb3J0cyYmKHQ9ZS5leHBvcnRzPVopLHQuVUFQYXJzZXI9Wik6bi5hbWRPPyhyPWZ1bmN0aW9uKCl7cmV0dXJuIFp9LmNhbGwodCxuLHQsZSkpPT09YXx8KGUuZXhwb3J0cz1yKTp0eXBlb2YgaSE9PXMmJihpLlVBUGFyc2VyPVopO3ZhciBZPXR5cGVvZiBpIT09cyYmKGkualF1ZXJ5fHxpLlplcHRvKTtpZihZJiYhWS51YSl7dmFyIGVlPW5ldyBaO1kudWE9ZWUuZ2V0UmVzdWx0KCksWS51YS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gZWUuZ2V0VUEoKX0sWS51YS5zZXQ9ZnVuY3Rpb24oZSl7ZWUuc2V0VUEoZSk7dmFyIHQ9ZWUuZ2V0UmVzdWx0KCk7Zm9yKHZhciBuIGluIHQpWS51YVtuXT10W25dfX19KFwib2JqZWN0XCI9PXR5cGVvZiB3aW5kb3c/d2luZG93OnRoaXMpfX0sdD17fTtmdW5jdGlvbiBuKHIpe3ZhciBpPXRbcl07aWYodm9pZCAwIT09aSlyZXR1cm4gaS5leHBvcnRzO3ZhciBhPXRbcl09e2V4cG9ydHM6e319O3JldHVybiBlW3JdLmNhbGwoYS5leHBvcnRzLGEsYS5leHBvcnRzLG4pLGEuZXhwb3J0c31uLmFtZE89e30sbi5uPWU9Pnt2YXIgdD1lJiZlLl9fZXNNb2R1bGU/KCk9PmUuZGVmYXVsdDooKT0+ZTtyZXR1cm4gbi5kKHQse2E6dH0pLHR9LG4uZD0oZSx0KT0+e2Zvcih2YXIgciBpbiB0KW4ubyh0LHIpJiYhbi5vKGUscikmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHIse2VudW1lcmFibGU6ITAsZ2V0OnRbcl19KX0sbi5vPShlLHQpPT5PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KSxuLnI9ZT0+e1widW5kZWZpbmVkXCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZTpcIk1vZHVsZVwifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsXCJfX2VzTW9kdWxlXCIse3ZhbHVlOiEwfSl9O3ZhciByPXt9O3JldHVybigoKT0+e1widXNlIHN0cmljdFwiO24ucihyKSxuLmQocix7QWN0aW9uVHlwZTooKT0+ZixBbXBsaXR1ZGVQbGF0Zm9ybU5hbWU6KCk9PmcsQW5hbHl0aWNzRXZlbnRJbXBvcnRhbmNlOigpPT5sLEFuYWx5dGljc1F1ZXJpZXM6KCk9PmUsQXV0aFN0YXR1czooKT0+YixDb21wb25lbnRUeXBlOigpPT5tLElUaHJlc2hvbGRUaWVyOigpPT5KdCxNZXRyaWNUeXBlOigpPT5kLFBsYXRmb3JtTmFtZTooKT0+dixTZXNzaW9uQWN0aW9uczooKT0+aCxTZXNzaW9uQXV0b21hdGVkRXZlbnRzOigpPT53LFNlc3Npb25SYW5rOigpPT55LFN1YmplY3RUeXBlOigpPT5wLFVzZXJUeXBlQ29tbWVyY2U6KCk9PmMsVXNlclR5cGVJbnN0bzooKT0+aSxVc2VyVHlwZVJldGFpbDooKT0+dCxVc2VyVHlwZVJldGFpbEJ1c2luZXNzQmFua2luZzooKT0+cyxVc2VyVHlwZVJldGFpbEVtcGxveWVlSW50ZXJuYWw6KCk9PmEsVXNlclR5cGVSZXRhaWxFbXBsb3llZVBlcnNvbmFsOigpPT5vLFVzZXJUeXBlV2FsbGV0OigpPT51LGF1dG9tYXRlZEV2ZW50czooKT0+eG4sYXV0b21hdGVkTWFwcGluZ0NvbmZpZzooKT0+SW4sY2xlYXJNYXJrRW50cnk6KCk9PlZuLGNsZWFyUGVyZm9ybWFuY2VNYXJrRW50cmllczooKT0+WG4sY29uZmlnOigpPT5BLGNyZWF0ZUV2ZW50Q29uZmlnOigpPT5PbixjcmVhdGVOZXdTcGFuOigpPT5MbixjcmVhdGVOZXdUcmFjZTooKT0+VW4sZGV2aWNlOigpPT5XLGVuZFBlcmZNYXJrOigpPT5KbixleHBvc2VFeHBlcmltZW50OigpPT53bixmbHVzaFF1ZXVlOigpPT5vcixnZW5lcmF0ZVVVSUQ6KCk9PlYsZ2V0QW5hbHl0aWNzSGVhZGVyczooKT0+c3IsZ2V0UmVmZXJyZXJEYXRhOigpPT5sZSxnZXRUcmFjaW5nSGVhZGVyczooKT0+QW4sZ2V0VHJhY2luZ0lkOigpPT5EbixnZXRVcmxIb3N0bmFtZTooKT0+cGUsZ2V0VXJsUGFyYW1zOigpPT5tZSxnZXRVcmxQYXRobmFtZTooKT0+ZmUsZ2V0VXNlckNvbnRleHQ6KCk9PmFyLGlkZW50aWZ5OigpPT5UbixpZGVudGlmeUZsb3c6KCk9PnhlLGlkZW50aXR5OigpPT5ILGlkZW50aXR5RmxvdzooKT0+U2UsaW5jcmVtZW50VWpOYXZpZ2F0aW9uOigpPT5hbixpbml0OigpPT55bixpbml0TmV4dEpzVHJhY2tQYWdldmlldzooKT0+X24saW5pdFRyYWNrUGFnZXZpZXc6KCk9PmtuLGlzRXZlbnRLZXlGb3JtYXRWYWxpZDooKT0+d2UsaXNTZXNzaW9uRW5kZWQ6KCk9PnB0LGxvY2F0aW9uOigpPT5yZSxsb2dFdmVudDooKT0+JHQsbG9nTWV0cmljOigpPT5IdCxsb2dQYWdlVmlldzooKT0+b24sbG9nVHJhY2U6KCk9PlJuLG1hcmtOVEJUOigpPT50bixtYXJrU3RlcDooKT0+bm4sbWFya1N0ZXBPbmNlOigpPT5ybixvblZpc2liaWxpdHlDaGFuZ2U6KCk9PmxuLG9wdEluOigpPT5FbixvcHRPdXQ6KCk9PlNuLHBlcmZNYXJrOigpPT5XbixwZXJzaXN0ZW50RGF0YTooKT0+b2UscG9zdE1lc3NhZ2U6KCk9PksscmVjb3JkU2Vzc2lvbkR1cmF0aW9uOigpPT5wbixyZW1vdmVGcm9tSWRlbnRpZnlGbG93OigpPT5FZSxzYXZlUGVyc2lzdGVudERhdGE6KCk9PnN0LHNlbmRTY2hlZHVsZWRFdmVudHM6KCk9PkJ0LHNldEJyZWFkY3J1bWJzOigpPT5pZSxzZXRDb25maWc6KCk9PlUsc2V0TG9jYXRpb246KCk9PmFlLHNldFBhZ2VQYXRoOigpPT52ZSxzZXRQYWdldmlldzooKT0+S3Qsc2V0UGVyc2lzdGVudERhdGE6KCk9PnNlLHNldFNlc3Npb25TdGFydDooKT0+ZHQsc2V0VGltZTooKT0+VWUsc3RhcnRQZXJmTWFyazooKT0+SG4sdGltZVN0b25lOigpPT5MZSx1c2VFdmVudExvZ2dlcjooKT0+WW4sdXNlTG9nRXZlbnRPbk1vdW50OigpPT50cix1c2VQZXJmb3JtYW5jZU1hcmtzOigpPT5ycn0pO2xldCBlPWZ1bmN0aW9uKGUpe3JldHVybiBlLmZiY2xpZD1cImZiY2xpZFwiLGUuZ2NsaWQ9XCJnY2xpZFwiLGUubXNjbGtpZD1cIm1zY2xraWRcIixlLnB0Y2xpZD1cInB0Y2xpZFwiLGUudHRjbGlkPVwidHRjbGlkXCIsZS51dG1fc291cmNlPVwidXRtX3NvdXJjZVwiLGUudXRtX21lZGl1bT1cInV0bV9tZWRpdW1cIixlLnV0bV9jYW1wYWlnbj1cInV0bV9jYW1wYWlnblwiLGUudXRtX3Rlcm09XCJ1dG1fdGVybVwiLGUudXRtX2NvbnRlbnQ9XCJ1dG1fY29udGVudFwiLGV9KHt9KTtjb25zdCB0PTAsaT0xLGE9MixvPTMscz00LGM9NSx1PTY7bGV0IGw9ZnVuY3Rpb24oZSl7cmV0dXJuIGUubG93PVwibG93XCIsZS5oaWdoPVwiaGlnaFwiLGV9KHt9KSxkPWZ1bmN0aW9uKGUpe3JldHVybiBlLmNvdW50PVwiY291bnRcIixlLnJhdGU9XCJyYXRlXCIsZS5nYXVnZT1cImdhdWdlXCIsZS5kaXN0cmlidXRpb249XCJkaXN0cmlidXRpb25cIixlLmhpc3RvZ3JhbT1cImhpc3RvZ3JhbVwiLGV9KHt9KSxwPWZ1bmN0aW9uKGUpe3JldHVybiBlLmNvbW1lcmNlX21lcmNoYW50PVwiY29tbWVyY2VfbWVyY2hhbnRcIixlLmRldmljZT1cImRldmljZVwiLGUuZWRwX2ZpbmdlcnByaW50X2lkPVwiZWRwX2ZpbmdlcnByaW50X2lkXCIsZS5uZnRfdXNlcj1cIm5mdF91c2VyXCIsZS51c2VyPVwidXNlclwiLGUud2FsbGV0X3VzZXI9XCJ3YWxsZXRfdXNlclwiLGUudXVpZD1cInVzZXJfdXVpZFwiLGV9KHt9KSxtPWZ1bmN0aW9uKGUpe3JldHVybiBlLnVua25vd249XCJ1bmtub3duXCIsZS5iYW5uZXI9XCJiYW5uZXJcIixlLmJ1dHRvbj1cImJ1dHRvblwiLGUuY2FyZD1cImNhcmRcIixlLmNoYXJ0PVwiY2hhcnRcIixlLmNvbnRlbnRfc2NyaXB0PVwiY29udGVudF9zY3JpcHRcIixlLmRyb3Bkb3duPVwiZHJvcGRvd25cIixlLmxpbms9XCJsaW5rXCIsZS5wYWdlPVwicGFnZVwiLGUubW9kYWw9XCJtb2RhbFwiLGUudGFibGU9XCJ0YWJsZVwiLGUuc2VhcmNoX2Jhcj1cInNlYXJjaF9iYXJcIixlLnNlcnZpY2Vfd29ya2VyPVwic2VydmljZV93b3JrZXJcIixlLnRleHQ9XCJ0ZXh0XCIsZS50ZXh0X2lucHV0PVwidGV4dF9pbnB1dFwiLGUudHJheT1cInRyYXlcIixlLmNoZWNrYm94PVwiY2hlY2tib3hcIixlLmljb249XCJpY29uXCIsZX0oe30pLGY9ZnVuY3Rpb24oZSl7cmV0dXJuIGUudW5rbm93bj1cInVua25vd25cIixlLmJsdXI9XCJibHVyXCIsZS5jbGljaz1cImNsaWNrXCIsZS5jaGFuZ2U9XCJjaGFuZ2VcIixlLmRpc21pc3M9XCJkaXNtaXNzXCIsZS5mb2N1cz1cImZvY3VzXCIsZS5ob3Zlcj1cImhvdmVyXCIsZS5zZWxlY3Q9XCJzZWxlY3RcIixlLm1lYXN1cmVtZW50PVwibWVhc3VyZW1lbnRcIixlLm1vdmU9XCJtb3ZlXCIsZS5wcm9jZXNzPVwicHJvY2Vzc1wiLGUucmVuZGVyPVwicmVuZGVyXCIsZS5zY3JvbGw9XCJzY3JvbGxcIixlLnZpZXc9XCJ2aWV3XCIsZS5zZWFyY2g9XCJzZWFyY2hcIixlLmtleVByZXNzPVwia2V5UHJlc3NcIixlfSh7fSksdj1mdW5jdGlvbihlKXtyZXR1cm4gZS51bmtub3duPVwidW5rbm93blwiLGUud2ViPVwid2ViXCIsZS5hbmRyb2lkPVwiYW5kcm9pZFwiLGUuaW9zPVwiaW9zXCIsZS5tb2JpbGVfd2ViPVwibW9iaWxlX3dlYlwiLGUudGFibGV0X3dlYj1cInRhYmxldF93ZWJcIixlLnNlcnZlcj1cInNlcnZlclwiLGUud2luZG93cz1cIndpbmRvd3NcIixlLm1hY29zPVwibWFjb3NcIixlLmV4dGVuc2lvbj1cImV4dGVuc2lvblwiLGV9KHt9KSxnPWZ1bmN0aW9uKGUpe3JldHVybiBlLndlYj1cIldlYlwiLGUuaW9zPVwiaU9TXCIsZS5hbmRyb2lkPVwiQW5kcm9pZFwiLGV9KHt9KSxiPWZ1bmN0aW9uKGUpe3JldHVybiBlW2Uubm90TG9nZ2VkSW49MF09XCJub3RMb2dnZWRJblwiLGVbZS5sb2dnZWRJbj0xXT1cImxvZ2dlZEluXCIsZX0oe30pLGg9ZnVuY3Rpb24oZSl7cmV0dXJuIGUuYWM9XCJhY1wiLGUuYWY9XCJhZlwiLGUuYWg9XCJhaFwiLGUuYWw9XCJhbFwiLGUuYW09XCJhbVwiLGUuYXI9XCJhclwiLGUuYXM9XCJhc1wiLGV9KHt9KSx3PWZ1bmN0aW9uKGUpe3JldHVybiBlLnB2PVwicHZcIixlfSh7fSkseT1mdW5jdGlvbihlKXtyZXR1cm4gZS54cz1cInhzXCIsZS5zPVwic1wiLGUubT1cIm1cIixlLmw9XCJsXCIsZS54bD1cInhsXCIsZS54eGw9XCJ4eGxcIixlfSh7fSk7Y29uc3QgVD1cImh0dHBzOi8vYW5hbHl0aWNzLXNlcnZpY2UtZGV2LmNiaHEubmV0XCIsaz0zZTUsXz01ZTMsUz1cImFuYWx5dGljcy1kYlwiLEU9XCJleHBlcmltZW50LWV4cG9zdXJlLWRiXCIseD1cIkFuYWx5dGljcyBTREs6XCIsTz1PYmplY3QudmFsdWVzKGUpLGo9XCJwYWdldmlld1wiLE49XCJzZXNzaW9uX2R1cmF0aW9uXCIsST17bmF2aWdhdGlvblRpbWluZzp7ZXZlbnROYW1lOlwicGVyZl9uYXZpZ2F0aW9uX3RpbWluZ1wifSxyZWRpcmVjdFRpbWU6e2V2ZW50TmFtZTpcInBlcmZfcmVkaXJlY3RfdGltZVwifSxSVDp7ZXZlbnROYW1lOlwicGVyZl9yZWRpcmVjdF90aW1lXCJ9LFRURkI6e2V2ZW50TmFtZTpcInBlcmZfdGltZV90b19maXJzdF9ieXRlXCJ9LG5ldHdvcmtJbmZvcm1hdGlvbjp7ZXZlbnROYW1lOlwicGVyZl9uZXR3b3JrX2luZm9ybWF0aW9uXCJ9LHN0b3JhZ2VFc3RpbWF0ZTp7ZXZlbnROYW1lOlwicGVyZl9zdG9yYWdlX2VzdGltYXRlXCJ9LEZDUDp7ZXZlbnROYW1lOlwicGVyZl9maXJzdF9jb250ZW50ZnVsX3BhaW50XCJ9LEZJRDp7ZXZlbnROYW1lOlwicGVyZl9maXJzdF9pbnB1dF9kZWxheVwifSxMQ1A6e2V2ZW50TmFtZTpcInBlcmZfbGFyZ2VzdF9jb250ZW50ZnVsX3BhaW50XCJ9LENMUzp7ZXZlbnROYW1lOlwicGVyZl9jdW11bGF0aXZlX2xheW91dF9zaGlmdFwifSxUQlQ6e2V2ZW50TmFtZTpcInBlcmZfdG90YWxfYmxvY2tpbmdfdGltZVwifSxOVEJUOntldmVudE5hbWU6XCJwZXJmX25hdmlnYXRpb25fdG90YWxfYmxvY2tpbmdfdGltZVwifSxJTlA6e2V2ZW50TmFtZTpcInBlcmZfaW50ZXJhY3RfdG9fbmV4dF9wYWludFwifSxFVDp7ZXZlbnROYW1lOlwicGVyZl9lbGVtZW50X3RpbWluZ1wifSx1c2VySm91cm5leVN0ZXA6e2V2ZW50TmFtZTpcInBlcmZfdXNlcl9qb3VybmV5X3N0ZXBcIn19LFA9XCIxXCIsTT1cIndlYlwiO2Z1bmN0aW9uIEIoKXtyZXR1cm4gQj1PYmplY3QuYXNzaWduP09iamVjdC5hc3NpZ24uYmluZCgpOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuPWFyZ3VtZW50c1t0XTtmb3IodmFyIHIgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixyKSYmKGVbcl09bltyXSl9cmV0dXJuIGV9LEIuYXBwbHkodGhpcyxhcmd1bWVudHMpfWNvbnN0IEM9L14oaHR0cHM/OlxcXFwvXFxcXC8pLztmdW5jdGlvbiBEKGUpe3JldHVybntldmVudHNFbmRwb2ludDplK1wiL2FtcFwiLG1ldHJpY3NFbmRQb2ludDplK1wiL21ldHJpY3NcIixleHBvc3VyZUVuZHBvaW50OmUrXCIvdHJhY2stZXhwb3N1cmVzXCIsdHJhY2VzRW5kcG9pbnQ6ZStcIi90cmFjZXNcIn19Y29uc3QgQT1CKHthdXRoQ29va2llOlwibG9nZ2VkX2luXCIsYW1wbGl0dWRlQXBpS2V5OlwiXCIsYmF0Y2hFdmVudHNQZXJpb2Q6XyxiYXRjaEV2ZW50c1RocmVzaG9sZDozMCxiYXRjaE1ldHJpY3NQZXJpb2Q6XyxiYXRjaE1ldHJpY3NUaHJlc2hvbGQ6MzAsYmF0Y2hUcmFjZXNQZXJpb2Q6XyxiYXRjaFRyYWNlc1RocmVzaG9sZDozMCxoZWFkZXJzOnt9LGludGVyYWN0aW9uTWFuYWdlcjpudWxsLGlzQWx3YXlzQXV0aGVkOiExLGlzUHJvZDohMSxpc0ludGVybmFsQXBwbGljYXRpb246ITEsb25FcnJvcjooZSx0KT0+e2NvbnNvbGUuZXJyb3IoeCxlLHQpfSxwbGF0Zm9ybTp2LnVua25vd24scHJvamVjdE5hbWU6XCJcIixyaWNUaW1lb3V0U2NoZWR1bGVFdmVudDoxZTMscmljVGltZW91dFNldERldmljZTo1MDAsc2hvd0RlYnVnTG9nZ2luZzohMSx0cmFja1VzZXJJZDohMSx2ZXJzaW9uOm51bGwsYXBpRW5kcG9pbnQ6VH0sRChUKSx7c3RlcHM6e319KSxMPVtdLnJlZHVjZSgoKGUsdCk9Pm49PmUodChuKSkpLChlPT57aWYoIWUuaXNQcm9kKXJldHVybiBlLmlzSW50ZXJuYWxBcHBsaWNhdGlvbj8oZS5hcGlFbmRwb2ludD1cImh0dHBzOi8vYW5hbHl0aWNzLXNlcnZpY2UtaW50ZXJuYWwtZGV2LmNiaHEubmV0XCIsQih7fSxlLEQoZS5hcGlFbmRwb2ludCkpKTplO2NvbnN0IHQ9KGU9PmUuYXBpRW5kcG9pbnQ/Qy50ZXN0KGUuYXBpRW5kcG9pbnQpP2UuYXBpRW5kcG9pbnQ6XFxgaHR0cHM6Ly9cXCR7ZS5hcGlFbmRwb2ludH1cXGA6ZS5pc0ludGVybmFsQXBwbGljYXRpb24/XCJodHRwczovL2FuYWx5dGljcy1zZXJ2aWNlLWludGVybmFsLmNiaHEubmV0XCI6XCJodHRwczovL2FzLmNvaW5iYXNlLmNvbVwiKShlKTtyZXR1cm4gQih7fSxlLHthcGlFbmRwb2ludDp0fSxEKHQpKX0pKSxVPWU9Pntjb25zdHtiYXRjaEV2ZW50c1RocmVzaG9sZDp0LGJhdGNoTWV0cmljc1RocmVzaG9sZDpuLGJhdGNoVHJhY2VzVGhyZXNob2xkOnJ9PWUsaT1bdCxuLHJdO2Zvcihjb25zdCBlIG9mIGkpaWYoKGV8fDApPjMwKXtjb25zb2xlLndhcm4oXCJZb3UgYXJlIHNldHRpbmcgdGhlIHRocmVzaGhvbGQgZm9yIHRoZSBiYXRjaCBsaW1pdCB0byBiZSBncmVhdGVyIHRoYW4gMzAuIFRoaXMgbWF5IGNhdXNlIHJlcXVlc3Qgb3ZlcmxvYWQuXCIpO2JyZWFrfU9iamVjdC5hc3NpZ24oQSxMKGUpKX0sUj1bdi53ZWIsdi5tb2JpbGVfd2ViLHYudGFibGV0X3dlYl07ZnVuY3Rpb24gcSgpe3JldHVyblwiYW5kcm9pZFwiPT09QS5wbGF0Zm9ybX1mdW5jdGlvbiBGKCl7cmV0dXJuXCJpb3NcIj09PUEucGxhdGZvcm19ZnVuY3Rpb24geigpe3JldHVybiBSLmluY2x1ZGVzKEEucGxhdGZvcm0pfWZ1bmN0aW9uIEsoZSl7aWYoeigpJiZuYXZpZ2F0b3ImJlwic2VydmljZVdvcmtlclwiaW4gbmF2aWdhdG9yJiZuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVyKXRyeXtuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5jb250cm9sbGVyLnBvc3RNZXNzYWdlKGUpfWNhdGNoKGUpe2UgaW5zdGFuY2VvZiBFcnJvciYmQS5vbkVycm9yKGUpfX12YXIgJD1uKDM1MyksUT1uLm4oJCk7Y29uc3QgVz17YW1wbGl0dWRlT1NOYW1lOm51bGwsYW1wbGl0dWRlT1NWZXJzaW9uOm51bGwsYW1wbGl0dWRlRGV2aWNlTW9kZWw6bnVsbCxhbXBsaXR1ZGVQbGF0Zm9ybTpudWxsLGJyb3dzZXJOYW1lOm51bGwsYnJvd3Nlck1ham9yOm51bGwsb3NOYW1lOm51bGwsdXNlckFnZW50Om51bGwsd2lkdGg6bnVsbCxoZWlnaHQ6bnVsbH0sSD17Y291bnRyeUNvZGU6bnVsbCxkZXZpY2VJZDpudWxsLGRldmljZV9vczpudWxsLGlzT3B0T3V0OiExLGxhbmd1YWdlQ29kZTpudWxsLGxvY2FsZTpudWxsLGp3dDpudWxsLHNlc3Npb25fbGNjX2lkOm51bGwsdXNlckFnZW50Om51bGwsdXNlcklkOm51bGx9LFY9ZT0+ZT8oZV4xNipNYXRoLnJhbmRvbSgpPj5lLzQpLnRvU3RyaW5nKDE2KTpcIjEwMDAwMDAwLTEwMDAtNDAwMC04MDAwLTEwMDAwMDAwMDAwMFwiLnJlcGxhY2UoL1swMThdL2csViksSj0oKT0+QS5pc0Fsd2F5c0F1dGhlZHx8ISFILnVzZXJJZCxYPSgpPT57Y29uc3QgZT17fTtyZXR1cm4gSC5jb3VudHJ5Q29kZSYmKGUuY291bnRyeV9jb2RlPUguY291bnRyeUNvZGUpLGV9LEc9KCk9Pntjb25zdHtwbGF0Zm9ybTplfT1BO2lmKGU9PT12LndlYilzd2l0Y2goITApe2Nhc2Ugd2luZG93Lm1hdGNoTWVkaWEoXCIobWF4LXdpZHRoOiA1NjBweClcIikubWF0Y2hlczpyZXR1cm4gdi5tb2JpbGVfd2ViO2Nhc2Ugd2luZG93Lm1hdGNoTWVkaWEoXCIobWF4LXdpZHRoOiAxMDI0cHgsIG1pbi13aWR0aDogNTYxcHgpXCIpLm1hdGNoZXM6cmV0dXJuIHYudGFibGV0X3dlYn1yZXR1cm4gZX0sWj0oKT0+e3ZhciBlLHQsbixyLGk7eigpPyhcInJlcXVlc3RJZGxlQ2FsbGJhY2tcImluIHdpbmRvdz93aW5kb3cucmVxdWVzdElkbGVDYWxsYmFjayhuZSx7dGltZW91dDpBLnJpY1RpbWVvdXRTZXREZXZpY2V9KTpuZSgpLFcuYW1wbGl0dWRlUGxhdGZvcm09Zy53ZWIsVy51c2VyQWdlbnQ9KG51bGw9PShlPXdpbmRvdyl8fG51bGw9PShlPWUubmF2aWdhdG9yKT92b2lkIDA6ZS51c2VyQWdlbnQpfHxudWxsLGVlKHtoZWlnaHQ6bnVsbCE9KHQ9bnVsbD09KG49d2luZG93KT92b2lkIDA6bi5pbm5lckhlaWdodCk/dDpudWxsLHdpZHRoOm51bGwhPShyPW51bGw9PShpPXdpbmRvdyk/dm9pZCAwOmkuaW5uZXJXaWR0aCk/cjpudWxsfSkpOkYoKT8oVy5hbXBsaXR1ZGVQbGF0Zm9ybT1nLmlvcyxXLnVzZXJBZ2VudD1ILnVzZXJBZ2VudCxXLnVzZXJBZ2VudCYmbmUoKSk6cSgpJiYoVy51c2VyQWdlbnQ9SC51c2VyQWdlbnQsVy5hbXBsaXR1ZGVQbGF0Zm9ybT1nLmFuZHJvaWQsVy51c2VyQWdlbnQmJm5lKCkpfSxZPWU9PntPYmplY3QuYXNzaWduKEgsZSkseigpJiZLKHtpZGVudGl0eTp7aXNBdXRoZWQ6ISFILnVzZXJJZCxsb2NhbGU6SC5sb2NhbGV8fG51bGx9fSl9LGVlPWU9PntXLmhlaWdodD1lLmhlaWdodCxXLndpZHRoPWUud2lkdGh9LHRlPSgpPT57VSh7cGxhdGZvcm06RygpfSkseigpJiZLKHtjb25maWc6e3BsYXRmb3JtOkEucGxhdGZvcm19fSl9LG5lPSgpPT57dmFyIGU7cGVyZm9ybWFuY2UubWFyayYmcGVyZm9ybWFuY2UubWFyayhcInVhX3BhcnNlcl9zdGFydFwiKTtjb25zdCB0PW5ldyhRKCkpKG51bGwhPShlPVcudXNlckFnZW50KT9lOlwiXCIpLmdldFJlc3VsdCgpO1cuYnJvd3Nlck5hbWU9dC5icm93c2VyLm5hbWV8fG51bGwsVy5icm93c2VyTWFqb3I9dC5icm93c2VyLm1ham9yfHxudWxsLFcub3NOYW1lPXQub3MubmFtZXx8bnVsbCxXLmFtcGxpdHVkZU9TTmFtZT1XLmJyb3dzZXJOYW1lLFcuYW1wbGl0dWRlT1NWZXJzaW9uPVcuYnJvd3Nlck1ham9yLFcuYW1wbGl0dWRlRGV2aWNlTW9kZWw9Vy5vc05hbWUsSyh7ZGV2aWNlOnticm93c2VyTmFtZTpXLmJyb3dzZXJOYW1lLG9zTmFtZTpXLm9zTmFtZX19KSxwZXJmb3JtYW5jZS5tYXJrJiYocGVyZm9ybWFuY2UubWFyayhcInVhX3BhcnNlcl9lbmRcIikscGVyZm9ybWFuY2UubWVhc3VyZShcInVhX3BhcnNlclwiLFwidWFfcGFyc2VyX3N0YXJ0XCIsXCJ1YV9wYXJzZXJfZW5kXCIpKX0scmU9e2JyZWFkY3J1bWJzOltdLGluaXRpYWxVQUFEYXRhOnt9LHBhZ2VLZXk6XCJcIixwYWdlS2V5UmVnZXg6e30scGFnZVBhdGg6XCJcIixwcmV2UGFnZUtleTpcIlwiLHByZXZQYWdlUGF0aDpcIlwifTtmdW5jdGlvbiBpZShlKXtPYmplY3QuYXNzaWduKHJlLHticmVhZGNydW1iczplfSl9ZnVuY3Rpb24gYWUoZSl7T2JqZWN0LmFzc2lnbihyZSxlKX1jb25zdCBvZT17ZXZlbnRJZDowLHNlcXVlbmNlTnVtYmVyOjAsc2Vzc2lvbklkOjAsbGFzdEV2ZW50VGltZTowLHNlc3Npb25TdGFydDowLHNlc3Npb25VVUlEOm51bGwsdXNlcklkOm51bGwsYWM6MCxhZjowLGFoOjAsYWw6MCxhbTowLGFyOjAsYXM6MCxwdjowfTtmdW5jdGlvbiBzZShlKXtPYmplY3QuYXNzaWduKG9lLGUpfWZ1bmN0aW9uIGNlKCl7dmFyIGUsdDtyZXR1cm4gbnVsbCE9KGU9bnVsbD09KHQ9ZG9jdW1lbnQpP3ZvaWQgMDp0LnJlZmVycmVyKT9lOlwiXCJ9ZnVuY3Rpb24gdWUoKXtyZXR1cm4gdWU9T2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduLmJpbmQoKTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciByIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJihlW3JdPW5bcl0pfXJldHVybiBlfSx1ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9Y29uc3QgbGU9KCk9Pntjb25zdCBlPWNlKCk7aWYoIWUpcmV0dXJue307Y29uc3QgdD1uZXcgVVJMKGUpO3JldHVybiB0Lmhvc3RuYW1lPT09cGUoKT97fTp7cmVmZXJyZXI6ZSxyZWZlcnJpbmdfZG9tYWluOnQuaG9zdG5hbWV9fSxkZT0oKT0+e2NvbnN0IGU9bmV3IFVSTFNlYXJjaFBhcmFtcyhtZSgpKSx0PXt9O3JldHVybiBPLmZvckVhY2goKG49PntlLmhhcyhuKSYmKHRbbl09KGUuZ2V0KG4pfHxcIlwiKS50b0xvd2VyQ2FzZSgpKX0pKSx0fSxwZT0oKT0+e3ZhciBlO3JldHVybihudWxsPT0oZT13aW5kb3cpfHxudWxsPT0oZT1lLmxvY2F0aW9uKT92b2lkIDA6ZS5ob3N0bmFtZSl8fFwiXCJ9LG1lPSgpPT57dmFyIGU7cmV0dXJuKG51bGw9PShlPXdpbmRvdyl8fG51bGw9PShlPWUubG9jYXRpb24pP3ZvaWQgMDplLnNlYXJjaCl8fFwiXCJ9LGZlPSgpPT57dmFyIGU7cmV0dXJuKG51bGw9PShlPXdpbmRvdyl8fG51bGw9PShlPWUubG9jYXRpb24pP3ZvaWQgMDplLnBhdGhuYW1lKXx8XCJcIn0sdmU9KCk9Pntjb25zdCBlPUEub3ZlcnJpZGVXaW5kb3dMb2NhdGlvbj9yZS5wYWdlUGF0aDpmZSgpK21lKCk7ZSYmZSE9PXJlLnBhZ2VQYXRoJiYoZSE9PXJlLnBhZ2VQYXRoJiZnZSgpLHJlLnBhZ2VQYXRoPWUscmUucGFnZUtleVJlZ2V4JiZPYmplY3Qua2V5cyhyZS5wYWdlS2V5UmVnZXgpLnNvbWUoKGU9PntpZihyZS5wYWdlS2V5UmVnZXhbZV0udGVzdChyZS5wYWdlUGF0aCkpcmV0dXJuIHJlLnBhZ2VLZXk9ZSwhMH0pKSl9LGdlPSgpPT57aWYoeigpKXtjb25zdCBlPWNlKCk7aWYoIXJlLnByZXZQYWdlUGF0aCYmZSl7Y29uc3QgdD1uZXcgVVJMKGUpO2lmKHQuaG9zdG5hbWU9PT1wZSgpKXJldHVybiB2b2lkKHJlLnByZXZQYWdlUGF0aD10LnBhdGhuYW1lKX19cmUucHJldlBhZ2VQYXRoPXJlLnBhZ2VQYXRoLHJlLnByZXZQYWdlS2V5PXJlLnBhZ2VLZXl9LGJlPWU9Pnt6KCkmJk9iamVjdC5hc3NpZ24oZSx6KCk/KE9iamVjdC5rZXlzKHJlLmluaXRpYWxVQUFEYXRhKS5sZW5ndGg+MHx8KG5ldyBVUkxTZWFyY2hQYXJhbXMobWUoKSkscmUuaW5pdGlhbFVBQURhdGE9dWUoe30sKCgpPT57Y29uc3QgZT17fTtyZXR1cm4gTy5mb3JFYWNoKCh0PT57b2VbdF0mJihlW3RdPW9lW3RdKX0pKSxlfSkoKSxkZSgpLGxlKCkpKSxyZS5pbml0aWFsVUFBRGF0YSk6cmUuaW5pdGlhbFVBQURhdGEpfSxoZT0vXlthLXpkXSsoX1thLXpkXSspKiQvO2Z1bmN0aW9uIHdlKGUpe3JldHVybiBoZS50ZXN0KGUpfWZ1bmN0aW9uIHllKCl7cmV0dXJuIHllPU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiYoZVtyXT1uW3JdKX1yZXR1cm4gZX0seWUuYXBwbHkodGhpcyxhcmd1bWVudHMpfWNvbnN0IFRlPVtcImFjdGlvblwiLFwiY29tcG9uZW50X3R5cGVcIixcImNvbXBvbmVudF9uYW1lXCIsXCJjb250ZXh0XCIsXCJsb2dnaW5nX2lkXCJdLGtlPVtcIm51bV9ub25faGFyZHdhcmVfYWNjb3VudHNcIixcInVqc1wiXSxfZT1cInVqc19cIixTZT17fTtmdW5jdGlvbiBFZShlKXtlLmZvckVhY2goKGU9PntrZS5pbmNsdWRlcyhlKSYmZGVsZXRlIFNlW2VdfSkpfWZ1bmN0aW9uIHhlKGUpe3ZhciB0O2NvbnN0IG49T2JqZWN0LmVudHJpZXMoZSkucmVkdWNlKCgoZSx0KT0+e2NvbnN0W24scl09dDtyZXR1cm4hVGUuaW5jbHVkZXMobikmJmtlLmluY2x1ZGVzKG4pP3dlKG4pP3llKHt9LGUse1tuXTpyfSk6KEEub25FcnJvcihuZXcgRXJyb3IoXCJJZGVudGl0eUZsb3cgcHJvcGVydHkgbmFtZXMgbXVzdCBoYXZlIHNuYWtlIGNhc2UgZm9ybWF0XCIpLHtbbl06cn0pLGUpOmV9KSx7fSk7bnVsbCE9KHQ9bi51anMpJiZ0Lmxlbmd0aCYmKG4udWpzPW4udWpzLm1hcCgoZT0+XFxgXFwke19lfVxcJHtlfVxcYCkpKSxPYmplY3QuYXNzaWduKFNlLG4pfWZ1bmN0aW9uIE9lKCl7cmV0dXJuIEEucGxhdGZvcm0hPT12LnVua25vd258fChBLm9uRXJyb3IobmV3IEVycm9yKFwiU0RLIHBsYXRmb3JtIG5vdCBpbml0aWFsaXplZFwiKSksITEpfWNvbnN0IGplPXtldmVudHNRdWV1ZTpbXSxldmVudHNTY2hlZHVsZWQ6ITEsbWV0cmljc1F1ZXVlOltdLG1ldHJpY3NTY2hlZHVsZWQ6ITEsdHJhY2VzUXVldWU6W10sdHJhY2VzU2NoZWR1bGVkOiExfTtmdW5jdGlvbiBOZShlKXtPYmplY3QuYXNzaWduKGplLGUpfWNvbnN0IEllPXthYzowLGFmOjAsYWg6MCxhbDowLGFtOjAsYXI6MCxhczowLHB2OjAsc3FzOjB9LFBlPXthYzoyMCxhZjo1LGFoOjEsYWw6MSxhbTowLGFyOjEwLGFzOjIwfSxNZT17cHY6MjV9LEJlPXt4czowLHM6MSxtOjEsbDoyLHhsOjIseHhsOjJ9LENlPWU9PmU8MTU/eS54czplPDYwP3kuczplPDI0MD95Lm06ZTw5NjA/eS5sOmU8Mzg0MD95LnhsOnkueHhsLERlPWU9PntPYmplY3QuYXNzaWduKEllLGUpfTtmdW5jdGlvbiBBZSgpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpfWNvbnN0IExlPXt0aW1lU3RhcnQ6QWUoKSx0aW1lT25QYWdlUGF0aDowLHRpbWVPblBhZ2VLZXk6MCxwcmV2VGltZU9uUGFnZVBhdGg6MCxwcmV2VGltZU9uUGFnZUtleTowLHNlc3Npb25EdXJhdGlvbjowLHNlc3Npb25FbmQ6MCxzZXNzaW9uU3RhcnQ6MCxwcmV2U2Vzc2lvbkR1cmF0aW9uOjB9O2Z1bmN0aW9uIFVlKGUpe09iamVjdC5hc3NpZ24oTGUsZSl9Y29uc3QgUmU9KGUsdCk9PnQuc29tZSgodD0+ZSBpbnN0YW5jZW9mIHQpKTtsZXQgcWUsRmU7Y29uc3QgemU9bmV3IFdlYWtNYXAsS2U9bmV3IFdlYWtNYXAsJGU9bmV3IFdlYWtNYXAsUWU9bmV3IFdlYWtNYXAsV2U9bmV3IFdlYWtNYXA7bGV0IEhlPXtnZXQoZSx0LG4pe2lmKGUgaW5zdGFuY2VvZiBJREJUcmFuc2FjdGlvbil7aWYoXCJkb25lXCI9PT10KXJldHVybiBLZS5nZXQoZSk7aWYoXCJvYmplY3RTdG9yZU5hbWVzXCI9PT10KXJldHVybiBlLm9iamVjdFN0b3JlTmFtZXN8fCRlLmdldChlKTtpZihcInN0b3JlXCI9PT10KXJldHVybiBuLm9iamVjdFN0b3JlTmFtZXNbMV0/dm9pZCAwOm4ub2JqZWN0U3RvcmUobi5vYmplY3RTdG9yZU5hbWVzWzBdKX1yZXR1cm4gSmUoZVt0XSl9LHNldDooZSx0LG4pPT4oZVt0XT1uLCEwKSxoYXM6KGUsdCk9PmUgaW5zdGFuY2VvZiBJREJUcmFuc2FjdGlvbiYmKFwiZG9uZVwiPT09dHx8XCJzdG9yZVwiPT09dCl8fHQgaW4gZX07ZnVuY3Rpb24gVmUoZSl7cmV0dXJuXCJmdW5jdGlvblwiPT10eXBlb2YgZT8odD1lKSE9PUlEQkRhdGFiYXNlLnByb3RvdHlwZS50cmFuc2FjdGlvbnx8XCJvYmplY3RTdG9yZU5hbWVzXCJpbiBJREJUcmFuc2FjdGlvbi5wcm90b3R5cGU/KEZlfHwoRmU9W0lEQkN1cnNvci5wcm90b3R5cGUuYWR2YW5jZSxJREJDdXJzb3IucHJvdG90eXBlLmNvbnRpbnVlLElEQkN1cnNvci5wcm90b3R5cGUuY29udGludWVQcmltYXJ5S2V5XSkpLmluY2x1ZGVzKHQpP2Z1bmN0aW9uKC4uLmUpe3JldHVybiB0LmFwcGx5KFhlKHRoaXMpLGUpLEplKHplLmdldCh0aGlzKSl9OmZ1bmN0aW9uKC4uLmUpe3JldHVybiBKZSh0LmFwcGx5KFhlKHRoaXMpLGUpKX06ZnVuY3Rpb24oZSwuLi5uKXtjb25zdCByPXQuY2FsbChYZSh0aGlzKSxlLC4uLm4pO3JldHVybiAkZS5zZXQocixlLnNvcnQ/ZS5zb3J0KCk6W2VdKSxKZShyKX06KGUgaW5zdGFuY2VvZiBJREJUcmFuc2FjdGlvbiYmZnVuY3Rpb24oZSl7aWYoS2UuaGFzKGUpKXJldHVybjtjb25zdCB0PW5ldyBQcm9taXNlKCgodCxuKT0+e2NvbnN0IHI9KCk9PntlLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJjb21wbGV0ZVwiLGkpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImVycm9yXCIsYSksZS5yZW1vdmVFdmVudExpc3RlbmVyKFwiYWJvcnRcIixhKX0saT0oKT0+e3QoKSxyKCl9LGE9KCk9PntuKGUuZXJyb3J8fG5ldyBET01FeGNlcHRpb24oXCJBYm9ydEVycm9yXCIsXCJBYm9ydEVycm9yXCIpKSxyKCl9O2UuYWRkRXZlbnRMaXN0ZW5lcihcImNvbXBsZXRlXCIsaSksZS5hZGRFdmVudExpc3RlbmVyKFwiZXJyb3JcIixhKSxlLmFkZEV2ZW50TGlzdGVuZXIoXCJhYm9ydFwiLGEpfSkpO0tlLnNldChlLHQpfShlKSxSZShlLHFlfHwocWU9W0lEQkRhdGFiYXNlLElEQk9iamVjdFN0b3JlLElEQkluZGV4LElEQkN1cnNvcixJREJUcmFuc2FjdGlvbl0pKT9uZXcgUHJveHkoZSxIZSk6ZSk7dmFyIHR9ZnVuY3Rpb24gSmUoZSl7aWYoZSBpbnN0YW5jZW9mIElEQlJlcXVlc3QpcmV0dXJuIGZ1bmN0aW9uKGUpe2NvbnN0IHQ9bmV3IFByb21pc2UoKCh0LG4pPT57Y29uc3Qgcj0oKT0+e2UucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInN1Y2Nlc3NcIixpKSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJlcnJvclwiLGEpfSxpPSgpPT57dChKZShlLnJlc3VsdCkpLHIoKX0sYT0oKT0+e24oZS5lcnJvcikscigpfTtlLmFkZEV2ZW50TGlzdGVuZXIoXCJzdWNjZXNzXCIsaSksZS5hZGRFdmVudExpc3RlbmVyKFwiZXJyb3JcIixhKX0pKTtyZXR1cm4gdC50aGVuKCh0PT57dCBpbnN0YW5jZW9mIElEQkN1cnNvciYmemUuc2V0KHQsZSl9KSkuY2F0Y2goKCgpPT57fSkpLFdlLnNldCh0LGUpLHR9KGUpO2lmKFFlLmhhcyhlKSlyZXR1cm4gUWUuZ2V0KGUpO2NvbnN0IHQ9VmUoZSk7cmV0dXJuIHQhPT1lJiYoUWUuc2V0KGUsdCksV2Uuc2V0KHQsZSkpLHR9Y29uc3QgWGU9ZT0+V2UuZ2V0KGUpLEdlPVtcImdldFwiLFwiZ2V0S2V5XCIsXCJnZXRBbGxcIixcImdldEFsbEtleXNcIixcImNvdW50XCJdLFplPVtcInB1dFwiLFwiYWRkXCIsXCJkZWxldGVcIixcImNsZWFyXCJdLFllPW5ldyBNYXA7ZnVuY3Rpb24gZXQoZSx0KXtpZighKGUgaW5zdGFuY2VvZiBJREJEYXRhYmFzZSl8fHQgaW4gZXx8XCJzdHJpbmdcIiE9dHlwZW9mIHQpcmV0dXJuO2lmKFllLmdldCh0KSlyZXR1cm4gWWUuZ2V0KHQpO2NvbnN0IG49dC5yZXBsYWNlKC9Gcm9tSW5kZXgkLyxcIlwiKSxyPXQhPT1uLGk9WmUuaW5jbHVkZXMobik7aWYoIShuIGluKHI/SURCSW5kZXg6SURCT2JqZWN0U3RvcmUpLnByb3RvdHlwZSl8fCFpJiYhR2UuaW5jbHVkZXMobikpcmV0dXJuO2NvbnN0IGE9YXN5bmMgZnVuY3Rpb24oZSwuLi50KXtjb25zdCBhPXRoaXMudHJhbnNhY3Rpb24oZSxpP1wicmVhZHdyaXRlXCI6XCJyZWFkb25seVwiKTtsZXQgbz1hLnN0b3JlO3JldHVybiByJiYobz1vLmluZGV4KHQuc2hpZnQoKSkpLChhd2FpdCBQcm9taXNlLmFsbChbb1tuXSguLi50KSxpJiZhLmRvbmVdKSlbMF19O3JldHVybiBZZS5zZXQodCxhKSxhfXZhciB0dDt0dD1IZSxIZT17Li4udHQsZ2V0OihlLHQsbik9PmV0KGUsdCl8fHR0LmdldChlLHQsbiksaGFzOihlLHQpPT4hIWV0KGUsdCl8fHR0LmhhcyhlLHQpfTtjb25zdCBudD17aXNSZWFkeTohMSxpZGJLZXl2YWw6bnVsbH07ZnVuY3Rpb24gcnQoZSl7T2JqZWN0LmFzc2lnbihudCxlKX1jb25zdCBpdD17fSxhdD1hc3luYyBlPT57aWYoIW50LmlkYktleXZhbClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO3RyeXtyZXR1cm4gYXdhaXQgbnQuaWRiS2V5dmFsLmdldChlKX1jYXRjaChlKXtyZXR1cm4gQS5vbkVycm9yKG5ldyBFcnJvcihcIkluZGV4ZWREQjpHZXQ6SW50ZXJuYWxFcnJvclwiKSksUHJvbWlzZS5yZXNvbHZlKG51bGwpfX0sb3Q9YXN5bmMoZSx0KT0+e2lmKG50LmlkYktleXZhbCl0cnl7YXdhaXQgbnQuaWRiS2V5dmFsLnNldChlLHQpfWNhdGNoKGUpe0Eub25FcnJvcihuZXcgRXJyb3IoXCJJbmRleGVkREI6U2V0OkludGVybmFsRXJyb3JcIikpfX0sc3Q9KCk9PntcInNlcnZlclwiIT09QS5wbGF0Zm9ybSYmKHNlKHtzZXNzaW9uU3RhcnQ6TGUuc2Vzc2lvblN0YXJ0LGFjOkllLmFjLGFmOkllLmFmLGFoOkllLmFoLGFsOkllLmFsLGFtOkllLmFtLGFyOkllLmFyLGFzOkllLmFzLHB2OkllLnB2fSksSC51c2VySWQmJnNlKHt1c2VySWQ6SC51c2VySWR9KSxvdChTLG9lKSl9LGN0PVwicmdiKDUsMTc3LDEwNSlcIix1dD1lPT57Y29uc3R7bWV0cmljTmFtZTp0LGRhdGE6bn09ZSxyPWUuaW1wb3J0YW5jZXx8bC5sb3c7aWYoIUEuc2hvd0RlYnVnTG9nZ2luZ3x8IWNvbnNvbGUpcmV0dXJuO2NvbnN0IGk9XFxgJWMgXFwke3h9XFxgLGE9XFxgY29sb3I6XFwke2N0fTtmb250LXNpemU6MTFweDtcXGAsbz1cXGBJbXBvcnRhbmNlOiBcXCR7cn1cXGA7Y29uc29sZS5ncm91cChpLGEsdCxvKSxuLmZvckVhY2goKGU9PntlLmV2ZW50X3R5cGU/Y29uc29sZS5sb2coZS5ldmVudF90eXBlLGUpOmNvbnNvbGUubG9nKGUpfSkpLGNvbnNvbGUuZ3JvdXBFbmQoKX0sbHQ9ZT0+e2NvbnN0e21ldHJpY05hbWU6dCxkYXRhOm59PWUscj1lLmltcG9ydGFuY2V8fGwubG93O2lmKCFBLnNob3dEZWJ1Z0xvZ2dpbmd8fCFjb25zb2xlKXJldHVybjtjb25zdCBpPVxcYGNvbG9yOlxcJHtjdH07Zm9udC1zaXplOjExcHg7XFxgLGE9XFxgJWMgXFwke3h9XFxgLG89XFxgSW1wb3J0YW5jZTogXFwke3J9XFxgO2NvbnNvbGUubG9nKGEsaSx0LG4sbyl9LGR0PSgpPT57Y29uc3QgZT1BZSgpO29lLnNlc3Npb25JZCYmb2UubGFzdEV2ZW50VGltZSYmb2Uuc2Vzc2lvblVVSUQmJiFwdChlKXx8KG9lLnNlc3Npb25JZD1lLG9lLnNlc3Npb25VVUlEPVYoKSxVZSh7c2Vzc2lvblN0YXJ0OmV9KSxsdCh7bWV0cmljTmFtZTpcIlN0YXJ0ZWQgbmV3IHNlc3Npb246XCIsZGF0YTp7cGVyc2lzdGVudERhdGE6b2UsdGltZVN0b25lOkxlfX0pKSxvZS5sYXN0RXZlbnRUaW1lPWV9LHB0PWU9PmUtb2UubGFzdEV2ZW50VGltZT4xOGU1O2Z1bmN0aW9uIG10KCl7cmV0dXJuIG10PU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiYoZVtyXT1uW3JdKX1yZXR1cm4gZX0sbXQuYXBwbHkodGhpcyxhcmd1bWVudHMpfWNvbnN0IGZ0PWU9Pnt2YXIgdDsoZT0+e3N3aXRjaChlLmFjdGlvbil7Y2FzZSBmLmNsaWNrOkllLmFjKz0xO2JyZWFrO2Nhc2UgZi5mb2N1czpJZS5hZis9MTticmVhaztjYXNlIGYuaG92ZXI6SWUuYWgrPTE7YnJlYWs7Y2FzZSBmLm1vdmU6SWUuYW0rPTE7YnJlYWs7Y2FzZSBmLnNjcm9sbDpJZS5hbCs9MTticmVhaztjYXNlIGYuc2VhcmNoOkllLmFyKz0xO2JyZWFrO2Nhc2UgZi5zZWxlY3Q6SWUuYXMrPTF9fSkodD1lKSx0LmV2ZW50X3R5cGUhPT1qP3QuZXZlbnRfdHlwZT09PU4mJigoZT0+e2lmKCFlLnNlc3Npb25fcmFuaylyZXR1cm47Y29uc3QgdD1lLnNlc3Npb25fcmFuaztPYmplY3QudmFsdWVzKGgpLmZvckVhY2goKGU9PntJZS5zcXMrPUllW2VdKlBlW2VdfSkpLE9iamVjdC52YWx1ZXModykuZm9yRWFjaCgoZT0+e0llLnNxcys9SWVbZV0qTWVbZV19KSksSWUuc3FzKj1CZVt0XX0pKHQpLE9iamVjdC5hc3NpZ24odCxJZSksRGUoe2FjOjAsYWY6MCxhaDowLGFsOjAsYW06MCxhcjowLGFzOjAscHY6MCxzcXM6MH0pKTpJZS5wdis9MTtjb25zdCBuPWUuZXZlbnRfdHlwZTtkZWxldGUgZS5ldmVudF90eXBlO2NvbnN0IHI9ZS5kZXZpY2VJZD9lLmRldmljZUlkOm51bGwsaT1lLnRpbWVzdGFtcDtyZXR1cm4gZGVsZXRlIGUudGltZXN0YW1wLHNlKHtldmVudElkOm9lLmV2ZW50SWQrMX0pLHNlKHtzZXF1ZW5jZU51bWJlcjpvZS5zZXF1ZW5jZU51bWJlcisxfSksZHQoKSxzdCgpLHtkZXZpY2VfaWQ6SC5kZXZpY2VJZHx8cnx8bnVsbCx1c2VyX2lkOkgudXNlcklkLHRpbWVzdGFtcDppLGV2ZW50X2lkOm9lLmV2ZW50SWQsc2Vzc2lvbl9pZDpvZS5zZXNzaW9uSWR8fC0xLGV2ZW50X3R5cGU6bix2ZXJzaW9uX25hbWU6QS52ZXJzaW9ufHxudWxsLHBsYXRmb3JtOlcuYW1wbGl0dWRlUGxhdGZvcm0sb3NfbmFtZTpXLmFtcGxpdHVkZU9TTmFtZSxvc192ZXJzaW9uOlcuYW1wbGl0dWRlT1NWZXJzaW9uLGRldmljZV9tb2RlbDpXLmFtcGxpdHVkZURldmljZU1vZGVsLGxhbmd1YWdlOkgubGFuZ3VhZ2VDb2RlLGV2ZW50X3Byb3BlcnRpZXM6bXQoe30sZSx7c2Vzc2lvbl91dWlkOm9lLnNlc3Npb25VVUlELGhlaWdodDpXLmhlaWdodCx3aWR0aDpXLndpZHRofSksdXNlcl9wcm9wZXJ0aWVzOlgoKSx1dWlkOlYoKSxsaWJyYXJ5OntuYW1lOlwiQGNiaHEvY2xpZW50LWFuYWx5dGljc1wiLHZlcnNpb246XCIxMC42LjBcIn0sc2VxdWVuY2VfbnVtYmVyOm9lLnNlcXVlbmNlTnVtYmVyLHVzZXJfYWdlbnQ6Vy51c2VyQWdlbnR8fEgudXNlckFnZW50fX0sdnQ9ZT0+ZS5tYXAoKGU9PmZ0KGUpKSk7ZnVuY3Rpb24gZ3QoKXtyZXR1cm4gZ3Q9T2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduLmJpbmQoKTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciByIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJihlW3JdPW5bcl0pfXJldHVybiBlfSxndC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9Y29uc3QgYnQ9ZT0+ZS5tYXAoKGU9PihlPT57Y29uc3QgdD1lLnRhZ3N8fHt9LG49Z3Qoe2F1dGhlZDpKKCk/XCJ0cnVlXCI6XCJmYWxzZVwiLHBsYXRmb3JtOkEucGxhdGZvcm19LHQse3Byb2plY3RfbmFtZTpBLnByb2plY3ROYW1lLHZlcnNpb25fbmFtZTpBLnZlcnNpb258fG51bGx9KTtyZXR1cm57bWV0cmljX25hbWU6ZS5tZXRyaWNOYW1lLHBhZ2VfcGF0aDplLnBhZ2VQYXRofHxudWxsLHZhbHVlOmUudmFsdWUsdGFnczpuLHR5cGU6ZS5tZXRyaWNUeXBlfX0pKGUpKSksaHQ9ZT0+MCE9PWplLm1ldHJpY3NRdWV1ZS5sZW5ndGgmJihqZS5tZXRyaWNzUXVldWUubGVuZ3RoPj1BLmJhdGNoTWV0cmljc1RocmVzaG9sZHx8KGplLm1ldHJpY3NTY2hlZHVsZWR8fChqZS5tZXRyaWNzU2NoZWR1bGVkPSEwLHNldFRpbWVvdXQoKCgpPT57amUubWV0cmljc1NjaGVkdWxlZD0hMSxlKGJ0KGplLm1ldHJpY3NRdWV1ZSkpLGplLm1ldHJpY3NRdWV1ZT1bXX0pLEEuYmF0Y2hNZXRyaWNzUGVyaW9kKSksITEpKSx3dD1lPT4wIT09amUudHJhY2VzUXVldWUubGVuZ3RoJiYoamUudHJhY2VzUXVldWUubGVuZ3RoPj1BLmJhdGNoVHJhY2VzVGhyZXNob2xkfHwoamUudHJhY2VzU2NoZWR1bGVkfHwoamUudHJhY2VzU2NoZWR1bGVkPSEwLHNldFRpbWVvdXQoKCgpPT57amUudHJhY2VzU2NoZWR1bGVkPSExLGUoamUudHJhY2VzUXVldWUpLGplLnRyYWNlc1F1ZXVlPVtdfSksQS5iYXRjaFRyYWNlc1BlcmlvZCkpLCExKSkseXQ9ZT0+e3ZhciB0O3ooKSYmbnVsbCE9KHQ9d2luZG93KSYmdC5yZXF1ZXN0SWRsZUNhbGxiYWNrP3dpbmRvdy5yZXF1ZXN0SWRsZUNhbGxiYWNrKGUse3RpbWVvdXQ6QS5yaWNUaW1lb3V0U2NoZWR1bGVFdmVudH0pOihxKCl8fEYoKSkmJkEuaW50ZXJhY3Rpb25NYW5hZ2VyP0EuaW50ZXJhY3Rpb25NYW5hZ2VyLnJ1bkFmdGVySW50ZXJhY3Rpb25zKGUpOmUoKX07ZnVuY3Rpb24gVHQoKXtyZXR1cm4gVHQ9T2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduLmJpbmQoKTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciByIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJihlW3JdPW5bcl0pfXJldHVybiBlfSxUdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9Y29uc3Qga3Q9XCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9VVRGLThcIixfdD1lPT57Y29uc3R7ZGF0YTp0LGltcG9ydGFuY2U6bixpc0pTT046cixvbkVycm9yOmksdXJsOmF9PWUsbz1yP1wiYXBwbGljYXRpb24vanNvblwiOmt0LHM9bnx8bC5sb3csYz1yP0pTT04uc3RyaW5naWZ5KHQpOm5ldyBVUkxTZWFyY2hQYXJhbXModCkudG9TdHJpbmcoKTtmdW5jdGlvbiB1KCl7Y29uc3QgZT1uZXcgWE1MSHR0cFJlcXVlc3Q7ZS5vcGVuKFwiUE9TVFwiLGEsITApLE9iamVjdC5rZXlzKEEuaGVhZGVyc3x8e30pLmZvckVhY2goKHQ9PntlLnNldFJlcXVlc3RIZWFkZXIodCxBLmhlYWRlcnNbdF0pfSkpLGUuc2V0UmVxdWVzdEhlYWRlcihcIkNvbnRlbnQtVHlwZVwiLGt0KSxILmp3dCYmZS5zZXRSZXF1ZXN0SGVhZGVyKFwiYXV0aG9yaXphdGlvblwiLFxcYEJlYXJlciBcXCR7SC5qd3R9XFxgKSxlLnNlbmQoYyl9aWYoIXooKXx8cnx8IShcInNlbmRCZWFjb25cImluIG5hdmlnYXRvcil8fHMhPT1sLmxvd3x8QS5oZWFkZXJzJiYwIT09T2JqZWN0LmtleXMoQS5oZWFkZXJzKS5sZW5ndGgpaWYoeigpJiYhcil1KCk7ZWxzZXtjb25zdCBlPVR0KHt9LEEuaGVhZGVycyx7XCJDb250ZW50LVR5cGVcIjpvfSk7SC5qd3QmJihlLkF1dGhvcml6YXRpb249XFxgQmVhcmVyIFxcJHtILmp3dH1cXGApLGZldGNoKGEse21ldGhvZDpcIlBPU1RcIixtb2RlOlwibm8tY29yc1wiLGhlYWRlcnM6ZSxib2R5OmN9KS5jYXRjaCgoZT0+e2koZSx7Y29udGV4dDpcIkFuYWx5dGljc1NES0FwaUVycm9yXCJ9KX0pKX1lbHNle2NvbnN0IGU9bmV3IEJsb2IoW2NdLHt0eXBlOmt0fSk7dHJ5e25hdmlnYXRvci5zZW5kQmVhY29uLmJpbmQobmF2aWdhdG9yKShhLGUpfHx1KCl9Y2F0Y2goZSl7Y29uc29sZS5lcnJvcihlKSx1KCl9fX07dmFyIFN0PW4oNzYyKSxFdD1uLm4oU3QpO2NvbnN0IHh0PShlLHQsbik9Pntjb25zdCByPWV8fFwiXCI7cmV0dXJuIEV0KCkoXCIyXCIrcit0K24pfTtmdW5jdGlvbiBPdCgpe3JldHVybiBPdD1PYmplY3QuYXNzaWduP09iamVjdC5hc3NpZ24uYmluZCgpOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuPWFyZ3VtZW50c1t0XTtmb3IodmFyIHIgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixyKSYmKGVbcl09bltyXSl9cmV0dXJuIGV9LE90LmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jbGFzcyBqdCBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMubmFtZT1cIkNpcmN1bGFySnNvblJlZmVyZW5jZVwiLHRoaXMubWVzc2FnZT1lLFwiZnVuY3Rpb25cIj09dHlwZW9mIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlP0Vycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsdGhpcy5jb25zdHJ1Y3Rvcik6dGhpcy5zdGFjaz1uZXcgRXJyb3IoZSkuc3RhY2t9fWNsYXNzIE50IGV4dGVuZHMganR7Y29uc3RydWN0b3IoLi4uZSl7c3VwZXIoLi4uZSksdGhpcy5uYW1lPVwiRG9tUmVmZXJlbmNlSW5BbmFseXRpY3NFdmVudFwifX1mdW5jdGlvbiBJdCgpe3JldHVybiBJdD1PYmplY3QuYXNzaWduP09iamVjdC5hc3NpZ24uYmluZCgpOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuPWFyZ3VtZW50c1t0XTtmb3IodmFyIHIgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixyKSYmKGVbcl09bltyXSl9cmV0dXJuIGV9LEl0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jb25zdCBQdD0oZSx0PWwubG93KT0+e3ZhciBuO2UmJmplLmV2ZW50c1F1ZXVlLnB1c2goZSksbnQuaXNSZWFkeSYmKCFBLnRyYWNrVXNlcklkfHxILnVzZXJJZD8odD09PWwuaGlnaHx8KG49TXQsMCE9PWplLmV2ZW50c1F1ZXVlLmxlbmd0aCYmKGplLmV2ZW50c1F1ZXVlLmxlbmd0aD49QS5iYXRjaEV2ZW50c1RocmVzaG9sZHx8KGplLmV2ZW50c1NjaGVkdWxlZHx8KGplLmV2ZW50c1NjaGVkdWxlZD0hMCxzZXRUaW1lb3V0KCgoKT0+e2plLmV2ZW50c1NjaGVkdWxlZD0hMSxuKHZ0KGplLmV2ZW50c1F1ZXVlKSksamUuZXZlbnRzUXVldWU9W119KSxBLmJhdGNoRXZlbnRzUGVyaW9kKSksMCkpKSkmJkJ0KCk6amUuZXZlbnRzUXVldWUubGVuZ3RoPjEwJiYoQS50cmFja1VzZXJJZD0hMSxBLm9uRXJyb3IobmV3IEVycm9yKFwidXNlcklkIG5vdCBzZXQgaW4gTG9nZ2VkLWluXCIpKSkpfSxNdD0oZSx0PWwubG93KT0+e2lmKEguaXNPcHRPdXR8fDA9PT1lLmxlbmd0aClyZXR1cm47bGV0IG47dHJ5e249SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2godCl7Y29uc3Qgcj1lLm1hcCgoZT0+ZS5ldmVudF90eXBlKSkuam9pbihcIiwgXCIpLFtpLGFdPShlPT57dHJ5e2NvbnN0IG49W107Zm9yKGNvbnN0IHIgb2YgZSl7Y29uc3QgZT1PdCh7fSxyKTtyLmV2ZW50X3Byb3BlcnRpZXMmJihlLmV2ZW50X3Byb3BlcnRpZXM9T3Qoe30sZS5ldmVudF9wcm9wZXJ0aWVzLHtjdXJyZW50VGFyZ2V0Om51bGwsdGFyZ2V0Om51bGwscmVsYXRlZFRhcmdldDpudWxsLF9kaXNwYXRjaEluc3RhbmNlczpudWxsLF90YXJnZXRJbnN0Om51bGwsdmlldzoodD1yLmV2ZW50X3Byb3BlcnRpZXMudmlldyxbXCJzdHJpbmdcIixcIm51bWJlclwiLFwiYm9vbGVhblwiXS5pbmNsdWRlcyh0eXBlb2YgdCk/ci5ldmVudF9wcm9wZXJ0aWVzLnZpZXc6bnVsbCl9KSksbi5wdXNoKGUpfXJldHVyblshMCxKU09OLnN0cmluZ2lmeShuKV19Y2F0Y2goZSl7cmV0dXJuWyExLFwiXCJdfXZhciB0fSkoZSk7aWYoIWkpcmV0dXJuIHZvaWQgQS5vbkVycm9yKG5ldyBqdCh0IGluc3RhbmNlb2YgRXJyb3I/dC5tZXNzYWdlOlwidW5rbm93blwiKSx7bGlzdEV2ZW50VHlwZTpyfSk7bj1hLEEub25FcnJvcihuZXcgTnQoXCJGb3VuZCBET00gZWxlbWVudCByZWZlcmVuY2VcIikse2xpc3RFdmVudFR5cGU6cixzdHJpbmdpZmllZEV2ZW50RGF0YTpufSl9Y29uc3Qgcj1BZSgpLnRvU3RyaW5nKCksaT1JdCh7fSx7ZTpuLHY6XCIyXCIsdXBsb2FkX3RpbWU6cn0se2NsaWVudDpBLmFtcGxpdHVkZUFwaUtleSxjaGVja3N1bTp4dChBLmFtcGxpdHVkZUFwaUtleSxuLHIpfSk7X3Qoe3VybDpBLmV2ZW50c0VuZHBvaW50LGRhdGE6aSxpbXBvcnRhbmNlOnQsb25FcnJvcjpBLm9uRXJyb3J9KSx1dCh7bWV0cmljTmFtZTpcIkJhdGNoIEV2ZW50c1wiLGRhdGE6ZSxpbXBvcnRhbmNlOnR9KX0sQnQ9KCk9PntNdCh2dChqZS5ldmVudHNRdWV1ZSkpLE5lKHtldmVudHNRdWV1ZTpbXX0pfTtmdW5jdGlvbiBDdCgpe3JldHVybiBDdD1PYmplY3QuYXNzaWduP09iamVjdC5hc3NpZ24uYmluZCgpOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuPWFyZ3VtZW50c1t0XTtmb3IodmFyIHIgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixyKSYmKGVbcl09bltyXSl9cmV0dXJuIGV9LEN0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jb25zdCBEdD1PYmplY3QudmFsdWVzKGYpLEF0PU9iamVjdC52YWx1ZXMobSksTHQ9ZT0+RHQuaW5jbHVkZXMoZSk/ZTpmLnVua25vd24sVXQ9ZT0+QXQuaW5jbHVkZXMoZSk/ZTptLnVua25vd24sUnQ9KGUsdCxuKT0+e2NvbnN0IHI9e2F1dGg6SigpP2IubG9nZ2VkSW46Yi5ub3RMb2dnZWRJbixhY3Rpb246THQoZSksY29tcG9uZW50X3R5cGU6VXQodCksbG9nZ2luZ19pZDpuLHBsYXRmb3JtOkEucGxhdGZvcm0scHJvamVjdF9uYW1lOkEucHJvamVjdE5hbWV9O3JldHVyblwibnVtYmVyXCI9PXR5cGVvZiBILnVzZXJUeXBlRW51bSYmKHIudXNlcl90eXBlX2VudW09SC51c2VyVHlwZUVudW0pLHJ9LHF0PWU9Pntjb25zdCB0PUFlKCk7aWYoIWUpcmV0dXJuIEEub25FcnJvcihuZXcgRXJyb3IoXCJtaXNzaW5nIGxvZ0RhdGFcIikpLEN0KHt9LFJ0KGYudW5rbm93bixtLnVua25vd24pLHtsb2NhbGU6SC5sb2NhbGUsc2Vzc2lvbl9sY2NfaWQ6SC5zZXNzaW9uX2xjY19pZCx0aW1lc3RhbXA6dCx0aW1lX3N0YXJ0OkxlLnRpbWVTdGFydH0pO2NvbnN0IG49Q3Qoe30sZSxSdChlLmFjdGlvbixlLmNvbXBvbmVudFR5cGUsZS5sb2dnaW5nSWQpLHtsb2NhbGU6SC5sb2NhbGUsc2Vzc2lvbl9sY2NfaWQ6SC5zZXNzaW9uX2xjY19pZCx0aW1lc3RhbXA6dCx0aW1lX3N0YXJ0OkxlLnRpbWVTdGFydH0pO3JldHVybiBkZWxldGUgbi5jb21wb25lbnRUeXBlLGRlbGV0ZSBuLmxvZ2dpbmdJZCxufSxGdD17YmxhY2tsaXN0UmVnZXg6W10saXNFbmFibGVkOiExfTtmdW5jdGlvbiB6dCgpe3JldHVybntwYWdlX2tleTpyZS5wYWdlS2V5LHBhZ2VfcGF0aDpyZS5wYWdlUGF0aCxwcmV2X3BhZ2Vfa2V5OnJlLnByZXZQYWdlS2V5LHByZXZfcGFnZV9wYXRoOnJlLnByZXZQYWdlUGF0aH19ZnVuY3Rpb24gS3QoZSl7T2JqZWN0LmFzc2lnbihGdCxlKX1mdW5jdGlvbiAkdChlLHQsbj1sLmxvdyl7aWYoSC5pc09wdE91dClyZXR1cm47aWYoIU9lKCkpcmV0dXJuO2NvbnN0IHI9cXQodCk7IWZ1bmN0aW9uKGUpe0Z0LmlzRW5hYmxlZCYmKHZlKCksT2JqZWN0LmFzc2lnbihlLHp0KCkpKX0ociksYmUociksZnVuY3Rpb24oZSl7T2JqZWN0LmtleXMoU2UpLmxlbmd0aD4wJiZPYmplY3QuYXNzaWduKGUsU2UpfShyKSxyLmhhc19kb3VibGVfZmlyZWQ9ITEsci5ldmVudF90eXBlPWUsbj09PWwuaGlnaD9QdChyLG4pOnl0KCgoKT0+e1B0KHIpfSkpfWZ1bmN0aW9uIFF0KGUsdD0hMSl7dD9fdCh7dXJsOkEubWV0cmljc0VuZFBvaW50LGRhdGE6e21ldHJpY3M6ZX0saXNKU09OOiEwLG9uRXJyb3I6QS5vbkVycm9yfSk6eXQoKCgpPT57X3Qoe3VybDpBLm1ldHJpY3NFbmRQb2ludCxkYXRhOnttZXRyaWNzOmV9LGlzSlNPTjohMCxvbkVycm9yOkEub25FcnJvcn0pfSkpLHV0KHttZXRyaWNOYW1lOlwiQmF0Y2ggTWV0cmljc1wiLGRhdGE6ZX0pfWZ1bmN0aW9uIFd0KCl7cmV0dXJuIFd0PU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiYoZVtyXT1uW3JdKX1yZXR1cm4gZX0sV3QuYXBwbHkodGhpcyxhcmd1bWVudHMpfWZ1bmN0aW9uIEh0KGUpe2lmKCFPZSgpKXJldHVybjt2LnNlcnZlciE9PUEucGxhdGZvcm0mJiFlLnBhZ2VQYXRoJiZyZS5wYWdlUGF0aCYmKGUucGFnZVBhdGg9cmUucGFnZVBhdGgpO2NvbnN0IHQ9T2JqZWN0LmtleXMoU2UpLmxlbmd0aD9XdCh7fSxlLnRhZ3MsU2UpOmUudGFnczt0JiZPYmplY3QuYXNzaWduKGUse3RhZ3M6dH0pLGplLm1ldHJpY3NRdWV1ZS5wdXNoKGUpLGh0KFF0KSYmKFF0KGJ0KGplLm1ldHJpY3NRdWV1ZSkpLGplLm1ldHJpY3NRdWV1ZT1bXSl9ZnVuY3Rpb24gVnQoKXtyZXR1cm4gVnQ9T2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduLmJpbmQoKTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciByIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJihlW3JdPW5bcl0pfXJldHVybiBlfSxWdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9bGV0IEp0PWZ1bmN0aW9uKGUpe3JldHVybiBlLmluc3RhbnQ9XCJpbnN0YW50XCIsZS5xdWljaz1cInF1aWNrXCIsZS5tb2RlcmF0ZT1cIm1vZGVyYXRlXCIsZS5zbG93PVwic2xvd1wiLGUudW5hdm9pZGFibGU9XCJ1bmF2b2lkYWJsZVwiLGV9KHt9KTtmdW5jdGlvbiBYdChlKXtyZXR1cm4gZS50b0xvd2VyQ2FzZSgpfWxldCBHdD17fTtjb25zdCBadD0oZSx0KT0+e251bGwhPUEmJkEub25NYXJrU3RlcCYmQS5vbk1hcmtTdGVwKGUsdCkseGUoe3Vqczp0fSl9O2xldCBZdDtjb25zdCBlbj17UGVyZnVtZTooKT0+e30sbWFya1N0ZXA6ZT0+e30sbWFya1N0ZXBPbmNlOmU9Pnt9LGluY3JlbWVudFVqTmF2aWdhdGlvbjooKT0+e319LHRuPSgpPT57eigpJiZZdCYmWXQubWFya05UQlQmJll0Lm1hcmtOVEJUKCl9LG5uPWU9Pnt6KCkmJll0JiZlbi5tYXJrU3RlcCYmZW4ubWFya1N0ZXAoZSl9LHJuPWU9Pnt6KCkmJll0JiZlbi5tYXJrU3RlcE9uY2UmJmVuLm1hcmtTdGVwT25jZShlKX0sYW49KCk9Pnt6KCkmJll0JiZlbi5pbmNyZW1lbnRVak5hdmlnYXRpb24mJmVuLmluY3JlbWVudFVqTmF2aWdhdGlvbigpfTtmdW5jdGlvbiBvbihlPXtjYWxsTWFya05UQlQ6ITB9KXtcInVua25vd25cIiE9PUEucGxhdGZvcm0mJihGdC5ibGFja2xpc3RSZWdleC5zb21lKChlPT5lLnRlc3QoZmUoKSkpKXx8KCR0KGose2FjdGlvbjpmLnJlbmRlcixjb21wb25lbnRUeXBlOm0ucGFnZX0pLGUuY2FsbE1hcmtOVEJUJiZ0bigpKSl9bGV0IHNuPSExLGNuPSExO2NvbnN0IHVuPWU9Pntzbj0hZS5wZXJzaXN0ZWR9LGxuPShlLHQ9XCJoaWRkZW5cIixuPSExKT0+e2NufHwoYWRkRXZlbnRMaXN0ZW5lcihcInBhZ2VoaWRlXCIsdW4pLGFkZEV2ZW50TGlzdGVuZXIoXCJiZWZvcmV1bmxvYWRcIiwoKCk9Pnt9KSksY249ITApLGFkZEV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsKCh7dGltZVN0YW1wOm59KT0+e2RvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PXQmJmUoe3RpbWVTdGFtcDpuLGlzVW5sb2FkaW5nOnNufSl9KSx7Y2FwdHVyZTohMCxvbmNlOm59KX0sZG49MzZlMztmdW5jdGlvbiBwbigpe2NvbnN0IGU9cHQoQWUoKSk7aWYoZSYmKE8uZm9yRWFjaCgoZT0+e29lW2VdJiZkZWxldGUgb2VbZV19KSksc3QoKSksIW9lLmxhc3RFdmVudFRpbWV8fCFMZS5zZXNzaW9uU3RhcnR8fCFlKXJldHVybjtjb25zdCB0PU1hdGgucm91bmQoKG9lLmxhc3RFdmVudFRpbWUtTGUuc2Vzc2lvblN0YXJ0KS8xZTMpO2lmKHQ8MXx8dD5kbilyZXR1cm47Y29uc3Qgbj1DZSh0KTskdChOLHthY3Rpb246Zi5tZWFzdXJlbWVudCxjb21wb25lbnRUeXBlOm0ucGFnZSxzZXNzaW9uX2R1cmF0aW9uOnQsc2Vzc2lvbl9lbmQ6b2UubGFzdEV2ZW50VGltZSxzZXNzaW9uX3N0YXJ0OkxlLnNlc3Npb25TdGFydCxzZXNzaW9uX3Jhbms6bn0pfWZ1bmN0aW9uIG1uKCl7cmV0dXJuIG1uPU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiYoZVtyXT1uW3JdKX1yZXR1cm4gZX0sbW4uYXBwbHkodGhpcyxhcmd1bWVudHMpfWNvbnN0IGZuPVtdLHZuPVtdLGduPSgpPT57Y29uc3QgZT1mbi5zaGlmdCgpO2UmJmUoKX0sYm49KCk9Pntjb25zdCBlPXZuLnNoaWZ0KCk7ZSYmZSgpfTtsZXQgaG49e307ZnVuY3Rpb24gd24oZSl7Y29uc3QgdD1mdW5jdGlvbihlKXtyZXR1cm57dGVzdF9uYW1lOmUudGVzdE5hbWUsZ3JvdXBfbmFtZTplLmdyb3VwLHN1YmplY3RfaWQ6ZS5zdWJqZWN0SWQsZXhwb3NlZF9hdDpBZSgpLHN1YmplY3RfdHlwZTplLnN1YmplY3RUeXBlLHBsYXRmb3JtOkEucGxhdGZvcm19fShlKTtobltlLnRlc3ROYW1lXT1obltlLnRlc3ROYW1lXXx8MCxobltlLnRlc3ROYW1lXStrPkFlKCk/bHQoe21ldHJpY05hbWU6XFxgRXZlbnQ6IGV4cG9zZUV4cGVyaW1lbnQgXFwke2UudGVzdE5hbWV9IG5vdCBzZW50XFxgLGRhdGE6dH0pOihobltlLnRlc3ROYW1lXT1BZSgpLG90KEUsaG4pLGx0KHttZXRyaWNOYW1lOlxcYEV2ZW50OiBleHBvc2VFeHBlcmltZW50IFxcJHtlLnRlc3ROYW1lfSBzZW50XFxgLGRhdGE6dH0pLF90KHt1cmw6QS5leHBvc3VyZUVuZHBvaW50LGRhdGE6W3RdLG9uRXJyb3I6KHQsbik9PntobltlLnRlc3ROYW1lXT0wLG90KEUsaG4pLEEub25FcnJvcih0LG4pfSxpc0pTT046ITAsaW1wb3J0YW5jZTpsLmhpZ2h9KSl9Y29uc3QgeW49ZT0+e3ZhciB0LHIsaTtVKGUpLHooKSYmKEgubGFuZ3VhZ2VDb2RlPShudWxsPT0odD1uYXZpZ2F0b3IpP3ZvaWQgMDp0Lmxhbmd1YWdlc1swXSl8fChudWxsPT0ocj1uYXZpZ2F0b3IpP3ZvaWQgMDpyLmxhbmd1YWdlKXx8XCJcIiksdGUoKSwoKCk9Pnt2YXIgZTtpZih6KCkmJm51bGwhPShlPXdpbmRvdykmJmUuaW5kZXhlZERCKXtjb25zdCBlPWZ1bmN0aW9uKGUsdCx7YmxvY2tlZDpuLHVwZ3JhZGU6cixibG9ja2luZzppLHRlcm1pbmF0ZWQ6YX09e30pe2NvbnN0IG89aW5kZXhlZERCLm9wZW4oZSx0KSxzPUplKG8pO3JldHVybiByJiZvLmFkZEV2ZW50TGlzdGVuZXIoXCJ1cGdyYWRlbmVlZGVkXCIsKGU9PntyKEplKG8ucmVzdWx0KSxlLm9sZFZlcnNpb24sZS5uZXdWZXJzaW9uLEplKG8udHJhbnNhY3Rpb24pLGUpfSkpLG4mJm8uYWRkRXZlbnRMaXN0ZW5lcihcImJsb2NrZWRcIiwoZT0+bihlLm9sZFZlcnNpb24sZS5uZXdWZXJzaW9uLGUpKSkscy50aGVuKChlPT57YSYmZS5hZGRFdmVudExpc3RlbmVyKFwiY2xvc2VcIiwoKCk9PmEoKSkpLGkmJmUuYWRkRXZlbnRMaXN0ZW5lcihcInZlcnNpb25jaGFuZ2VcIiwoZT0+aShlLm9sZFZlcnNpb24sZS5uZXdWZXJzaW9uLGUpKSl9KSkuY2F0Y2goKCgpPT57fSkpLHN9KFwia2V5dmFsLXN0b3JlXCIsMSx7dXBncmFkZShlKXtlLmNyZWF0ZU9iamVjdFN0b3JlKFwia2V5dmFsXCIpfX0pO3J0KHtpZGJLZXl2YWw6e2dldDphc3luYyB0PT4oYXdhaXQgZSkuZ2V0KFwia2V5dmFsXCIsdCksc2V0OmFzeW5jKHQsbik9Pihhd2FpdCBlKS5wdXQoXCJrZXl2YWxcIixuLHQpLGRlbGV0ZTphc3luYyB0PT4oYXdhaXQgZSkuZGVsZXRlKFwia2V5dmFsXCIsdCksa2V5czphc3luYygpPT4oYXdhaXQgZSkuZ2V0QWxsS2V5cyhcImtleXZhbFwiKX19KX1lbHNlIHJ0KHtpZGJLZXl2YWw6e2dldDphc3luYyBlPT5uZXcgUHJvbWlzZSgodD0+e3QoaXRbZV0pfSkpLHNldDphc3luYyhlLHQpPT5uZXcgUHJvbWlzZSgobj0+e2l0W2VdPXQsbihlKX0pKSxkZWxldGU6YXN5bmMgZT0+bmV3IFByb21pc2UoKCgpPT57ZGVsZXRlIGl0W2VdfSkpLGtleXM6YXN5bmMoKT0+bmV3IFByb21pc2UoKGU9PntlKE9iamVjdC5rZXlzKGl0KSl9KSl9fSl9KSgpLGx0KHttZXRyaWNOYW1lOlwiSW5pdGlhbGl6ZWQgQW5hbHl0aWNzOlwiLGRhdGE6e2RldmljZUlkOkguZGV2aWNlSWR9fSksZm4ucHVzaCgoKCk9PntQdCgpfSkpLChhc3luYygpPT57Y29uc3QgZT1hd2FpdCBhdChTKTtydCh7aXNSZWFkeTohMH0pLGduKCksZSYmKGJuKCksc2Uoe2V2ZW50SWQ6ZS5ldmVudElkfHxvZS5ldmVudElkLHNlcXVlbmNlTnVtYmVyOmUuc2VxdWVuY2VOdW1iZXJ8fG9lLnNlcXVlbmNlTnVtYmVyLHNlc3Npb25JZDplLnNlc3Npb25JZHx8b2Uuc2Vzc2lvbklkLGxhc3RFdmVudFRpbWU6ZS5sYXN0RXZlbnRUaW1lfHxvZS5sYXN0RXZlbnRUaW1lLHNlc3Npb25VVUlEOmUuc2Vzc2lvblVVSUR8fG9lLnNlc3Npb25VVUlEfSksZnVuY3Rpb24oZSl7c2UobW4oe30sZnVuY3Rpb24oZSl7Y29uc3QgdD17fTtyZXR1cm4gTy5mb3JFYWNoKChuPT57ZVtuXSYmKHRbbl09ZVtuXSl9KSksdH0oZSksZGUoKSkpfShlKSxVZSh7c2Vzc2lvblN0YXJ0OmUuc2Vzc2lvblN0YXJ0fHxvZS5zZXNzaW9uU3RhcnR9KSxEZSh7YWM6ZS5hY3x8SWUuYWMsYWY6ZS5hZnx8SWUuYWYsYWg6ZS5haHx8SWUuYWgsYWw6ZS5hbHx8SWUuYWwsYW06ZS5hbXx8SWUuYW0sYXI6ZS5hcnx8SWUuYXIsYXM6ZS5hc3x8SWUuYXMscHY6ZS5wdnx8SWUucHZ9KSxBLnRyYWNrVXNlcklkJiZZKHt1c2VySWQ6ZS51c2VySWR8fEgudXNlcklkfSkscG4oKSxsdCh7bWV0cmljTmFtZTpcIkluaXRpYWxpemVkIEFuYWx5dGljcyBJbmRleGVkREI6XCIsZGF0YTplfSkpfSkoKSxhc3luYyBmdW5jdGlvbigpe2F0KEUpLnRoZW4oKGU9Pntobj1udWxsIT1lP2U6e319KSkuY2F0Y2goKGU9PntlIGluc3RhbmNlb2YgRXJyb3ImJkEub25FcnJvcihlKX0pKX0oKSxaKCkseigpJiYobG4oKCgpPT57c2Uoe2xhc3RFdmVudFRpbWU6QWUoKX0pLHN0KCksQnQoKX0pLFwiaGlkZGVuXCIpLGxuKCgoKT0+e3BuKCl9KSxcInZpc2libGVcIikpLHooKSYmKGk9KCk9Pnt2YXIgZSx0LG4scjt0ZSgpLGVlKHt3aWR0aDpudWxsIT0oZT1udWxsPT0odD13aW5kb3cpP3ZvaWQgMDp0LmlubmVyV2lkdGgpP2U6bnVsbCxoZWlnaHQ6bnVsbCE9KG49bnVsbD09KHI9d2luZG93KT92b2lkIDA6ci5pbm5lckhlaWdodCk/bjpudWxsfSl9LGFkZEV2ZW50TGlzdGVuZXIoXCJyZXNpemVcIiwoKCk9PntyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT57aSgpfSkpfSkpKSwoKCk9PntpZih6KCkpdHJ5e2NvbnN0IGU9bigyKTtlbi5tYXJrU3RlcD1lLm1hcmtTdGVwLGVuLm1hcmtTdGVwT25jZT1lLm1hcmtTdGVwT25jZSxlbi5pbmNyZW1lbnRVak5hdmlnYXRpb249ZS5pbmNyZW1lbnRVak5hdmlnYXRpb24sWXQ9bmV3IGUuUGVyZnVtZSh7YW5hbHl0aWNzVHJhY2tlcjplPT57Y29uc3R7ZGF0YTp0LGF0dHJpYnV0aW9uOm4sbWV0cmljTmFtZTpyLG5hdmlnYXRvckluZm9ybWF0aW9uOmkscmF0aW5nOmF9PWUsbz1JW3JdLHM9KG51bGw9PW4/dm9pZCAwOm4uY2F0ZWdvcnkpfHxudWxsO2lmKCFvJiYhcylyZXR1cm47Y29uc3QgYz0obnVsbD09aT92b2lkIDA6aS5kZXZpY2VNZW1vcnkpfHwwLHU9KG51bGw9PWk/dm9pZCAwOmkuaGFyZHdhcmVDb25jdXJyZW5jeSl8fDAsbD0obnVsbD09aT92b2lkIDA6aS5pc0xvd0VuZERldmljZSl8fCExLHA9KG51bGw9PWk/dm9pZCAwOmkuaXNMb3dFbmRFeHBlcmllbmNlKXx8ITEsdj0obnVsbD09aT92b2lkIDA6aS5zZXJ2aWNlV29ya2VyU3RhdHVzKXx8XCJ1bnN1cHBvcnRlZFwiLGc9VnQoe2RldmljZU1lbW9yeTpjLGhhcmR3YXJlQ29uY3VycmVuY3k6dSxpc0xvd0VuZERldmljZTpsLGlzTG93RW5kRXhwZXJpZW5jZTpwLHNlcnZpY2VXb3JrZXJTdGF0dXM6dn0sR3QpLGI9e2lzX2xvd19lbmRfZGV2aWNlOmwsaXNfbG93X2VuZF9leHBlcmllbmNlOnAscGFnZV9rZXk6cmUucGFnZUtleXx8XCJcIixzYXZlX2RhdGE6dC5zYXZlRGF0YXx8ITEsc2VydmljZV93b3JrZXI6dixpc19wZXJmX21ldHJpYzohMH07aWYoXCJuYXZpZ2F0aW9uVGltaW5nXCI9PT1yKXQmJlwibnVtYmVyXCI9PXR5cGVvZiB0LnJlZGlyZWN0VGltZSYmSHQoe21ldHJpY05hbWU6SS5yZWRpcmVjdFRpbWUuZXZlbnROYW1lLG1ldHJpY1R5cGU6ZC5oaXN0b2dyYW0sdGFnczpiLHZhbHVlOnQucmVkaXJlY3RUaW1lfHwwfSk7ZWxzZSBpZihcIlRURkJcIj09PXIpJHQoby5ldmVudE5hbWUsVnQoe2FjdGlvbjpmLm1lYXN1cmVtZW50LGNvbXBvbmVudFR5cGU6bS5wYWdlLGR1cmF0aW9uOnR8fG51bGwsdml0YWxzU2NvcmU6YXx8bnVsbH0sZykpLEh0KHttZXRyaWNOYW1lOkkuVFRGQi5ldmVudE5hbWUsbWV0cmljVHlwZTpkLmhpc3RvZ3JhbSx0YWdzOlZ0KHt9LGIpLHZhbHVlOnR9KSxhJiZIdCh7bWV0cmljTmFtZTpcXGBwZXJmX3dlYl92aXRhbHNfdHRmYl9cXCR7YX1cXGAsbWV0cmljVHlwZTpkLmNvdW50LHRhZ3M6Yix2YWx1ZToxfSk7ZWxzZSBpZihcIm5ldHdvcmtJbmZvcm1hdGlvblwiPT09ciludWxsIT10JiZ0LmVmZmVjdGl2ZVR5cGUmJihHdD10LCR0KG8uZXZlbnROYW1lLHthY3Rpb246Zi5tZWFzdXJlbWVudCxjb21wb25lbnRUeXBlOm0ucGFnZSxuZXR3b3JrSW5mb3JtYXRpb25Eb3dubGluazp0LmRvd25saW5rLG5ldHdvcmtJbmZvcm1hdGlvbkVmZmVjdGl2ZVR5cGU6dC5lZmZlY3RpdmVUeXBlLG5ldHdvcmtJbmZvcm1hdGlvblJ0dDp0LnJ0dCxuZXR3b3JrSW5mb3JtYXRpb25TYXZlRGF0YTp0LnNhdmVEYXRhLG5hdmlnYXRvckRldmljZU1lbW9yeTpjLG5hdmlnYXRvckhhcmR3YXJlQ29uY3VycmVuY3k6dX0pKTtlbHNlIGlmKFwic3RvcmFnZUVzdGltYXRlXCI9PT1yKSR0KG8uZXZlbnROYW1lLFZ0KHthY3Rpb246Zi5tZWFzdXJlbWVudCxjb21wb25lbnRUeXBlOm0ucGFnZX0sdCxnKSksSHQoe21ldHJpY05hbWU6XCJwZXJmX3N0b3JhZ2VfZXN0aW1hdGVfY2FjaGVzXCIsbWV0cmljVHlwZTpkLmhpc3RvZ3JhbSx0YWdzOmIsdmFsdWU6dC5jYWNoZXN9KSxIdCh7bWV0cmljTmFtZTpcInBlcmZfc3RvcmFnZV9lc3RpbWF0ZV9pbmRleGVkX2RiXCIsbWV0cmljVHlwZTpkLmhpc3RvZ3JhbSx0YWdzOmIsdmFsdWU6dC5pbmRleGVkREJ9KTtlbHNlIGlmKFwiQ0xTXCI9PT1yKSR0KG8uZXZlbnROYW1lLFZ0KHthY3Rpb246Zi5tZWFzdXJlbWVudCxjb21wb25lbnRUeXBlOm0ucGFnZSxzY29yZToxMDAqdHx8bnVsbCx2aXRhbHNTY29yZTphfHxudWxsfSxnKSksYSYmSHQoe21ldHJpY05hbWU6XFxgcGVyZl93ZWJfdml0YWxzX2Nsc19cXCR7YX1cXGAsbWV0cmljVHlwZTpkLmNvdW50LHRhZ3M6Yix2YWx1ZToxfSk7ZWxzZSBpZihcIkZJRFwiPT09cil7Y29uc3QgZT0obnVsbD09bj92b2lkIDA6bi5wZXJmb3JtYW5jZUVudHJ5KXx8bnVsbCxyPXBhcnNlSW50KChudWxsPT1lP3ZvaWQgMDplLnByb2Nlc3NpbmdTdGFydCl8fFwiXCIpOyR0KG8uZXZlbnROYW1lLFZ0KHthY3Rpb246Zi5tZWFzdXJlbWVudCxjb21wb25lbnRUeXBlOm0ucGFnZSxkdXJhdGlvbjp0fHxudWxsLHByb2Nlc3NpbmdTdGFydDpudWxsIT1lJiZlLnByb2Nlc3NpbmdTdGFydD9yOm51bGwsc3RhcnRUaW1lOm51bGwhPWUmJmUuc3RhcnRUaW1lP3BhcnNlSW50KGUuc3RhcnRUaW1lKTpudWxsLHZpdGFsc1Njb3JlOmF8fG51bGx9LGcpKSxhJiZIdCh7bWV0cmljTmFtZTpcXGBwZXJmX3dlYl92aXRhbHNfZmlkVml0YWxzX1xcJHthfVxcYCxtZXRyaWNUeXBlOmQuY291bnQsdGFnczpiLHZhbHVlOjF9KX1lbHNlXCJ1c2VySm91cm5leVN0ZXBcIj09PXI/KCR0KFwicGVyZl91c2VyX2pvdXJuZXlfc3RlcFwiLFZ0KHthY3Rpb246Zi5tZWFzdXJlbWVudCxjb21wb25lbnRUeXBlOm0ucGFnZSxkdXJhdGlvbjp0fHxudWxsLHJhdGluZzpudWxsIT1hP2E6bnVsbCxzdGVwX25hbWU6KG51bGw9PW4/dm9pZCAwOm4uc3RlcE5hbWUpfHxcIlwifSxnKSksSHQoe21ldHJpY05hbWU6XFxgdXNlcl9qb3VybmV5X3N0ZXAuXFwke0EucHJvamVjdE5hbWV9LlxcJHtBLnBsYXRmb3JtfS5cXCR7KG51bGw9PW4/dm9pZCAwOm4uc3RlcE5hbWUpfHxcIlwifV92aXRhbHNfXFwke2F9XFxgLG1ldHJpY1R5cGU6ZC5jb3VudCx0YWdzOmIsdmFsdWU6MX0pLEh0KHttZXRyaWNOYW1lOlxcYHVzZXJfam91cm5leV9zdGVwLlxcJHtBLnByb2plY3ROYW1lfS5cXCR7QS5wbGF0Zm9ybX0uXFwkeyhudWxsPT1uP3ZvaWQgMDpuLnN0ZXBOYW1lKXx8XCJcIn1cXGAsbWV0cmljVHlwZTpkLmRpc3RyaWJ1dGlvbix0YWdzOmIsdmFsdWU6dHx8bnVsbH0pKTpJW3JdJiZ0JiYoJHQoby5ldmVudE5hbWUsVnQoe2FjdGlvbjpmLm1lYXN1cmVtZW50LGNvbXBvbmVudFR5cGU6bS5wYWdlLGR1cmF0aW9uOnR8fG51bGwsdml0YWxzU2NvcmU6YXx8bnVsbH0sZykpLGEmJihIdCh7bWV0cmljTmFtZTpcXGBwZXJmX3dlYl92aXRhbHNfXFwke1h0KHIpfV9cXCR7YX1cXGAsbWV0cmljVHlwZTpkLmNvdW50LHRhZ3M6Yix2YWx1ZToxfSksXCJMQ1BcIj09PXImJkh0KHttZXRyaWNOYW1lOlxcYHBlcmZfd2ViX3ZpdGFsc19cXCR7WHQocil9XFxgLG1ldHJpY1R5cGU6ZC5kaXN0cmlidXRpb24sdGFnczpiLHZhbHVlOnR9KSkpfSxtYXhNZWFzdXJlVGltZTozZTQsc3RlcHM6QS5zdGVwcyxvbk1hcmtTdGVwOlp0fSl9Y2F0Y2goZSl7ZSBpbnN0YW5jZW9mIEVycm9yJiZBLm9uRXJyb3IoZSl9fSkoKX0sVG49ZT0+e1koZSksZS51c2VyQWdlbnQmJlooKSxsdCh7bWV0cmljTmFtZTpcIklkZW50aWZ5OlwiLGRhdGE6e2NvdW50cnlDb2RlOkguY291bnRyeUNvZGUsZGV2aWNlSWQ6SC5kZXZpY2VJZCx1c2VySWQ6SC51c2VySWR9fSl9LGtuPSh7YmxhY2tsaXN0UmVnZXg6ZSxwYWdlS2V5UmVnZXg6dCxicm93c2VySGlzdG9yeTpufSk9PntLdCh7YmxhY2tsaXN0UmVnZXg6ZXx8W10saXNFbmFibGVkOiEwfSksYWUoe3BhZ2VLZXlSZWdleDp0fSksb24oe2NhbGxNYXJrTlRCVDohMX0pLG4ubGlzdGVuKCgoKT0+e29uKCl9KSl9LF9uPSh7YmxhY2tsaXN0UmVnZXg6ZSxwYWdlS2V5UmVnZXg6dCxuZXh0SnNSb3V0ZXI6bn0pPT57S3Qoe2JsYWNrbGlzdFJlZ2V4OmV8fFtdLGlzRW5hYmxlZDohMH0pLGFlKHtwYWdlS2V5UmVnZXg6dH0pLG9uKHtjYWxsTWFya05UQlQ6ITF9KSxuLmV2ZW50cy5vbihcInJvdXRlQ2hhbmdlQ29tcGxldGVcIiwoKCk9PntvbigpfSkpfSxTbj0oKT0+e1koe2lzT3B0T3V0OiEwfSksb3QoUyx7fSl9LEVuPSgpPT57WSh7aXNPcHRPdXQ6ITF9KX0seG49e0J1dHRvbjp7bGFiZWw6XCJjYl9idXR0b25cIix1dWlkOlwiZTkyMWEwNzQtNDBlNi00MzcxLTg3MDAtMTM0ZDVjZDYzM2U2XCIsY29tcG9uZW50VHlwZTptLmJ1dHRvbn19O2Z1bmN0aW9uIE9uKGUsdCxuKXtyZXR1cm57Y29tcG9uZW50TmFtZTplLGFjdGlvbnM6dCxkYXRhOm59fWZ1bmN0aW9uIGpuKCl7cmV0dXJuIGpuPU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiYoZVtyXT1uW3JdKX1yZXR1cm4gZX0sam4uYXBwbHkodGhpcyxhcmd1bWVudHMpfWZ1bmN0aW9uIE5uKGUsdCxuKXtjb25zdHtjb21wb25lbnROYW1lOnIsZGF0YTppfT1uOyR0KGUubGFiZWwsam4oe2NvbXBvbmVudFR5cGU6ZS5jb21wb25lbnRUeXBlLGFjdGlvbjp0LGxvZ2dpbmdJZDplLnV1aWQsY29tcG9uZW50X25hbWU6cn0saSkpfWNvbnN0IEluPXthY3Rpb25NYXBwaW5nOntvblByZXNzOmYuY2xpY2ssb25Ib3ZlcjpmLmhvdmVyfSxoYW5kbGVyczp7QnV0dG9uOntbZi5jbGlja106ZT0+Tm4oeG4uQnV0dG9uLGYuY2xpY2ssZSksW2YuaG92ZXJdOmU9Pk5uKHhuLkJ1dHRvbixmLmhvdmVyLGUpfX19O2Z1bmN0aW9uIFBuKGUsdD0hMSl7dD9fdCh7dXJsOkEudHJhY2VzRW5kcG9pbnQsZGF0YTp7dHJhY2VzOmV9LGlzSlNPTjohMCxvbkVycm9yOkEub25FcnJvcn0pOnl0KCgoKT0+e190KHt1cmw6QS50cmFjZXNFbmRwb2ludCxkYXRhOnt0cmFjZXM6ZX0saXNKU09OOiEwLG9uRXJyb3I6QS5vbkVycm9yfSl9KSksdXQoe21ldHJpY05hbWU6XCJCYXRjaCBUcmFjZXNcIixkYXRhOmV9KX1mdW5jdGlvbiBNbigpe3JldHVybiBNbj1PYmplY3QuYXNzaWduP09iamVjdC5hc3NpZ24uYmluZCgpOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuPWFyZ3VtZW50c1t0XTtmb3IodmFyIHIgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixyKSYmKGVbcl09bltyXSl9cmV0dXJuIGV9LE1uLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jb25zdCBCbj0xZTY7ZnVuY3Rpb24gQ24oZSl7cmV0dXJuIGUqQm59ZnVuY3Rpb24gRG4oZT1mdW5jdGlvbigpe3ZhciBlO3JldHVybiBudWxsPT0oZT13aW5kb3cpP3ZvaWQgMDplLmNyeXB0b30oKSl7Y29uc3QgdD1uZXcgVWludDMyQXJyYXkoMik7cmV0dXJuIG51bGw9PWV8fGUuZ2V0UmFuZG9tVmFsdWVzKHQpLCgoQmlnSW50KHRbMF0pPDxCaWdJbnQoMzIpKStCaWdJbnQodFsxXSkpLnRvU3RyaW5nKCl9ZnVuY3Rpb24gQW4oZSx0KXtyZXR1cm57XCJ4LWRhdGFkb2ctb3JpZ2luXCI6XCJydW1cIixcIngtZGF0YWRvZy1wYXJlbnQtaWRcIjp0LFwieC1kYXRhZG9nLXNhbXBsaW5nLXByaW9yaXR5XCI6XCIxXCIsXCJ4LWRhdGFkb2ctdHJhY2UtaWRcIjplfX1mdW5jdGlvbiBMbihlKXt2YXIgdDtjb25zdHtuYW1lOm4sdHJhY2VJZDpyLHNwYW5JZDppLHN0YXJ0OmEsZHVyYXRpb246byxyZXNvdXJjZTpzLG1ldGE6Y309ZTtyZXR1cm57ZHVyYXRpb246bz9DbihvKTowLG5hbWU6bixyZXNvdXJjZTpzLHNlcnZpY2U6QS5wcm9qZWN0TmFtZSxzcGFuX2lkOm51bGwhPWk/aTpEbigpLHN0YXJ0OmE/Q24oYSk6MCx0cmFjZV9pZDpudWxsIT1yP3I6RG4oKSxwYXJlbnRfaWQ6UCx0eXBlOk0sbWV0YTpNbih7cGxhdGZvcm06QS5wbGF0Zm9ybX0scmUucGFnZUtleT97cGFnZV9rZXk6cmUucGFnZUtleX06e30sbnVsbCE9KHQ9U2UudWpzKSYmdC5sZW5ndGg/e2xhc3RfdWpzOlNlLnVqc1tTZS51anMubGVuZ3RoLTFdfTp7fSxudWxsIT1jP2M6e30pfX1mdW5jdGlvbiBVbihlKXtyZXR1cm5bTG4oZSldfWZ1bmN0aW9uIFJuKGUsdCl7T2UoKSYmZnVuY3Rpb24oZSl7cmV0dXJuIGUubGVuZ3RoPjB9KGUpJiYodCYmZnVuY3Rpb24oZSx0KXtlLmZvckVhY2goKGU9PmZ1bmN0aW9uKGUsdCl7Y29uc3Qgbj1Nbih7fSxlLm1ldGEsdC5tZXRhKSxyPXtzdGFydDp0LnN0YXJ0P0NuKHQuc3RhcnQpOmUuc3RhcnQsZHVyYXRpb246dC5kdXJhdGlvbj9Dbih0LmR1cmF0aW9uKTplLmR1cmF0aW9ufTtPYmplY3QuYXNzaWduKGUsdCxNbih7bWV0YTpufSxyKSl9KGUsdCkpKX0oZSx0KSxqZS50cmFjZXNRdWV1ZS5wdXNoKGUpLHd0KFBuKSYmKFBuKGplLnRyYWNlc1F1ZXVlKSxqZS50cmFjZXNRdWV1ZT1bXSkpfWZ1bmN0aW9uIHFuKGUpe3ZhciB0PWZ1bmN0aW9uKGUsdCl7aWYoXCJvYmplY3RcIiE9dHlwZW9mIGV8fG51bGw9PT1lKXJldHVybiBlO3ZhciBuPWVbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1uKXt2YXIgcj1uLmNhbGwoZSxcInN0cmluZ1wiKTtpZihcIm9iamVjdFwiIT10eXBlb2YgcilyZXR1cm4gcjt0aHJvdyBuZXcgVHlwZUVycm9yKFwiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS5cIil9cmV0dXJuIFN0cmluZyhlKX0oZSk7cmV0dXJuXCJzeW1ib2xcIj09dHlwZW9mIHQ/dDpTdHJpbmcodCl9ZnVuY3Rpb24gRm4oKXtyZXR1cm4gRm49T2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduLmJpbmQoKTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciByIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJihlW3JdPW5bcl0pfXJldHVybiBlfSxGbi5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZnVuY3Rpb24gem4oKXtyZXR1cm4gdm9pZCAwIT09dHlwZW9mIHdpbmRvdyYmXCJwZXJmb3JtYW5jZVwiaW4gd2luZG93JiZcIm1hcmtcImluIHBlcmZvcm1hbmNlJiZcImdldEVudHJpZXNCeU5hbWVcImluIHBlcmZvcm1hbmNlfWZ1bmN0aW9uIEtuKGUsdCl7cmV0dXJuXFxgcGVyZl9cXCR7ZX1cXCR7bnVsbCE9dCYmdC5sYWJlbD9cXGBfXFwke3QubGFiZWx9XFxgOlwiXCJ9XFxgfWZ1bmN0aW9uICRuKGUsdCxuKXtyZXR1cm5cXGBcXCR7S24oZSxuKX1fX1xcJHt0fVxcYH1sZXQgUW49e307ZnVuY3Rpb24gV24oZSx0LG4pe2lmKCF6bigpKXJldHVybjtjb25zdCByPSRuKGUsdCxuKTtpZihwZXJmb3JtYW5jZS5tYXJrKHIpLFwiZW5kXCI9PT10KXtjb25zdCB0PUtuKGUsbik7IWZ1bmN0aW9uKGUsdCxuKXt0cnl7cGVyZm9ybWFuY2UubWVhc3VyZShlLHQsbil9Y2F0Y2goZSl7QS5vbkVycm9yKGUpfX0odCwkbihlLFwic3RhcnRcIixuKSxyKTtjb25zdCBpPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUodCkucG9wKCk7aSYmSHQoRm4oe21ldHJpY05hbWU6ZSxtZXRyaWNUeXBlOmQuZGlzdHJpYnV0aW9uLHZhbHVlOmkuZHVyYXRpb259LG51bGwhPW4mJm4udGFncz97dGFnczpuLnRhZ3N9Ont9KSl9fWZ1bmN0aW9uIEhuKGUsdCl7aWYoIXpuKCkpcmV0dXJuO2NvbnN0IG49JG4oZSxcInN0YXJ0XCIsdCk7UW5bbl18fChXbihlLFwic3RhcnRcIix0KSxRbltuXT0hMCl9ZnVuY3Rpb24gVm4oZSx0KXtjb25zdCBuPSRuKGUsXCJzdGFydFwiLHQpLHI9ZnVuY3Rpb24oZSx0KXtpZihudWxsPT1lKXJldHVybnt9O3ZhciBuLHIsaT17fSxhPU9iamVjdC5rZXlzKGUpO2ZvcihyPTA7cjxhLmxlbmd0aDtyKyspbj1hW3JdLHQuaW5kZXhPZihuKT49MHx8KGlbbl09ZVtuXSk7cmV0dXJuIGl9KFFuLFtuXS5tYXAocW4pKTtRbj1yfWZ1bmN0aW9uIEpuKGUsdCl7aWYoIXpuKCkpcmV0dXJuO2NvbnN0IG49JG4oZSxcInN0YXJ0XCIsdCk7UW5bbl0mJihXbihlLFwiZW5kXCIsdCksVm4oZSx0KSl9ZnVuY3Rpb24gWG4oKXt6bigpJiYocGVyZm9ybWFuY2UuY2xlYXJNYXJrcygpLFFuPXt9KX12YXIgR249big3ODQpO2Z1bmN0aW9uIFpuKCl7cmV0dXJuIFpuPU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiYoZVtyXT1uW3JdKX1yZXR1cm4gZX0sWm4uYXBwbHkodGhpcyxhcmd1bWVudHMpfWZ1bmN0aW9uIFluKGUsdCxuPWwubG93KXtjb25zdCByPSgwLEduLnVzZVJlZikodCk7cmV0dXJuKDAsR24udXNlRWZmZWN0KSgoKCk9PntyLmN1cnJlbnQ9dH0pLFt0XSksKDAsR24udXNlQ2FsbGJhY2spKCh0PT57JHQoZSxabih7fSxyLmN1cnJlbnQsdCksbil9KSxbZSxuXSl9ZnVuY3Rpb24gZXIoKXtyZXR1cm4gZXI9T2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduLmJpbmQoKTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciByIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJihlW3JdPW5bcl0pfXJldHVybiBlfSxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZnVuY3Rpb24gdHIoZSx0LG49bC5sb3cpeygwLEduLnVzZUVmZmVjdCkoKCgpPT57Y29uc3Qgcj1lcih7fSx0LHthY3Rpb246Zi5yZW5kZXJ9KTskdChlLHIsbil9KSxbXSl9ZnVuY3Rpb24gbnIoKXtyZXR1cm4gbnI9T2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduLmJpbmQoKTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciByIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJihlW3JdPW5bcl0pfXJldHVybiBlfSxuci5hcHBseSh0aGlzLGFyZ3VtZW50cyl9Y29uc3QgcnI9ZnVuY3Rpb24oZSx0KXtyZXR1cm57bWFya1N0YXJ0UGVyZjooMCxHbi51c2VDYWxsYmFjaykoKCgpPT5IbihlLHQpKSxbZSx0XSksbWFya0VuZFBlcmY6KDAsR24udXNlQ2FsbGJhY2spKChuPT5KbihlLG5yKHt9LHQsbikpKSxbZSx0XSl9fTtmdW5jdGlvbiBpcigpe3JldHVybiBpcj1PYmplY3QuYXNzaWduP09iamVjdC5hc3NpZ24uYmluZCgpOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuPWFyZ3VtZW50c1t0XTtmb3IodmFyIHIgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixyKSYmKGVbcl09bltyXSl9cmV0dXJuIGV9LGlyLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiBhcigpe3JldHVybiBPYmplY3QuZW50cmllcyhpcih7fSxTZSx6dCgpLHtzZXNzaW9uVVVJRDpvZS5zZXNzaW9uVVVJRCx1c2VySWQ6b2UudXNlcklkfSkpLnJlZHVjZSgoKGUsdCk9PntyZXR1cm4gbnVsbCE9KG49dFsxXSkmJlwiXCIhPT1uP2lyKHt9LGUse1t0WzBdXTp0WzFdfSk6ZTt2YXIgbn0pLHt9KX1hc3luYyBmdW5jdGlvbiBvcigpe3JldHVybiBuZXcgUHJvbWlzZSgoZT0+e010KHZ0KGplLmV2ZW50c1F1ZXVlKSksUXQoYnQoamUubWV0cmljc1F1ZXVlKSwhMCksUG4oamUudHJhY2VzUXVldWUsITApLE5lKHtldmVudHNRdWV1ZTpbXSxtZXRyaWNzUXVldWU6W10sdHJhY2VzUXVldWU6W119KSxlKCl9KSl9ZnVuY3Rpb24gc3IoKXtyZXR1cm57XCJYLUNCLURldmljZS1JRFwiOkguZGV2aWNlSWR8fFwidW5rbm93blwiLFwiWC1DQi1Jcy1Mb2dnZWQtSW5cIjpILnVzZXJJZD9cInRydWVcIjpcImZhbHNlXCIsXCJYLUNCLVBhZ2VrZXlcIjpyZS5wYWdlS2V5fHxcInVua25vd25cIixcIlgtQ0ItVUpTXCI6KGU9U2UudWpzLHZvaWQgMD09PWV8fDA9PT1lLmxlbmd0aD9cIlwiOmUuam9pbihcIixcIikpLFwiWC1DQi1QbGF0Zm9ybVwiOkEucGxhdGZvcm18fFwidW5rbm93blwiLFwiWC1DQi1Qcm9qZWN0LU5hbWVcIjpBLnByb2plY3ROYW1lfHxcInVua25vd25cIixcIlgtQ0ItU2Vzc2lvbi1VVUlEXCI6b2Uuc2Vzc2lvblVVSUR8fFwidW5rbm93blwiLFwiWC1DQi1WZXJzaW9uLU5hbWVcIjpBLnZlcnNpb24/U3RyaW5nKEEudmVyc2lvbik6XCJ1bmtub3duXCJ9O3ZhciBlfX0pKCkscn0pKCl9KSk7YDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXRlbGVtZXRyeS1jb250ZW50LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/telemetry-content.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/utils.js": /*!************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/utils.js ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseErrorMessageFromAny: () => (/* binding */ parseErrorMessageFromAny)\n/* harmony export */ });\n// biome-ignore lint/suspicious/noExplicitAny: this is used in a catch block\nconst parseErrorMessageFromAny = (errorOrAny) => {\n return 'message' in errorOrAny && typeof errorOrAny.message === 'string'\n ? errorOrAny.message\n : '';\n};\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L3V0aWxzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdGVsZW1ldHJ5L3V0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9FeHBsaWNpdEFueTogdGhpcyBpcyB1c2VkIGluIGEgY2F0Y2ggYmxvY2tcbmV4cG9ydCBjb25zdCBwYXJzZUVycm9yTWVzc2FnZUZyb21BbnkgPSAoZXJyb3JPckFueSkgPT4ge1xuICAgIHJldHVybiAnbWVzc2FnZScgaW4gZXJyb3JPckFueSAmJiB0eXBlb2YgZXJyb3JPckFueS5tZXNzYWdlID09PSAnc3RyaW5nJ1xuICAgICAgICA/IGVycm9yT3JBbnkubWVzc2FnZVxuICAgICAgICA6ICcnO1xufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWxzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/index.js": /*!*******************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/type/index.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BigIntString: () => (/* binding */ BigIntString),\n/* harmony export */ HexString: () => (/* binding */ HexString),\n/* harmony export */ IntNumber: () => (/* binding */ IntNumber),\n/* harmony export */ OpaqueType: () => (/* binding */ OpaqueType),\n/* harmony export */ RegExpString: () => (/* binding */ RegExpString)\n/* harmony export */ });\nfunction OpaqueType() {\n return (value) => value;\n}\nconst HexString = OpaqueType();\nconst BigIntString = OpaqueType();\nfunction IntNumber(num) {\n return Math.floor(num);\n}\nconst RegExpString = OpaqueType();\n//# sourceMappingURL=index.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdHlwZS9pbmRleC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFPO0FBQ1A7QUFDQTtBQUNPO0FBQ0E7QUFDQTtBQUNQO0FBQ0E7QUFDTztBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvY29yZS90eXBlL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBPcGFxdWVUeXBlKCkge1xuICAgIHJldHVybiAodmFsdWUpID0+IHZhbHVlO1xufVxuZXhwb3J0IGNvbnN0IEhleFN0cmluZyA9IE9wYXF1ZVR5cGUoKTtcbmV4cG9ydCBjb25zdCBCaWdJbnRTdHJpbmcgPSBPcGFxdWVUeXBlKCk7XG5leHBvcnQgZnVuY3Rpb24gSW50TnVtYmVyKG51bSkge1xuICAgIHJldHVybiBNYXRoLmZsb29yKG51bSk7XG59XG5leHBvcnQgY29uc3QgUmVnRXhwU3RyaW5nID0gT3BhcXVlVHlwZSgpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/index.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js": /*!******************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ areAddressArraysEqual: () => (/* binding */ areAddressArraysEqual),\n/* harmony export */ bigIntStringFromBigInt: () => (/* binding */ bigIntStringFromBigInt),\n/* harmony export */ encodeToHexString: () => (/* binding */ encodeToHexString),\n/* harmony export */ ensureAddressString: () => (/* binding */ ensureAddressString),\n/* harmony export */ ensureBigInt: () => (/* binding */ ensureBigInt),\n/* harmony export */ ensureBuffer: () => (/* binding */ ensureBuffer),\n/* harmony export */ ensureEvenLengthHexString: () => (/* binding */ ensureEvenLengthHexString),\n/* harmony export */ ensureHexString: () => (/* binding */ ensureHexString),\n/* harmony export */ ensureIntNumber: () => (/* binding */ ensureIntNumber),\n/* harmony export */ ensureParsedJSONObject: () => (/* binding */ ensureParsedJSONObject),\n/* harmony export */ ensureRegExpString: () => (/* binding */ ensureRegExpString),\n/* harmony export */ getFavicon: () => (/* binding */ getFavicon),\n/* harmony export */ has0xPrefix: () => (/* binding */ has0xPrefix),\n/* harmony export */ hexStringFromBuffer: () => (/* binding */ hexStringFromBuffer),\n/* harmony export */ hexStringFromNumber: () => (/* binding */ hexStringFromNumber),\n/* harmony export */ hexStringToUint8Array: () => (/* binding */ hexStringToUint8Array),\n/* harmony export */ intNumberFromHexString: () => (/* binding */ intNumberFromHexString),\n/* harmony export */ isBigNumber: () => (/* binding */ isBigNumber),\n/* harmony export */ isHexString: () => (/* binding */ isHexString),\n/* harmony export */ prepend0x: () => (/* binding */ prepend0x),\n/* harmony export */ randomBytesHex: () => (/* binding */ randomBytesHex),\n/* harmony export */ range: () => (/* binding */ range),\n/* harmony export */ strip0x: () => (/* binding */ strip0x),\n/* harmony export */ uint8ArrayToHex: () => (/* binding */ uint8ArrayToHex)\n/* harmony export */ });\n/* harmony import */ var _error_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/index.js\");\n/* provided dependency */ var Buffer = __webpack_require__(/*! buffer */ \"(app-pages-browser)/./node_modules/buffer/index.js\")[\"Buffer\"];\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\n\n\nconst INT_STRING_REGEX = /^[0-9]*$/;\nconst HEXADECIMAL_STRING_REGEX = /^[a-f0-9]*$/;\n/**\n * @param length number of bytes\n */\nfunction randomBytesHex(length) {\n return uint8ArrayToHex(crypto.getRandomValues(new Uint8Array(length)));\n}\nfunction uint8ArrayToHex(value) {\n return [...value].map((b) => b.toString(16).padStart(2, '0')).join('');\n}\nfunction hexStringToUint8Array(hexString) {\n return new Uint8Array(hexString.match(/.{1,2}/g).map((byte) => Number.parseInt(byte, 16)));\n}\nfunction hexStringFromBuffer(buf, includePrefix = false) {\n const hex = buf.toString('hex');\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.HexString)(includePrefix ? `0x${hex}` : hex);\n}\nfunction encodeToHexString(str) {\n return hexStringFromBuffer(ensureBuffer(str), true);\n}\nfunction bigIntStringFromBigInt(bi) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.BigIntString)(bi.toString(10));\n}\nfunction intNumberFromHexString(hex) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(Number(BigInt(ensureEvenLengthHexString(hex, true))));\n}\nfunction hexStringFromNumber(num) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.HexString)(`0x${BigInt(num).toString(16)}`);\n}\nfunction has0xPrefix(str) {\n return str.startsWith('0x') || str.startsWith('0X');\n}\nfunction strip0x(hex) {\n if (has0xPrefix(hex)) {\n return hex.slice(2);\n }\n return hex;\n}\nfunction prepend0x(hex) {\n if (has0xPrefix(hex)) {\n return `0x${hex.slice(2)}`;\n }\n return `0x${hex}`;\n}\nfunction isHexString(hex) {\n if (typeof hex !== 'string') {\n return false;\n }\n const s = strip0x(hex).toLowerCase();\n return HEXADECIMAL_STRING_REGEX.test(s);\n}\nfunction ensureHexString(hex, includePrefix = false) {\n if (typeof hex === 'string') {\n const s = strip0x(hex).toLowerCase();\n if (HEXADECIMAL_STRING_REGEX.test(s)) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.HexString)(includePrefix ? `0x${s}` : s);\n }\n }\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams(`\"${String(hex)}\" is not a hexadecimal string`);\n}\nfunction ensureEvenLengthHexString(hex, includePrefix = false) {\n let h = ensureHexString(hex, false);\n if (h.length % 2 === 1) {\n h = (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.HexString)(`0${h}`);\n }\n return includePrefix ? (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.HexString)(`0x${h}`) : h;\n}\nfunction ensureAddressString(str) {\n if (typeof str === 'string') {\n const s = strip0x(str).toLowerCase();\n if (isHexString(s) && s.length === 40) {\n return prepend0x(s);\n }\n }\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams(`Invalid Ethereum address: ${String(str)}`);\n}\nfunction ensureBuffer(str) {\n if (Buffer.isBuffer(str)) {\n return str;\n }\n if (typeof str === 'string') {\n if (isHexString(str)) {\n const s = ensureEvenLengthHexString(str, false);\n return Buffer.from(s, 'hex');\n }\n return Buffer.from(str, 'utf8');\n }\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams(`Not binary data: ${String(str)}`);\n}\nfunction ensureIntNumber(num) {\n if (typeof num === 'number' && Number.isInteger(num)) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(num);\n }\n if (typeof num === 'string') {\n if (INT_STRING_REGEX.test(num)) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(Number(num));\n }\n if (isHexString(num)) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(Number(BigInt(ensureEvenLengthHexString(num, true))));\n }\n }\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams(`Not an integer: ${String(num)}`);\n}\nfunction ensureRegExpString(regExp) {\n if (regExp instanceof RegExp) {\n return (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.RegExpString)(regExp.toString());\n }\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams(`Not a RegExp: ${String(regExp)}`);\n}\nfunction ensureBigInt(val) {\n if (val !== null && (typeof val === 'bigint' || isBigNumber(val))) {\n // biome-ignore lint/suspicious/noExplicitAny: force cast to any to avoid type error\n return BigInt(val.toString(10));\n }\n if (typeof val === 'number') {\n return BigInt(ensureIntNumber(val));\n }\n if (typeof val === 'string') {\n if (INT_STRING_REGEX.test(val)) {\n return BigInt(val);\n }\n if (isHexString(val)) {\n return BigInt(ensureEvenLengthHexString(val, true));\n }\n }\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams(`Not an integer: ${String(val)}`);\n}\nfunction ensureParsedJSONObject(val) {\n if (typeof val === 'string') {\n return JSON.parse(val);\n }\n if (typeof val === 'object') {\n return val;\n }\n throw _error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams(`Not a JSON string or an object: ${String(val)}`);\n}\nfunction isBigNumber(val) {\n // biome-ignore lint/suspicious/noExplicitAny: force cast to any to avoid type error\n if (val == null || typeof val.constructor !== 'function') {\n return false;\n }\n // biome-ignore lint/suspicious/noExplicitAny: force cast to any to avoid type error\n const { constructor: constructor_ } = val;\n return typeof constructor_.config === 'function' && typeof constructor_.EUCLID === 'number';\n}\nfunction range(start, stop) {\n return Array.from({ length: stop - start }, (_, i) => start + i);\n}\nfunction getFavicon() {\n const el = document.querySelector('link[sizes=\"192x192\"]') ||\n document.querySelector('link[sizes=\"180x180\"]') ||\n document.querySelector('link[rel=\"icon\"]') ||\n document.querySelector('link[rel=\"shortcut icon\"]');\n const { protocol, host } = document.location;\n const href = el ? el.getAttribute('href') : null;\n if (!href || href.startsWith('javascript:') || href.startsWith('vbscript:')) {\n return `${protocol}//${host}/favicon.ico`; // fallback\n }\n if (href.startsWith('http://') || href.startsWith('https://') || href.startsWith('data:')) {\n return href;\n }\n if (href.startsWith('//')) {\n return protocol + href;\n }\n return `${protocol}//${host}${href}`;\n}\nfunction areAddressArraysEqual(arr1, arr2) {\n return arr1.length === arr2.length && arr1.every((value, index) => value === arr2[index]);\n}\n//# sourceMappingURL=util.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdHlwZS91dGlsLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ29EO0FBQzBCO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDTztBQUNQLDZDQUE2QyxJQUFJO0FBQ2pEO0FBQ087QUFDUDtBQUNBLFdBQVcsb0RBQVMsc0JBQXNCLElBQUk7QUFDOUM7QUFDTztBQUNQO0FBQ0E7QUFDTztBQUNQLFdBQVcsdURBQVk7QUFDdkI7QUFDTztBQUNQLFdBQVcsb0RBQVM7QUFDcEI7QUFDTztBQUNQLFdBQVcsb0RBQVMsTUFBTSx5QkFBeUI7QUFDbkQ7QUFDTztBQUNQO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0Esb0JBQW9CLGFBQWE7QUFDakM7QUFDQSxnQkFBZ0IsSUFBSTtBQUNwQjtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsb0RBQVMsc0JBQXNCLEVBQUU7QUFDcEQ7QUFDQTtBQUNBLFVBQVUsNERBQWMsdUJBQXVCLFlBQVk7QUFDM0Q7QUFDTztBQUNQO0FBQ0E7QUFDQSxZQUFZLG9EQUFTLEtBQUssRUFBRTtBQUM1QjtBQUNBLDJCQUEyQixvREFBUyxNQUFNLEVBQUU7QUFDNUM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVUsNERBQWMsZ0RBQWdELFlBQVk7QUFDcEY7QUFDTztBQUNQLFFBQVEsTUFBTTtBQUNkO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsTUFBTTtBQUN6QjtBQUNBLGVBQWUsTUFBTTtBQUNyQjtBQUNBLFVBQVUsNERBQWMsdUNBQXVDLFlBQVk7QUFDM0U7QUFDTztBQUNQO0FBQ0EsZUFBZSxvREFBUztBQUN4QjtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsb0RBQVM7QUFDNUI7QUFDQTtBQUNBLG1CQUFtQixvREFBUztBQUM1QjtBQUNBO0FBQ0EsVUFBVSw0REFBYyxzQ0FBc0MsWUFBWTtBQUMxRTtBQUNPO0FBQ1A7QUFDQSxlQUFlLHVEQUFZO0FBQzNCO0FBQ0EsVUFBVSw0REFBYyxvQ0FBb0MsZUFBZTtBQUMzRTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVSw0REFBYyxzQ0FBc0MsWUFBWTtBQUMxRTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVSw0REFBYyxzREFBc0QsWUFBWTtBQUMxRjtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksNEJBQTRCO0FBQ3hDO0FBQ0E7QUFDTztBQUNQLHdCQUF3QixzQkFBc0I7QUFDOUM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxpQkFBaUI7QUFDN0I7QUFDQTtBQUNBLGtCQUFrQixTQUFTLElBQUksS0FBSyxlQUFlO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxTQUFTLElBQUksS0FBSyxFQUFFLEtBQUs7QUFDdkM7QUFDTztBQUNQO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NvcmUvdHlwZS91dGlsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIENvaW5iYXNlLCBJbmMuIDxodHRwczovL3d3dy5jb2luYmFzZS5jb20vPlxuaW1wb3J0IHsgc3RhbmRhcmRFcnJvcnMgfSBmcm9tICcuLi9lcnJvci9lcnJvcnMuanMnO1xuaW1wb3J0IHsgQmlnSW50U3RyaW5nLCBIZXhTdHJpbmcsIEludE51bWJlciwgUmVnRXhwU3RyaW5nIH0gZnJvbSAnLi9pbmRleC5qcyc7XG5jb25zdCBJTlRfU1RSSU5HX1JFR0VYID0gL15bMC05XSokLztcbmNvbnN0IEhFWEFERUNJTUFMX1NUUklOR19SRUdFWCA9IC9eW2EtZjAtOV0qJC87XG4vKipcbiAqIEBwYXJhbSBsZW5ndGggbnVtYmVyIG9mIGJ5dGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYW5kb21CeXRlc0hleChsZW5ndGgpIHtcbiAgICByZXR1cm4gdWludDhBcnJheVRvSGV4KGNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQ4QXJyYXkobGVuZ3RoKSkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHVpbnQ4QXJyYXlUb0hleCh2YWx1ZSkge1xuICAgIHJldHVybiBbLi4udmFsdWVdLm1hcCgoYikgPT4gYi50b1N0cmluZygxNikucGFkU3RhcnQoMiwgJzAnKSkuam9pbignJyk7XG59XG5leHBvcnQgZnVuY3Rpb24gaGV4U3RyaW5nVG9VaW50OEFycmF5KGhleFN0cmluZykge1xuICAgIHJldHVybiBuZXcgVWludDhBcnJheShoZXhTdHJpbmcubWF0Y2goLy57MSwyfS9nKS5tYXAoKGJ5dGUpID0+IE51bWJlci5wYXJzZUludChieXRlLCAxNikpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBoZXhTdHJpbmdGcm9tQnVmZmVyKGJ1ZiwgaW5jbHVkZVByZWZpeCA9IGZhbHNlKSB7XG4gICAgY29uc3QgaGV4ID0gYnVmLnRvU3RyaW5nKCdoZXgnKTtcbiAgICByZXR1cm4gSGV4U3RyaW5nKGluY2x1ZGVQcmVmaXggPyBgMHgke2hleH1gIDogaGV4KTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVUb0hleFN0cmluZyhzdHIpIHtcbiAgICByZXR1cm4gaGV4U3RyaW5nRnJvbUJ1ZmZlcihlbnN1cmVCdWZmZXIoc3RyKSwgdHJ1ZSk7XG59XG5leHBvcnQgZnVuY3Rpb24gYmlnSW50U3RyaW5nRnJvbUJpZ0ludChiaSkge1xuICAgIHJldHVybiBCaWdJbnRTdHJpbmcoYmkudG9TdHJpbmcoMTApKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpbnROdW1iZXJGcm9tSGV4U3RyaW5nKGhleCkge1xuICAgIHJldHVybiBJbnROdW1iZXIoTnVtYmVyKEJpZ0ludChlbnN1cmVFdmVuTGVuZ3RoSGV4U3RyaW5nKGhleCwgdHJ1ZSkpKSk7XG59XG5leHBvcnQgZnVuY3Rpb24gaGV4U3RyaW5nRnJvbU51bWJlcihudW0pIHtcbiAgICByZXR1cm4gSGV4U3RyaW5nKGAweCR7QmlnSW50KG51bSkudG9TdHJpbmcoMTYpfWApO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGhhczB4UHJlZml4KHN0cikge1xuICAgIHJldHVybiBzdHIuc3RhcnRzV2l0aCgnMHgnKSB8fCBzdHIuc3RhcnRzV2l0aCgnMFgnKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBzdHJpcDB4KGhleCkge1xuICAgIGlmIChoYXMweFByZWZpeChoZXgpKSB7XG4gICAgICAgIHJldHVybiBoZXguc2xpY2UoMik7XG4gICAgfVxuICAgIHJldHVybiBoZXg7XG59XG5leHBvcnQgZnVuY3Rpb24gcHJlcGVuZDB4KGhleCkge1xuICAgIGlmIChoYXMweFByZWZpeChoZXgpKSB7XG4gICAgICAgIHJldHVybiBgMHgke2hleC5zbGljZSgyKX1gO1xuICAgIH1cbiAgICByZXR1cm4gYDB4JHtoZXh9YDtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc0hleFN0cmluZyhoZXgpIHtcbiAgICBpZiAodHlwZW9mIGhleCAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBjb25zdCBzID0gc3RyaXAweChoZXgpLnRvTG93ZXJDYXNlKCk7XG4gICAgcmV0dXJuIEhFWEFERUNJTUFMX1NUUklOR19SRUdFWC50ZXN0KHMpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUhleFN0cmluZyhoZXgsIGluY2x1ZGVQcmVmaXggPSBmYWxzZSkge1xuICAgIGlmICh0eXBlb2YgaGV4ID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBzID0gc3RyaXAweChoZXgpLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIGlmIChIRVhBREVDSU1BTF9TVFJJTkdfUkVHRVgudGVzdChzKSkge1xuICAgICAgICAgICAgcmV0dXJuIEhleFN0cmluZyhpbmNsdWRlUHJlZml4ID8gYDB4JHtzfWAgOiBzKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcyhgXCIke1N0cmluZyhoZXgpfVwiIGlzIG5vdCBhIGhleGFkZWNpbWFsIHN0cmluZ2ApO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUV2ZW5MZW5ndGhIZXhTdHJpbmcoaGV4LCBpbmNsdWRlUHJlZml4ID0gZmFsc2UpIHtcbiAgICBsZXQgaCA9IGVuc3VyZUhleFN0cmluZyhoZXgsIGZhbHNlKTtcbiAgICBpZiAoaC5sZW5ndGggJSAyID09PSAxKSB7XG4gICAgICAgIGggPSBIZXhTdHJpbmcoYDAke2h9YCk7XG4gICAgfVxuICAgIHJldHVybiBpbmNsdWRlUHJlZml4ID8gSGV4U3RyaW5nKGAweCR7aH1gKSA6IGg7XG59XG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlQWRkcmVzc1N0cmluZyhzdHIpIHtcbiAgICBpZiAodHlwZW9mIHN0ciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgcyA9IHN0cmlwMHgoc3RyKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBpZiAoaXNIZXhTdHJpbmcocykgJiYgcy5sZW5ndGggPT09IDQwKSB7XG4gICAgICAgICAgICByZXR1cm4gcHJlcGVuZDB4KHMpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKGBJbnZhbGlkIEV0aGVyZXVtIGFkZHJlc3M6ICR7U3RyaW5nKHN0cil9YCk7XG59XG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlQnVmZmVyKHN0cikge1xuICAgIGlmIChCdWZmZXIuaXNCdWZmZXIoc3RyKSkge1xuICAgICAgICByZXR1cm4gc3RyO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHN0ciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKGlzSGV4U3RyaW5nKHN0cikpIHtcbiAgICAgICAgICAgIGNvbnN0IHMgPSBlbnN1cmVFdmVuTGVuZ3RoSGV4U3RyaW5nKHN0ciwgZmFsc2UpO1xuICAgICAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKHMsICdoZXgnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gQnVmZmVyLmZyb20oc3RyLCAndXRmOCcpO1xuICAgIH1cbiAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcyhgTm90IGJpbmFyeSBkYXRhOiAke1N0cmluZyhzdHIpfWApO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUludE51bWJlcihudW0pIHtcbiAgICBpZiAodHlwZW9mIG51bSA9PT0gJ251bWJlcicgJiYgTnVtYmVyLmlzSW50ZWdlcihudW0pKSB7XG4gICAgICAgIHJldHVybiBJbnROdW1iZXIobnVtKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBudW0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGlmIChJTlRfU1RSSU5HX1JFR0VYLnRlc3QobnVtKSkge1xuICAgICAgICAgICAgcmV0dXJuIEludE51bWJlcihOdW1iZXIobnVtKSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzSGV4U3RyaW5nKG51bSkpIHtcbiAgICAgICAgICAgIHJldHVybiBJbnROdW1iZXIoTnVtYmVyKEJpZ0ludChlbnN1cmVFdmVuTGVuZ3RoSGV4U3RyaW5nKG51bSwgdHJ1ZSkpKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoYE5vdCBhbiBpbnRlZ2VyOiAke1N0cmluZyhudW0pfWApO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZVJlZ0V4cFN0cmluZyhyZWdFeHApIHtcbiAgICBpZiAocmVnRXhwIGluc3RhbmNlb2YgUmVnRXhwKSB7XG4gICAgICAgIHJldHVybiBSZWdFeHBTdHJpbmcocmVnRXhwLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcyhgTm90IGEgUmVnRXhwOiAke1N0cmluZyhyZWdFeHApfWApO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUJpZ0ludCh2YWwpIHtcbiAgICBpZiAodmFsICE9PSBudWxsICYmICh0eXBlb2YgdmFsID09PSAnYmlnaW50JyB8fCBpc0JpZ051bWJlcih2YWwpKSkge1xuICAgICAgICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vRXhwbGljaXRBbnk6IGZvcmNlIGNhc3QgdG8gYW55IHRvIGF2b2lkIHR5cGUgZXJyb3JcbiAgICAgICAgcmV0dXJuIEJpZ0ludCh2YWwudG9TdHJpbmcoMTApKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiBCaWdJbnQoZW5zdXJlSW50TnVtYmVyKHZhbCkpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKElOVF9TVFJJTkdfUkVHRVgudGVzdCh2YWwpKSB7XG4gICAgICAgICAgICByZXR1cm4gQmlnSW50KHZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzSGV4U3RyaW5nKHZhbCkpIHtcbiAgICAgICAgICAgIHJldHVybiBCaWdJbnQoZW5zdXJlRXZlbkxlbmd0aEhleFN0cmluZyh2YWwsIHRydWUpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcyhgTm90IGFuIGludGVnZXI6ICR7U3RyaW5nKHZhbCl9YCk7XG59XG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlUGFyc2VkSlNPTk9iamVjdCh2YWwpIHtcbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UodmFsKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB2YWwgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIHJldHVybiB2YWw7XG4gICAgfVxuICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKGBOb3QgYSBKU09OIHN0cmluZyBvciBhbiBvYmplY3Q6ICR7U3RyaW5nKHZhbCl9YCk7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNCaWdOdW1iZXIodmFsKSB7XG4gICAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy9ub0V4cGxpY2l0QW55OiBmb3JjZSBjYXN0IHRvIGFueSB0byBhdm9pZCB0eXBlIGVycm9yXG4gICAgaWYgKHZhbCA9PSBudWxsIHx8IHR5cGVvZiB2YWwuY29uc3RydWN0b3IgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vRXhwbGljaXRBbnk6IGZvcmNlIGNhc3QgdG8gYW55IHRvIGF2b2lkIHR5cGUgZXJyb3JcbiAgICBjb25zdCB7IGNvbnN0cnVjdG9yOiBjb25zdHJ1Y3Rvcl8gfSA9IHZhbDtcbiAgICByZXR1cm4gdHlwZW9mIGNvbnN0cnVjdG9yXy5jb25maWcgPT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIGNvbnN0cnVjdG9yXy5FVUNMSUQgPT09ICdudW1iZXInO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHJhbmdlKHN0YXJ0LCBzdG9wKSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oeyBsZW5ndGg6IHN0b3AgLSBzdGFydCB9LCAoXywgaSkgPT4gc3RhcnQgKyBpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBnZXRGYXZpY29uKCkge1xuICAgIGNvbnN0IGVsID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbGlua1tzaXplcz1cIjE5MngxOTJcIl0nKSB8fFxuICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdsaW5rW3NpemVzPVwiMTgweDE4MFwiXScpIHx8XG4gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpbmtbcmVsPVwiaWNvblwiXScpIHx8XG4gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpbmtbcmVsPVwic2hvcnRjdXQgaWNvblwiXScpO1xuICAgIGNvbnN0IHsgcHJvdG9jb2wsIGhvc3QgfSA9IGRvY3VtZW50LmxvY2F0aW9uO1xuICAgIGNvbnN0IGhyZWYgPSBlbCA/IGVsLmdldEF0dHJpYnV0ZSgnaHJlZicpIDogbnVsbDtcbiAgICBpZiAoIWhyZWYgfHwgaHJlZi5zdGFydHNXaXRoKCdqYXZhc2NyaXB0OicpIHx8IGhyZWYuc3RhcnRzV2l0aCgndmJzY3JpcHQ6JykpIHtcbiAgICAgICAgcmV0dXJuIGAke3Byb3RvY29sfS8vJHtob3N0fS9mYXZpY29uLmljb2A7IC8vIGZhbGxiYWNrXG4gICAgfVxuICAgIGlmIChocmVmLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSB8fCBocmVmLnN0YXJ0c1dpdGgoJ2h0dHBzOi8vJykgfHwgaHJlZi5zdGFydHNXaXRoKCdkYXRhOicpKSB7XG4gICAgICAgIHJldHVybiBocmVmO1xuICAgIH1cbiAgICBpZiAoaHJlZi5zdGFydHNXaXRoKCcvLycpKSB7XG4gICAgICAgIHJldHVybiBwcm90b2NvbCArIGhyZWY7XG4gICAgfVxuICAgIHJldHVybiBgJHtwcm90b2NvbH0vLyR7aG9zdH0ke2hyZWZ9YDtcbn1cbmV4cG9ydCBmdW5jdGlvbiBhcmVBZGRyZXNzQXJyYXlzRXF1YWwoYXJyMSwgYXJyMikge1xuICAgIHJldHVybiBhcnIxLmxlbmd0aCA9PT0gYXJyMi5sZW5ndGggJiYgYXJyMS5ldmVyeSgodmFsdWUsIGluZGV4KSA9PiB2YWx1ZSA9PT0gYXJyMltpbmRleF0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXRpbC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletProvider.js": /*!********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletProvider.js ***! \********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createCoinbaseWalletProvider: () => (/* binding */ createCoinbaseWalletProvider)\n/* harmony export */ });\n/* harmony import */ var _util_provider_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util/provider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/provider.js\");\n/* harmony import */ var _CoinbaseWalletProvider_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CoinbaseWalletProvider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletProvider.js\");\n\n\nfunction createCoinbaseWalletProvider(options) {\n var _a;\n const params = {\n metadata: options.metadata,\n preference: options.preference,\n };\n return (_a = (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_0__.getCoinbaseInjectedProvider)(params)) !== null && _a !== void 0 ? _a : new _CoinbaseWalletProvider_js__WEBPACK_IMPORTED_MODULE_1__.CoinbaseWalletProvider(params);\n}\n//# sourceMappingURL=createCoinbaseWalletProvider.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NyZWF0ZUNvaW5iYXNlV2FsbGV0UHJvdmlkZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWlFO0FBQ0k7QUFDOUQ7QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLDhFQUEyQiwrQ0FBK0MsOEVBQXNCO0FBQ2pIO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9jcmVhdGVDb2luYmFzZVdhbGxldFByb3ZpZGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldENvaW5iYXNlSW5qZWN0ZWRQcm92aWRlciB9IGZyb20gJy4vdXRpbC9wcm92aWRlci5qcyc7XG5pbXBvcnQgeyBDb2luYmFzZVdhbGxldFByb3ZpZGVyIH0gZnJvbSAnLi9Db2luYmFzZVdhbGxldFByb3ZpZGVyLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDb2luYmFzZVdhbGxldFByb3ZpZGVyKG9wdGlvbnMpIHtcbiAgICB2YXIgX2E7XG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgICBtZXRhZGF0YTogb3B0aW9ucy5tZXRhZGF0YSxcbiAgICAgICAgcHJlZmVyZW5jZTogb3B0aW9ucy5wcmVmZXJlbmNlLFxuICAgIH07XG4gICAgcmV0dXJuIChfYSA9IGdldENvaW5iYXNlSW5qZWN0ZWRQcm92aWRlcihwYXJhbXMpKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBuZXcgQ29pbmJhc2VXYWxsZXRQcm92aWRlcihwYXJhbXMpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y3JlYXRlQ29pbmJhc2VXYWxsZXRQcm92aWRlci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletProvider.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletSDK.js": /*!***************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletSDK.js ***! \***************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createCoinbaseWalletSDK: () => (/* binding */ createCoinbaseWalletSDK)\n/* harmony export */ });\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _core_telemetry_initCCA_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./core/telemetry/initCCA.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/initCCA.js\");\n/* harmony import */ var _sign_scw_utils_constants_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./sign/scw/utils/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js\");\n/* harmony import */ var _util_assertPresence_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./util/assertPresence.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js\");\n/* harmony import */ var _util_checkCrossOriginOpenerPolicy_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./util/checkCrossOriginOpenerPolicy.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/checkCrossOriginOpenerPolicy.js\");\n/* harmony import */ var _util_validatePreferences_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util/validatePreferences.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/validatePreferences.js\");\n/* harmony import */ var _createCoinbaseWalletProvider_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createCoinbaseWalletProvider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletProvider.js\");\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n\n\n\n\n\n\n\n\nconst DEFAULT_PREFERENCE = {\n options: 'all',\n};\n/**\n * Create a Coinbase Wallet SDK instance.\n * @param params - Options to create a Coinbase Wallet SDK instance.\n * @returns A Coinbase Wallet SDK object.\n */\nfunction createCoinbaseWalletSDK(params) {\n var _a, _b, _c, _d;\n const options = {\n metadata: {\n appName: params.appName || 'Dapp',\n appLogoUrl: params.appLogoUrl || '',\n appChainIds: params.appChainIds || [],\n },\n preference: Object.assign(DEFAULT_PREFERENCE, (_a = params.preference) !== null && _a !== void 0 ? _a : {}),\n paymasterUrls: params.paymasterUrls,\n };\n // If we have a toOwnerAccount function, set it in the non-persisted config\n if ((_b = params.subAccounts) === null || _b === void 0 ? void 0 : _b.toOwnerAccount) {\n (0,_util_validatePreferences_js__WEBPACK_IMPORTED_MODULE_0__.validateSubAccount)(params.subAccounts.toOwnerAccount);\n }\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.set({\n toOwnerAccount: (_c = params.subAccounts) === null || _c === void 0 ? void 0 : _c.toOwnerAccount,\n // @ts-expect-error - enableSubAccounts is not officially supported yet\n enableAutoSubAccounts: (_d = params.subAccounts) === null || _d === void 0 ? void 0 : _d.enableAutoSubAccounts,\n });\n // set the options in the store\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.config.set(options);\n // rehydrate the store from storage\n void _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.persist.rehydrate();\n // check the cross origin opener policy\n void (0,_util_checkCrossOriginOpenerPolicy_js__WEBPACK_IMPORTED_MODULE_2__.checkCrossOriginOpenerPolicy)();\n // load the telemetry script\n if (options.preference.telemetry !== false) {\n void (0,_core_telemetry_initCCA_js__WEBPACK_IMPORTED_MODULE_3__.loadTelemetryScript)();\n }\n // Validate user supplied preferences. Throws if key/values are not valid.\n (0,_util_validatePreferences_js__WEBPACK_IMPORTED_MODULE_0__.validatePreferences)(options.preference);\n let provider = null;\n const sdk = {\n getProvider() {\n if (!provider) {\n provider = (0,_createCoinbaseWalletProvider_js__WEBPACK_IMPORTED_MODULE_4__.createCoinbaseWalletProvider)(options);\n }\n // @ts-expect-error - store reference to the sdk on the provider\n provider.sdk = sdk;\n return provider;\n },\n subAccount: {\n async create(account) {\n var _a, _b;\n const state = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.getState();\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_5__.assertPresence)((_a = state.subAccount) === null || _a === void 0 ? void 0 : _a.address, new Error('subaccount already exists'));\n return (await ((_b = sdk.getProvider()) === null || _b === void 0 ? void 0 : _b.request({\n method: 'wallet_addSubAccount',\n params: [\n {\n version: '1',\n account,\n },\n ],\n })));\n },\n async get() {\n var _a, _b;\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.get();\n if (subAccount === null || subAccount === void 0 ? void 0 : subAccount.address) {\n return subAccount;\n }\n const response = (await ((_a = sdk.getProvider()) === null || _a === void 0 ? void 0 : _a.request({\n method: 'wallet_connect',\n params: [\n {\n version: '1',\n capabilities: {},\n },\n ],\n })));\n const subAccounts = (_b = response.accounts[0].capabilities) === null || _b === void 0 ? void 0 : _b.subAccounts;\n if (!Array.isArray(subAccounts)) {\n return null;\n }\n return subAccounts[0];\n },\n async addOwner({ address, publicKey, chainId }) {\n var _a, _b;\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.get();\n const account = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.account.get();\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_5__.assertPresence)(account, new Error('account does not exist'));\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_5__.assertPresence)(subAccount === null || subAccount === void 0 ? void 0 : subAccount.address, new Error('subaccount does not exist'));\n const calls = [];\n if (publicKey) {\n const [x, y] = (0,viem__WEBPACK_IMPORTED_MODULE_6__.decodeAbiParameters)([{ type: 'bytes32' }, { type: 'bytes32' }], publicKey);\n calls.push({\n to: subAccount.address,\n data: (0,viem__WEBPACK_IMPORTED_MODULE_7__.encodeFunctionData)({\n abi: _sign_scw_utils_constants_js__WEBPACK_IMPORTED_MODULE_8__.abi,\n functionName: 'addOwnerPublicKey',\n args: [x, y],\n }),\n value: (0,viem__WEBPACK_IMPORTED_MODULE_9__.toHex)(0),\n });\n }\n if (address) {\n calls.push({\n to: subAccount.address,\n data: (0,viem__WEBPACK_IMPORTED_MODULE_7__.encodeFunctionData)({\n abi: _sign_scw_utils_constants_js__WEBPACK_IMPORTED_MODULE_8__.abi,\n functionName: 'addOwnerAddress',\n args: [address],\n }),\n value: (0,viem__WEBPACK_IMPORTED_MODULE_9__.toHex)(0),\n });\n }\n return (await ((_a = sdk.getProvider()) === null || _a === void 0 ? void 0 : _a.request({\n method: 'wallet_sendCalls',\n params: [\n {\n calls,\n chainId: (0,viem__WEBPACK_IMPORTED_MODULE_9__.toHex)(chainId),\n from: (_b = account.accounts) === null || _b === void 0 ? void 0 : _b[0],\n version: '1',\n },\n ],\n })));\n },\n setToOwnerAccount(toSubAccountOwner) {\n (0,_util_validatePreferences_js__WEBPACK_IMPORTED_MODULE_0__.validateSubAccount)(toSubAccountOwner);\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.set({\n toOwnerAccount: toSubAccountOwner,\n });\n },\n },\n };\n return sdk;\n}\n//# sourceMappingURL=createCoinbaseWalletSDK.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NyZWF0ZUNvaW5iYXNlV2FsbGV0U0RLLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQXNFO0FBQ0o7QUFDZDtBQUNNO0FBQzRCO0FBQ0U7QUFDUDtBQUN4QztBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Qsa0hBQWtIO0FBQ2xIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxnRkFBa0I7QUFDMUI7QUFDQSxJQUFJLGtEQUFLO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsSUFBSSxrREFBSztBQUNUO0FBQ0EsU0FBUyxrREFBSztBQUNkO0FBQ0EsU0FBUyxtR0FBNEI7QUFDckM7QUFDQTtBQUNBLGFBQWEsK0VBQW1CO0FBQ2hDO0FBQ0E7QUFDQSxJQUFJLGlGQUFtQjtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQiw4RkFBNEI7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLGtEQUFLO0FBQ25DLGdCQUFnQix1RUFBYztBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiO0FBQ0E7QUFDQSxtQ0FBbUMsa0RBQUs7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QztBQUM1Qyx5QkFBeUI7QUFDekI7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYiw2QkFBNkIsNkJBQTZCO0FBQzFEO0FBQ0EsbUNBQW1DLGtEQUFLO0FBQ3hDLGdDQUFnQyxrREFBSztBQUNyQyxnQkFBZ0IsdUVBQWM7QUFDOUIsZ0JBQWdCLHVFQUFjO0FBQzlCO0FBQ0E7QUFDQSxtQ0FBbUMseURBQW1CLElBQUksaUJBQWlCLElBQUksaUJBQWlCO0FBQ2hHO0FBQ0E7QUFDQSw4QkFBOEIsd0RBQWtCO0FBQ2hELCtCQUErQjtBQUMvQjtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCLCtCQUErQiwyQ0FBSztBQUNwQyxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsd0RBQWtCO0FBQ2hELCtCQUErQjtBQUMvQjtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCLCtCQUErQiwyQ0FBSztBQUNwQyxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLDJDQUFLO0FBQzFDO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiO0FBQ0EsZ0JBQWdCLGdGQUFrQjtBQUNsQyxnQkFBZ0Isa0RBQUs7QUFDckI7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2NyZWF0ZUNvaW5iYXNlV2FsbGV0U0RLLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlY29kZUFiaVBhcmFtZXRlcnMsIGVuY29kZUZ1bmN0aW9uRGF0YSwgdG9IZXggfSBmcm9tICd2aWVtJztcbmltcG9ydCB7IGxvYWRUZWxlbWV0cnlTY3JpcHQgfSBmcm9tICcuL2NvcmUvdGVsZW1ldHJ5L2luaXRDQ0EuanMnO1xuaW1wb3J0IHsgYWJpIH0gZnJvbSAnLi9zaWduL3Njdy91dGlscy9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgYXNzZXJ0UHJlc2VuY2UgfSBmcm9tICcuL3V0aWwvYXNzZXJ0UHJlc2VuY2UuanMnO1xuaW1wb3J0IHsgY2hlY2tDcm9zc09yaWdpbk9wZW5lclBvbGljeSB9IGZyb20gJy4vdXRpbC9jaGVja0Nyb3NzT3JpZ2luT3BlbmVyUG9saWN5LmpzJztcbmltcG9ydCB7IHZhbGlkYXRlUHJlZmVyZW5jZXMsIHZhbGlkYXRlU3ViQWNjb3VudCB9IGZyb20gJy4vdXRpbC92YWxpZGF0ZVByZWZlcmVuY2VzLmpzJztcbmltcG9ydCB7IGNyZWF0ZUNvaW5iYXNlV2FsbGV0UHJvdmlkZXIgfSBmcm9tICcuL2NyZWF0ZUNvaW5iYXNlV2FsbGV0UHJvdmlkZXIuanMnO1xuaW1wb3J0IHsgc3RvcmUgfSBmcm9tICcuL3N0b3JlL3N0b3JlLmpzJztcbmNvbnN0IERFRkFVTFRfUFJFRkVSRU5DRSA9IHtcbiAgICBvcHRpb25zOiAnYWxsJyxcbn07XG4vKipcbiAqIENyZWF0ZSBhIENvaW5iYXNlIFdhbGxldCBTREsgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGFyYW1zIC0gT3B0aW9ucyB0byBjcmVhdGUgYSBDb2luYmFzZSBXYWxsZXQgU0RLIGluc3RhbmNlLlxuICogQHJldHVybnMgQSBDb2luYmFzZSBXYWxsZXQgU0RLIG9iamVjdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNvaW5iYXNlV2FsbGV0U0RLKHBhcmFtcykge1xuICAgIHZhciBfYSwgX2IsIF9jLCBfZDtcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICAgICAgYXBwTmFtZTogcGFyYW1zLmFwcE5hbWUgfHwgJ0RhcHAnLFxuICAgICAgICAgICAgYXBwTG9nb1VybDogcGFyYW1zLmFwcExvZ29VcmwgfHwgJycsXG4gICAgICAgICAgICBhcHBDaGFpbklkczogcGFyYW1zLmFwcENoYWluSWRzIHx8IFtdLFxuICAgICAgICB9LFxuICAgICAgICBwcmVmZXJlbmNlOiBPYmplY3QuYXNzaWduKERFRkFVTFRfUFJFRkVSRU5DRSwgKF9hID0gcGFyYW1zLnByZWZlcmVuY2UpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHt9KSxcbiAgICAgICAgcGF5bWFzdGVyVXJsczogcGFyYW1zLnBheW1hc3RlclVybHMsXG4gICAgfTtcbiAgICAvLyBJZiB3ZSBoYXZlIGEgdG9Pd25lckFjY291bnQgZnVuY3Rpb24sIHNldCBpdCBpbiB0aGUgbm9uLXBlcnNpc3RlZCBjb25maWdcbiAgICBpZiAoKF9iID0gcGFyYW1zLnN1YkFjY291bnRzKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IudG9Pd25lckFjY291bnQpIHtcbiAgICAgICAgdmFsaWRhdGVTdWJBY2NvdW50KHBhcmFtcy5zdWJBY2NvdW50cy50b093bmVyQWNjb3VudCk7XG4gICAgfVxuICAgIHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLnNldCh7XG4gICAgICAgIHRvT3duZXJBY2NvdW50OiAoX2MgPSBwYXJhbXMuc3ViQWNjb3VudHMpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYy50b093bmVyQWNjb3VudCxcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciAtIGVuYWJsZVN1YkFjY291bnRzIGlzIG5vdCBvZmZpY2lhbGx5IHN1cHBvcnRlZCB5ZXRcbiAgICAgICAgZW5hYmxlQXV0b1N1YkFjY291bnRzOiAoX2QgPSBwYXJhbXMuc3ViQWNjb3VudHMpID09PSBudWxsIHx8IF9kID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZC5lbmFibGVBdXRvU3ViQWNjb3VudHMsXG4gICAgfSk7XG4gICAgLy8gc2V0IHRoZSBvcHRpb25zIGluIHRoZSBzdG9yZVxuICAgIHN0b3JlLmNvbmZpZy5zZXQob3B0aW9ucyk7XG4gICAgLy8gcmVoeWRyYXRlIHRoZSBzdG9yZSBmcm9tIHN0b3JhZ2VcbiAgICB2b2lkIHN0b3JlLnBlcnNpc3QucmVoeWRyYXRlKCk7XG4gICAgLy8gY2hlY2sgdGhlIGNyb3NzIG9yaWdpbiBvcGVuZXIgcG9saWN5XG4gICAgdm9pZCBjaGVja0Nyb3NzT3JpZ2luT3BlbmVyUG9saWN5KCk7XG4gICAgLy8gbG9hZCB0aGUgdGVsZW1ldHJ5IHNjcmlwdFxuICAgIGlmIChvcHRpb25zLnByZWZlcmVuY2UudGVsZW1ldHJ5ICE9PSBmYWxzZSkge1xuICAgICAgICB2b2lkIGxvYWRUZWxlbWV0cnlTY3JpcHQoKTtcbiAgICB9XG4gICAgLy8gVmFsaWRhdGUgdXNlciBzdXBwbGllZCBwcmVmZXJlbmNlcy4gVGhyb3dzIGlmIGtleS92YWx1ZXMgYXJlIG5vdCB2YWxpZC5cbiAgICB2YWxpZGF0ZVByZWZlcmVuY2VzKG9wdGlvbnMucHJlZmVyZW5jZSk7XG4gICAgbGV0IHByb3ZpZGVyID0gbnVsbDtcbiAgICBjb25zdCBzZGsgPSB7XG4gICAgICAgIGdldFByb3ZpZGVyKCkge1xuICAgICAgICAgICAgaWYgKCFwcm92aWRlcikge1xuICAgICAgICAgICAgICAgIHByb3ZpZGVyID0gY3JlYXRlQ29pbmJhc2VXYWxsZXRQcm92aWRlcihvcHRpb25zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgLSBzdG9yZSByZWZlcmVuY2UgdG8gdGhlIHNkayBvbiB0aGUgcHJvdmlkZXJcbiAgICAgICAgICAgIHByb3ZpZGVyLnNkayA9IHNkaztcbiAgICAgICAgICAgIHJldHVybiBwcm92aWRlcjtcbiAgICAgICAgfSxcbiAgICAgICAgc3ViQWNjb3VudDoge1xuICAgICAgICAgICAgYXN5bmMgY3JlYXRlKGFjY291bnQpIHtcbiAgICAgICAgICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXRlID0gc3RvcmUuZ2V0U3RhdGUoKTtcbiAgICAgICAgICAgICAgICBhc3NlcnRQcmVzZW5jZSgoX2EgPSBzdGF0ZS5zdWJBY2NvdW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuYWRkcmVzcywgbmV3IEVycm9yKCdzdWJhY2NvdW50IGFscmVhZHkgZXhpc3RzJykpO1xuICAgICAgICAgICAgICAgIHJldHVybiAoYXdhaXQgKChfYiA9IHNkay5nZXRQcm92aWRlcigpKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IucmVxdWVzdCh7XG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ3dhbGxldF9hZGRTdWJBY2NvdW50JyxcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbjogJzEnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYXN5bmMgZ2V0KCkge1xuICAgICAgICAgICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViQWNjb3VudCA9IHN0b3JlLnN1YkFjY291bnRzLmdldCgpO1xuICAgICAgICAgICAgICAgIGlmIChzdWJBY2NvdW50ID09PSBudWxsIHx8IHN1YkFjY291bnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YkFjY291bnQuYWRkcmVzcykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3ViQWNjb3VudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSAoYXdhaXQgKChfYSA9IHNkay5nZXRQcm92aWRlcigpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EucmVxdWVzdCh7XG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ3dhbGxldF9jb25uZWN0JyxcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbjogJzEnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhcGFiaWxpdGllczoge30sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViQWNjb3VudHMgPSAoX2IgPSByZXNwb25zZS5hY2NvdW50c1swXS5jYXBhYmlsaXRpZXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5zdWJBY2NvdW50cztcbiAgICAgICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc3ViQWNjb3VudHMpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gc3ViQWNjb3VudHNbMF07XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYXN5bmMgYWRkT3duZXIoeyBhZGRyZXNzLCBwdWJsaWNLZXksIGNoYWluSWQgfSkge1xuICAgICAgICAgICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViQWNjb3VudCA9IHN0b3JlLnN1YkFjY291bnRzLmdldCgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGFjY291bnQgPSBzdG9yZS5hY2NvdW50LmdldCgpO1xuICAgICAgICAgICAgICAgIGFzc2VydFByZXNlbmNlKGFjY291bnQsIG5ldyBFcnJvcignYWNjb3VudCBkb2VzIG5vdCBleGlzdCcpKTtcbiAgICAgICAgICAgICAgICBhc3NlcnRQcmVzZW5jZShzdWJBY2NvdW50ID09PSBudWxsIHx8IHN1YkFjY291bnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YkFjY291bnQuYWRkcmVzcywgbmV3IEVycm9yKCdzdWJhY2NvdW50IGRvZXMgbm90IGV4aXN0JykpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNhbGxzID0gW107XG4gICAgICAgICAgICAgICAgaWYgKHB1YmxpY0tleSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBbeCwgeV0gPSBkZWNvZGVBYmlQYXJhbWV0ZXJzKFt7IHR5cGU6ICdieXRlczMyJyB9LCB7IHR5cGU6ICdieXRlczMyJyB9XSwgcHVibGljS2V5KTtcbiAgICAgICAgICAgICAgICAgICAgY2FsbHMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0bzogc3ViQWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogZW5jb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYmksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnYWRkT3duZXJQdWJsaWNLZXknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M6IFt4LCB5XSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvSGV4KDApLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGFkZHJlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FsbHMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0bzogc3ViQWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogZW5jb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYmksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnYWRkT3duZXJBZGRyZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzOiBbYWRkcmVzc10sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB0b0hleCgwKSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiAoYXdhaXQgKChfYSA9IHNkay5nZXRQcm92aWRlcigpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EucmVxdWVzdCh7XG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ3dhbGxldF9zZW5kQ2FsbHMnLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxscyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFpbklkOiB0b0hleChjaGFpbklkKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tOiAoX2IgPSBhY2NvdW50LmFjY291bnRzKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2JbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbjogJzEnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB9KSkpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNldFRvT3duZXJBY2NvdW50KHRvU3ViQWNjb3VudE93bmVyKSB7XG4gICAgICAgICAgICAgICAgdmFsaWRhdGVTdWJBY2NvdW50KHRvU3ViQWNjb3VudE93bmVyKTtcbiAgICAgICAgICAgICAgICBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5zZXQoe1xuICAgICAgICAgICAgICAgICAgICB0b093bmVyQWNjb3VudDogdG9TdWJBY2NvdW50T3duZXIsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgIH07XG4gICAgcmV0dXJuIHNkaztcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyZWF0ZUNvaW5iYXNlV2FsbGV0U0RLLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletSDK.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/index.js": /*!*********************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/index.js ***! \*********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CoinbaseWalletSDK: () => (/* reexport safe */ _CoinbaseWalletSDK_js__WEBPACK_IMPORTED_MODULE_0__.CoinbaseWalletSDK),\n/* harmony export */ createCoinbaseWalletSDK: () => (/* reexport safe */ _createCoinbaseWalletSDK_js__WEBPACK_IMPORTED_MODULE_1__.createCoinbaseWalletSDK),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ getCryptoKeyAccount: () => (/* reexport safe */ _kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_2__.getCryptoKeyAccount),\n/* harmony export */ removeCryptoKey: () => (/* reexport safe */ _kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_2__.removeCryptoKey)\n/* harmony export */ });\n/* harmony import */ var _CoinbaseWalletSDK_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CoinbaseWalletSDK.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/CoinbaseWalletSDK.js\");\n/* harmony import */ var _createCoinbaseWalletSDK_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./createCoinbaseWalletSDK.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/createCoinbaseWalletSDK.js\");\n/* harmony import */ var _kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./kms/crypto-key/index.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/index.js\");\n// Copyright (c) 2018-2024 Coinbase, Inc. <https://www.coinbase.com/>\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_CoinbaseWalletSDK_js__WEBPACK_IMPORTED_MODULE_0__.CoinbaseWalletSDK);\n\n\n\n//# sourceMappingURL=index.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2luZGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7QUFDMkQ7QUFDM0QsaUVBQWUsb0VBQWlCLEVBQUM7QUFDMEI7QUFDWTtBQUNVO0FBQ2pGIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3QvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDE4LTIwMjQgQ29pbmJhc2UsIEluYy4gPGh0dHBzOi8vd3d3LmNvaW5iYXNlLmNvbS8+XG5pbXBvcnQgeyBDb2luYmFzZVdhbGxldFNESyB9IGZyb20gJy4vQ29pbmJhc2VXYWxsZXRTREsuanMnO1xuZXhwb3J0IGRlZmF1bHQgQ29pbmJhc2VXYWxsZXRTREs7XG5leHBvcnQgeyBDb2luYmFzZVdhbGxldFNESyB9IGZyb20gJy4vQ29pbmJhc2VXYWxsZXRTREsuanMnO1xuZXhwb3J0IHsgY3JlYXRlQ29pbmJhc2VXYWxsZXRTREsgfSBmcm9tICcuL2NyZWF0ZUNvaW5iYXNlV2FsbGV0U0RLLmpzJztcbmV4cG9ydCB7IGdldENyeXB0b0tleUFjY291bnQsIHJlbW92ZUNyeXB0b0tleSB9IGZyb20gJy4va21zL2NyeXB0by1rZXkvaW5kZXguanMnO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/index.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/index.js": /*!************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/index.js ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ACTIVE_ID_KEY: () => (/* binding */ ACTIVE_ID_KEY),\n/* harmony export */ STORAGE_NAME: () => (/* binding */ STORAGE_NAME),\n/* harmony export */ STORAGE_SCOPE: () => (/* binding */ STORAGE_SCOPE),\n/* harmony export */ generateKeyPair: () => (/* binding */ generateKeyPair),\n/* harmony export */ getCryptoKeyAccount: () => (/* binding */ getCryptoKeyAccount),\n/* harmony export */ getKeypair: () => (/* binding */ getKeypair),\n/* harmony export */ removeCryptoKey: () => (/* binding */ removeCryptoKey),\n/* harmony export */ storage: () => (/* binding */ storage)\n/* harmony export */ });\n/* harmony import */ var ox__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ox */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebCryptoP256.js\");\n/* harmony import */ var ox__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ox */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var ox__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ox */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/PublicKey.js\");\n/* harmony import */ var ox__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ox */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebAuthnP256.js\");\n/* harmony import */ var ox__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ox */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Signature.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashMessage.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashTypedData.js\");\n/* harmony import */ var _storage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./storage.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/storage.js\");\n\n\n\n// *****************************************************************\n// Constants\n// *****************************************************************\nconst STORAGE_SCOPE = 'cbwsdk';\nconst STORAGE_NAME = 'keys';\nconst ACTIVE_ID_KEY = 'activeId';\n// *****************************************************************\n// Storage\n// *****************************************************************\nconst storage = (0,_storage_js__WEBPACK_IMPORTED_MODULE_0__.createStorage)(STORAGE_SCOPE, STORAGE_NAME);\n// *****************************************************************\n// Functions\n// *****************************************************************\nasync function generateKeyPair() {\n const keypair = await ox__WEBPACK_IMPORTED_MODULE_1__.createKeyPair({ extractable: false });\n const publicKey = ox__WEBPACK_IMPORTED_MODULE_2__.slice(ox__WEBPACK_IMPORTED_MODULE_3__.toHex(keypair.publicKey), 1);\n await storage.setItem(publicKey, keypair);\n await storage.setItem(ACTIVE_ID_KEY, publicKey);\n return keypair;\n}\nasync function getKeypair() {\n const id = await storage.getItem(ACTIVE_ID_KEY);\n if (!id) {\n return null;\n }\n const keypair = await storage.getItem(id);\n if (!keypair) {\n return null;\n }\n return keypair;\n}\nasync function getOrCreateKeypair() {\n const keypair = await getKeypair();\n if (!keypair) {\n const kp = await generateKeyPair();\n const pubKey = ox__WEBPACK_IMPORTED_MODULE_2__.slice(ox__WEBPACK_IMPORTED_MODULE_3__.toHex(kp.publicKey), 1);\n await storage.setItem(pubKey, kp);\n await storage.setItem(ACTIVE_ID_KEY, pubKey);\n return kp;\n }\n return keypair;\n}\nasync function getAccount() {\n const keypair = await getOrCreateKeypair();\n /**\n * public key / address\n */\n const publicKey = ox__WEBPACK_IMPORTED_MODULE_2__.slice(ox__WEBPACK_IMPORTED_MODULE_3__.toHex(keypair.publicKey), 1);\n const sign = async (payload) => {\n const { payload: message, metadata } = ox__WEBPACK_IMPORTED_MODULE_4__.getSignPayload({\n challenge: payload,\n origin: 'https://keys.coinbase.com',\n userVerification: 'preferred',\n });\n const signature = await ox__WEBPACK_IMPORTED_MODULE_1__.sign({\n payload: message,\n privateKey: keypair.privateKey,\n });\n return {\n signature: ox__WEBPACK_IMPORTED_MODULE_5__.toHex(signature),\n raw: {}, // type changed in viem\n webauthn: metadata,\n };\n };\n return {\n id: publicKey,\n publicKey,\n async sign({ hash }) {\n return sign(hash);\n },\n async signMessage({ message }) {\n return sign((0,viem__WEBPACK_IMPORTED_MODULE_6__.hashMessage)(message));\n },\n async signTypedData(parameters) {\n return sign((0,viem__WEBPACK_IMPORTED_MODULE_7__.hashTypedData)(parameters));\n },\n type: 'webAuthn',\n };\n}\nasync function getCryptoKeyAccount() {\n const account = await getAccount();\n return {\n account,\n };\n}\nasync function removeCryptoKey() {\n const keypair = await getKeypair();\n if (!keypair) {\n return;\n }\n await storage.removeItem(ox__WEBPACK_IMPORTED_MODULE_2__.slice(ox__WEBPACK_IMPORTED_MODULE_3__.toHex(keypair.publicKey), 1));\n await storage.removeItem(ACTIVE_ID_KEY);\n}\n//# sourceMappingURL=index.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2ttcy9jcnlwdG8ta2V5L2luZGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBNEU7QUFDMUI7QUFDTDtBQUM3QztBQUNBO0FBQ0E7QUFDTztBQUNBO0FBQ0E7QUFDUDtBQUNBO0FBQ0E7QUFDTyxnQkFBZ0IsMERBQWE7QUFDcEM7QUFDQTtBQUNBO0FBQ087QUFDUCwwQkFBMEIsNkNBQTJCLEdBQUcsb0JBQW9CO0FBQzVFLHNCQUFzQixxQ0FBUyxDQUFDLHFDQUFlO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHFDQUFTLENBQUMscUNBQWU7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixxQ0FBUyxDQUFDLHFDQUFlO0FBQy9DO0FBQ0EsZ0JBQWdCLDZCQUE2QixFQUFFLDhDQUEyQjtBQUMxRTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsZ0NBQWdDLG9DQUFrQjtBQUNsRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsdUJBQXVCLHFDQUFlO0FBQ3RDLG1CQUFtQjtBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsTUFBTTtBQUMzQjtBQUNBLFNBQVM7QUFDVCw0QkFBNEIsU0FBUztBQUNyQyx3QkFBd0IsaURBQVc7QUFDbkMsU0FBUztBQUNUO0FBQ0Esd0JBQXdCLG1EQUFhO0FBQ3JDLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLHFDQUFTLENBQUMscUNBQWU7QUFDdEQ7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3Qva21zL2NyeXB0by1rZXkvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGV4LCBQdWJsaWNLZXksIFNpZ25hdHVyZSwgV2ViQXV0aG5QMjU2LCBXZWJDcnlwdG9QMjU2IH0gZnJvbSAnb3gnO1xuaW1wb3J0IHsgaGFzaE1lc3NhZ2UsIGhhc2hUeXBlZERhdGEgfSBmcm9tICd2aWVtJztcbmltcG9ydCB7IGNyZWF0ZVN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2UuanMnO1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvbnN0YW50c1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmV4cG9ydCBjb25zdCBTVE9SQUdFX1NDT1BFID0gJ2Nid3Nkayc7XG5leHBvcnQgY29uc3QgU1RPUkFHRV9OQU1FID0gJ2tleXMnO1xuZXhwb3J0IGNvbnN0IEFDVElWRV9JRF9LRVkgPSAnYWN0aXZlSWQnO1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIFN0b3JhZ2Vcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5leHBvcnQgY29uc3Qgc3RvcmFnZSA9IGNyZWF0ZVN0b3JhZ2UoU1RPUkFHRV9TQ09QRSwgU1RPUkFHRV9OQU1FKTtcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBGdW5jdGlvbnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdGVLZXlQYWlyKCkge1xuICAgIGNvbnN0IGtleXBhaXIgPSBhd2FpdCBXZWJDcnlwdG9QMjU2LmNyZWF0ZUtleVBhaXIoeyBleHRyYWN0YWJsZTogZmFsc2UgfSk7XG4gICAgY29uc3QgcHVibGljS2V5ID0gSGV4LnNsaWNlKFB1YmxpY0tleS50b0hleChrZXlwYWlyLnB1YmxpY0tleSksIDEpO1xuICAgIGF3YWl0IHN0b3JhZ2Uuc2V0SXRlbShwdWJsaWNLZXksIGtleXBhaXIpO1xuICAgIGF3YWl0IHN0b3JhZ2Uuc2V0SXRlbShBQ1RJVkVfSURfS0VZLCBwdWJsaWNLZXkpO1xuICAgIHJldHVybiBrZXlwYWlyO1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEtleXBhaXIoKSB7XG4gICAgY29uc3QgaWQgPSBhd2FpdCBzdG9yYWdlLmdldEl0ZW0oQUNUSVZFX0lEX0tFWSk7XG4gICAgaWYgKCFpZCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3Qga2V5cGFpciA9IGF3YWl0IHN0b3JhZ2UuZ2V0SXRlbShpZCk7XG4gICAgaWYgKCFrZXlwYWlyKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4ga2V5cGFpcjtcbn1cbmFzeW5jIGZ1bmN0aW9uIGdldE9yQ3JlYXRlS2V5cGFpcigpIHtcbiAgICBjb25zdCBrZXlwYWlyID0gYXdhaXQgZ2V0S2V5cGFpcigpO1xuICAgIGlmICgha2V5cGFpcikge1xuICAgICAgICBjb25zdCBrcCA9IGF3YWl0IGdlbmVyYXRlS2V5UGFpcigpO1xuICAgICAgICBjb25zdCBwdWJLZXkgPSBIZXguc2xpY2UoUHVibGljS2V5LnRvSGV4KGtwLnB1YmxpY0tleSksIDEpO1xuICAgICAgICBhd2FpdCBzdG9yYWdlLnNldEl0ZW0ocHViS2V5LCBrcCk7XG4gICAgICAgIGF3YWl0IHN0b3JhZ2Uuc2V0SXRlbShBQ1RJVkVfSURfS0VZLCBwdWJLZXkpO1xuICAgICAgICByZXR1cm4ga3A7XG4gICAgfVxuICAgIHJldHVybiBrZXlwYWlyO1xufVxuYXN5bmMgZnVuY3Rpb24gZ2V0QWNjb3VudCgpIHtcbiAgICBjb25zdCBrZXlwYWlyID0gYXdhaXQgZ2V0T3JDcmVhdGVLZXlwYWlyKCk7XG4gICAgLyoqXG4gICAgICogcHVibGljIGtleSAvIGFkZHJlc3NcbiAgICAgKi9cbiAgICBjb25zdCBwdWJsaWNLZXkgPSBIZXguc2xpY2UoUHVibGljS2V5LnRvSGV4KGtleXBhaXIucHVibGljS2V5KSwgMSk7XG4gICAgY29uc3Qgc2lnbiA9IGFzeW5jIChwYXlsb2FkKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZDogbWVzc2FnZSwgbWV0YWRhdGEgfSA9IFdlYkF1dGhuUDI1Ni5nZXRTaWduUGF5bG9hZCh7XG4gICAgICAgICAgICBjaGFsbGVuZ2U6IHBheWxvYWQsXG4gICAgICAgICAgICBvcmlnaW46ICdodHRwczovL2tleXMuY29pbmJhc2UuY29tJyxcbiAgICAgICAgICAgIHVzZXJWZXJpZmljYXRpb246ICdwcmVmZXJyZWQnLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgV2ViQ3J5cHRvUDI1Ni5zaWduKHtcbiAgICAgICAgICAgIHBheWxvYWQ6IG1lc3NhZ2UsXG4gICAgICAgICAgICBwcml2YXRlS2V5OiBrZXlwYWlyLnByaXZhdGVLZXksXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgc2lnbmF0dXJlOiBTaWduYXR1cmUudG9IZXgoc2lnbmF0dXJlKSxcbiAgICAgICAgICAgIHJhdzoge30sIC8vIHR5cGUgY2hhbmdlZCBpbiB2aWVtXG4gICAgICAgICAgICB3ZWJhdXRobjogbWV0YWRhdGEsXG4gICAgICAgIH07XG4gICAgfTtcbiAgICByZXR1cm4ge1xuICAgICAgICBpZDogcHVibGljS2V5LFxuICAgICAgICBwdWJsaWNLZXksXG4gICAgICAgIGFzeW5jIHNpZ24oeyBoYXNoIH0pIHtcbiAgICAgICAgICAgIHJldHVybiBzaWduKGhhc2gpO1xuICAgICAgICB9LFxuICAgICAgICBhc3luYyBzaWduTWVzc2FnZSh7IG1lc3NhZ2UgfSkge1xuICAgICAgICAgICAgcmV0dXJuIHNpZ24oaGFzaE1lc3NhZ2UobWVzc2FnZSkpO1xuICAgICAgICB9LFxuICAgICAgICBhc3luYyBzaWduVHlwZWREYXRhKHBhcmFtZXRlcnMpIHtcbiAgICAgICAgICAgIHJldHVybiBzaWduKGhhc2hUeXBlZERhdGEocGFyYW1ldGVycykpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnd2ViQXV0aG4nLFxuICAgIH07XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q3J5cHRvS2V5QWNjb3VudCgpIHtcbiAgICBjb25zdCBhY2NvdW50ID0gYXdhaXQgZ2V0QWNjb3VudCgpO1xuICAgIHJldHVybiB7XG4gICAgICAgIGFjY291bnQsXG4gICAgfTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZW1vdmVDcnlwdG9LZXkoKSB7XG4gICAgY29uc3Qga2V5cGFpciA9IGF3YWl0IGdldEtleXBhaXIoKTtcbiAgICBpZiAoIWtleXBhaXIpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBhd2FpdCBzdG9yYWdlLnJlbW92ZUl0ZW0oSGV4LnNsaWNlKFB1YmxpY0tleS50b0hleChrZXlwYWlyLnB1YmxpY0tleSksIDEpKTtcbiAgICBhd2FpdCBzdG9yYWdlLnJlbW92ZUl0ZW0oQUNUSVZFX0lEX0tFWSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/index.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/storage.js": /*!**************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/storage.js ***! \**************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createStorage: () => (/* binding */ createStorage)\n/* harmony export */ });\n/* harmony import */ var idb_keyval__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! idb-keyval */ \"(app-pages-browser)/./node_modules/idb-keyval/dist/index.js\");\n\nfunction createStorage(scope, name) {\n const store = typeof indexedDB !== 'undefined' ? (0,idb_keyval__WEBPACK_IMPORTED_MODULE_0__.createStore)(scope, name) : undefined;\n return {\n getItem: async (key) => {\n const value = await (0,idb_keyval__WEBPACK_IMPORTED_MODULE_0__.get)(key, store);\n if (!value) {\n return null;\n }\n return value;\n },\n removeItem: async (key) => {\n return (0,idb_keyval__WEBPACK_IMPORTED_MODULE_0__.del)(key, store);\n },\n setItem: async (key, value) => {\n return (0,idb_keyval__WEBPACK_IMPORTED_MODULE_0__.set)(key, value, store);\n },\n };\n}\n//# sourceMappingURL=storage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2ttcy9jcnlwdG8ta2V5L3N0b3JhZ2UuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBd0Q7QUFDakQ7QUFDUCxxREFBcUQsdURBQVc7QUFDaEU7QUFDQTtBQUNBLGdDQUFnQywrQ0FBRztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLG1CQUFtQiwrQ0FBRztBQUN0QixTQUFTO0FBQ1Q7QUFDQSxtQkFBbUIsK0NBQUc7QUFDdEIsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L2ttcy9jcnlwdG8ta2V5L3N0b3JhZ2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlU3RvcmUsIGRlbCwgZ2V0LCBzZXQgfSBmcm9tICdpZGIta2V5dmFsJztcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTdG9yYWdlKHNjb3BlLCBuYW1lKSB7XG4gICAgY29uc3Qgc3RvcmUgPSB0eXBlb2YgaW5kZXhlZERCICE9PSAndW5kZWZpbmVkJyA/IGNyZWF0ZVN0b3JlKHNjb3BlLCBuYW1lKSA6IHVuZGVmaW5lZDtcbiAgICByZXR1cm4ge1xuICAgICAgICBnZXRJdGVtOiBhc3luYyAoa2V5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGdldChrZXksIHN0b3JlKTtcbiAgICAgICAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVtb3ZlSXRlbTogYXN5bmMgKGtleSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGRlbChrZXksIHN0b3JlKTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0SXRlbTogYXN5bmMgKGtleSwgdmFsdWUpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBzZXQoa2V5LCB2YWx1ZSwgc3RvcmUpO1xuICAgICAgICB9LFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdG9yYWdlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/storage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js": /*!************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NAME: () => (/* binding */ NAME),\n/* harmony export */ VERSION: () => (/* binding */ VERSION)\n/* harmony export */ });\nconst VERSION = '4.3.6';\nconst NAME = '@coinbase/wallet-sdk';\n//# sourceMappingURL=sdk-info.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3Nkay1pbmZvLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQU87QUFDQTtBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3Qvc2RrLWluZm8uanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFZFUlNJT04gPSAnNC4zLjYnO1xuZXhwb3J0IGNvbnN0IE5BTUUgPSAnQGNvaW5iYXNlL3dhbGxldC1zZGsnO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c2RrLWluZm8uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWKeyManager.js": /*!**************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWKeyManager.js ***! \**************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SCWKeyManager: () => (/* binding */ SCWKeyManager)\n/* harmony export */ });\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _util_cipher_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../util/cipher.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/cipher.js\");\n\n\nconst OWN_PRIVATE_KEY = {\n storageKey: 'ownPrivateKey',\n keyType: 'private',\n};\nconst OWN_PUBLIC_KEY = {\n storageKey: 'ownPublicKey',\n keyType: 'public',\n};\nconst PEER_PUBLIC_KEY = {\n storageKey: 'peerPublicKey',\n keyType: 'public',\n};\nclass SCWKeyManager {\n constructor() {\n this.ownPrivateKey = null;\n this.ownPublicKey = null;\n this.peerPublicKey = null;\n this.sharedSecret = null;\n }\n async getOwnPublicKey() {\n await this.loadKeysIfNeeded();\n return this.ownPublicKey;\n }\n // returns null if the shared secret is not yet derived\n async getSharedSecret() {\n await this.loadKeysIfNeeded();\n return this.sharedSecret;\n }\n async setPeerPublicKey(key) {\n this.sharedSecret = null;\n this.peerPublicKey = key;\n await this.storeKey(PEER_PUBLIC_KEY, key);\n await this.loadKeysIfNeeded();\n }\n async clear() {\n this.ownPrivateKey = null;\n this.ownPublicKey = null;\n this.peerPublicKey = null;\n this.sharedSecret = null;\n _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.keys.clear();\n }\n async generateKeyPair() {\n const newKeyPair = await (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_1__.generateKeyPair)();\n this.ownPrivateKey = newKeyPair.privateKey;\n this.ownPublicKey = newKeyPair.publicKey;\n await this.storeKey(OWN_PRIVATE_KEY, newKeyPair.privateKey);\n await this.storeKey(OWN_PUBLIC_KEY, newKeyPair.publicKey);\n }\n async loadKeysIfNeeded() {\n if (this.ownPrivateKey === null) {\n this.ownPrivateKey = await this.loadKey(OWN_PRIVATE_KEY);\n }\n if (this.ownPublicKey === null) {\n this.ownPublicKey = await this.loadKey(OWN_PUBLIC_KEY);\n }\n if (this.ownPrivateKey === null || this.ownPublicKey === null) {\n await this.generateKeyPair();\n }\n if (this.peerPublicKey === null) {\n this.peerPublicKey = await this.loadKey(PEER_PUBLIC_KEY);\n }\n if (this.sharedSecret === null) {\n if (this.ownPrivateKey === null || this.peerPublicKey === null)\n return;\n this.sharedSecret = await (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_1__.deriveSharedSecret)(this.ownPrivateKey, this.peerPublicKey);\n }\n }\n // storage methods\n async loadKey(item) {\n const key = _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.keys.get(item.storageKey);\n if (!key)\n return null;\n return (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_1__.importKeyFromHexString)(item.keyType, key);\n }\n async storeKey(item, key) {\n const hexString = await (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_1__.exportKeyToHexString)(item.keyType, key);\n _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.keys.set(item.storageKey, hexString);\n }\n}\n//# sourceMappingURL=SCWKeyManager.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L1NDV0tleU1hbmFnZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQTZDO0FBQzZFO0FBQzFIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsa0RBQUs7QUFDYjtBQUNBO0FBQ0EsaUNBQWlDLGdFQUFlO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyxtRUFBa0I7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0RBQUs7QUFDekI7QUFDQTtBQUNBLGVBQWUsdUVBQXNCO0FBQ3JDO0FBQ0E7QUFDQSxnQ0FBZ0MscUVBQW9CO0FBQ3BELFFBQVEsa0RBQUs7QUFDYjtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3Njdy9TQ1dLZXlNYW5hZ2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0b3JlIH0gZnJvbSAnLi4vLi4vc3RvcmUvc3RvcmUuanMnO1xuaW1wb3J0IHsgZGVyaXZlU2hhcmVkU2VjcmV0LCBleHBvcnRLZXlUb0hleFN0cmluZywgZ2VuZXJhdGVLZXlQYWlyLCBpbXBvcnRLZXlGcm9tSGV4U3RyaW5nLCB9IGZyb20gJy4uLy4uL3V0aWwvY2lwaGVyLmpzJztcbmNvbnN0IE9XTl9QUklWQVRFX0tFWSA9IHtcbiAgICBzdG9yYWdlS2V5OiAnb3duUHJpdmF0ZUtleScsXG4gICAga2V5VHlwZTogJ3ByaXZhdGUnLFxufTtcbmNvbnN0IE9XTl9QVUJMSUNfS0VZID0ge1xuICAgIHN0b3JhZ2VLZXk6ICdvd25QdWJsaWNLZXknLFxuICAgIGtleVR5cGU6ICdwdWJsaWMnLFxufTtcbmNvbnN0IFBFRVJfUFVCTElDX0tFWSA9IHtcbiAgICBzdG9yYWdlS2V5OiAncGVlclB1YmxpY0tleScsXG4gICAga2V5VHlwZTogJ3B1YmxpYycsXG59O1xuZXhwb3J0IGNsYXNzIFNDV0tleU1hbmFnZXIge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLm93blByaXZhdGVLZXkgPSBudWxsO1xuICAgICAgICB0aGlzLm93blB1YmxpY0tleSA9IG51bGw7XG4gICAgICAgIHRoaXMucGVlclB1YmxpY0tleSA9IG51bGw7XG4gICAgICAgIHRoaXMuc2hhcmVkU2VjcmV0ID0gbnVsbDtcbiAgICB9XG4gICAgYXN5bmMgZ2V0T3duUHVibGljS2V5KCkge1xuICAgICAgICBhd2FpdCB0aGlzLmxvYWRLZXlzSWZOZWVkZWQoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMub3duUHVibGljS2V5O1xuICAgIH1cbiAgICAvLyByZXR1cm5zIG51bGwgaWYgdGhlIHNoYXJlZCBzZWNyZXQgaXMgbm90IHlldCBkZXJpdmVkXG4gICAgYXN5bmMgZ2V0U2hhcmVkU2VjcmV0KCkge1xuICAgICAgICBhd2FpdCB0aGlzLmxvYWRLZXlzSWZOZWVkZWQoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hhcmVkU2VjcmV0O1xuICAgIH1cbiAgICBhc3luYyBzZXRQZWVyUHVibGljS2V5KGtleSkge1xuICAgICAgICB0aGlzLnNoYXJlZFNlY3JldCA9IG51bGw7XG4gICAgICAgIHRoaXMucGVlclB1YmxpY0tleSA9IGtleTtcbiAgICAgICAgYXdhaXQgdGhpcy5zdG9yZUtleShQRUVSX1BVQkxJQ19LRVksIGtleSk7XG4gICAgICAgIGF3YWl0IHRoaXMubG9hZEtleXNJZk5lZWRlZCgpO1xuICAgIH1cbiAgICBhc3luYyBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5vd25Qcml2YXRlS2V5ID0gbnVsbDtcbiAgICAgICAgdGhpcy5vd25QdWJsaWNLZXkgPSBudWxsO1xuICAgICAgICB0aGlzLnBlZXJQdWJsaWNLZXkgPSBudWxsO1xuICAgICAgICB0aGlzLnNoYXJlZFNlY3JldCA9IG51bGw7XG4gICAgICAgIHN0b3JlLmtleXMuY2xlYXIoKTtcbiAgICB9XG4gICAgYXN5bmMgZ2VuZXJhdGVLZXlQYWlyKCkge1xuICAgICAgICBjb25zdCBuZXdLZXlQYWlyID0gYXdhaXQgZ2VuZXJhdGVLZXlQYWlyKCk7XG4gICAgICAgIHRoaXMub3duUHJpdmF0ZUtleSA9IG5ld0tleVBhaXIucHJpdmF0ZUtleTtcbiAgICAgICAgdGhpcy5vd25QdWJsaWNLZXkgPSBuZXdLZXlQYWlyLnB1YmxpY0tleTtcbiAgICAgICAgYXdhaXQgdGhpcy5zdG9yZUtleShPV05fUFJJVkFURV9LRVksIG5ld0tleVBhaXIucHJpdmF0ZUtleSk7XG4gICAgICAgIGF3YWl0IHRoaXMuc3RvcmVLZXkoT1dOX1BVQkxJQ19LRVksIG5ld0tleVBhaXIucHVibGljS2V5KTtcbiAgICB9XG4gICAgYXN5bmMgbG9hZEtleXNJZk5lZWRlZCgpIHtcbiAgICAgICAgaWYgKHRoaXMub3duUHJpdmF0ZUtleSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5vd25Qcml2YXRlS2V5ID0gYXdhaXQgdGhpcy5sb2FkS2V5KE9XTl9QUklWQVRFX0tFWSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMub3duUHVibGljS2V5ID09PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLm93blB1YmxpY0tleSA9IGF3YWl0IHRoaXMubG9hZEtleShPV05fUFVCTElDX0tFWSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMub3duUHJpdmF0ZUtleSA9PT0gbnVsbCB8fCB0aGlzLm93blB1YmxpY0tleSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5nZW5lcmF0ZUtleVBhaXIoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5wZWVyUHVibGljS2V5ID09PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLnBlZXJQdWJsaWNLZXkgPSBhd2FpdCB0aGlzLmxvYWRLZXkoUEVFUl9QVUJMSUNfS0VZKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5zaGFyZWRTZWNyZXQgPT09IG51bGwpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLm93blByaXZhdGVLZXkgPT09IG51bGwgfHwgdGhpcy5wZWVyUHVibGljS2V5ID09PSBudWxsKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMuc2hhcmVkU2VjcmV0ID0gYXdhaXQgZGVyaXZlU2hhcmVkU2VjcmV0KHRoaXMub3duUHJpdmF0ZUtleSwgdGhpcy5wZWVyUHVibGljS2V5KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBzdG9yYWdlIG1ldGhvZHNcbiAgICBhc3luYyBsb2FkS2V5KGl0ZW0pIHtcbiAgICAgICAgY29uc3Qga2V5ID0gc3RvcmUua2V5cy5nZXQoaXRlbS5zdG9yYWdlS2V5KTtcbiAgICAgICAgaWYgKCFrZXkpXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgcmV0dXJuIGltcG9ydEtleUZyb21IZXhTdHJpbmcoaXRlbS5rZXlUeXBlLCBrZXkpO1xuICAgIH1cbiAgICBhc3luYyBzdG9yZUtleShpdGVtLCBrZXkpIHtcbiAgICAgICAgY29uc3QgaGV4U3RyaW5nID0gYXdhaXQgZXhwb3J0S2V5VG9IZXhTdHJpbmcoaXRlbS5rZXlUeXBlLCBrZXkpO1xuICAgICAgICBzdG9yZS5rZXlzLnNldChpdGVtLnN0b3JhZ2VLZXksIGhleFN0cmluZyk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U0NXS2V5TWFuYWdlci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWKeyManager.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWSigner.js": /*!**********************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWSigner.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SCWSigner: () => (/* binding */ SCWSigner)\n/* harmony export */ });\n/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../core/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/constants.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js\");\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _core_telemetry_events_scw_signer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../core/telemetry/events/scw-signer.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-signer.js\");\n/* harmony import */ var _core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../core/telemetry/events/scw-sub-account.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/scw-sub-account.js\");\n/* harmony import */ var _core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../core/telemetry/utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/utils.js\");\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n/* harmony import */ var _store_chain_clients_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store/chain-clients/utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/utils.js\");\n/* harmony import */ var _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../store/correlation-ids/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/correlation-ids/store.js\");\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _util_assertPresence_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../util/assertPresence.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js\");\n/* harmony import */ var _util_assertSubAccount_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../util/assertSubAccount.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertSubAccount.js\");\n/* harmony import */ var _util_cipher_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../util/cipher.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/cipher.js\");\n/* harmony import */ var _util_provider_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../util/provider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/provider.js\");\n/* harmony import */ var _kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../kms/crypto-key/index.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/index.js\");\n/* harmony import */ var _SCWKeyManager_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SCWKeyManager.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWKeyManager.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils.js\");\n/* harmony import */ var _utils_createSubAccountSigner_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./utils/createSubAccountSigner.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSubAccountSigner.js\");\n/* harmony import */ var _utils_findOwnerIndex_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./utils/findOwnerIndex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/findOwnerIndex.js\");\n/* harmony import */ var _utils_handleAddSubAccountOwner_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./utils/handleAddSubAccountOwner.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleAddSubAccountOwner.js\");\n/* harmony import */ var _utils_handleInsufficientBalance_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./utils/handleInsufficientBalance.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleInsufficientBalance.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass SCWSigner {\n constructor(params) {\n var _a, _b, _c, _d;\n this.communicator = params.communicator;\n this.callback = params.callback;\n this.keyManager = new _SCWKeyManager_js__WEBPACK_IMPORTED_MODULE_0__.SCWKeyManager();\n const { account, chains } = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.getState();\n this.accounts = (_a = account.accounts) !== null && _a !== void 0 ? _a : [];\n this.chain = (_b = account.chain) !== null && _b !== void 0 ? _b : {\n id: (_d = (_c = params.metadata.appChainIds) === null || _c === void 0 ? void 0 : _c[0]) !== null && _d !== void 0 ? _d : 1,\n };\n if (chains) {\n (0,_store_chain_clients_utils_js__WEBPACK_IMPORTED_MODULE_2__.createClients)(chains);\n }\n }\n async handshake(args) {\n var _a, _b, _c;\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_3__.correlationIds.get(args);\n (0,_core_telemetry_events_scw_signer_js__WEBPACK_IMPORTED_MODULE_4__.logHandshakeStarted)({ method: args.method, correlationId });\n try {\n // Open the popup before constructing the request message.\n // This is to ensure that the popup is not blocked by some browsers (i.e. Safari)\n await ((_b = (_a = this.communicator).waitForPopupLoaded) === null || _b === void 0 ? void 0 : _b.call(_a));\n const handshakeMessage = await this.createRequestMessage({\n handshake: {\n method: args.method,\n params: (_c = args.params) !== null && _c !== void 0 ? _c : [],\n },\n }, correlationId);\n const response = await this.communicator.postRequestAndWaitForResponse(handshakeMessage);\n // store peer's public key\n if ('failure' in response.content) {\n throw response.content.failure;\n }\n const peerPublicKey = await (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_5__.importKeyFromHexString)('public', response.sender);\n await this.keyManager.setPeerPublicKey(peerPublicKey);\n const decrypted = await this.decryptResponseMessage(response);\n this.handleResponse(args, decrypted);\n (0,_core_telemetry_events_scw_signer_js__WEBPACK_IMPORTED_MODULE_4__.logHandshakeCompleted)({ method: args.method, correlationId });\n }\n catch (error) {\n (0,_core_telemetry_events_scw_signer_js__WEBPACK_IMPORTED_MODULE_4__.logHandshakeError)({\n method: args.method,\n correlationId,\n errorMessage: (0,_core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__.parseErrorMessageFromAny)(error),\n });\n throw error;\n }\n }\n async request(request) {\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_3__.correlationIds.get(request);\n (0,_core_telemetry_events_scw_signer_js__WEBPACK_IMPORTED_MODULE_4__.logRequestStarted)({ method: request.method, correlationId });\n try {\n const result = await this._request(request);\n (0,_core_telemetry_events_scw_signer_js__WEBPACK_IMPORTED_MODULE_4__.logRequestCompleted)({ method: request.method, correlationId });\n return result;\n }\n catch (error) {\n (0,_core_telemetry_events_scw_signer_js__WEBPACK_IMPORTED_MODULE_4__.logRequestError)({\n method: request.method,\n correlationId,\n errorMessage: (0,_core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__.parseErrorMessageFromAny)(error),\n });\n throw error;\n }\n }\n async _request(request) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;\n if (this.accounts.length === 0) {\n switch (request.method) {\n case 'eth_requestAccounts': {\n // Wait for the popup to be loaded before making async calls\n await ((_b = (_a = this.communicator).waitForPopupLoaded) === null || _b === void 0 ? void 0 : _b.call(_a));\n await (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.initSubAccountConfig)();\n // This will populate the store with the sub account\n await this.request({\n method: 'wallet_connect',\n params: [\n {\n version: '1',\n capabilities: Object.assign({}, ((_d = (_c = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _c === void 0 ? void 0 : _c.capabilities) !== null && _d !== void 0 ? _d : {})),\n },\n ],\n });\n return this.accounts;\n }\n case 'wallet_switchEthereumChain': {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.assertParamsChainId)(request.params);\n this.chain.id = Number(request.params[0].chainId);\n return;\n }\n case 'wallet_connect': {\n // Wait for the popup to be loaded before making async calls\n await ((_f = (_e = this.communicator).waitForPopupLoaded) === null || _f === void 0 ? void 0 : _f.call(_e));\n await (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.initSubAccountConfig)();\n // Check if addSubAccount capability is present and if so, inject the the sub account capabilities\n let capabilitiesToInject = {};\n if ((0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.requestHasCapability)(request, 'addSubAccount')) {\n capabilitiesToInject = (_h = (_g = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) === null || _g === void 0 ? void 0 : _g.capabilities) !== null && _h !== void 0 ? _h : {};\n }\n const modifiedRequest = (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.injectRequestCapabilities)(request, capabilitiesToInject);\n return this.sendRequestToPopup(modifiedRequest);\n }\n case 'wallet_sendCalls':\n case 'wallet_sign': {\n return this.sendRequestToPopup(request);\n }\n default:\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized();\n }\n }\n if (this.shouldRequestUseSubAccountSigner(request)) {\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_3__.correlationIds.get(request);\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logSubAccountRequestStarted)({ method: request.method, correlationId });\n try {\n const result = await this.sendRequestToSubAccountSigner(request);\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logSubAccountRequestCompleted)({ method: request.method, correlationId });\n return result;\n }\n catch (error) {\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logSubAccountRequestError)({\n method: request.method,\n correlationId,\n errorMessage: (0,_core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__.parseErrorMessageFromAny)(error),\n });\n throw error;\n }\n }\n switch (request.method) {\n case 'eth_requestAccounts':\n case 'eth_accounts': {\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.get();\n const subAccountsConfig = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get();\n if (subAccount === null || subAccount === void 0 ? void 0 : subAccount.address) {\n // if auto sub accounts are enabled and we have a sub account, we need to return it as a top level account\n // otherwise, we just append it to the accounts array\n this.accounts = (subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.enableAutoSubAccounts)\n ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.prependWithoutDuplicates)(this.accounts, subAccount.address)\n : (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.appendWithoutDuplicates)(this.accounts, subAccount.address);\n }\n (_j = this.callback) === null || _j === void 0 ? void 0 : _j.call(this, 'connect', { chainId: (0,viem__WEBPACK_IMPORTED_MODULE_10__.numberToHex)(this.chain.id) });\n return this.accounts;\n }\n case 'eth_coinbase':\n return this.accounts[0];\n case 'net_version':\n return this.chain.id;\n case 'eth_chainId':\n return (0,viem__WEBPACK_IMPORTED_MODULE_10__.numberToHex)(this.chain.id);\n case 'wallet_getCapabilities':\n return this.handleGetCapabilitiesRequest(request);\n case 'wallet_switchEthereumChain':\n return this.handleSwitchChainRequest(request);\n case 'eth_ecRecover':\n case 'personal_sign':\n case 'wallet_sign':\n case 'personal_ecRecover':\n case 'eth_signTransaction':\n case 'eth_sendTransaction':\n case 'eth_signTypedData_v1':\n case 'eth_signTypedData_v3':\n case 'eth_signTypedData_v4':\n case 'eth_signTypedData':\n case 'wallet_addEthereumChain':\n case 'wallet_watchAsset':\n case 'wallet_sendCalls':\n case 'wallet_showCallsStatus':\n case 'wallet_grantPermissions':\n return this.sendRequestToPopup(request);\n case 'wallet_connect': {\n // Return cached wallet connect response if available\n const cachedResponse = await (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.getCachedWalletConnectResponse)();\n if (cachedResponse) {\n return cachedResponse;\n }\n // Wait for the popup to be loaded before making async calls\n await ((_l = (_k = this.communicator).waitForPopupLoaded) === null || _l === void 0 ? void 0 : _l.call(_k));\n await (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.initSubAccountConfig)();\n const subAccountsConfig = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get();\n const modifiedRequest = (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.injectRequestCapabilities)(request, (_m = subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.capabilities) !== null && _m !== void 0 ? _m : {});\n (_o = this.callback) === null || _o === void 0 ? void 0 : _o.call(this, 'connect', { chainId: (0,viem__WEBPACK_IMPORTED_MODULE_10__.numberToHex)(this.chain.id) });\n return this.sendRequestToPopup(modifiedRequest);\n }\n // Sub Account Support\n case 'wallet_getSubAccounts': {\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.get();\n if (subAccount === null || subAccount === void 0 ? void 0 : subAccount.address) {\n return {\n subAccounts: [subAccount],\n };\n }\n if (!this.chain.rpcUrl) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.rpc.internal('No RPC URL set for chain');\n }\n const response = (await (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_11__.fetchRPCRequest)(request, this.chain.rpcUrl));\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_12__.assertArrayPresence)(response.subAccounts, 'subAccounts');\n if (response.subAccounts.length > 0) {\n // cache the sub account\n (0,_util_assertSubAccount_js__WEBPACK_IMPORTED_MODULE_13__.assertSubAccount)(response.subAccounts[0]);\n const subAccount = response.subAccounts[0];\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.set({\n address: subAccount.address,\n factory: subAccount.factory,\n factoryData: subAccount.factoryData,\n });\n }\n return response;\n }\n case 'wallet_addSubAccount':\n return this.addSubAccount(request);\n case 'coinbase_fetchPermissions': {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.assertFetchPermissionsRequest)(request);\n const completeRequest = (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.fillMissingParamsForFetchPermissions)(request);\n const permissions = (await (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_11__.fetchRPCRequest)(completeRequest, _core_constants_js__WEBPACK_IMPORTED_MODULE_14__.CB_WALLET_RPC_URL));\n const requestedChainId = (0,viem__WEBPACK_IMPORTED_MODULE_15__.hexToNumber)((_p = completeRequest.params) === null || _p === void 0 ? void 0 : _p[0].chainId);\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.spendPermissions.set(permissions.permissions.map((permission) => (Object.assign(Object.assign({}, permission), { chainId: requestedChainId }))));\n return permissions;\n }\n default:\n if (!this.chain.rpcUrl) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.rpc.internal('No RPC URL set for chain');\n }\n return (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_11__.fetchRPCRequest)(request, this.chain.rpcUrl);\n }\n }\n async sendRequestToPopup(request) {\n var _a, _b;\n // Open the popup before constructing the request message.\n // This is to ensure that the popup is not blocked by some browsers (i.e. Safari)\n await ((_b = (_a = this.communicator).waitForPopupLoaded) === null || _b === void 0 ? void 0 : _b.call(_a));\n const response = await this.sendEncryptedRequest(request);\n const decrypted = await this.decryptResponseMessage(response);\n return this.handleResponse(request, decrypted);\n }\n async handleResponse(request, decrypted) {\n var _a, _b, _c, _d, _e;\n const result = decrypted.result;\n if ('error' in result)\n throw result.error;\n switch (request.method) {\n case 'eth_requestAccounts': {\n const accounts = result.value;\n this.accounts = accounts;\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.account.set({\n accounts,\n chain: this.chain,\n });\n (_a = this.callback) === null || _a === void 0 ? void 0 : _a.call(this, 'accountsChanged', accounts);\n break;\n }\n case 'wallet_connect': {\n const response = result.value;\n const accounts = response.accounts.map((account) => account.address);\n this.accounts = accounts;\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.account.set({\n accounts,\n });\n const account = response.accounts.at(0);\n const capabilities = account === null || account === void 0 ? void 0 : account.capabilities;\n if (capabilities === null || capabilities === void 0 ? void 0 : capabilities.subAccounts) {\n const capabilityResponse = capabilities === null || capabilities === void 0 ? void 0 : capabilities.subAccounts;\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_12__.assertArrayPresence)(capabilityResponse, 'subAccounts');\n (0,_util_assertSubAccount_js__WEBPACK_IMPORTED_MODULE_13__.assertSubAccount)(capabilityResponse[0]);\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.set({\n address: capabilityResponse[0].address,\n factory: capabilityResponse[0].factory,\n factoryData: capabilityResponse[0].factoryData,\n });\n }\n let accounts_ = [this.accounts[0]];\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.get();\n const subAccountsConfig = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get();\n if (subAccount === null || subAccount === void 0 ? void 0 : subAccount.address) {\n // Sub account should be returned as a top level account if auto sub accounts are enabled\n this.accounts = (subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.enableAutoSubAccounts)\n ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.prependWithoutDuplicates)(this.accounts, subAccount.address)\n : (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.appendWithoutDuplicates)(this.accounts, subAccount.address);\n }\n const spendPermissions = (_c = (_b = response === null || response === void 0 ? void 0 : response.accounts) === null || _b === void 0 ? void 0 : _b[0].capabilities) === null || _c === void 0 ? void 0 : _c.spendPermissions;\n if (spendPermissions && 'permissions' in spendPermissions) {\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.spendPermissions.set(spendPermissions === null || spendPermissions === void 0 ? void 0 : spendPermissions.permissions);\n }\n (_d = this.callback) === null || _d === void 0 ? void 0 : _d.call(this, 'accountsChanged', accounts_);\n break;\n }\n case 'wallet_addSubAccount': {\n (0,_util_assertSubAccount_js__WEBPACK_IMPORTED_MODULE_13__.assertSubAccount)(result.value);\n const subAccount = result.value;\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.set(subAccount);\n const subAccountsConfig = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get();\n this.accounts = (subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.enableAutoSubAccounts)\n ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.prependWithoutDuplicates)(this.accounts, subAccount.address)\n : (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.appendWithoutDuplicates)(this.accounts, subAccount.address);\n (_e = this.callback) === null || _e === void 0 ? void 0 : _e.call(this, 'accountsChanged', this.accounts);\n break;\n }\n default:\n break;\n }\n return result.value;\n }\n async cleanup() {\n var _a, _b;\n const metadata = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.config.get().metadata;\n await this.keyManager.clear();\n // clear the store\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.account.clear();\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.clear();\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.spendPermissions.clear();\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.chains.clear();\n // reset the signer\n this.accounts = [];\n this.chain = {\n id: (_b = (_a = metadata === null || metadata === void 0 ? void 0 : metadata.appChainIds) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : 1,\n };\n }\n /**\n * @returns `null` if the request was successful.\n * https://eips.ethereum.org/EIPS/eip-3326#wallet_switchethereumchain\n */\n async handleSwitchChainRequest(request) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.assertParamsChainId)(request.params);\n const chainId = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_16__.ensureIntNumber)(request.params[0].chainId);\n const localResult = this.updateChain(chainId);\n if (localResult)\n return null;\n const popupResult = await this.sendRequestToPopup(request);\n if (popupResult === null) {\n this.updateChain(chainId);\n }\n return popupResult;\n }\n async handleGetCapabilitiesRequest(request) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.assertGetCapabilitiesParams)(request.params);\n const requestedAccount = request.params[0];\n const filterChainIds = request.params[1]; // Optional second parameter\n if (!this.accounts.some((account) => (0,viem__WEBPACK_IMPORTED_MODULE_17__.isAddressEqual)(account, requestedAccount))) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('no active account found when getting capabilities');\n }\n const capabilities = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.getState().account.capabilities;\n // Return empty object if capabilities is undefined\n if (!capabilities) {\n return {};\n }\n // If no filter is provided, return all capabilities\n if (!filterChainIds || filterChainIds.length === 0) {\n return capabilities;\n }\n // Convert filter chain IDs to numbers once for efficient lookup\n const filterChainNumbers = new Set(filterChainIds.map((chainId) => (0,viem__WEBPACK_IMPORTED_MODULE_15__.hexToNumber)(chainId)));\n // Filter capabilities\n const filteredCapabilities = Object.fromEntries(Object.entries(capabilities).filter(([capabilityKey]) => {\n try {\n const capabilityChainNumber = (0,viem__WEBPACK_IMPORTED_MODULE_15__.hexToNumber)(capabilityKey);\n return filterChainNumbers.has(capabilityChainNumber);\n }\n catch (_a) {\n // If capabilityKey is not a valid hex string, exclude it\n return false;\n }\n }));\n return filteredCapabilities;\n }\n async sendEncryptedRequest(request) {\n const sharedSecret = await this.keyManager.getSharedSecret();\n if (!sharedSecret) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('No shared secret found when encrypting request');\n }\n const encrypted = await (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_5__.encryptContent)({\n action: request,\n chainId: this.chain.id,\n }, sharedSecret);\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_3__.correlationIds.get(request);\n const message = await this.createRequestMessage({ encrypted }, correlationId);\n return this.communicator.postRequestAndWaitForResponse(message);\n }\n async createRequestMessage(content, correlationId) {\n const publicKey = await (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_5__.exportKeyToHexString)('public', await this.keyManager.getOwnPublicKey());\n return {\n id: crypto.randomUUID(),\n correlationId,\n sender: publicKey,\n content,\n timestamp: new Date(),\n };\n }\n async decryptResponseMessage(message) {\n var _a, _b, _c;\n const content = message.content;\n // throw protocol level error\n if ('failure' in content) {\n throw content.failure;\n }\n const sharedSecret = await this.keyManager.getSharedSecret();\n if (!sharedSecret) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('Invalid session: no shared secret found when decrypting response');\n }\n const response = await (0,_util_cipher_js__WEBPACK_IMPORTED_MODULE_5__.decryptContent)(content.encrypted, sharedSecret);\n const availableChains = (_a = response.data) === null || _a === void 0 ? void 0 : _a.chains;\n if (availableChains) {\n const nativeCurrencies = (_b = response.data) === null || _b === void 0 ? void 0 : _b.nativeCurrencies;\n const chains = Object.entries(availableChains).map(([id, rpcUrl]) => {\n const nativeCurrency = nativeCurrencies === null || nativeCurrencies === void 0 ? void 0 : nativeCurrencies[Number(id)];\n return Object.assign({ id: Number(id), rpcUrl }, (nativeCurrency ? { nativeCurrency } : {}));\n });\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.chains.set(chains);\n this.updateChain(this.chain.id, chains);\n (0,_store_chain_clients_utils_js__WEBPACK_IMPORTED_MODULE_2__.createClients)(chains);\n }\n const walletCapabilities = (_c = response.data) === null || _c === void 0 ? void 0 : _c.capabilities;\n if (walletCapabilities) {\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.account.set({\n capabilities: walletCapabilities,\n });\n }\n return response;\n }\n updateChain(chainId, newAvailableChains) {\n var _a;\n const state = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.getState();\n const chains = newAvailableChains !== null && newAvailableChains !== void 0 ? newAvailableChains : state.chains;\n const chain = chains === null || chains === void 0 ? void 0 : chains.find((chain) => chain.id === chainId);\n if (!chain)\n return false;\n if (chain !== this.chain) {\n this.chain = chain;\n _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.account.set({\n chain,\n });\n (_a = this.callback) === null || _a === void 0 ? void 0 : _a.call(this, 'chainChanged', (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_16__.hexStringFromNumber)(chain.id));\n }\n return true;\n }\n async addSubAccount(request) {\n var _a, _b, _c, _d;\n const state = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.getState();\n const subAccount = state.subAccount;\n const subAccountsConfig = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get();\n if (subAccount === null || subAccount === void 0 ? void 0 : subAccount.address) {\n this.accounts = (subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.enableAutoSubAccounts)\n ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.prependWithoutDuplicates)(this.accounts, subAccount.address)\n : (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.appendWithoutDuplicates)(this.accounts, subAccount.address);\n (_a = this.callback) === null || _a === void 0 ? void 0 : _a.call(this, 'accountsChanged', this.accounts);\n return subAccount;\n }\n // Wait for the popup to be loaded before sending the request\n await ((_c = (_b = this.communicator).waitForPopupLoaded) === null || _c === void 0 ? void 0 : _c.call(_b));\n if (Array.isArray(request.params) &&\n request.params.length > 0 &&\n request.params[0].account &&\n request.params[0].account.type === 'create') {\n let keys;\n if (request.params[0].account.keys && request.params[0].account.keys.length > 0) {\n keys = request.params[0].account.keys;\n }\n else {\n const config = (_d = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get()) !== null && _d !== void 0 ? _d : {};\n const { account: ownerAccount } = config.toOwnerAccount\n ? await config.toOwnerAccount()\n : await (0,_kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_18__.getCryptoKeyAccount)();\n if (!ownerAccount) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('could not get subaccount owner account when adding sub account');\n }\n keys = [\n {\n type: ownerAccount.address ? 'address' : 'webauthn-p256',\n publicKey: ownerAccount.address || ownerAccount.publicKey,\n },\n ];\n }\n request.params[0].account.keys = keys;\n }\n const response = await this.sendRequestToPopup(request);\n (0,_util_assertSubAccount_js__WEBPACK_IMPORTED_MODULE_13__.assertSubAccount)(response);\n return response;\n }\n shouldRequestUseSubAccountSigner(request) {\n const sender = (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.getSenderFromRequest)(request);\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.get();\n if (sender) {\n return sender.toLowerCase() === (subAccount === null || subAccount === void 0 ? void 0 : subAccount.address.toLowerCase());\n }\n return false;\n }\n async sendRequestToSubAccountSigner(request) {\n var _a;\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccounts.get();\n const subAccountsConfig = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.subAccountsConfig.get();\n const config = _store_store_js__WEBPACK_IMPORTED_MODULE_1__.store.config.get();\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_12__.assertPresence)(subAccount === null || subAccount === void 0 ? void 0 : subAccount.address, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('no active sub account when sending request to sub account signer'));\n // Get the owner account from the config\n const ownerAccount = (subAccountsConfig === null || subAccountsConfig === void 0 ? void 0 : subAccountsConfig.toOwnerAccount)\n ? await subAccountsConfig.toOwnerAccount()\n : await (0,_kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_18__.getCryptoKeyAccount)();\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_12__.assertPresence)(ownerAccount === null || ownerAccount === void 0 ? void 0 : ownerAccount.account, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('no active sub account owner when sending request to sub account signer'));\n const sender = (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.getSenderFromRequest)(request);\n // if sender is undefined, we inject the active sub account\n // address into the params for the supported request methods\n if (sender === undefined) {\n request = (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.addSenderToRequest)(request, subAccount.address);\n }\n const client = (0,_store_chain_clients_utils_js__WEBPACK_IMPORTED_MODULE_2__.getClient)(this.chain.id);\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_12__.assertPresence)(client, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.rpc.internal(`client not found for chainId ${this.chain.id} when sending request to sub account signer`));\n const globalAccountAddress = this.accounts.find((account) => account.toLowerCase() !== subAccount.address.toLowerCase());\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_12__.assertPresence)(globalAccountAddress, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('no global account found when sending request to sub account signer'));\n const dataSuffix = (0,_utils_js__WEBPACK_IMPORTED_MODULE_7__.makeDataSuffix)({\n attribution: (_a = config.preference) === null || _a === void 0 ? void 0 : _a.attribution,\n dappOrigin: window.location.origin,\n });\n const publicKey = ownerAccount.account.type === 'local'\n ? ownerAccount.account.address\n : ownerAccount.account.publicKey;\n let ownerIndex = await (0,_utils_findOwnerIndex_js__WEBPACK_IMPORTED_MODULE_19__.findOwnerIndex)({\n address: subAccount.address,\n factory: subAccount.factory,\n factoryData: subAccount.factoryData,\n publicKey,\n client,\n });\n if (ownerIndex === -1) {\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_3__.correlationIds.get(request);\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logAddOwnerStarted)({ method: request.method, correlationId });\n try {\n ownerIndex = await (0,_utils_handleAddSubAccountOwner_js__WEBPACK_IMPORTED_MODULE_20__.handleAddSubAccountOwner)({\n ownerAccount: ownerAccount.account,\n globalAccountRequest: this.sendRequestToPopup.bind(this),\n });\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logAddOwnerCompleted)({ method: request.method, correlationId });\n }\n catch (error) {\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logAddOwnerError)({\n method: request.method,\n correlationId,\n errorMessage: (0,_core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__.parseErrorMessageFromAny)(error),\n });\n return _core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.standardErrors.provider.unauthorized('failed to add sub account owner when sending request to sub account signer');\n }\n }\n const { request: subAccountRequest } = await (0,_utils_createSubAccountSigner_js__WEBPACK_IMPORTED_MODULE_21__.createSubAccountSigner)({\n address: subAccount.address,\n owner: ownerAccount.account,\n client: client,\n factory: subAccount.factory,\n factoryData: subAccount.factoryData,\n parentAddress: globalAccountAddress,\n attribution: dataSuffix ? { suffix: dataSuffix } : undefined,\n ownerIndex,\n });\n try {\n const result = await subAccountRequest(request);\n return result;\n }\n catch (error) {\n let errorObject;\n if ((0,_core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.isViemError)(error)) {\n errorObject = JSON.parse(error.details);\n }\n else if ((0,_core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.isActionableHttpRequestError)(error)) {\n errorObject = error;\n }\n else {\n throw error;\n }\n if (!((0,_core_error_errors_js__WEBPACK_IMPORTED_MODULE_8__.isActionableHttpRequestError)(errorObject) && errorObject.data)) {\n throw error;\n }\n if (!errorObject.data) {\n throw error;\n }\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_3__.correlationIds.get(request);\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logInsufficientBalanceErrorHandlingStarted)({ method: request.method, correlationId });\n try {\n const result = await (0,_utils_handleInsufficientBalance_js__WEBPACK_IMPORTED_MODULE_22__.handleInsufficientBalanceError)({\n errorData: errorObject.data,\n globalAccountAddress,\n subAccountAddress: subAccount.address,\n client,\n request,\n subAccountRequest,\n globalAccountRequest: this.request.bind(this),\n });\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logInsufficientBalanceErrorHandlingCompleted)({ method: request.method, correlationId });\n return result;\n }\n catch (handlingError) {\n console.error(handlingError);\n (0,_core_telemetry_events_scw_sub_account_js__WEBPACK_IMPORTED_MODULE_9__.logInsufficientBalanceErrorHandlingError)({\n method: request.method,\n correlationId,\n errorMessage: (0,_core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__.parseErrorMessageFromAny)(handlingError),\n });\n throw error;\n }\n }\n }\n}\n//# sourceMappingURL=SCWSigner.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L1NDV1NpZ25lci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBNEQ7QUFDSTtBQUN1QztBQUM2RTtBQUNvSztBQUMvUTtBQUNNO0FBQ0Q7QUFDUjtBQUN6QjtBQUNzQztBQUNqQjtBQUNtRDtBQUM1RDtBQUNXO0FBQ2pCO0FBQ3FUO0FBQzdSO0FBQ2hCO0FBQ29CO0FBQ087QUFDL0U7QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4Qiw0REFBYTtBQUMzQyxnQkFBZ0Isa0JBQWtCLEVBQUUsa0RBQUs7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksNEVBQWE7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsMkVBQWM7QUFDNUMsUUFBUSx5RkFBbUIsR0FBRyxvQ0FBb0M7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQixhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3Qyx1RUFBc0I7QUFDOUQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSwyRkFBcUIsR0FBRyxvQ0FBb0M7QUFDeEU7QUFDQTtBQUNBLFlBQVksdUZBQWlCO0FBQzdCO0FBQ0E7QUFDQSw4QkFBOEIsa0ZBQXdCO0FBQ3RELGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QiwyRUFBYztBQUM1QyxRQUFRLHVGQUFpQixHQUFHLHVDQUF1QztBQUNuRTtBQUNBO0FBQ0EsWUFBWSx5RkFBbUIsR0FBRyx1Q0FBdUM7QUFDekU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxxRkFBZTtBQUMzQjtBQUNBO0FBQ0EsOEJBQThCLGtGQUF3QjtBQUN0RCxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsK0RBQW9CO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhEQUE4RCxlQUFlLGtEQUFLLG1IQUFtSDtBQUNyTSw2QkFBNkI7QUFDN0I7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDhEQUFtQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsK0RBQW9CO0FBQzlDO0FBQ0E7QUFDQSx3QkFBd0IsK0RBQW9CO0FBQzVDLDJEQUEyRCxrREFBSztBQUNoRTtBQUNBLDRDQUE0QyxvRUFBeUI7QUFDckU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsaUVBQWM7QUFDeEM7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLDJFQUFjO0FBQ2hELFlBQVksc0dBQTJCLEdBQUcsdUNBQXVDO0FBQ2pGO0FBQ0E7QUFDQSxnQkFBZ0Isd0dBQTZCLEdBQUcsdUNBQXVDO0FBQ3ZGO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixvR0FBeUI7QUFDekM7QUFDQTtBQUNBLGtDQUFrQyxrRkFBd0I7QUFDMUQsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQyxrREFBSztBQUN4QywwQ0FBMEMsa0RBQUs7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsbUVBQXdCO0FBQ2xELDBCQUEwQixrRUFBdUI7QUFDakQ7QUFDQSxxR0FBcUcsU0FBUyxrREFBVyxpQkFBaUI7QUFDMUk7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsa0RBQVc7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2Q0FBNkMseUVBQThCO0FBQzNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsK0RBQW9CO0FBQzFDLDBDQUEwQyxrREFBSztBQUMvQyx3Q0FBd0Msb0VBQXlCLHlKQUF5SjtBQUMxTixxR0FBcUcsU0FBUyxrREFBVyxpQkFBaUI7QUFDMUk7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsa0RBQUs7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLGlFQUFjO0FBQ3hDO0FBQ0Esd0NBQXdDLG1FQUFlO0FBQ3ZELGdCQUFnQiw2RUFBbUI7QUFDbkM7QUFDQTtBQUNBLG9CQUFvQiw0RUFBZ0I7QUFDcEM7QUFDQSxvQkFBb0Isa0RBQUs7QUFDekI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQix3RUFBNkI7QUFDN0Msd0NBQXdDLCtFQUFvQztBQUM1RSwyQ0FBMkMsbUVBQWUsa0JBQWtCLGtFQUFpQjtBQUM3Rix5Q0FBeUMsa0RBQVc7QUFDcEQsZ0JBQWdCLGtEQUFLLGlHQUFpRyxpQkFBaUIsMkJBQTJCO0FBQ2xLO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLGlFQUFjO0FBQ3hDO0FBQ0EsdUJBQXVCLG1FQUFlO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isa0RBQUs7QUFDckI7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixrREFBSztBQUNyQjtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiw2RUFBbUI7QUFDdkMsb0JBQW9CLDRFQUFnQjtBQUNwQyxvQkFBb0Isa0RBQUs7QUFDekI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSxtQ0FBbUMsa0RBQUs7QUFDeEMsMENBQTBDLGtEQUFLO0FBQy9DO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixtRUFBd0I7QUFDbEQsMEJBQTBCLGtFQUF1QjtBQUNqRDtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0RBQUs7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiw0RUFBZ0I7QUFDaEM7QUFDQSxnQkFBZ0Isa0RBQUs7QUFDckIsMENBQTBDLGtEQUFLO0FBQy9DO0FBQ0Esc0JBQXNCLG1FQUF3QjtBQUM5QyxzQkFBc0Isa0VBQXVCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLGtEQUFLO0FBQzlCO0FBQ0E7QUFDQSxRQUFRLGtEQUFLO0FBQ2IsUUFBUSxrREFBSztBQUNiLFFBQVEsa0RBQUs7QUFDYixRQUFRLGtEQUFLO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsOERBQW1CO0FBQzNCLHdCQUF3QixvRUFBZTtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsc0VBQTJCO0FBQ25DO0FBQ0Esa0RBQWtEO0FBQ2xELDZDQUE2QyxxREFBYztBQUMzRCxrQkFBa0IsaUVBQWM7QUFDaEM7QUFDQSw2QkFBNkIsa0RBQUs7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkVBQTJFLGtEQUFXO0FBQ3RGO0FBQ0E7QUFDQTtBQUNBLDhDQUE4QyxrREFBVztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBLGdDQUFnQywrREFBYztBQUM5QztBQUNBO0FBQ0EsU0FBUztBQUNULDhCQUE4QiwyRUFBYztBQUM1QywwREFBMEQsV0FBVztBQUNyRTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MscUVBQW9CO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsaUVBQWM7QUFDaEM7QUFDQSwrQkFBK0IsK0RBQWM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1Qyx3QkFBd0Isc0JBQXNCLGlCQUFpQixJQUFJO0FBQzFHLGFBQWE7QUFDYixZQUFZLGtEQUFLO0FBQ2pCO0FBQ0EsWUFBWSw0RUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQSxZQUFZLGtEQUFLO0FBQ2pCO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isa0RBQUs7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxrREFBSztBQUNqQjtBQUNBLGFBQWE7QUFDYixvR0FBb0csd0VBQW1CO0FBQ3ZIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isa0RBQUs7QUFDM0I7QUFDQSxrQ0FBa0Msa0RBQUs7QUFDdkM7QUFDQTtBQUNBLGtCQUFrQixtRUFBd0I7QUFDMUMsa0JBQWtCLGtFQUF1QjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLGtEQUFLO0FBQzFDLHdCQUF3Qix3QkFBd0I7QUFDaEQ7QUFDQSw0QkFBNEIsOEVBQW1CO0FBQy9DO0FBQ0EsMEJBQTBCLGlFQUFjO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsNEVBQWdCO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QiwrREFBb0I7QUFDM0MsMkJBQTJCLGtEQUFLO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLGtEQUFLO0FBQ2hDLGtDQUFrQyxrREFBSztBQUN2Qyx1QkFBdUIsa0RBQUs7QUFDNUIsUUFBUSx3RUFBYyw2RUFBNkUsaUVBQWM7QUFDakg7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDhFQUFtQjtBQUN2QyxRQUFRLHdFQUFjLG1GQUFtRixpRUFBYztBQUN2SCx1QkFBdUIsK0RBQW9CO0FBQzNDO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiw2REFBa0I7QUFDeEM7QUFDQSx1QkFBdUIsd0VBQVM7QUFDaEMsUUFBUSx3RUFBYyxTQUFTLGlFQUFjLDhDQUE4QyxlQUFlO0FBQzFHO0FBQ0EsUUFBUSx3RUFBYyx1QkFBdUIsaUVBQWM7QUFDM0QsMkJBQTJCLHlEQUFjO0FBQ3pDO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLHlFQUFjO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxrQ0FBa0MsMkVBQWM7QUFDaEQsWUFBWSw2RkFBa0IsR0FBRyx1Q0FBdUM7QUFDeEU7QUFDQSxtQ0FBbUMsNkZBQXdCO0FBQzNEO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakIsZ0JBQWdCLCtGQUFvQixHQUFHLHVDQUF1QztBQUM5RTtBQUNBO0FBQ0EsZ0JBQWdCLDJGQUFnQjtBQUNoQztBQUNBO0FBQ0Esa0NBQWtDLGtGQUF3QjtBQUMxRCxpQkFBaUI7QUFDakIsdUJBQXVCLGlFQUFjO0FBQ3JDO0FBQ0E7QUFDQSxnQkFBZ0IsNkJBQTZCLFFBQVEseUZBQXNCO0FBQzNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QyxxQkFBcUI7QUFDN0Q7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGtFQUFXO0FBQzNCO0FBQ0E7QUFDQSxxQkFBcUIsbUZBQTRCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsbUZBQTRCO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0MsMkVBQWM7QUFDaEQsWUFBWSxxSEFBMEMsR0FBRyx1Q0FBdUM7QUFDaEc7QUFDQSxxQ0FBcUMsb0dBQThCO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCLGdCQUFnQix1SEFBNEMsR0FBRyx1Q0FBdUM7QUFDdEc7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsbUhBQXdDO0FBQ3hEO0FBQ0E7QUFDQSxrQ0FBa0Msa0ZBQXdCO0FBQzFELGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3Njdy9TQ1dTaWduZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ0JfV0FMTEVUX1JQQ19VUkwgfSBmcm9tICcuLi8uLi9jb3JlL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgeyBoZXhUb051bWJlciwgaXNBZGRyZXNzRXF1YWwsIG51bWJlclRvSGV4IH0gZnJvbSAndmllbSc7XG5pbXBvcnQgeyBpc0FjdGlvbmFibGVIdHRwUmVxdWVzdEVycm9yLCBpc1ZpZW1FcnJvciwgc3RhbmRhcmRFcnJvcnMgfSBmcm9tICcuLi8uLi9jb3JlL2Vycm9yL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBsb2dIYW5kc2hha2VDb21wbGV0ZWQsIGxvZ0hhbmRzaGFrZUVycm9yLCBsb2dIYW5kc2hha2VTdGFydGVkLCBsb2dSZXF1ZXN0Q29tcGxldGVkLCBsb2dSZXF1ZXN0RXJyb3IsIGxvZ1JlcXVlc3RTdGFydGVkLCB9IGZyb20gJy4uLy4uL2NvcmUvdGVsZW1ldHJ5L2V2ZW50cy9zY3ctc2lnbmVyLmpzJztcbmltcG9ydCB7IGxvZ0FkZE93bmVyQ29tcGxldGVkLCBsb2dBZGRPd25lckVycm9yLCBsb2dBZGRPd25lclN0YXJ0ZWQsIGxvZ0luc3VmZmljaWVudEJhbGFuY2VFcnJvckhhbmRsaW5nQ29tcGxldGVkLCBsb2dJbnN1ZmZpY2llbnRCYWxhbmNlRXJyb3JIYW5kbGluZ0Vycm9yLCBsb2dJbnN1ZmZpY2llbnRCYWxhbmNlRXJyb3JIYW5kbGluZ1N0YXJ0ZWQsIGxvZ1N1YkFjY291bnRSZXF1ZXN0Q29tcGxldGVkLCBsb2dTdWJBY2NvdW50UmVxdWVzdEVycm9yLCBsb2dTdWJBY2NvdW50UmVxdWVzdFN0YXJ0ZWQsIH0gZnJvbSAnLi4vLi4vY29yZS90ZWxlbWV0cnkvZXZlbnRzL3Njdy1zdWItYWNjb3VudC5qcyc7XG5pbXBvcnQgeyBwYXJzZUVycm9yTWVzc2FnZUZyb21BbnkgfSBmcm9tICcuLi8uLi9jb3JlL3RlbGVtZXRyeS91dGlscy5qcyc7XG5pbXBvcnQgeyBlbnN1cmVJbnROdW1iZXIsIGhleFN0cmluZ0Zyb21OdW1iZXIgfSBmcm9tICcuLi8uLi9jb3JlL3R5cGUvdXRpbC5qcyc7XG5pbXBvcnQgeyBjcmVhdGVDbGllbnRzLCBnZXRDbGllbnQgfSBmcm9tICcuLi8uLi9zdG9yZS9jaGFpbi1jbGllbnRzL3V0aWxzLmpzJztcbmltcG9ydCB7IGNvcnJlbGF0aW9uSWRzIH0gZnJvbSAnLi4vLi4vc3RvcmUvY29ycmVsYXRpb24taWRzL3N0b3JlLmpzJztcbmltcG9ydCB7IHN0b3JlIH0gZnJvbSAnLi4vLi4vc3RvcmUvc3RvcmUuanMnO1xuaW1wb3J0IHsgYXNzZXJ0QXJyYXlQcmVzZW5jZSwgYXNzZXJ0UHJlc2VuY2UgfSBmcm9tICcuLi8uLi91dGlsL2Fzc2VydFByZXNlbmNlLmpzJztcbmltcG9ydCB7IGFzc2VydFN1YkFjY291bnQgfSBmcm9tICcuLi8uLi91dGlsL2Fzc2VydFN1YkFjY291bnQuanMnO1xuaW1wb3J0IHsgZGVjcnlwdENvbnRlbnQsIGVuY3J5cHRDb250ZW50LCBleHBvcnRLZXlUb0hleFN0cmluZywgaW1wb3J0S2V5RnJvbUhleFN0cmluZywgfSBmcm9tICcuLi8uLi91dGlsL2NpcGhlci5qcyc7XG5pbXBvcnQgeyBmZXRjaFJQQ1JlcXVlc3QgfSBmcm9tICcuLi8uLi91dGlsL3Byb3ZpZGVyLmpzJztcbmltcG9ydCB7IGdldENyeXB0b0tleUFjY291bnQgfSBmcm9tICcuLi8uLi9rbXMvY3J5cHRvLWtleS9pbmRleC5qcyc7XG5pbXBvcnQgeyBTQ1dLZXlNYW5hZ2VyIH0gZnJvbSAnLi9TQ1dLZXlNYW5hZ2VyLmpzJztcbmltcG9ydCB7IGFkZFNlbmRlclRvUmVxdWVzdCwgYXBwZW5kV2l0aG91dER1cGxpY2F0ZXMsIGFzc2VydEZldGNoUGVybWlzc2lvbnNSZXF1ZXN0LCBhc3NlcnRHZXRDYXBhYmlsaXRpZXNQYXJhbXMsIGFzc2VydFBhcmFtc0NoYWluSWQsIGZpbGxNaXNzaW5nUGFyYW1zRm9yRmV0Y2hQZXJtaXNzaW9ucywgZ2V0Q2FjaGVkV2FsbGV0Q29ubmVjdFJlc3BvbnNlLCBnZXRTZW5kZXJGcm9tUmVxdWVzdCwgaW5pdFN1YkFjY291bnRDb25maWcsIGluamVjdFJlcXVlc3RDYXBhYmlsaXRpZXMsIG1ha2VEYXRhU3VmZml4LCBwcmVwZW5kV2l0aG91dER1cGxpY2F0ZXMsIHJlcXVlc3RIYXNDYXBhYmlsaXR5LCB9IGZyb20gJy4vdXRpbHMuanMnO1xuaW1wb3J0IHsgY3JlYXRlU3ViQWNjb3VudFNpZ25lciB9IGZyb20gJy4vdXRpbHMvY3JlYXRlU3ViQWNjb3VudFNpZ25lci5qcyc7XG5pbXBvcnQgeyBmaW5kT3duZXJJbmRleCB9IGZyb20gJy4vdXRpbHMvZmluZE93bmVySW5kZXguanMnO1xuaW1wb3J0IHsgaGFuZGxlQWRkU3ViQWNjb3VudE93bmVyIH0gZnJvbSAnLi91dGlscy9oYW5kbGVBZGRTdWJBY2NvdW50T3duZXIuanMnO1xuaW1wb3J0IHsgaGFuZGxlSW5zdWZmaWNpZW50QmFsYW5jZUVycm9yIH0gZnJvbSAnLi91dGlscy9oYW5kbGVJbnN1ZmZpY2llbnRCYWxhbmNlLmpzJztcbmV4cG9ydCBjbGFzcyBTQ1dTaWduZXIge1xuICAgIGNvbnN0cnVjdG9yKHBhcmFtcykge1xuICAgICAgICB2YXIgX2EsIF9iLCBfYywgX2Q7XG4gICAgICAgIHRoaXMuY29tbXVuaWNhdG9yID0gcGFyYW1zLmNvbW11bmljYXRvcjtcbiAgICAgICAgdGhpcy5jYWxsYmFjayA9IHBhcmFtcy5jYWxsYmFjaztcbiAgICAgICAgdGhpcy5rZXlNYW5hZ2VyID0gbmV3IFNDV0tleU1hbmFnZXIoKTtcbiAgICAgICAgY29uc3QgeyBhY2NvdW50LCBjaGFpbnMgfSA9IHN0b3JlLmdldFN0YXRlKCk7XG4gICAgICAgIHRoaXMuYWNjb3VudHMgPSAoX2EgPSBhY2NvdW50LmFjY291bnRzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXTtcbiAgICAgICAgdGhpcy5jaGFpbiA9IChfYiA9IGFjY291bnQuY2hhaW4pICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IHtcbiAgICAgICAgICAgIGlkOiAoX2QgPSAoX2MgPSBwYXJhbXMubWV0YWRhdGEuYXBwQ2hhaW5JZHMpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfY1swXSkgIT09IG51bGwgJiYgX2QgIT09IHZvaWQgMCA/IF9kIDogMSxcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKGNoYWlucykge1xuICAgICAgICAgICAgY3JlYXRlQ2xpZW50cyhjaGFpbnMpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGFzeW5jIGhhbmRzaGFrZShhcmdzKSB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jO1xuICAgICAgICBjb25zdCBjb3JyZWxhdGlvbklkID0gY29ycmVsYXRpb25JZHMuZ2V0KGFyZ3MpO1xuICAgICAgICBsb2dIYW5kc2hha2VTdGFydGVkKHsgbWV0aG9kOiBhcmdzLm1ldGhvZCwgY29ycmVsYXRpb25JZCB9KTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIE9wZW4gdGhlIHBvcHVwIGJlZm9yZSBjb25zdHJ1Y3RpbmcgdGhlIHJlcXVlc3QgbWVzc2FnZS5cbiAgICAgICAgICAgIC8vIFRoaXMgaXMgdG8gZW5zdXJlIHRoYXQgdGhlIHBvcHVwIGlzIG5vdCBibG9ja2VkIGJ5IHNvbWUgYnJvd3NlcnMgKGkuZS4gU2FmYXJpKVxuICAgICAgICAgICAgYXdhaXQgKChfYiA9IChfYSA9IHRoaXMuY29tbXVuaWNhdG9yKS53YWl0Rm9yUG9wdXBMb2FkZWQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKSk7XG4gICAgICAgICAgICBjb25zdCBoYW5kc2hha2VNZXNzYWdlID0gYXdhaXQgdGhpcy5jcmVhdGVSZXF1ZXN0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgaGFuZHNoYWtlOiB7XG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogYXJncy5tZXRob2QsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogKF9jID0gYXJncy5wYXJhbXMpICE9PSBudWxsICYmIF9jICE9PSB2b2lkIDAgPyBfYyA6IFtdLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LCBjb3JyZWxhdGlvbklkKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jb21tdW5pY2F0b3IucG9zdFJlcXVlc3RBbmRXYWl0Rm9yUmVzcG9uc2UoaGFuZHNoYWtlTWVzc2FnZSk7XG4gICAgICAgICAgICAvLyBzdG9yZSBwZWVyJ3MgcHVibGljIGtleVxuICAgICAgICAgICAgaWYgKCdmYWlsdXJlJyBpbiByZXNwb25zZS5jb250ZW50KSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2UuY29udGVudC5mYWlsdXJlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcGVlclB1YmxpY0tleSA9IGF3YWl0IGltcG9ydEtleUZyb21IZXhTdHJpbmcoJ3B1YmxpYycsIHJlc3BvbnNlLnNlbmRlcik7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmtleU1hbmFnZXIuc2V0UGVlclB1YmxpY0tleShwZWVyUHVibGljS2V5KTtcbiAgICAgICAgICAgIGNvbnN0IGRlY3J5cHRlZCA9IGF3YWl0IHRoaXMuZGVjcnlwdFJlc3BvbnNlTWVzc2FnZShyZXNwb25zZSk7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKGFyZ3MsIGRlY3J5cHRlZCk7XG4gICAgICAgICAgICBsb2dIYW5kc2hha2VDb21wbGV0ZWQoeyBtZXRob2Q6IGFyZ3MubWV0aG9kLCBjb3JyZWxhdGlvbklkIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgbG9nSGFuZHNoYWtlRXJyb3Ioe1xuICAgICAgICAgICAgICAgIG1ldGhvZDogYXJncy5tZXRob2QsXG4gICAgICAgICAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IHBhcnNlRXJyb3JNZXNzYWdlRnJvbUFueShlcnJvciksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIGFzeW5jIHJlcXVlc3QocmVxdWVzdCkge1xuICAgICAgICBjb25zdCBjb3JyZWxhdGlvbklkID0gY29ycmVsYXRpb25JZHMuZ2V0KHJlcXVlc3QpO1xuICAgICAgICBsb2dSZXF1ZXN0U3RhcnRlZCh7IG1ldGhvZDogcmVxdWVzdC5tZXRob2QsIGNvcnJlbGF0aW9uSWQgfSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLl9yZXF1ZXN0KHJlcXVlc3QpO1xuICAgICAgICAgICAgbG9nUmVxdWVzdENvbXBsZXRlZCh7IG1ldGhvZDogcmVxdWVzdC5tZXRob2QsIGNvcnJlbGF0aW9uSWQgfSk7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgbG9nUmVxdWVzdEVycm9yKHtcbiAgICAgICAgICAgICAgICBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgICAgICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiBwYXJzZUVycm9yTWVzc2FnZUZyb21BbnkoZXJyb3IpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhc3luYyBfcmVxdWVzdChyZXF1ZXN0KSB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mLCBfZywgX2gsIF9qLCBfaywgX2wsIF9tLCBfbywgX3A7XG4gICAgICAgIGlmICh0aGlzLmFjY291bnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgc3dpdGNoIChyZXF1ZXN0Lm1ldGhvZCkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2V0aF9yZXF1ZXN0QWNjb3VudHMnOiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFdhaXQgZm9yIHRoZSBwb3B1cCB0byBiZSBsb2FkZWQgYmVmb3JlIG1ha2luZyBhc3luYyBjYWxsc1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCAoKF9iID0gKF9hID0gdGhpcy5jb21tdW5pY2F0b3IpLndhaXRGb3JQb3B1cExvYWRlZCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwoX2EpKTtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgaW5pdFN1YkFjY291bnRDb25maWcoKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gVGhpcyB3aWxsIHBvcHVsYXRlIHRoZSBzdG9yZSB3aXRoIHRoZSBzdWIgYWNjb3VudFxuICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLnJlcXVlc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnd2FsbGV0X2Nvbm5lY3QnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uOiAnMScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhcGFiaWxpdGllczogT2JqZWN0LmFzc2lnbih7fSwgKChfZCA9IChfYyA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuY2FwYWJpbGl0aWVzKSAhPT0gbnVsbCAmJiBfZCAhPT0gdm9pZCAwID8gX2QgOiB7fSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWNjb3VudHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9zd2l0Y2hFdGhlcmV1bUNoYWluJzoge1xuICAgICAgICAgICAgICAgICAgICBhc3NlcnRQYXJhbXNDaGFpbklkKHJlcXVlc3QucGFyYW1zKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFpbi5pZCA9IE51bWJlcihyZXF1ZXN0LnBhcmFtc1swXS5jaGFpbklkKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlICd3YWxsZXRfY29ubmVjdCc6IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gV2FpdCBmb3IgdGhlIHBvcHVwIHRvIGJlIGxvYWRlZCBiZWZvcmUgbWFraW5nIGFzeW5jIGNhbGxzXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0ICgoX2YgPSAoX2UgPSB0aGlzLmNvbW11bmljYXRvcikud2FpdEZvclBvcHVwTG9hZGVkKSA9PT0gbnVsbCB8fCBfZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2YuY2FsbChfZSkpO1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCBpbml0U3ViQWNjb3VudENvbmZpZygpO1xuICAgICAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiBhZGRTdWJBY2NvdW50IGNhcGFiaWxpdHkgaXMgcHJlc2VudCBhbmQgaWYgc28sIGluamVjdCB0aGUgdGhlIHN1YiBhY2NvdW50IGNhcGFiaWxpdGllc1xuICAgICAgICAgICAgICAgICAgICBsZXQgY2FwYWJpbGl0aWVzVG9JbmplY3QgPSB7fTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcXVlc3RIYXNDYXBhYmlsaXR5KHJlcXVlc3QsICdhZGRTdWJBY2NvdW50JykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhcGFiaWxpdGllc1RvSW5qZWN0ID0gKF9oID0gKF9nID0gc3RvcmUuc3ViQWNjb3VudHNDb25maWcuZ2V0KCkpID09PSBudWxsIHx8IF9nID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZy5jYXBhYmlsaXRpZXMpICE9PSBudWxsICYmIF9oICE9PSB2b2lkIDAgPyBfaCA6IHt9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1vZGlmaWVkUmVxdWVzdCA9IGluamVjdFJlcXVlc3RDYXBhYmlsaXRpZXMocmVxdWVzdCwgY2FwYWJpbGl0aWVzVG9JbmplY3QpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZW5kUmVxdWVzdFRvUG9wdXAobW9kaWZpZWRSZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FzZSAnd2FsbGV0X3NlbmRDYWxscyc6XG4gICAgICAgICAgICAgICAgY2FzZSAnd2FsbGV0X3NpZ24nOiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNlbmRSZXF1ZXN0VG9Qb3B1cChyZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucHJvdmlkZXIudW5hdXRob3JpemVkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuc2hvdWxkUmVxdWVzdFVzZVN1YkFjY291bnRTaWduZXIocmVxdWVzdCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvcnJlbGF0aW9uSWQgPSBjb3JyZWxhdGlvbklkcy5nZXQocmVxdWVzdCk7XG4gICAgICAgICAgICBsb2dTdWJBY2NvdW50UmVxdWVzdFN0YXJ0ZWQoeyBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLCBjb3JyZWxhdGlvbklkIH0pO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnNlbmRSZXF1ZXN0VG9TdWJBY2NvdW50U2lnbmVyKHJlcXVlc3QpO1xuICAgICAgICAgICAgICAgIGxvZ1N1YkFjY291bnRSZXF1ZXN0Q29tcGxldGVkKHsgbWV0aG9kOiByZXF1ZXN0Lm1ldGhvZCwgY29ycmVsYXRpb25JZCB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgbG9nU3ViQWNjb3VudFJlcXVlc3RFcnJvcih7XG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogcmVxdWVzdC5tZXRob2QsXG4gICAgICAgICAgICAgICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogcGFyc2VFcnJvck1lc3NhZ2VGcm9tQW55KGVycm9yKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzd2l0Y2ggKHJlcXVlc3QubWV0aG9kKSB7XG4gICAgICAgICAgICBjYXNlICdldGhfcmVxdWVzdEFjY291bnRzJzpcbiAgICAgICAgICAgIGNhc2UgJ2V0aF9hY2NvdW50cyc6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdWJBY2NvdW50ID0gc3RvcmUuc3ViQWNjb3VudHMuZ2V0KCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViQWNjb3VudHNDb25maWcgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKTtcbiAgICAgICAgICAgICAgICBpZiAoc3ViQWNjb3VudCA9PT0gbnVsbCB8fCBzdWJBY2NvdW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJBY2NvdW50LmFkZHJlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gaWYgYXV0byBzdWIgYWNjb3VudHMgYXJlIGVuYWJsZWQgYW5kIHdlIGhhdmUgYSBzdWIgYWNjb3VudCwgd2UgbmVlZCB0byByZXR1cm4gaXQgYXMgYSB0b3AgbGV2ZWwgYWNjb3VudFxuICAgICAgICAgICAgICAgICAgICAvLyBvdGhlcndpc2UsIHdlIGp1c3QgYXBwZW5kIGl0IHRvIHRoZSBhY2NvdW50cyBhcnJheVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFjY291bnRzID0gKHN1YkFjY291bnRzQ29uZmlnID09PSBudWxsIHx8IHN1YkFjY291bnRzQ29uZmlnID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJBY2NvdW50c0NvbmZpZy5lbmFibGVBdXRvU3ViQWNjb3VudHMpXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHByZXBlbmRXaXRob3V0RHVwbGljYXRlcyh0aGlzLmFjY291bnRzLCBzdWJBY2NvdW50LmFkZHJlc3MpXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGFwcGVuZFdpdGhvdXREdXBsaWNhdGVzKHRoaXMuYWNjb3VudHMsIHN1YkFjY291bnQuYWRkcmVzcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIChfaiA9IHRoaXMuY2FsbGJhY2spID09PSBudWxsIHx8IF9qID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfai5jYWxsKHRoaXMsICdjb25uZWN0JywgeyBjaGFpbklkOiBudW1iZXJUb0hleCh0aGlzLmNoYWluLmlkKSB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hY2NvdW50cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ2V0aF9jb2luYmFzZSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWNjb3VudHNbMF07XG4gICAgICAgICAgICBjYXNlICduZXRfdmVyc2lvbic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2hhaW4uaWQ7XG4gICAgICAgICAgICBjYXNlICdldGhfY2hhaW5JZCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bWJlclRvSGV4KHRoaXMuY2hhaW4uaWQpO1xuICAgICAgICAgICAgY2FzZSAnd2FsbGV0X2dldENhcGFiaWxpdGllcyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlR2V0Q2FwYWJpbGl0aWVzUmVxdWVzdChyZXF1ZXN0KTtcbiAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9zd2l0Y2hFdGhlcmV1bUNoYWluJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGVTd2l0Y2hDaGFpblJlcXVlc3QocmVxdWVzdCk7XG4gICAgICAgICAgICBjYXNlICdldGhfZWNSZWNvdmVyJzpcbiAgICAgICAgICAgIGNhc2UgJ3BlcnNvbmFsX3NpZ24nOlxuICAgICAgICAgICAgY2FzZSAnd2FsbGV0X3NpZ24nOlxuICAgICAgICAgICAgY2FzZSAncGVyc29uYWxfZWNSZWNvdmVyJzpcbiAgICAgICAgICAgIGNhc2UgJ2V0aF9zaWduVHJhbnNhY3Rpb24nOlxuICAgICAgICAgICAgY2FzZSAnZXRoX3NlbmRUcmFuc2FjdGlvbic6XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92MSc6XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92Myc6XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92NCc6XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YSc6XG4gICAgICAgICAgICBjYXNlICd3YWxsZXRfYWRkRXRoZXJldW1DaGFpbic6XG4gICAgICAgICAgICBjYXNlICd3YWxsZXRfd2F0Y2hBc3NldCc6XG4gICAgICAgICAgICBjYXNlICd3YWxsZXRfc2VuZENhbGxzJzpcbiAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9zaG93Q2FsbHNTdGF0dXMnOlxuICAgICAgICAgICAgY2FzZSAnd2FsbGV0X2dyYW50UGVybWlzc2lvbnMnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNlbmRSZXF1ZXN0VG9Qb3B1cChyZXF1ZXN0KTtcbiAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9jb25uZWN0Jzoge1xuICAgICAgICAgICAgICAgIC8vIFJldHVybiBjYWNoZWQgd2FsbGV0IGNvbm5lY3QgcmVzcG9uc2UgaWYgYXZhaWxhYmxlXG4gICAgICAgICAgICAgICAgY29uc3QgY2FjaGVkUmVzcG9uc2UgPSBhd2FpdCBnZXRDYWNoZWRXYWxsZXRDb25uZWN0UmVzcG9uc2UoKTtcbiAgICAgICAgICAgICAgICBpZiAoY2FjaGVkUmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhY2hlZFJlc3BvbnNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBXYWl0IGZvciB0aGUgcG9wdXAgdG8gYmUgbG9hZGVkIGJlZm9yZSBtYWtpbmcgYXN5bmMgY2FsbHNcbiAgICAgICAgICAgICAgICBhd2FpdCAoKF9sID0gKF9rID0gdGhpcy5jb21tdW5pY2F0b3IpLndhaXRGb3JQb3B1cExvYWRlZCkgPT09IG51bGwgfHwgX2wgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9sLmNhbGwoX2spKTtcbiAgICAgICAgICAgICAgICBhd2FpdCBpbml0U3ViQWNjb3VudENvbmZpZygpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN1YkFjY291bnRzQ29uZmlnID0gc3RvcmUuc3ViQWNjb3VudHNDb25maWcuZ2V0KCk7XG4gICAgICAgICAgICAgICAgY29uc3QgbW9kaWZpZWRSZXF1ZXN0ID0gaW5qZWN0UmVxdWVzdENhcGFiaWxpdGllcyhyZXF1ZXN0LCAoX20gPSBzdWJBY2NvdW50c0NvbmZpZyA9PT0gbnVsbCB8fCBzdWJBY2NvdW50c0NvbmZpZyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3ViQWNjb3VudHNDb25maWcuY2FwYWJpbGl0aWVzKSAhPT0gbnVsbCAmJiBfbSAhPT0gdm9pZCAwID8gX20gOiB7fSk7XG4gICAgICAgICAgICAgICAgKF9vID0gdGhpcy5jYWxsYmFjaykgPT09IG51bGwgfHwgX28gPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9vLmNhbGwodGhpcywgJ2Nvbm5lY3QnLCB7IGNoYWluSWQ6IG51bWJlclRvSGV4KHRoaXMuY2hhaW4uaWQpIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNlbmRSZXF1ZXN0VG9Qb3B1cChtb2RpZmllZFJlcXVlc3QpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gU3ViIEFjY291bnQgU3VwcG9ydFxuICAgICAgICAgICAgY2FzZSAnd2FsbGV0X2dldFN1YkFjY291bnRzJzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN1YkFjY291bnQgPSBzdG9yZS5zdWJBY2NvdW50cy5nZXQoKTtcbiAgICAgICAgICAgICAgICBpZiAoc3ViQWNjb3VudCA9PT0gbnVsbCB8fCBzdWJBY2NvdW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJBY2NvdW50LmFkZHJlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YkFjY291bnRzOiBbc3ViQWNjb3VudF0sXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5jaGFpbi5ycGNVcmwpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludGVybmFsKCdObyBSUEMgVVJMIHNldCBmb3IgY2hhaW4nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSAoYXdhaXQgZmV0Y2hSUENSZXF1ZXN0KHJlcXVlc3QsIHRoaXMuY2hhaW4ucnBjVXJsKSk7XG4gICAgICAgICAgICAgICAgYXNzZXJ0QXJyYXlQcmVzZW5jZShyZXNwb25zZS5zdWJBY2NvdW50cywgJ3N1YkFjY291bnRzJyk7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnN1YkFjY291bnRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY2FjaGUgdGhlIHN1YiBhY2NvdW50XG4gICAgICAgICAgICAgICAgICAgIGFzc2VydFN1YkFjY291bnQocmVzcG9uc2Uuc3ViQWNjb3VudHNbMF0pO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWJBY2NvdW50ID0gcmVzcG9uc2Uuc3ViQWNjb3VudHNbMF07XG4gICAgICAgICAgICAgICAgICAgIHN0b3JlLnN1YkFjY291bnRzLnNldCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiBzdWJBY2NvdW50LmFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBmYWN0b3J5OiBzdWJBY2NvdW50LmZhY3RvcnksXG4gICAgICAgICAgICAgICAgICAgICAgICBmYWN0b3J5RGF0YTogc3ViQWNjb3VudC5mYWN0b3J5RGF0YSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9hZGRTdWJBY2NvdW50JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hZGRTdWJBY2NvdW50KHJlcXVlc3QpO1xuICAgICAgICAgICAgY2FzZSAnY29pbmJhc2VfZmV0Y2hQZXJtaXNzaW9ucyc6IHtcbiAgICAgICAgICAgICAgICBhc3NlcnRGZXRjaFBlcm1pc3Npb25zUmVxdWVzdChyZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICBjb25zdCBjb21wbGV0ZVJlcXVlc3QgPSBmaWxsTWlzc2luZ1BhcmFtc0ZvckZldGNoUGVybWlzc2lvbnMocmVxdWVzdCk7XG4gICAgICAgICAgICAgICAgY29uc3QgcGVybWlzc2lvbnMgPSAoYXdhaXQgZmV0Y2hSUENSZXF1ZXN0KGNvbXBsZXRlUmVxdWVzdCwgQ0JfV0FMTEVUX1JQQ19VUkwpKTtcbiAgICAgICAgICAgICAgICBjb25zdCByZXF1ZXN0ZWRDaGFpbklkID0gaGV4VG9OdW1iZXIoKF9wID0gY29tcGxldGVSZXF1ZXN0LnBhcmFtcykgPT09IG51bGwgfHwgX3AgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9wWzBdLmNoYWluSWQpO1xuICAgICAgICAgICAgICAgIHN0b3JlLnNwZW5kUGVybWlzc2lvbnMuc2V0KHBlcm1pc3Npb25zLnBlcm1pc3Npb25zLm1hcCgocGVybWlzc2lvbikgPT4gKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgcGVybWlzc2lvbiksIHsgY2hhaW5JZDogcmVxdWVzdGVkQ2hhaW5JZCB9KSkpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcGVybWlzc2lvbnM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5jaGFpbi5ycGNVcmwpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludGVybmFsKCdObyBSUEMgVVJMIHNldCBmb3IgY2hhaW4nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZldGNoUlBDUmVxdWVzdChyZXF1ZXN0LCB0aGlzLmNoYWluLnJwY1VybCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYXN5bmMgc2VuZFJlcXVlc3RUb1BvcHVwKHJlcXVlc3QpIHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgLy8gT3BlbiB0aGUgcG9wdXAgYmVmb3JlIGNvbnN0cnVjdGluZyB0aGUgcmVxdWVzdCBtZXNzYWdlLlxuICAgICAgICAvLyBUaGlzIGlzIHRvIGVuc3VyZSB0aGF0IHRoZSBwb3B1cCBpcyBub3QgYmxvY2tlZCBieSBzb21lIGJyb3dzZXJzIChpLmUuIFNhZmFyaSlcbiAgICAgICAgYXdhaXQgKChfYiA9IChfYSA9IHRoaXMuY29tbXVuaWNhdG9yKS53YWl0Rm9yUG9wdXBMb2FkZWQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKSk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5zZW5kRW5jcnlwdGVkUmVxdWVzdChyZXF1ZXN0KTtcbiAgICAgICAgY29uc3QgZGVjcnlwdGVkID0gYXdhaXQgdGhpcy5kZWNyeXB0UmVzcG9uc2VNZXNzYWdlKHJlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlUmVzcG9uc2UocmVxdWVzdCwgZGVjcnlwdGVkKTtcbiAgICB9XG4gICAgYXN5bmMgaGFuZGxlUmVzcG9uc2UocmVxdWVzdCwgZGVjcnlwdGVkKSB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2U7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGRlY3J5cHRlZC5yZXN1bHQ7XG4gICAgICAgIGlmICgnZXJyb3InIGluIHJlc3VsdClcbiAgICAgICAgICAgIHRocm93IHJlc3VsdC5lcnJvcjtcbiAgICAgICAgc3dpdGNoIChyZXF1ZXN0Lm1ldGhvZCkge1xuICAgICAgICAgICAgY2FzZSAnZXRoX3JlcXVlc3RBY2NvdW50cyc6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBhY2NvdW50cyA9IHJlc3VsdC52YWx1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmFjY291bnRzID0gYWNjb3VudHM7XG4gICAgICAgICAgICAgICAgc3RvcmUuYWNjb3VudC5zZXQoe1xuICAgICAgICAgICAgICAgICAgICBhY2NvdW50cyxcbiAgICAgICAgICAgICAgICAgICAgY2hhaW46IHRoaXMuY2hhaW4sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgKF9hID0gdGhpcy5jYWxsYmFjaykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcywgJ2FjY291bnRzQ2hhbmdlZCcsIGFjY291bnRzKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9jb25uZWN0Jzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gcmVzdWx0LnZhbHVlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGFjY291bnRzID0gcmVzcG9uc2UuYWNjb3VudHMubWFwKChhY2NvdW50KSA9PiBhY2NvdW50LmFkZHJlc3MpO1xuICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudHMgPSBhY2NvdW50cztcbiAgICAgICAgICAgICAgICBzdG9yZS5hY2NvdW50LnNldCh7XG4gICAgICAgICAgICAgICAgICAgIGFjY291bnRzLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGNvbnN0IGFjY291bnQgPSByZXNwb25zZS5hY2NvdW50cy5hdCgwKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjYXBhYmlsaXRpZXMgPSBhY2NvdW50ID09PSBudWxsIHx8IGFjY291bnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFjY291bnQuY2FwYWJpbGl0aWVzO1xuICAgICAgICAgICAgICAgIGlmIChjYXBhYmlsaXRpZXMgPT09IG51bGwgfHwgY2FwYWJpbGl0aWVzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjYXBhYmlsaXRpZXMuc3ViQWNjb3VudHMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2FwYWJpbGl0eVJlc3BvbnNlID0gY2FwYWJpbGl0aWVzID09PSBudWxsIHx8IGNhcGFiaWxpdGllcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2FwYWJpbGl0aWVzLnN1YkFjY291bnRzO1xuICAgICAgICAgICAgICAgICAgICBhc3NlcnRBcnJheVByZXNlbmNlKGNhcGFiaWxpdHlSZXNwb25zZSwgJ3N1YkFjY291bnRzJyk7XG4gICAgICAgICAgICAgICAgICAgIGFzc2VydFN1YkFjY291bnQoY2FwYWJpbGl0eVJlc3BvbnNlWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgc3RvcmUuc3ViQWNjb3VudHMuc2V0KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6IGNhcGFiaWxpdHlSZXNwb25zZVswXS5hZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmFjdG9yeTogY2FwYWJpbGl0eVJlc3BvbnNlWzBdLmZhY3RvcnksXG4gICAgICAgICAgICAgICAgICAgICAgICBmYWN0b3J5RGF0YTogY2FwYWJpbGl0eVJlc3BvbnNlWzBdLmZhY3RvcnlEYXRhLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGV0IGFjY291bnRzXyA9IFt0aGlzLmFjY291bnRzWzBdXTtcbiAgICAgICAgICAgICAgICBjb25zdCBzdWJBY2NvdW50ID0gc3RvcmUuc3ViQWNjb3VudHMuZ2V0KCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViQWNjb3VudHNDb25maWcgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKTtcbiAgICAgICAgICAgICAgICBpZiAoc3ViQWNjb3VudCA9PT0gbnVsbCB8fCBzdWJBY2NvdW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJBY2NvdW50LmFkZHJlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gU3ViIGFjY291bnQgc2hvdWxkIGJlIHJldHVybmVkIGFzIGEgdG9wIGxldmVsIGFjY291bnQgaWYgYXV0byBzdWIgYWNjb3VudHMgYXJlIGVuYWJsZWRcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hY2NvdW50cyA9IChzdWJBY2NvdW50c0NvbmZpZyA9PT0gbnVsbCB8fCBzdWJBY2NvdW50c0NvbmZpZyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3ViQWNjb3VudHNDb25maWcuZW5hYmxlQXV0b1N1YkFjY291bnRzKVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBwcmVwZW5kV2l0aG91dER1cGxpY2F0ZXModGhpcy5hY2NvdW50cywgc3ViQWNjb3VudC5hZGRyZXNzKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBhcHBlbmRXaXRob3V0RHVwbGljYXRlcyh0aGlzLmFjY291bnRzLCBzdWJBY2NvdW50LmFkZHJlc3MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCBzcGVuZFBlcm1pc3Npb25zID0gKF9jID0gKF9iID0gcmVzcG9uc2UgPT09IG51bGwgfHwgcmVzcG9uc2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHJlc3BvbnNlLmFjY291bnRzKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2JbMF0uY2FwYWJpbGl0aWVzKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Muc3BlbmRQZXJtaXNzaW9ucztcbiAgICAgICAgICAgICAgICBpZiAoc3BlbmRQZXJtaXNzaW9ucyAmJiAncGVybWlzc2lvbnMnIGluIHNwZW5kUGVybWlzc2lvbnMpIHtcbiAgICAgICAgICAgICAgICAgICAgc3RvcmUuc3BlbmRQZXJtaXNzaW9ucy5zZXQoc3BlbmRQZXJtaXNzaW9ucyA9PT0gbnVsbCB8fCBzcGVuZFBlcm1pc3Npb25zID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzcGVuZFBlcm1pc3Npb25zLnBlcm1pc3Npb25zKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKF9kID0gdGhpcy5jYWxsYmFjaykgPT09IG51bGwgfHwgX2QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9kLmNhbGwodGhpcywgJ2FjY291bnRzQ2hhbmdlZCcsIGFjY291bnRzXyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICd3YWxsZXRfYWRkU3ViQWNjb3VudCc6IHtcbiAgICAgICAgICAgICAgICBhc3NlcnRTdWJBY2NvdW50KHJlc3VsdC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViQWNjb3VudCA9IHJlc3VsdC52YWx1ZTtcbiAgICAgICAgICAgICAgICBzdG9yZS5zdWJBY2NvdW50cy5zZXQoc3ViQWNjb3VudCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViQWNjb3VudHNDb25maWcgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmFjY291bnRzID0gKHN1YkFjY291bnRzQ29uZmlnID09PSBudWxsIHx8IHN1YkFjY291bnRzQ29uZmlnID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJBY2NvdW50c0NvbmZpZy5lbmFibGVBdXRvU3ViQWNjb3VudHMpXG4gICAgICAgICAgICAgICAgICAgID8gcHJlcGVuZFdpdGhvdXREdXBsaWNhdGVzKHRoaXMuYWNjb3VudHMsIHN1YkFjY291bnQuYWRkcmVzcylcbiAgICAgICAgICAgICAgICAgICAgOiBhcHBlbmRXaXRob3V0RHVwbGljYXRlcyh0aGlzLmFjY291bnRzLCBzdWJBY2NvdW50LmFkZHJlc3MpO1xuICAgICAgICAgICAgICAgIChfZSA9IHRoaXMuY2FsbGJhY2spID09PSBudWxsIHx8IF9lID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZS5jYWxsKHRoaXMsICdhY2NvdW50c0NoYW5nZWQnLCB0aGlzLmFjY291bnRzKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdC52YWx1ZTtcbiAgICB9XG4gICAgYXN5bmMgY2xlYW51cCgpIHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgY29uc3QgbWV0YWRhdGEgPSBzdG9yZS5jb25maWcuZ2V0KCkubWV0YWRhdGE7XG4gICAgICAgIGF3YWl0IHRoaXMua2V5TWFuYWdlci5jbGVhcigpO1xuICAgICAgICAvLyBjbGVhciB0aGUgc3RvcmVcbiAgICAgICAgc3RvcmUuYWNjb3VudC5jbGVhcigpO1xuICAgICAgICBzdG9yZS5zdWJBY2NvdW50cy5jbGVhcigpO1xuICAgICAgICBzdG9yZS5zcGVuZFBlcm1pc3Npb25zLmNsZWFyKCk7XG4gICAgICAgIHN0b3JlLmNoYWlucy5jbGVhcigpO1xuICAgICAgICAvLyByZXNldCB0aGUgc2lnbmVyXG4gICAgICAgIHRoaXMuYWNjb3VudHMgPSBbXTtcbiAgICAgICAgdGhpcy5jaGFpbiA9IHtcbiAgICAgICAgICAgIGlkOiAoX2IgPSAoX2EgPSBtZXRhZGF0YSA9PT0gbnVsbCB8fCBtZXRhZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbWV0YWRhdGEuYXBwQ2hhaW5JZHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYVswXSkgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogMSxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQHJldHVybnMgYG51bGxgIGlmIHRoZSByZXF1ZXN0IHdhcyBzdWNjZXNzZnVsLlxuICAgICAqIGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtMzMyNiN3YWxsZXRfc3dpdGNoZXRoZXJldW1jaGFpblxuICAgICAqL1xuICAgIGFzeW5jIGhhbmRsZVN3aXRjaENoYWluUmVxdWVzdChyZXF1ZXN0KSB7XG4gICAgICAgIGFzc2VydFBhcmFtc0NoYWluSWQocmVxdWVzdC5wYXJhbXMpO1xuICAgICAgICBjb25zdCBjaGFpbklkID0gZW5zdXJlSW50TnVtYmVyKHJlcXVlc3QucGFyYW1zWzBdLmNoYWluSWQpO1xuICAgICAgICBjb25zdCBsb2NhbFJlc3VsdCA9IHRoaXMudXBkYXRlQ2hhaW4oY2hhaW5JZCk7XG4gICAgICAgIGlmIChsb2NhbFJlc3VsdClcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICBjb25zdCBwb3B1cFJlc3VsdCA9IGF3YWl0IHRoaXMuc2VuZFJlcXVlc3RUb1BvcHVwKHJlcXVlc3QpO1xuICAgICAgICBpZiAocG9wdXBSZXN1bHQgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ2hhaW4oY2hhaW5JZCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBvcHVwUmVzdWx0O1xuICAgIH1cbiAgICBhc3luYyBoYW5kbGVHZXRDYXBhYmlsaXRpZXNSZXF1ZXN0KHJlcXVlc3QpIHtcbiAgICAgICAgYXNzZXJ0R2V0Q2FwYWJpbGl0aWVzUGFyYW1zKHJlcXVlc3QucGFyYW1zKTtcbiAgICAgICAgY29uc3QgcmVxdWVzdGVkQWNjb3VudCA9IHJlcXVlc3QucGFyYW1zWzBdO1xuICAgICAgICBjb25zdCBmaWx0ZXJDaGFpbklkcyA9IHJlcXVlc3QucGFyYW1zWzFdOyAvLyBPcHRpb25hbCBzZWNvbmQgcGFyYW1ldGVyXG4gICAgICAgIGlmICghdGhpcy5hY2NvdW50cy5zb21lKChhY2NvdW50KSA9PiBpc0FkZHJlc3NFcXVhbChhY2NvdW50LCByZXF1ZXN0ZWRBY2NvdW50KSkpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLnVuYXV0aG9yaXplZCgnbm8gYWN0aXZlIGFjY291bnQgZm91bmQgd2hlbiBnZXR0aW5nIGNhcGFiaWxpdGllcycpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNhcGFiaWxpdGllcyA9IHN0b3JlLmdldFN0YXRlKCkuYWNjb3VudC5jYXBhYmlsaXRpZXM7XG4gICAgICAgIC8vIFJldHVybiBlbXB0eSBvYmplY3QgaWYgY2FwYWJpbGl0aWVzIGlzIHVuZGVmaW5lZFxuICAgICAgICBpZiAoIWNhcGFiaWxpdGllcykge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG4gICAgICAgIC8vIElmIG5vIGZpbHRlciBpcyBwcm92aWRlZCwgcmV0dXJuIGFsbCBjYXBhYmlsaXRpZXNcbiAgICAgICAgaWYgKCFmaWx0ZXJDaGFpbklkcyB8fCBmaWx0ZXJDaGFpbklkcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBjYXBhYmlsaXRpZXM7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQ29udmVydCBmaWx0ZXIgY2hhaW4gSURzIHRvIG51bWJlcnMgb25jZSBmb3IgZWZmaWNpZW50IGxvb2t1cFxuICAgICAgICBjb25zdCBmaWx0ZXJDaGFpbk51bWJlcnMgPSBuZXcgU2V0KGZpbHRlckNoYWluSWRzLm1hcCgoY2hhaW5JZCkgPT4gaGV4VG9OdW1iZXIoY2hhaW5JZCkpKTtcbiAgICAgICAgLy8gRmlsdGVyIGNhcGFiaWxpdGllc1xuICAgICAgICBjb25zdCBmaWx0ZXJlZENhcGFiaWxpdGllcyA9IE9iamVjdC5mcm9tRW50cmllcyhPYmplY3QuZW50cmllcyhjYXBhYmlsaXRpZXMpLmZpbHRlcigoW2NhcGFiaWxpdHlLZXldKSA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNhcGFiaWxpdHlDaGFpbk51bWJlciA9IGhleFRvTnVtYmVyKGNhcGFiaWxpdHlLZXkpO1xuICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJDaGFpbk51bWJlcnMuaGFzKGNhcGFiaWxpdHlDaGFpbk51bWJlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoX2EpIHtcbiAgICAgICAgICAgICAgICAvLyBJZiBjYXBhYmlsaXR5S2V5IGlzIG5vdCBhIHZhbGlkIGhleCBzdHJpbmcsIGV4Y2x1ZGUgaXRcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcbiAgICAgICAgcmV0dXJuIGZpbHRlcmVkQ2FwYWJpbGl0aWVzO1xuICAgIH1cbiAgICBhc3luYyBzZW5kRW5jcnlwdGVkUmVxdWVzdChyZXF1ZXN0KSB7XG4gICAgICAgIGNvbnN0IHNoYXJlZFNlY3JldCA9IGF3YWl0IHRoaXMua2V5TWFuYWdlci5nZXRTaGFyZWRTZWNyZXQoKTtcbiAgICAgICAgaWYgKCFzaGFyZWRTZWNyZXQpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLnVuYXV0aG9yaXplZCgnTm8gc2hhcmVkIHNlY3JldCBmb3VuZCB3aGVuIGVuY3J5cHRpbmcgcmVxdWVzdCcpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGVuY3J5cHRlZCA9IGF3YWl0IGVuY3J5cHRDb250ZW50KHtcbiAgICAgICAgICAgIGFjdGlvbjogcmVxdWVzdCxcbiAgICAgICAgICAgIGNoYWluSWQ6IHRoaXMuY2hhaW4uaWQsXG4gICAgICAgIH0sIHNoYXJlZFNlY3JldCk7XG4gICAgICAgIGNvbnN0IGNvcnJlbGF0aW9uSWQgPSBjb3JyZWxhdGlvbklkcy5nZXQocmVxdWVzdCk7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCB0aGlzLmNyZWF0ZVJlcXVlc3RNZXNzYWdlKHsgZW5jcnlwdGVkIH0sIGNvcnJlbGF0aW9uSWQpO1xuICAgICAgICByZXR1cm4gdGhpcy5jb21tdW5pY2F0b3IucG9zdFJlcXVlc3RBbmRXYWl0Rm9yUmVzcG9uc2UobWVzc2FnZSk7XG4gICAgfVxuICAgIGFzeW5jIGNyZWF0ZVJlcXVlc3RNZXNzYWdlKGNvbnRlbnQsIGNvcnJlbGF0aW9uSWQpIHtcbiAgICAgICAgY29uc3QgcHVibGljS2V5ID0gYXdhaXQgZXhwb3J0S2V5VG9IZXhTdHJpbmcoJ3B1YmxpYycsIGF3YWl0IHRoaXMua2V5TWFuYWdlci5nZXRPd25QdWJsaWNLZXkoKSk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZDogY3J5cHRvLnJhbmRvbVVVSUQoKSxcbiAgICAgICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgICAgICBzZW5kZXI6IHB1YmxpY0tleSxcbiAgICAgICAgICAgIGNvbnRlbnQsXG4gICAgICAgICAgICB0aW1lc3RhbXA6IG5ldyBEYXRlKCksXG4gICAgICAgIH07XG4gICAgfVxuICAgIGFzeW5jIGRlY3J5cHRSZXNwb25zZU1lc3NhZ2UobWVzc2FnZSkge1xuICAgICAgICB2YXIgX2EsIF9iLCBfYztcbiAgICAgICAgY29uc3QgY29udGVudCA9IG1lc3NhZ2UuY29udGVudDtcbiAgICAgICAgLy8gdGhyb3cgcHJvdG9jb2wgbGV2ZWwgZXJyb3JcbiAgICAgICAgaWYgKCdmYWlsdXJlJyBpbiBjb250ZW50KSB7XG4gICAgICAgICAgICB0aHJvdyBjb250ZW50LmZhaWx1cmU7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2hhcmVkU2VjcmV0ID0gYXdhaXQgdGhpcy5rZXlNYW5hZ2VyLmdldFNoYXJlZFNlY3JldCgpO1xuICAgICAgICBpZiAoIXNoYXJlZFNlY3JldCkge1xuICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucHJvdmlkZXIudW5hdXRob3JpemVkKCdJbnZhbGlkIHNlc3Npb246IG5vIHNoYXJlZCBzZWNyZXQgZm91bmQgd2hlbiBkZWNyeXB0aW5nIHJlc3BvbnNlJyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBkZWNyeXB0Q29udGVudChjb250ZW50LmVuY3J5cHRlZCwgc2hhcmVkU2VjcmV0KTtcbiAgICAgICAgY29uc3QgYXZhaWxhYmxlQ2hhaW5zID0gKF9hID0gcmVzcG9uc2UuZGF0YSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNoYWlucztcbiAgICAgICAgaWYgKGF2YWlsYWJsZUNoYWlucykge1xuICAgICAgICAgICAgY29uc3QgbmF0aXZlQ3VycmVuY2llcyA9IChfYiA9IHJlc3BvbnNlLmRhdGEpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5uYXRpdmVDdXJyZW5jaWVzO1xuICAgICAgICAgICAgY29uc3QgY2hhaW5zID0gT2JqZWN0LmVudHJpZXMoYXZhaWxhYmxlQ2hhaW5zKS5tYXAoKFtpZCwgcnBjVXJsXSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5hdGl2ZUN1cnJlbmN5ID0gbmF0aXZlQ3VycmVuY2llcyA9PT0gbnVsbCB8fCBuYXRpdmVDdXJyZW5jaWVzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBuYXRpdmVDdXJyZW5jaWVzW051bWJlcihpZCldO1xuICAgICAgICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHsgaWQ6IE51bWJlcihpZCksIHJwY1VybCB9LCAobmF0aXZlQ3VycmVuY3kgPyB7IG5hdGl2ZUN1cnJlbmN5IH0gOiB7fSkpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzdG9yZS5jaGFpbnMuc2V0KGNoYWlucyk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNoYWluKHRoaXMuY2hhaW4uaWQsIGNoYWlucyk7XG4gICAgICAgICAgICBjcmVhdGVDbGllbnRzKGNoYWlucyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgd2FsbGV0Q2FwYWJpbGl0aWVzID0gKF9jID0gcmVzcG9uc2UuZGF0YSkgPT09IG51bGwgfHwgX2MgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9jLmNhcGFiaWxpdGllcztcbiAgICAgICAgaWYgKHdhbGxldENhcGFiaWxpdGllcykge1xuICAgICAgICAgICAgc3RvcmUuYWNjb3VudC5zZXQoe1xuICAgICAgICAgICAgICAgIGNhcGFiaWxpdGllczogd2FsbGV0Q2FwYWJpbGl0aWVzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH1cbiAgICB1cGRhdGVDaGFpbihjaGFpbklkLCBuZXdBdmFpbGFibGVDaGFpbnMpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBjb25zdCBzdGF0ZSA9IHN0b3JlLmdldFN0YXRlKCk7XG4gICAgICAgIGNvbnN0IGNoYWlucyA9IG5ld0F2YWlsYWJsZUNoYWlucyAhPT0gbnVsbCAmJiBuZXdBdmFpbGFibGVDaGFpbnMgIT09IHZvaWQgMCA/IG5ld0F2YWlsYWJsZUNoYWlucyA6IHN0YXRlLmNoYWlucztcbiAgICAgICAgY29uc3QgY2hhaW4gPSBjaGFpbnMgPT09IG51bGwgfHwgY2hhaW5zID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjaGFpbnMuZmluZCgoY2hhaW4pID0+IGNoYWluLmlkID09PSBjaGFpbklkKTtcbiAgICAgICAgaWYgKCFjaGFpbilcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKGNoYWluICE9PSB0aGlzLmNoYWluKSB7XG4gICAgICAgICAgICB0aGlzLmNoYWluID0gY2hhaW47XG4gICAgICAgICAgICBzdG9yZS5hY2NvdW50LnNldCh7XG4gICAgICAgICAgICAgICAgY2hhaW4sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIChfYSA9IHRoaXMuY2FsbGJhY2spID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKHRoaXMsICdjaGFpbkNoYW5nZWQnLCBoZXhTdHJpbmdGcm9tTnVtYmVyKGNoYWluLmlkKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGFzeW5jIGFkZFN1YkFjY291bnQocmVxdWVzdCkge1xuICAgICAgICB2YXIgX2EsIF9iLCBfYywgX2Q7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gc3RvcmUuZ2V0U3RhdGUoKTtcbiAgICAgICAgY29uc3Qgc3ViQWNjb3VudCA9IHN0YXRlLnN1YkFjY291bnQ7XG4gICAgICAgIGNvbnN0IHN1YkFjY291bnRzQ29uZmlnID0gc3RvcmUuc3ViQWNjb3VudHNDb25maWcuZ2V0KCk7XG4gICAgICAgIGlmIChzdWJBY2NvdW50ID09PSBudWxsIHx8IHN1YkFjY291bnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YkFjY291bnQuYWRkcmVzcykge1xuICAgICAgICAgICAgdGhpcy5hY2NvdW50cyA9IChzdWJBY2NvdW50c0NvbmZpZyA9PT0gbnVsbCB8fCBzdWJBY2NvdW50c0NvbmZpZyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3ViQWNjb3VudHNDb25maWcuZW5hYmxlQXV0b1N1YkFjY291bnRzKVxuICAgICAgICAgICAgICAgID8gcHJlcGVuZFdpdGhvdXREdXBsaWNhdGVzKHRoaXMuYWNjb3VudHMsIHN1YkFjY291bnQuYWRkcmVzcylcbiAgICAgICAgICAgICAgICA6IGFwcGVuZFdpdGhvdXREdXBsaWNhdGVzKHRoaXMuYWNjb3VudHMsIHN1YkFjY291bnQuYWRkcmVzcyk7XG4gICAgICAgICAgICAoX2EgPSB0aGlzLmNhbGxiYWNrKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzLCAnYWNjb3VudHNDaGFuZ2VkJywgdGhpcy5hY2NvdW50cyk7XG4gICAgICAgICAgICByZXR1cm4gc3ViQWNjb3VudDtcbiAgICAgICAgfVxuICAgICAgICAvLyBXYWl0IGZvciB0aGUgcG9wdXAgdG8gYmUgbG9hZGVkIGJlZm9yZSBzZW5kaW5nIHRoZSByZXF1ZXN0XG4gICAgICAgIGF3YWl0ICgoX2MgPSAoX2IgPSB0aGlzLmNvbW11bmljYXRvcikud2FpdEZvclBvcHVwTG9hZGVkKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuY2FsbChfYikpO1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXF1ZXN0LnBhcmFtcykgJiZcbiAgICAgICAgICAgIHJlcXVlc3QucGFyYW1zLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlcXVlc3QucGFyYW1zWzBdLmFjY291bnQgJiZcbiAgICAgICAgICAgIHJlcXVlc3QucGFyYW1zWzBdLmFjY291bnQudHlwZSA9PT0gJ2NyZWF0ZScpIHtcbiAgICAgICAgICAgIGxldCBrZXlzO1xuICAgICAgICAgICAgaWYgKHJlcXVlc3QucGFyYW1zWzBdLmFjY291bnQua2V5cyAmJiByZXF1ZXN0LnBhcmFtc1swXS5hY2NvdW50LmtleXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGtleXMgPSByZXF1ZXN0LnBhcmFtc1swXS5hY2NvdW50LmtleXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb25maWcgPSAoX2QgPSBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5nZXQoKSkgIT09IG51bGwgJiYgX2QgIT09IHZvaWQgMCA/IF9kIDoge307XG4gICAgICAgICAgICAgICAgY29uc3QgeyBhY2NvdW50OiBvd25lckFjY291bnQgfSA9IGNvbmZpZy50b093bmVyQWNjb3VudFxuICAgICAgICAgICAgICAgICAgICA/IGF3YWl0IGNvbmZpZy50b093bmVyQWNjb3VudCgpXG4gICAgICAgICAgICAgICAgICAgIDogYXdhaXQgZ2V0Q3J5cHRvS2V5QWNjb3VudCgpO1xuICAgICAgICAgICAgICAgIGlmICghb3duZXJBY2NvdW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLnVuYXV0aG9yaXplZCgnY291bGQgbm90IGdldCBzdWJhY2NvdW50IG93bmVyIGFjY291bnQgd2hlbiBhZGRpbmcgc3ViIGFjY291bnQnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAga2V5cyA9IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogb3duZXJBY2NvdW50LmFkZHJlc3MgPyAnYWRkcmVzcycgOiAnd2ViYXV0aG4tcDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICBwdWJsaWNLZXk6IG93bmVyQWNjb3VudC5hZGRyZXNzIHx8IG93bmVyQWNjb3VudC5wdWJsaWNLZXksXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlcXVlc3QucGFyYW1zWzBdLmFjY291bnQua2V5cyA9IGtleXM7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlbmRSZXF1ZXN0VG9Qb3B1cChyZXF1ZXN0KTtcbiAgICAgICAgYXNzZXJ0U3ViQWNjb3VudChyZXNwb25zZSk7XG4gICAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICB9XG4gICAgc2hvdWxkUmVxdWVzdFVzZVN1YkFjY291bnRTaWduZXIocmVxdWVzdCkge1xuICAgICAgICBjb25zdCBzZW5kZXIgPSBnZXRTZW5kZXJGcm9tUmVxdWVzdChyZXF1ZXN0KTtcbiAgICAgICAgY29uc3Qgc3ViQWNjb3VudCA9IHN0b3JlLnN1YkFjY291bnRzLmdldCgpO1xuICAgICAgICBpZiAoc2VuZGVyKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VuZGVyLnRvTG93ZXJDYXNlKCkgPT09IChzdWJBY2NvdW50ID09PSBudWxsIHx8IHN1YkFjY291bnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YkFjY291bnQuYWRkcmVzcy50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGFzeW5jIHNlbmRSZXF1ZXN0VG9TdWJBY2NvdW50U2lnbmVyKHJlcXVlc3QpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBjb25zdCBzdWJBY2NvdW50ID0gc3RvcmUuc3ViQWNjb3VudHMuZ2V0KCk7XG4gICAgICAgIGNvbnN0IHN1YkFjY291bnRzQ29uZmlnID0gc3RvcmUuc3ViQWNjb3VudHNDb25maWcuZ2V0KCk7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHN0b3JlLmNvbmZpZy5nZXQoKTtcbiAgICAgICAgYXNzZXJ0UHJlc2VuY2Uoc3ViQWNjb3VudCA9PT0gbnVsbCB8fCBzdWJBY2NvdW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJBY2NvdW50LmFkZHJlc3MsIHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLnVuYXV0aG9yaXplZCgnbm8gYWN0aXZlIHN1YiBhY2NvdW50IHdoZW4gc2VuZGluZyByZXF1ZXN0IHRvIHN1YiBhY2NvdW50IHNpZ25lcicpKTtcbiAgICAgICAgLy8gR2V0IHRoZSBvd25lciBhY2NvdW50IGZyb20gdGhlIGNvbmZpZ1xuICAgICAgICBjb25zdCBvd25lckFjY291bnQgPSAoc3ViQWNjb3VudHNDb25maWcgPT09IG51bGwgfHwgc3ViQWNjb3VudHNDb25maWcgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YkFjY291bnRzQ29uZmlnLnRvT3duZXJBY2NvdW50KVxuICAgICAgICAgICAgPyBhd2FpdCBzdWJBY2NvdW50c0NvbmZpZy50b093bmVyQWNjb3VudCgpXG4gICAgICAgICAgICA6IGF3YWl0IGdldENyeXB0b0tleUFjY291bnQoKTtcbiAgICAgICAgYXNzZXJ0UHJlc2VuY2Uob3duZXJBY2NvdW50ID09PSBudWxsIHx8IG93bmVyQWNjb3VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3duZXJBY2NvdW50LmFjY291bnQsIHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLnVuYXV0aG9yaXplZCgnbm8gYWN0aXZlIHN1YiBhY2NvdW50IG93bmVyIHdoZW4gc2VuZGluZyByZXF1ZXN0IHRvIHN1YiBhY2NvdW50IHNpZ25lcicpKTtcbiAgICAgICAgY29uc3Qgc2VuZGVyID0gZ2V0U2VuZGVyRnJvbVJlcXVlc3QocmVxdWVzdCk7XG4gICAgICAgIC8vIGlmIHNlbmRlciBpcyB1bmRlZmluZWQsIHdlIGluamVjdCB0aGUgYWN0aXZlIHN1YiBhY2NvdW50XG4gICAgICAgIC8vIGFkZHJlc3MgaW50byB0aGUgcGFyYW1zIGZvciB0aGUgc3VwcG9ydGVkIHJlcXVlc3QgbWV0aG9kc1xuICAgICAgICBpZiAoc2VuZGVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJlcXVlc3QgPSBhZGRTZW5kZXJUb1JlcXVlc3QocmVxdWVzdCwgc3ViQWNjb3VudC5hZGRyZXNzKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjbGllbnQgPSBnZXRDbGllbnQodGhpcy5jaGFpbi5pZCk7XG4gICAgICAgIGFzc2VydFByZXNlbmNlKGNsaWVudCwgc3RhbmRhcmRFcnJvcnMucnBjLmludGVybmFsKGBjbGllbnQgbm90IGZvdW5kIGZvciBjaGFpbklkICR7dGhpcy5jaGFpbi5pZH0gd2hlbiBzZW5kaW5nIHJlcXVlc3QgdG8gc3ViIGFjY291bnQgc2lnbmVyYCkpO1xuICAgICAgICBjb25zdCBnbG9iYWxBY2NvdW50QWRkcmVzcyA9IHRoaXMuYWNjb3VudHMuZmluZCgoYWNjb3VudCkgPT4gYWNjb3VudC50b0xvd2VyQ2FzZSgpICE9PSBzdWJBY2NvdW50LmFkZHJlc3MudG9Mb3dlckNhc2UoKSk7XG4gICAgICAgIGFzc2VydFByZXNlbmNlKGdsb2JhbEFjY291bnRBZGRyZXNzLCBzdGFuZGFyZEVycm9ycy5wcm92aWRlci51bmF1dGhvcml6ZWQoJ25vIGdsb2JhbCBhY2NvdW50IGZvdW5kIHdoZW4gc2VuZGluZyByZXF1ZXN0IHRvIHN1YiBhY2NvdW50IHNpZ25lcicpKTtcbiAgICAgICAgY29uc3QgZGF0YVN1ZmZpeCA9IG1ha2VEYXRhU3VmZml4KHtcbiAgICAgICAgICAgIGF0dHJpYnV0aW9uOiAoX2EgPSBjb25maWcucHJlZmVyZW5jZSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmF0dHJpYnV0aW9uLFxuICAgICAgICAgICAgZGFwcE9yaWdpbjogd2luZG93LmxvY2F0aW9uLm9yaWdpbixcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHB1YmxpY0tleSA9IG93bmVyQWNjb3VudC5hY2NvdW50LnR5cGUgPT09ICdsb2NhbCdcbiAgICAgICAgICAgID8gb3duZXJBY2NvdW50LmFjY291bnQuYWRkcmVzc1xuICAgICAgICAgICAgOiBvd25lckFjY291bnQuYWNjb3VudC5wdWJsaWNLZXk7XG4gICAgICAgIGxldCBvd25lckluZGV4ID0gYXdhaXQgZmluZE93bmVySW5kZXgoe1xuICAgICAgICAgICAgYWRkcmVzczogc3ViQWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgZmFjdG9yeTogc3ViQWNjb3VudC5mYWN0b3J5LFxuICAgICAgICAgICAgZmFjdG9yeURhdGE6IHN1YkFjY291bnQuZmFjdG9yeURhdGEsXG4gICAgICAgICAgICBwdWJsaWNLZXksXG4gICAgICAgICAgICBjbGllbnQsXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAob3duZXJJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvcnJlbGF0aW9uSWQgPSBjb3JyZWxhdGlvbklkcy5nZXQocmVxdWVzdCk7XG4gICAgICAgICAgICBsb2dBZGRPd25lclN0YXJ0ZWQoeyBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLCBjb3JyZWxhdGlvbklkIH0pO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBvd25lckluZGV4ID0gYXdhaXQgaGFuZGxlQWRkU3ViQWNjb3VudE93bmVyKHtcbiAgICAgICAgICAgICAgICAgICAgb3duZXJBY2NvdW50OiBvd25lckFjY291bnQuYWNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgZ2xvYmFsQWNjb3VudFJlcXVlc3Q6IHRoaXMuc2VuZFJlcXVlc3RUb1BvcHVwLmJpbmQodGhpcyksXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgbG9nQWRkT3duZXJDb21wbGV0ZWQoeyBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLCBjb3JyZWxhdGlvbklkIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgbG9nQWRkT3duZXJFcnJvcih7XG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogcmVxdWVzdC5tZXRob2QsXG4gICAgICAgICAgICAgICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogcGFyc2VFcnJvck1lc3NhZ2VGcm9tQW55KGVycm9yKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3RhbmRhcmRFcnJvcnMucHJvdmlkZXIudW5hdXRob3JpemVkKCdmYWlsZWQgdG8gYWRkIHN1YiBhY2NvdW50IG93bmVyIHdoZW4gc2VuZGluZyByZXF1ZXN0IHRvIHN1YiBhY2NvdW50IHNpZ25lcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHsgcmVxdWVzdDogc3ViQWNjb3VudFJlcXVlc3QgfSA9IGF3YWl0IGNyZWF0ZVN1YkFjY291bnRTaWduZXIoe1xuICAgICAgICAgICAgYWRkcmVzczogc3ViQWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgb3duZXI6IG93bmVyQWNjb3VudC5hY2NvdW50LFxuICAgICAgICAgICAgY2xpZW50OiBjbGllbnQsXG4gICAgICAgICAgICBmYWN0b3J5OiBzdWJBY2NvdW50LmZhY3RvcnksXG4gICAgICAgICAgICBmYWN0b3J5RGF0YTogc3ViQWNjb3VudC5mYWN0b3J5RGF0YSxcbiAgICAgICAgICAgIHBhcmVudEFkZHJlc3M6IGdsb2JhbEFjY291bnRBZGRyZXNzLFxuICAgICAgICAgICAgYXR0cmlidXRpb246IGRhdGFTdWZmaXggPyB7IHN1ZmZpeDogZGF0YVN1ZmZpeCB9IDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgb3duZXJJbmRleCxcbiAgICAgICAgfSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBzdWJBY2NvdW50UmVxdWVzdChyZXF1ZXN0KTtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBsZXQgZXJyb3JPYmplY3Q7XG4gICAgICAgICAgICBpZiAoaXNWaWVtRXJyb3IoZXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgZXJyb3JPYmplY3QgPSBKU09OLnBhcnNlKGVycm9yLmRldGFpbHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaXNBY3Rpb25hYmxlSHR0cFJlcXVlc3RFcnJvcihlcnJvcikpIHtcbiAgICAgICAgICAgICAgICBlcnJvck9iamVjdCA9IGVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIShpc0FjdGlvbmFibGVIdHRwUmVxdWVzdEVycm9yKGVycm9yT2JqZWN0KSAmJiBlcnJvck9iamVjdC5kYXRhKSkge1xuICAgICAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFlcnJvck9iamVjdC5kYXRhKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBjb3JyZWxhdGlvbklkID0gY29ycmVsYXRpb25JZHMuZ2V0KHJlcXVlc3QpO1xuICAgICAgICAgICAgbG9nSW5zdWZmaWNpZW50QmFsYW5jZUVycm9ySGFuZGxpbmdTdGFydGVkKHsgbWV0aG9kOiByZXF1ZXN0Lm1ldGhvZCwgY29ycmVsYXRpb25JZCB9KTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaGFuZGxlSW5zdWZmaWNpZW50QmFsYW5jZUVycm9yKHtcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JEYXRhOiBlcnJvck9iamVjdC5kYXRhLFxuICAgICAgICAgICAgICAgICAgICBnbG9iYWxBY2NvdW50QWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgc3ViQWNjb3VudEFkZHJlc3M6IHN1YkFjY291bnQuYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgY2xpZW50LFxuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0LFxuICAgICAgICAgICAgICAgICAgICBzdWJBY2NvdW50UmVxdWVzdCxcbiAgICAgICAgICAgICAgICAgICAgZ2xvYmFsQWNjb3VudFJlcXVlc3Q6IHRoaXMucmVxdWVzdC5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGxvZ0luc3VmZmljaWVudEJhbGFuY2VFcnJvckhhbmRsaW5nQ29tcGxldGVkKHsgbWV0aG9kOiByZXF1ZXN0Lm1ldGhvZCwgY29ycmVsYXRpb25JZCB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGhhbmRsaW5nRXJyb3IpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGhhbmRsaW5nRXJyb3IpO1xuICAgICAgICAgICAgICAgIGxvZ0luc3VmZmljaWVudEJhbGFuY2VFcnJvckhhbmRsaW5nRXJyb3Ioe1xuICAgICAgICAgICAgICAgICAgICBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgICAgICAgICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IHBhcnNlRXJyb3JNZXNzYWdlRnJvbUFueShoYW5kbGluZ0Vycm9yKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVNDV1NpZ25lci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWSigner.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils.js": /*!******************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addSenderToRequest: () => (/* binding */ addSenderToRequest),\n/* harmony export */ appendWithoutDuplicates: () => (/* binding */ appendWithoutDuplicates),\n/* harmony export */ assertFetchPermissionsRequest: () => (/* binding */ assertFetchPermissionsRequest),\n/* harmony export */ assertGetCapabilitiesParams: () => (/* binding */ assertGetCapabilitiesParams),\n/* harmony export */ assertParamsChainId: () => (/* binding */ assertParamsChainId),\n/* harmony export */ compute16ByteHash: () => (/* binding */ compute16ByteHash),\n/* harmony export */ createSpendPermissionBatchMessage: () => (/* binding */ createSpendPermissionBatchMessage),\n/* harmony export */ createSpendPermissionMessage: () => (/* binding */ createSpendPermissionMessage),\n/* harmony export */ createWalletSendCallsRequest: () => (/* binding */ createWalletSendCallsRequest),\n/* harmony export */ fillMissingParamsForFetchPermissions: () => (/* binding */ fillMissingParamsForFetchPermissions),\n/* harmony export */ getCachedWalletConnectResponse: () => (/* binding */ getCachedWalletConnectResponse),\n/* harmony export */ getSenderFromRequest: () => (/* binding */ getSenderFromRequest),\n/* harmony export */ initSubAccountConfig: () => (/* binding */ initSubAccountConfig),\n/* harmony export */ injectRequestCapabilities: () => (/* binding */ injectRequestCapabilities),\n/* harmony export */ isEthSendTransactionParams: () => (/* binding */ isEthSendTransactionParams),\n/* harmony export */ isSendCallsParams: () => (/* binding */ isSendCallsParams),\n/* harmony export */ makeDataSuffix: () => (/* binding */ makeDataSuffix),\n/* harmony export */ parseFundingOptions: () => (/* binding */ parseFundingOptions),\n/* harmony export */ prependWithoutDuplicates: () => (/* binding */ prependWithoutDuplicates),\n/* harmony export */ presentSubAccountFundingDialog: () => (/* binding */ presentSubAccountFundingDialog),\n/* harmony export */ requestHasCapability: () => (/* binding */ requestHasCapability),\n/* harmony export */ waitForCallsTransactionHash: () => (/* binding */ waitForCallsTransactionHash)\n/* harmony export */ });\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/slice.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../core/telemetry/events/snackbar.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/snackbar.js\");\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _util_get_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../util/get.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/get.js\");\n/* harmony import */ var _util_web_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../util/web.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/web.js\");\n/* harmony import */ var viem_experimental__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! viem/experimental */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/waitForCallsStatus.js\");\n/* harmony import */ var _kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../kms/crypto-key/index.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/kms/crypto-key/index.js\");\n/* harmony import */ var _utils_constants_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./utils/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js\");\n\n\n\n\n\n\n\n\n\n\n// ***************************************************************\n// Utility\n// ***************************************************************\nfunction getSenderFromRequest(request) {\n var _a;\n if (!Array.isArray(request.params)) {\n return null;\n }\n switch (request.method) {\n case 'personal_sign':\n return request.params[1];\n case 'eth_signTypedData_v4':\n return request.params[0];\n case 'eth_signTransaction':\n case 'eth_sendTransaction':\n case 'wallet_sendCalls':\n return (_a = request.params[0]) === null || _a === void 0 ? void 0 : _a.from;\n default:\n return null;\n }\n}\nfunction addSenderToRequest(request, sender) {\n if (!Array.isArray(request.params)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n const params = [...request.params];\n switch (request.method) {\n case 'eth_signTransaction':\n case 'eth_sendTransaction':\n case 'wallet_sendCalls':\n params[0].from = sender;\n break;\n case 'eth_signTypedData_v4':\n params[0] = sender;\n break;\n case 'personal_sign':\n params[1] = sender;\n break;\n default:\n break;\n }\n return Object.assign(Object.assign({}, request), { params });\n}\nfunction assertParamsChainId(params) {\n var _a;\n if (!params || !Array.isArray(params) || !((_a = params[0]) === null || _a === void 0 ? void 0 : _a.chainId)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n if (typeof params[0].chainId !== 'string' && typeof params[0].chainId !== 'number') {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n}\nfunction assertGetCapabilitiesParams(params) {\n if (!params || !Array.isArray(params) || (params.length !== 1 && params.length !== 2)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n if (typeof params[0] !== 'string' || !(0,viem__WEBPACK_IMPORTED_MODULE_1__.isAddress)(params[0])) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n if (params.length === 2) {\n if (!Array.isArray(params[1])) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n for (const param of params[1]) {\n if (typeof param !== 'string' || !param.startsWith('0x')) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n }\n }\n}\nfunction injectRequestCapabilities(request, capabilities) {\n // Modify request to include auto sub account capabilities\n const modifiedRequest = Object.assign({}, request);\n if (capabilities && request.method.startsWith('wallet_')) {\n let requestCapabilities = (0,_util_get_js__WEBPACK_IMPORTED_MODULE_2__.get)(modifiedRequest, 'params.0.capabilities');\n if (typeof requestCapabilities === 'undefined') {\n requestCapabilities = {};\n }\n if (typeof requestCapabilities !== 'object') {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n }\n requestCapabilities = Object.assign(Object.assign({}, capabilities), requestCapabilities);\n if (modifiedRequest.params && Array.isArray(modifiedRequest.params)) {\n modifiedRequest.params[0] = Object.assign(Object.assign({}, modifiedRequest.params[0]), { capabilities: requestCapabilities });\n }\n }\n return modifiedRequest;\n}\n/**\n * Initializes the `subAccountConfig` store with the owner account function and capabilities\n * @returns void\n */\nasync function initSubAccountConfig() {\n var _a;\n const config = (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.subAccountsConfig.get()) !== null && _a !== void 0 ? _a : {};\n const capabilities = {};\n if (config.enableAutoSubAccounts) {\n // Get the owner account\n const { account: owner } = config.toOwnerAccount\n ? await config.toOwnerAccount()\n : await (0,_kms_crypto_key_index_js__WEBPACK_IMPORTED_MODULE_4__.getCryptoKeyAccount)();\n if (!owner) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.provider.unauthorized('No owner account found');\n }\n capabilities.addSubAccount = {\n account: {\n type: 'create',\n keys: [\n {\n type: owner.address ? 'address' : 'webauthn-p256',\n publicKey: owner.address || owner.publicKey,\n },\n ],\n },\n };\n }\n // Store the owner account and capabilities in the non-persisted config\n _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.subAccountsConfig.set({\n capabilities,\n });\n}\nfunction assertFetchPermissionsRequest(request) {\n if (request.method === 'coinbase_fetchPermissions' && request.params === undefined) {\n return;\n }\n if (request.method === 'coinbase_fetchPermissions' &&\n Array.isArray(request.params) &&\n request.params.length === 1 &&\n typeof request.params[0] === 'object') {\n if (typeof request.params[0].account !== 'string' ||\n !request.params[0].chainId.startsWith('0x')) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('FetchPermissions - Invalid params: params[0].account must be a hex string');\n }\n if (typeof request.params[0].chainId !== 'string' ||\n !request.params[0].chainId.startsWith('0x')) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('FetchPermissions - Invalid params: params[0].chainId must be a hex string');\n }\n if (typeof request.params[0].spender !== 'string' ||\n !request.params[0].spender.startsWith('0x')) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('FetchPermissions - Invalid params: params[0].spender must be a hex string');\n }\n return;\n }\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams();\n}\nfunction fillMissingParamsForFetchPermissions(request) {\n var _a, _b, _c;\n if (request.params !== undefined) {\n return request;\n }\n // this is based on the assumption that the first account is the active account\n // it could change in the context of multi-(universal)-account\n const accountFromStore = (_a = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.getState().account.accounts) === null || _a === void 0 ? void 0 : _a[0];\n const chainId = (_b = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.getState().account.chain) === null || _b === void 0 ? void 0 : _b.id;\n const subAccountFromStore = (_c = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.getState().subAccount) === null || _c === void 0 ? void 0 : _c.address;\n if (!accountFromStore || !subAccountFromStore || !chainId) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('FetchPermissions - one or more of account, sub account, or chain id is missing, connect to sub account via wallet_connect first');\n }\n return {\n method: 'coinbase_fetchPermissions',\n params: [\n {\n account: accountFromStore,\n chainId: (0,viem__WEBPACK_IMPORTED_MODULE_5__.numberToHex)(chainId),\n spender: subAccountFromStore,\n },\n ],\n };\n}\nfunction createSpendPermissionMessage({ spendPermission, chainId, }) {\n return {\n domain: {\n name: 'Spend Permission Manager',\n version: '1',\n chainId: chainId,\n verifyingContract: _utils_constants_js__WEBPACK_IMPORTED_MODULE_6__.spendPermissionManagerAddress,\n },\n types: {\n SpendPermission: [\n { name: 'account', type: 'address' },\n { name: 'spender', type: 'address' },\n { name: 'token', type: 'address' },\n { name: 'allowance', type: 'uint160' },\n { name: 'period', type: 'uint48' },\n { name: 'start', type: 'uint48' },\n { name: 'end', type: 'uint48' },\n { name: 'salt', type: 'uint256' },\n { name: 'extraData', type: 'bytes' },\n ],\n },\n primaryType: 'SpendPermission',\n message: {\n account: spendPermission.account,\n spender: spendPermission.spender,\n token: spendPermission.token,\n allowance: spendPermission.allowance,\n period: spendPermission.period,\n start: spendPermission.start,\n end: spendPermission.end,\n salt: spendPermission.salt,\n extraData: spendPermission.extraData,\n },\n };\n}\nfunction createSpendPermissionBatchMessage({ spendPermissionBatch, chainId, }) {\n return {\n domain: {\n name: 'Spend Permission Manager',\n version: '1',\n chainId,\n verifyingContract: _utils_constants_js__WEBPACK_IMPORTED_MODULE_6__.spendPermissionManagerAddress,\n },\n types: {\n SpendPermissionBatch: [\n { name: 'account', type: 'address' },\n { name: 'period', type: 'uint48' },\n { name: 'start', type: 'uint48' },\n { name: 'end', type: 'uint48' },\n { name: 'permissions', type: 'PermissionDetails[]' },\n ],\n PermissionDetails: [\n { name: 'spender', type: 'address' },\n { name: 'token', type: 'address' },\n { name: 'allowance', type: 'uint160' },\n { name: 'salt', type: 'uint256' },\n { name: 'extraData', type: 'bytes' },\n ],\n },\n primaryType: 'SpendPermissionBatch',\n message: {\n account: spendPermissionBatch.account,\n period: spendPermissionBatch.period,\n start: spendPermissionBatch.start,\n end: spendPermissionBatch.end,\n permissions: spendPermissionBatch.permissions.map((p) => ({\n spender: p.spender,\n token: p.token,\n allowance: p.allowance,\n salt: p.salt,\n extraData: p.extraData,\n })),\n },\n };\n}\nasync function waitForCallsTransactionHash({ client, id, }) {\n var _a;\n const result = await (0,viem_experimental__WEBPACK_IMPORTED_MODULE_7__.waitForCallsStatus)(client, {\n id,\n });\n if (result.status === 'success') {\n return (_a = result.receipts) === null || _a === void 0 ? void 0 : _a[0].transactionHash;\n }\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('failed to send transaction');\n}\nfunction createWalletSendCallsRequest({ calls, from, chainId, capabilities, }) {\n const paymasterUrls = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.config.get().paymasterUrls;\n let request = {\n method: 'wallet_sendCalls',\n params: [\n {\n version: '1.0',\n calls,\n chainId: (0,viem__WEBPACK_IMPORTED_MODULE_5__.numberToHex)(chainId),\n from,\n atomicRequired: true,\n capabilities,\n },\n ],\n };\n if (paymasterUrls === null || paymasterUrls === void 0 ? void 0 : paymasterUrls[chainId]) {\n request = injectRequestCapabilities(request, {\n paymasterService: { url: paymasterUrls === null || paymasterUrls === void 0 ? void 0 : paymasterUrls[chainId] },\n });\n }\n return request;\n}\nasync function presentSubAccountFundingDialog() {\n const snackbar = (0,_util_web_js__WEBPACK_IMPORTED_MODULE_8__.initSnackbar)();\n const userChoice = await new Promise((resolve) => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_9__.logSnackbarShown)({ snackbarContext: 'sub_account_insufficient_balance' });\n snackbar.presentItem({\n autoExpand: true,\n message: 'Insufficient spend permission. Choose how to proceed:',\n menuItems: [\n {\n isRed: false,\n info: 'Create new Spend Permission',\n svgWidth: '10',\n svgHeight: '11',\n path: '',\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n onClick: () => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_9__.logSnackbarActionClicked)({\n snackbarContext: 'sub_account_insufficient_balance',\n snackbarAction: 'create_permission',\n });\n snackbar.clear();\n resolve('update_permission');\n },\n },\n {\n isRed: false,\n info: 'Continue in Popup',\n svgWidth: '10',\n svgHeight: '11',\n path: '',\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n onClick: () => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_9__.logSnackbarActionClicked)({\n snackbarContext: 'sub_account_insufficient_balance',\n snackbarAction: 'continue_in_popup',\n });\n snackbar.clear();\n resolve('continue_popup');\n },\n },\n {\n isRed: true,\n info: 'Cancel',\n svgWidth: '10',\n svgHeight: '11',\n path: '',\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n onClick: () => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_9__.logSnackbarActionClicked)({\n snackbarContext: 'sub_account_insufficient_balance',\n snackbarAction: 'cancel',\n });\n snackbar.clear();\n resolve('cancel');\n },\n },\n ],\n });\n });\n return userChoice;\n}\nfunction parseFundingOptions({ errorData, sourceAddress, }) {\n var _a;\n const spendPermissionRequests = [];\n for (const [token, { amount, sources }] of Object.entries((_a = errorData === null || errorData === void 0 ? void 0 : errorData.required) !== null && _a !== void 0 ? _a : {})) {\n const sourcesWithSufficientBalance = sources.filter((source) => {\n return ((0,viem__WEBPACK_IMPORTED_MODULE_10__.hexToBigInt)(source.balance) >= (0,viem__WEBPACK_IMPORTED_MODULE_10__.hexToBigInt)(amount) &&\n source.address.toLowerCase() === (sourceAddress === null || sourceAddress === void 0 ? void 0 : sourceAddress.toLowerCase()));\n });\n if (sourcesWithSufficientBalance.length === 0) {\n throw new Error('Source address has insufficient balance for a token');\n }\n spendPermissionRequests.push({\n token: token,\n requiredAmount: (0,viem__WEBPACK_IMPORTED_MODULE_10__.hexToBigInt)(amount),\n });\n }\n return spendPermissionRequests;\n}\nfunction isSendCallsParams(params) {\n return typeof params === 'object' && params !== null && 'calls' in params;\n}\nfunction isEthSendTransactionParams(params) {\n return (Array.isArray(params) &&\n params.length === 1 &&\n typeof params[0] === 'object' &&\n params[0] !== null &&\n 'to' in params[0]);\n}\nfunction compute16ByteHash(input) {\n return (0,viem__WEBPACK_IMPORTED_MODULE_11__.slice)((0,viem__WEBPACK_IMPORTED_MODULE_12__.keccak256)((0,viem__WEBPACK_IMPORTED_MODULE_5__.toHex)(input)), 0, 16);\n}\nfunction makeDataSuffix({ attribution, dappOrigin, }) {\n if (!attribution) {\n return;\n }\n if ('auto' in attribution && attribution.auto && dappOrigin) {\n return compute16ByteHash(dappOrigin);\n }\n if ('dataSuffix' in attribution) {\n return attribution.dataSuffix;\n }\n return;\n}\n/**\n * Checks if a specific capability is present in a request's params\n * @param request The request object to check\n * @param capabilityName The name of the capability to check for\n * @returns boolean indicating if the capability is present\n */\nfunction requestHasCapability(request, capabilityName) {\n var _a;\n if (!Array.isArray(request === null || request === void 0 ? void 0 : request.params))\n return false;\n const capabilities = (_a = request.params[0]) === null || _a === void 0 ? void 0 : _a.capabilities;\n if (!capabilities || typeof capabilities !== 'object')\n return false;\n return capabilityName in capabilities;\n}\n/**\n * Prepends an item to an array without duplicates\n * @param array The array to prepend to\n * @param item The item to prepend\n * @returns The array with the item prepended\n */\nfunction prependWithoutDuplicates(array, item) {\n const filtered = array.filter((i) => i !== item);\n return [item, ...filtered];\n}\n/**\n * Appends an item to an array without duplicates\n * @param array The array to append to\n * @param item The item to append\n * @returns The array with the item appended\n */\nfunction appendWithoutDuplicates(array, item) {\n const filtered = array.filter((i) => i !== item);\n return [...filtered, item];\n}\nasync function getCachedWalletConnectResponse() {\n const spendPermissions = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.spendPermissions.get();\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.subAccounts.get();\n const accounts = _store_store_js__WEBPACK_IMPORTED_MODULE_3__.store.account.get().accounts;\n if (!accounts) {\n return null;\n }\n const walletConnectAccounts = accounts === null || accounts === void 0 ? void 0 : accounts.map((account) => ({\n address: account,\n capabilities: {\n subAccounts: subAccount ? [subAccount] : undefined,\n spendPermissions: spendPermissions.length > 0 ? { permissions: spendPermissions } : undefined,\n },\n }));\n return {\n accounts: walletConnectAccounts,\n };\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQThDO0FBQ2M7QUFDQTtBQUN5QztBQUNoRDtBQUNiO0FBQ1M7QUFDTTtBQUNhO0FBQ0M7QUFDckU7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLGNBQWMsaUVBQWM7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlDQUF5QyxjQUFjLFFBQVE7QUFDL0Q7QUFDTztBQUNQO0FBQ0E7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDTztBQUNQO0FBQ0EsY0FBYyxpRUFBYztBQUM1QjtBQUNBLDBDQUEwQywrQ0FBUztBQUNuRCxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsaUVBQWM7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0EsNENBQTRDO0FBQzVDO0FBQ0Esa0NBQWtDLGlEQUFHO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGlFQUFjO0FBQ2hDO0FBQ0EsNERBQTREO0FBQzVEO0FBQ0Esc0VBQXNFLGdDQUFnQyxtQ0FBbUM7QUFDekk7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQSx5QkFBeUIsa0RBQUs7QUFDOUI7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlCQUFpQjtBQUNqQztBQUNBLG9CQUFvQiw2RUFBbUI7QUFDdkM7QUFDQSxrQkFBa0IsaUVBQWM7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxJQUFJLGtEQUFLO0FBQ1Q7QUFDQSxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsaUVBQWM7QUFDaEM7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGlFQUFjO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLFVBQVUsaUVBQWM7QUFDeEI7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQyxrREFBSztBQUN4QywwQkFBMEIsa0RBQUs7QUFDL0Isc0NBQXNDLGtEQUFLO0FBQzNDO0FBQ0EsY0FBYyxpRUFBYztBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsaURBQVc7QUFDcEM7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ08sd0NBQXdDLDJCQUEyQjtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLDhFQUE2QjtBQUM1RCxTQUFTO0FBQ1Q7QUFDQTtBQUNBLGtCQUFrQixrQ0FBa0M7QUFDcEQsa0JBQWtCLGtDQUFrQztBQUNwRCxrQkFBa0IsZ0NBQWdDO0FBQ2xELGtCQUFrQixvQ0FBb0M7QUFDdEQsa0JBQWtCLGdDQUFnQztBQUNsRCxrQkFBa0IsK0JBQStCO0FBQ2pELGtCQUFrQiw2QkFBNkI7QUFDL0Msa0JBQWtCLCtCQUErQjtBQUNqRCxrQkFBa0Isa0NBQWtDO0FBQ3BEO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLDZDQUE2QyxnQ0FBZ0M7QUFDcEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQiw4RUFBNkI7QUFDNUQsU0FBUztBQUNUO0FBQ0E7QUFDQSxrQkFBa0Isa0NBQWtDO0FBQ3BELGtCQUFrQixnQ0FBZ0M7QUFDbEQsa0JBQWtCLCtCQUErQjtBQUNqRCxrQkFBa0IsNkJBQTZCO0FBQy9DLGtCQUFrQixrREFBa0Q7QUFDcEU7QUFDQTtBQUNBLGtCQUFrQixrQ0FBa0M7QUFDcEQsa0JBQWtCLGdDQUFnQztBQUNsRCxrQkFBa0Isb0NBQW9DO0FBQ3RELGtCQUFrQiwrQkFBK0I7QUFDakQsa0JBQWtCLGtDQUFrQztBQUNwRDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0E7QUFDTyw2Q0FBNkMsYUFBYTtBQUNqRTtBQUNBLHlCQUF5QixxRUFBa0I7QUFDM0M7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsVUFBVSxpRUFBYztBQUN4QjtBQUNPLHdDQUF3QyxxQ0FBcUM7QUFDcEYsMEJBQTBCLG1EQUFNO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixpREFBVztBQUNwQztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsMkZBQTJGO0FBQzNILFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTztBQUNQLHFCQUFxQiwwREFBWTtBQUNqQztBQUNBLFFBQVEsb0ZBQWdCLEdBQUcscURBQXFEO0FBQ2hGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLDRGQUF3QjtBQUNoRDtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qiw0RkFBd0I7QUFDaEQ7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsNEZBQXdCO0FBQ2hEO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixpQkFBaUI7QUFDakI7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDTywrQkFBK0IsMkJBQTJCO0FBQ2pFO0FBQ0E7QUFDQSx5QkFBeUIsaUJBQWlCLHVJQUF1STtBQUNqTDtBQUNBLG9CQUFvQixrREFBVyxvQkFBb0Isa0RBQVc7QUFDOUQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixrREFBVztBQUN2QyxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFdBQVcsNENBQUssQ0FBQyxnREFBUyxDQUFDLDJDQUFLO0FBQ2hDO0FBQ08sMEJBQTBCLDBCQUEwQjtBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsNkJBQTZCLGtEQUFLO0FBQ2xDLHVCQUF1QixrREFBSztBQUM1QixxQkFBcUIsa0RBQUs7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4REFBOEQsZ0NBQWdDO0FBQzlGLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhleFRvQmlnSW50LCBpc0FkZHJlc3MgfSBmcm9tICd2aWVtJztcbmltcG9ydCB7IGtlY2NhazI1NiwgbnVtYmVyVG9IZXgsIHNsaWNlLCB0b0hleCB9IGZyb20gJ3ZpZW0nO1xuaW1wb3J0IHsgc3RhbmRhcmRFcnJvcnMgfSBmcm9tICcuLi8uLi9jb3JlL2Vycm9yL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBsb2dTbmFja2JhckFjdGlvbkNsaWNrZWQsIGxvZ1NuYWNrYmFyU2hvd24gfSBmcm9tICcuLi8uLi9jb3JlL3RlbGVtZXRyeS9ldmVudHMvc25hY2tiYXIuanMnO1xuaW1wb3J0IHsgY29uZmlnLCBzdG9yZSB9IGZyb20gJy4uLy4uL3N0b3JlL3N0b3JlLmpzJztcbmltcG9ydCB7IGdldCB9IGZyb20gJy4uLy4uL3V0aWwvZ2V0LmpzJztcbmltcG9ydCB7IGluaXRTbmFja2JhciB9IGZyb20gJy4uLy4uL3V0aWwvd2ViLmpzJztcbmltcG9ydCB7IHdhaXRGb3JDYWxsc1N0YXR1cyB9IGZyb20gJ3ZpZW0vZXhwZXJpbWVudGFsJztcbmltcG9ydCB7IGdldENyeXB0b0tleUFjY291bnQgfSBmcm9tICcuLi8uLi9rbXMvY3J5cHRvLWtleS9pbmRleC5qcyc7XG5pbXBvcnQgeyBzcGVuZFBlcm1pc3Npb25NYW5hZ2VyQWRkcmVzcyB9IGZyb20gJy4vdXRpbHMvY29uc3RhbnRzLmpzJztcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gVXRpbGl0eVxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VuZGVyRnJvbVJlcXVlc3QocmVxdWVzdCkge1xuICAgIHZhciBfYTtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkocmVxdWVzdC5wYXJhbXMpKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBzd2l0Y2ggKHJlcXVlc3QubWV0aG9kKSB7XG4gICAgICAgIGNhc2UgJ3BlcnNvbmFsX3NpZ24nOlxuICAgICAgICAgICAgcmV0dXJuIHJlcXVlc3QucGFyYW1zWzFdO1xuICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92NCc6XG4gICAgICAgICAgICByZXR1cm4gcmVxdWVzdC5wYXJhbXNbMF07XG4gICAgICAgIGNhc2UgJ2V0aF9zaWduVHJhbnNhY3Rpb24nOlxuICAgICAgICBjYXNlICdldGhfc2VuZFRyYW5zYWN0aW9uJzpcbiAgICAgICAgY2FzZSAnd2FsbGV0X3NlbmRDYWxscyc6XG4gICAgICAgICAgICByZXR1cm4gKF9hID0gcmVxdWVzdC5wYXJhbXNbMF0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mcm9tO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIGFkZFNlbmRlclRvUmVxdWVzdChyZXF1ZXN0LCBzZW5kZXIpIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkocmVxdWVzdC5wYXJhbXMpKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCk7XG4gICAgfVxuICAgIGNvbnN0IHBhcmFtcyA9IFsuLi5yZXF1ZXN0LnBhcmFtc107XG4gICAgc3dpdGNoIChyZXF1ZXN0Lm1ldGhvZCkge1xuICAgICAgICBjYXNlICdldGhfc2lnblRyYW5zYWN0aW9uJzpcbiAgICAgICAgY2FzZSAnZXRoX3NlbmRUcmFuc2FjdGlvbic6XG4gICAgICAgIGNhc2UgJ3dhbGxldF9zZW5kQ2FsbHMnOlxuICAgICAgICAgICAgcGFyYW1zWzBdLmZyb20gPSBzZW5kZXI7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnZXRoX3NpZ25UeXBlZERhdGFfdjQnOlxuICAgICAgICAgICAgcGFyYW1zWzBdID0gc2VuZGVyO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3BlcnNvbmFsX3NpZ24nOlxuICAgICAgICAgICAgcGFyYW1zWzFdID0gc2VuZGVyO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgcmVxdWVzdCksIHsgcGFyYW1zIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFBhcmFtc0NoYWluSWQocGFyYW1zKSB7XG4gICAgdmFyIF9hO1xuICAgIGlmICghcGFyYW1zIHx8ICFBcnJheS5pc0FycmF5KHBhcmFtcykgfHwgISgoX2EgPSBwYXJhbXNbMF0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jaGFpbklkKSkge1xuICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHBhcmFtc1swXS5jaGFpbklkICE9PSAnc3RyaW5nJyAmJiB0eXBlb2YgcGFyYW1zWzBdLmNoYWluSWQgIT09ICdudW1iZXInKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCk7XG4gICAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydEdldENhcGFiaWxpdGllc1BhcmFtcyhwYXJhbXMpIHtcbiAgICBpZiAoIXBhcmFtcyB8fCAhQXJyYXkuaXNBcnJheShwYXJhbXMpIHx8IChwYXJhbXMubGVuZ3RoICE9PSAxICYmIHBhcmFtcy5sZW5ndGggIT09IDIpKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCk7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgcGFyYW1zWzBdICE9PSAnc3RyaW5nJyB8fCAhaXNBZGRyZXNzKHBhcmFtc1swXSkpIHtcbiAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoKTtcbiAgICB9XG4gICAgaWYgKHBhcmFtcy5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcmFtc1sxXSkpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBwYXJhbSBvZiBwYXJhbXNbMV0pIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgcGFyYW0gIT09ICdzdHJpbmcnIHx8ICFwYXJhbS5zdGFydHNXaXRoKCcweCcpKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RSZXF1ZXN0Q2FwYWJpbGl0aWVzKHJlcXVlc3QsIGNhcGFiaWxpdGllcykge1xuICAgIC8vIE1vZGlmeSByZXF1ZXN0IHRvIGluY2x1ZGUgYXV0byBzdWIgYWNjb3VudCBjYXBhYmlsaXRpZXNcbiAgICBjb25zdCBtb2RpZmllZFJlcXVlc3QgPSBPYmplY3QuYXNzaWduKHt9LCByZXF1ZXN0KTtcbiAgICBpZiAoY2FwYWJpbGl0aWVzICYmIHJlcXVlc3QubWV0aG9kLnN0YXJ0c1dpdGgoJ3dhbGxldF8nKSkge1xuICAgICAgICBsZXQgcmVxdWVzdENhcGFiaWxpdGllcyA9IGdldChtb2RpZmllZFJlcXVlc3QsICdwYXJhbXMuMC5jYXBhYmlsaXRpZXMnKTtcbiAgICAgICAgaWYgKHR5cGVvZiByZXF1ZXN0Q2FwYWJpbGl0aWVzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgcmVxdWVzdENhcGFiaWxpdGllcyA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgcmVxdWVzdENhcGFiaWxpdGllcyAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVxdWVzdENhcGFiaWxpdGllcyA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgY2FwYWJpbGl0aWVzKSwgcmVxdWVzdENhcGFiaWxpdGllcyk7XG4gICAgICAgIGlmIChtb2RpZmllZFJlcXVlc3QucGFyYW1zICYmIEFycmF5LmlzQXJyYXkobW9kaWZpZWRSZXF1ZXN0LnBhcmFtcykpIHtcbiAgICAgICAgICAgIG1vZGlmaWVkUmVxdWVzdC5wYXJhbXNbMF0gPSBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIG1vZGlmaWVkUmVxdWVzdC5wYXJhbXNbMF0pLCB7IGNhcGFiaWxpdGllczogcmVxdWVzdENhcGFiaWxpdGllcyB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbW9kaWZpZWRSZXF1ZXN0O1xufVxuLyoqXG4gKiBJbml0aWFsaXplcyB0aGUgYHN1YkFjY291bnRDb25maWdgIHN0b3JlIHdpdGggdGhlIG93bmVyIGFjY291bnQgZnVuY3Rpb24gYW5kIGNhcGFiaWxpdGllc1xuICogQHJldHVybnMgdm9pZFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW5pdFN1YkFjY291bnRDb25maWcoKSB7XG4gICAgdmFyIF9hO1xuICAgIGNvbnN0IGNvbmZpZyA9IChfYSA9IHN0b3JlLnN1YkFjY291bnRzQ29uZmlnLmdldCgpKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB7fTtcbiAgICBjb25zdCBjYXBhYmlsaXRpZXMgPSB7fTtcbiAgICBpZiAoY29uZmlnLmVuYWJsZUF1dG9TdWJBY2NvdW50cykge1xuICAgICAgICAvLyBHZXQgdGhlIG93bmVyIGFjY291bnRcbiAgICAgICAgY29uc3QgeyBhY2NvdW50OiBvd25lciB9ID0gY29uZmlnLnRvT3duZXJBY2NvdW50XG4gICAgICAgICAgICA/IGF3YWl0IGNvbmZpZy50b093bmVyQWNjb3VudCgpXG4gICAgICAgICAgICA6IGF3YWl0IGdldENyeXB0b0tleUFjY291bnQoKTtcbiAgICAgICAgaWYgKCFvd25lcikge1xuICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucHJvdmlkZXIudW5hdXRob3JpemVkKCdObyBvd25lciBhY2NvdW50IGZvdW5kJyk7XG4gICAgICAgIH1cbiAgICAgICAgY2FwYWJpbGl0aWVzLmFkZFN1YkFjY291bnQgPSB7XG4gICAgICAgICAgICBhY2NvdW50OiB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2NyZWF0ZScsXG4gICAgICAgICAgICAgICAga2V5czogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBvd25lci5hZGRyZXNzID8gJ2FkZHJlc3MnIDogJ3dlYmF1dGhuLXAyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljS2V5OiBvd25lci5hZGRyZXNzIHx8IG93bmVyLnB1YmxpY0tleSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgLy8gU3RvcmUgdGhlIG93bmVyIGFjY291bnQgYW5kIGNhcGFiaWxpdGllcyBpbiB0aGUgbm9uLXBlcnNpc3RlZCBjb25maWdcbiAgICBzdG9yZS5zdWJBY2NvdW50c0NvbmZpZy5zZXQoe1xuICAgICAgICBjYXBhYmlsaXRpZXMsXG4gICAgfSk7XG59XG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0RmV0Y2hQZXJtaXNzaW9uc1JlcXVlc3QocmVxdWVzdCkge1xuICAgIGlmIChyZXF1ZXN0Lm1ldGhvZCA9PT0gJ2NvaW5iYXNlX2ZldGNoUGVybWlzc2lvbnMnICYmIHJlcXVlc3QucGFyYW1zID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAocmVxdWVzdC5tZXRob2QgPT09ICdjb2luYmFzZV9mZXRjaFBlcm1pc3Npb25zJyAmJlxuICAgICAgICBBcnJheS5pc0FycmF5KHJlcXVlc3QucGFyYW1zKSAmJlxuICAgICAgICByZXF1ZXN0LnBhcmFtcy5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgdHlwZW9mIHJlcXVlc3QucGFyYW1zWzBdID09PSAnb2JqZWN0Jykge1xuICAgICAgICBpZiAodHlwZW9mIHJlcXVlc3QucGFyYW1zWzBdLmFjY291bnQgIT09ICdzdHJpbmcnIHx8XG4gICAgICAgICAgICAhcmVxdWVzdC5wYXJhbXNbMF0uY2hhaW5JZC5zdGFydHNXaXRoKCcweCcpKSB7XG4gICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygnRmV0Y2hQZXJtaXNzaW9ucyAtIEludmFsaWQgcGFyYW1zOiBwYXJhbXNbMF0uYWNjb3VudCBtdXN0IGJlIGEgaGV4IHN0cmluZycpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgcmVxdWVzdC5wYXJhbXNbMF0uY2hhaW5JZCAhPT0gJ3N0cmluZycgfHxcbiAgICAgICAgICAgICFyZXF1ZXN0LnBhcmFtc1swXS5jaGFpbklkLnN0YXJ0c1dpdGgoJzB4JykpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCdGZXRjaFBlcm1pc3Npb25zIC0gSW52YWxpZCBwYXJhbXM6IHBhcmFtc1swXS5jaGFpbklkIG11c3QgYmUgYSBoZXggc3RyaW5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiByZXF1ZXN0LnBhcmFtc1swXS5zcGVuZGVyICE9PSAnc3RyaW5nJyB8fFxuICAgICAgICAgICAgIXJlcXVlc3QucGFyYW1zWzBdLnNwZW5kZXIuc3RhcnRzV2l0aCgnMHgnKSkge1xuICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ0ZldGNoUGVybWlzc2lvbnMgLSBJbnZhbGlkIHBhcmFtczogcGFyYW1zWzBdLnNwZW5kZXIgbXVzdCBiZSBhIGhleCBzdHJpbmcnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCk7XG59XG5leHBvcnQgZnVuY3Rpb24gZmlsbE1pc3NpbmdQYXJhbXNGb3JGZXRjaFBlcm1pc3Npb25zKHJlcXVlc3QpIHtcbiAgICB2YXIgX2EsIF9iLCBfYztcbiAgICBpZiAocmVxdWVzdC5wYXJhbXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gcmVxdWVzdDtcbiAgICB9XG4gICAgLy8gdGhpcyBpcyBiYXNlZCBvbiB0aGUgYXNzdW1wdGlvbiB0aGF0IHRoZSBmaXJzdCBhY2NvdW50IGlzIHRoZSBhY3RpdmUgYWNjb3VudFxuICAgIC8vIGl0IGNvdWxkIGNoYW5nZSBpbiB0aGUgY29udGV4dCBvZiBtdWx0aS0odW5pdmVyc2FsKS1hY2NvdW50XG4gICAgY29uc3QgYWNjb3VudEZyb21TdG9yZSA9IChfYSA9IHN0b3JlLmdldFN0YXRlKCkuYWNjb3VudC5hY2NvdW50cykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hWzBdO1xuICAgIGNvbnN0IGNoYWluSWQgPSAoX2IgPSBzdG9yZS5nZXRTdGF0ZSgpLmFjY291bnQuY2hhaW4pID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5pZDtcbiAgICBjb25zdCBzdWJBY2NvdW50RnJvbVN0b3JlID0gKF9jID0gc3RvcmUuZ2V0U3RhdGUoKS5zdWJBY2NvdW50KSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuYWRkcmVzcztcbiAgICBpZiAoIWFjY291bnRGcm9tU3RvcmUgfHwgIXN1YkFjY291bnRGcm9tU3RvcmUgfHwgIWNoYWluSWQpIHtcbiAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ0ZldGNoUGVybWlzc2lvbnMgLSBvbmUgb3IgbW9yZSBvZiBhY2NvdW50LCBzdWIgYWNjb3VudCwgb3IgY2hhaW4gaWQgaXMgbWlzc2luZywgY29ubmVjdCB0byBzdWIgYWNjb3VudCB2aWEgd2FsbGV0X2Nvbm5lY3QgZmlyc3QnKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgbWV0aG9kOiAnY29pbmJhc2VfZmV0Y2hQZXJtaXNzaW9ucycsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGFjY291bnQ6IGFjY291bnRGcm9tU3RvcmUsXG4gICAgICAgICAgICAgICAgY2hhaW5JZDogbnVtYmVyVG9IZXgoY2hhaW5JZCksXG4gICAgICAgICAgICAgICAgc3BlbmRlcjogc3ViQWNjb3VudEZyb21TdG9yZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTcGVuZFBlcm1pc3Npb25NZXNzYWdlKHsgc3BlbmRQZXJtaXNzaW9uLCBjaGFpbklkLCB9KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZG9tYWluOiB7XG4gICAgICAgICAgICBuYW1lOiAnU3BlbmQgUGVybWlzc2lvbiBNYW5hZ2VyJyxcbiAgICAgICAgICAgIHZlcnNpb246ICcxJyxcbiAgICAgICAgICAgIGNoYWluSWQ6IGNoYWluSWQsXG4gICAgICAgICAgICB2ZXJpZnlpbmdDb250cmFjdDogc3BlbmRQZXJtaXNzaW9uTWFuYWdlckFkZHJlc3MsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGVzOiB7XG4gICAgICAgICAgICBTcGVuZFBlcm1pc3Npb246IFtcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAnc3BlbmRlcicsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAnYWxsb3dhbmNlJywgdHlwZTogJ3VpbnQxNjAnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAncGVyaW9kJywgdHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAnZXh0cmFEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgcHJpbWFyeVR5cGU6ICdTcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICBtZXNzYWdlOiB7XG4gICAgICAgICAgICBhY2NvdW50OiBzcGVuZFBlcm1pc3Npb24uYWNjb3VudCxcbiAgICAgICAgICAgIHNwZW5kZXI6IHNwZW5kUGVybWlzc2lvbi5zcGVuZGVyLFxuICAgICAgICAgICAgdG9rZW46IHNwZW5kUGVybWlzc2lvbi50b2tlbixcbiAgICAgICAgICAgIGFsbG93YW5jZTogc3BlbmRQZXJtaXNzaW9uLmFsbG93YW5jZSxcbiAgICAgICAgICAgIHBlcmlvZDogc3BlbmRQZXJtaXNzaW9uLnBlcmlvZCxcbiAgICAgICAgICAgIHN0YXJ0OiBzcGVuZFBlcm1pc3Npb24uc3RhcnQsXG4gICAgICAgICAgICBlbmQ6IHNwZW5kUGVybWlzc2lvbi5lbmQsXG4gICAgICAgICAgICBzYWx0OiBzcGVuZFBlcm1pc3Npb24uc2FsdCxcbiAgICAgICAgICAgIGV4dHJhRGF0YTogc3BlbmRQZXJtaXNzaW9uLmV4dHJhRGF0YSxcbiAgICAgICAgfSxcbiAgICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNwZW5kUGVybWlzc2lvbkJhdGNoTWVzc2FnZSh7IHNwZW5kUGVybWlzc2lvbkJhdGNoLCBjaGFpbklkLCB9KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZG9tYWluOiB7XG4gICAgICAgICAgICBuYW1lOiAnU3BlbmQgUGVybWlzc2lvbiBNYW5hZ2VyJyxcbiAgICAgICAgICAgIHZlcnNpb246ICcxJyxcbiAgICAgICAgICAgIGNoYWluSWQsXG4gICAgICAgICAgICB2ZXJpZnlpbmdDb250cmFjdDogc3BlbmRQZXJtaXNzaW9uTWFuYWdlckFkZHJlc3MsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGVzOiB7XG4gICAgICAgICAgICBTcGVuZFBlcm1pc3Npb25CYXRjaDogW1xuICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Blcm1pc3Npb25zJywgdHlwZTogJ1Blcm1pc3Npb25EZXRhaWxzW10nIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgUGVybWlzc2lvbkRldGFpbHM6IFtcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAndG9rZW4nLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdhbGxvd2FuY2UnLCB0eXBlOiAndWludDE2MCcgfSxcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAnZXh0cmFEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgcHJpbWFyeVR5cGU6ICdTcGVuZFBlcm1pc3Npb25CYXRjaCcsXG4gICAgICAgIG1lc3NhZ2U6IHtcbiAgICAgICAgICAgIGFjY291bnQ6IHNwZW5kUGVybWlzc2lvbkJhdGNoLmFjY291bnQsXG4gICAgICAgICAgICBwZXJpb2Q6IHNwZW5kUGVybWlzc2lvbkJhdGNoLnBlcmlvZCxcbiAgICAgICAgICAgIHN0YXJ0OiBzcGVuZFBlcm1pc3Npb25CYXRjaC5zdGFydCxcbiAgICAgICAgICAgIGVuZDogc3BlbmRQZXJtaXNzaW9uQmF0Y2guZW5kLFxuICAgICAgICAgICAgcGVybWlzc2lvbnM6IHNwZW5kUGVybWlzc2lvbkJhdGNoLnBlcm1pc3Npb25zLm1hcCgocCkgPT4gKHtcbiAgICAgICAgICAgICAgICBzcGVuZGVyOiBwLnNwZW5kZXIsXG4gICAgICAgICAgICAgICAgdG9rZW46IHAudG9rZW4sXG4gICAgICAgICAgICAgICAgYWxsb3dhbmNlOiBwLmFsbG93YW5jZSxcbiAgICAgICAgICAgICAgICBzYWx0OiBwLnNhbHQsXG4gICAgICAgICAgICAgICAgZXh0cmFEYXRhOiBwLmV4dHJhRGF0YSxcbiAgICAgICAgICAgIH0pKSxcbiAgICAgICAgfSxcbiAgICB9O1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JDYWxsc1RyYW5zYWN0aW9uSGFzaCh7IGNsaWVudCwgaWQsIH0pIHtcbiAgICB2YXIgX2E7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgd2FpdEZvckNhbGxzU3RhdHVzKGNsaWVudCwge1xuICAgICAgICBpZCxcbiAgICB9KTtcbiAgICBpZiAocmVzdWx0LnN0YXR1cyA9PT0gJ3N1Y2Nlc3MnKSB7XG4gICAgICAgIHJldHVybiAoX2EgPSByZXN1bHQucmVjZWlwdHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYVswXS50cmFuc2FjdGlvbkhhc2g7XG4gICAgfVxuICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnRlcm5hbCgnZmFpbGVkIHRvIHNlbmQgdHJhbnNhY3Rpb24nKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVXYWxsZXRTZW5kQ2FsbHNSZXF1ZXN0KHsgY2FsbHMsIGZyb20sIGNoYWluSWQsIGNhcGFiaWxpdGllcywgfSkge1xuICAgIGNvbnN0IHBheW1hc3RlclVybHMgPSBjb25maWcuZ2V0KCkucGF5bWFzdGVyVXJscztcbiAgICBsZXQgcmVxdWVzdCA9IHtcbiAgICAgICAgbWV0aG9kOiAnd2FsbGV0X3NlbmRDYWxscycsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHZlcnNpb246ICcxLjAnLFxuICAgICAgICAgICAgICAgIGNhbGxzLFxuICAgICAgICAgICAgICAgIGNoYWluSWQ6IG51bWJlclRvSGV4KGNoYWluSWQpLFxuICAgICAgICAgICAgICAgIGZyb20sXG4gICAgICAgICAgICAgICAgYXRvbWljUmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgY2FwYWJpbGl0aWVzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9O1xuICAgIGlmIChwYXltYXN0ZXJVcmxzID09PSBudWxsIHx8IHBheW1hc3RlclVybHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHBheW1hc3RlclVybHNbY2hhaW5JZF0pIHtcbiAgICAgICAgcmVxdWVzdCA9IGluamVjdFJlcXVlc3RDYXBhYmlsaXRpZXMocmVxdWVzdCwge1xuICAgICAgICAgICAgcGF5bWFzdGVyU2VydmljZTogeyB1cmw6IHBheW1hc3RlclVybHMgPT09IG51bGwgfHwgcGF5bWFzdGVyVXJscyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcGF5bWFzdGVyVXJsc1tjaGFpbklkXSB9LFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlc2VudFN1YkFjY291bnRGdW5kaW5nRGlhbG9nKCkge1xuICAgIGNvbnN0IHNuYWNrYmFyID0gaW5pdFNuYWNrYmFyKCk7XG4gICAgY29uc3QgdXNlckNob2ljZSA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIGxvZ1NuYWNrYmFyU2hvd24oeyBzbmFja2JhckNvbnRleHQ6ICdzdWJfYWNjb3VudF9pbnN1ZmZpY2llbnRfYmFsYW5jZScgfSk7XG4gICAgICAgIHNuYWNrYmFyLnByZXNlbnRJdGVtKHtcbiAgICAgICAgICAgIGF1dG9FeHBhbmQ6IHRydWUsXG4gICAgICAgICAgICBtZXNzYWdlOiAnSW5zdWZmaWNpZW50IHNwZW5kIHBlcm1pc3Npb24uIENob29zZSBob3cgdG8gcHJvY2VlZDonLFxuICAgICAgICAgICAgbWVudUl0ZW1zOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBpc1JlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIGluZm86ICdDcmVhdGUgbmV3IFNwZW5kIFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgICAgICBzdmdXaWR0aDogJzEwJyxcbiAgICAgICAgICAgICAgICAgICAgc3ZnSGVpZ2h0OiAnMTEnLFxuICAgICAgICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdEZpbGxSdWxlOiAnZXZlbm9kZCcsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRDbGlwUnVsZTogJ2V2ZW5vZGQnLFxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsb2dTbmFja2JhckFjdGlvbkNsaWNrZWQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNuYWNrYmFyQ29udGV4dDogJ3N1Yl9hY2NvdW50X2luc3VmZmljaWVudF9iYWxhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbmFja2JhckFjdGlvbjogJ2NyZWF0ZV9wZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXIuY2xlYXIoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoJ3VwZGF0ZV9wZXJtaXNzaW9uJyk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGlzUmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgaW5mbzogJ0NvbnRpbnVlIGluIFBvcHVwJyxcbiAgICAgICAgICAgICAgICAgICAgc3ZnV2lkdGg6ICcxMCcsXG4gICAgICAgICAgICAgICAgICAgIHN2Z0hlaWdodDogJzExJyxcbiAgICAgICAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRGaWxsUnVsZTogJ2V2ZW5vZGQnLFxuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0Q2xpcFJ1bGU6ICdldmVub2RkJyxcbiAgICAgICAgICAgICAgICAgICAgb25DbGljazogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9nU25hY2tiYXJBY3Rpb25DbGlja2VkKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbmFja2JhckNvbnRleHQ6ICdzdWJfYWNjb3VudF9pbnN1ZmZpY2llbnRfYmFsYW5jZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXJBY3Rpb246ICdjb250aW51ZV9pbl9wb3B1cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNuYWNrYmFyLmNsZWFyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCdjb250aW51ZV9wb3B1cCcpO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBpc1JlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgaW5mbzogJ0NhbmNlbCcsXG4gICAgICAgICAgICAgICAgICAgIHN2Z1dpZHRoOiAnMTAnLFxuICAgICAgICAgICAgICAgICAgICBzdmdIZWlnaHQ6ICcxMScsXG4gICAgICAgICAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0RmlsbFJ1bGU6ICdldmVub2RkJyxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdENsaXBSdWxlOiAnZXZlbm9kZCcsXG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvZ1NuYWNrYmFyQWN0aW9uQ2xpY2tlZCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXJDb250ZXh0OiAnc3ViX2FjY291bnRfaW5zdWZmaWNpZW50X2JhbGFuY2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNuYWNrYmFyQWN0aW9uOiAnY2FuY2VsJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXIuY2xlYXIoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoJ2NhbmNlbCcpO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICB9KTtcbiAgICByZXR1cm4gdXNlckNob2ljZTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUZ1bmRpbmdPcHRpb25zKHsgZXJyb3JEYXRhLCBzb3VyY2VBZGRyZXNzLCB9KSB7XG4gICAgdmFyIF9hO1xuICAgIGNvbnN0IHNwZW5kUGVybWlzc2lvblJlcXVlc3RzID0gW107XG4gICAgZm9yIChjb25zdCBbdG9rZW4sIHsgYW1vdW50LCBzb3VyY2VzIH1dIG9mIE9iamVjdC5lbnRyaWVzKChfYSA9IGVycm9yRGF0YSA9PT0gbnVsbCB8fCBlcnJvckRhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGVycm9yRGF0YS5yZXF1aXJlZCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDoge30pKSB7XG4gICAgICAgIGNvbnN0IHNvdXJjZXNXaXRoU3VmZmljaWVudEJhbGFuY2UgPSBzb3VyY2VzLmZpbHRlcigoc291cmNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKGhleFRvQmlnSW50KHNvdXJjZS5iYWxhbmNlKSA+PSBoZXhUb0JpZ0ludChhbW91bnQpICYmXG4gICAgICAgICAgICAgICAgc291cmNlLmFkZHJlc3MudG9Mb3dlckNhc2UoKSA9PT0gKHNvdXJjZUFkZHJlc3MgPT09IG51bGwgfHwgc291cmNlQWRkcmVzcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc291cmNlQWRkcmVzcy50b0xvd2VyQ2FzZSgpKSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoc291cmNlc1dpdGhTdWZmaWNpZW50QmFsYW5jZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignU291cmNlIGFkZHJlc3MgaGFzIGluc3VmZmljaWVudCBiYWxhbmNlIGZvciBhIHRva2VuJyk7XG4gICAgICAgIH1cbiAgICAgICAgc3BlbmRQZXJtaXNzaW9uUmVxdWVzdHMucHVzaCh7XG4gICAgICAgICAgICB0b2tlbjogdG9rZW4sXG4gICAgICAgICAgICByZXF1aXJlZEFtb3VudDogaGV4VG9CaWdJbnQoYW1vdW50KSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBzcGVuZFBlcm1pc3Npb25SZXF1ZXN0cztcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc1NlbmRDYWxsc1BhcmFtcyhwYXJhbXMpIHtcbiAgICByZXR1cm4gdHlwZW9mIHBhcmFtcyA9PT0gJ29iamVjdCcgJiYgcGFyYW1zICE9PSBudWxsICYmICdjYWxscycgaW4gcGFyYW1zO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzRXRoU2VuZFRyYW5zYWN0aW9uUGFyYW1zKHBhcmFtcykge1xuICAgIHJldHVybiAoQXJyYXkuaXNBcnJheShwYXJhbXMpICYmXG4gICAgICAgIHBhcmFtcy5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgdHlwZW9mIHBhcmFtc1swXSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgcGFyYW1zWzBdICE9PSBudWxsICYmXG4gICAgICAgICd0bycgaW4gcGFyYW1zWzBdKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlMTZCeXRlSGFzaChpbnB1dCkge1xuICAgIHJldHVybiBzbGljZShrZWNjYWsyNTYodG9IZXgoaW5wdXQpKSwgMCwgMTYpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VEYXRhU3VmZml4KHsgYXR0cmlidXRpb24sIGRhcHBPcmlnaW4sIH0pIHtcbiAgICBpZiAoIWF0dHJpYnV0aW9uKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKCdhdXRvJyBpbiBhdHRyaWJ1dGlvbiAmJiBhdHRyaWJ1dGlvbi5hdXRvICYmIGRhcHBPcmlnaW4pIHtcbiAgICAgICAgcmV0dXJuIGNvbXB1dGUxNkJ5dGVIYXNoKGRhcHBPcmlnaW4pO1xuICAgIH1cbiAgICBpZiAoJ2RhdGFTdWZmaXgnIGluIGF0dHJpYnV0aW9uKSB7XG4gICAgICAgIHJldHVybiBhdHRyaWJ1dGlvbi5kYXRhU3VmZml4O1xuICAgIH1cbiAgICByZXR1cm47XG59XG4vKipcbiAqIENoZWNrcyBpZiBhIHNwZWNpZmljIGNhcGFiaWxpdHkgaXMgcHJlc2VudCBpbiBhIHJlcXVlc3QncyBwYXJhbXNcbiAqIEBwYXJhbSByZXF1ZXN0IFRoZSByZXF1ZXN0IG9iamVjdCB0byBjaGVja1xuICogQHBhcmFtIGNhcGFiaWxpdHlOYW1lIFRoZSBuYW1lIG9mIHRoZSBjYXBhYmlsaXR5IHRvIGNoZWNrIGZvclxuICogQHJldHVybnMgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBjYXBhYmlsaXR5IGlzIHByZXNlbnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcXVlc3RIYXNDYXBhYmlsaXR5KHJlcXVlc3QsIGNhcGFiaWxpdHlOYW1lKSB7XG4gICAgdmFyIF9hO1xuICAgIGlmICghQXJyYXkuaXNBcnJheShyZXF1ZXN0ID09PSBudWxsIHx8IHJlcXVlc3QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHJlcXVlc3QucGFyYW1zKSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IGNhcGFiaWxpdGllcyA9IChfYSA9IHJlcXVlc3QucGFyYW1zWzBdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FwYWJpbGl0aWVzO1xuICAgIGlmICghY2FwYWJpbGl0aWVzIHx8IHR5cGVvZiBjYXBhYmlsaXRpZXMgIT09ICdvYmplY3QnKVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgcmV0dXJuIGNhcGFiaWxpdHlOYW1lIGluIGNhcGFiaWxpdGllcztcbn1cbi8qKlxuICogUHJlcGVuZHMgYW4gaXRlbSB0byBhbiBhcnJheSB3aXRob3V0IGR1cGxpY2F0ZXNcbiAqIEBwYXJhbSBhcnJheSBUaGUgYXJyYXkgdG8gcHJlcGVuZCB0b1xuICogQHBhcmFtIGl0ZW0gVGhlIGl0ZW0gdG8gcHJlcGVuZFxuICogQHJldHVybnMgVGhlIGFycmF5IHdpdGggdGhlIGl0ZW0gcHJlcGVuZGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmVwZW5kV2l0aG91dER1cGxpY2F0ZXMoYXJyYXksIGl0ZW0pIHtcbiAgICBjb25zdCBmaWx0ZXJlZCA9IGFycmF5LmZpbHRlcigoaSkgPT4gaSAhPT0gaXRlbSk7XG4gICAgcmV0dXJuIFtpdGVtLCAuLi5maWx0ZXJlZF07XG59XG4vKipcbiAqIEFwcGVuZHMgYW4gaXRlbSB0byBhbiBhcnJheSB3aXRob3V0IGR1cGxpY2F0ZXNcbiAqIEBwYXJhbSBhcnJheSBUaGUgYXJyYXkgdG8gYXBwZW5kIHRvXG4gKiBAcGFyYW0gaXRlbSBUaGUgaXRlbSB0byBhcHBlbmRcbiAqIEByZXR1cm5zIFRoZSBhcnJheSB3aXRoIHRoZSBpdGVtIGFwcGVuZGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmRXaXRob3V0RHVwbGljYXRlcyhhcnJheSwgaXRlbSkge1xuICAgIGNvbnN0IGZpbHRlcmVkID0gYXJyYXkuZmlsdGVyKChpKSA9PiBpICE9PSBpdGVtKTtcbiAgICByZXR1cm4gWy4uLmZpbHRlcmVkLCBpdGVtXTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRDYWNoZWRXYWxsZXRDb25uZWN0UmVzcG9uc2UoKSB7XG4gICAgY29uc3Qgc3BlbmRQZXJtaXNzaW9ucyA9IHN0b3JlLnNwZW5kUGVybWlzc2lvbnMuZ2V0KCk7XG4gICAgY29uc3Qgc3ViQWNjb3VudCA9IHN0b3JlLnN1YkFjY291bnRzLmdldCgpO1xuICAgIGNvbnN0IGFjY291bnRzID0gc3RvcmUuYWNjb3VudC5nZXQoKS5hY2NvdW50cztcbiAgICBpZiAoIWFjY291bnRzKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCB3YWxsZXRDb25uZWN0QWNjb3VudHMgPSBhY2NvdW50cyA9PT0gbnVsbCB8fCBhY2NvdW50cyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYWNjb3VudHMubWFwKChhY2NvdW50KSA9PiAoe1xuICAgICAgICBhZGRyZXNzOiBhY2NvdW50LFxuICAgICAgICBjYXBhYmlsaXRpZXM6IHtcbiAgICAgICAgICAgIHN1YkFjY291bnRzOiBzdWJBY2NvdW50ID8gW3N1YkFjY291bnRdIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgc3BlbmRQZXJtaXNzaW9uczogc3BlbmRQZXJtaXNzaW9ucy5sZW5ndGggPiAwID8geyBwZXJtaXNzaW9uczogc3BlbmRQZXJtaXNzaW9ucyB9IDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgIH0pKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBhY2NvdW50czogd2FsbGV0Q29ubmVjdEFjY291bnRzLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD11dGlscy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js": /*!****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ abi: () => (/* binding */ abi),\n/* harmony export */ factoryAbi: () => (/* binding */ factoryAbi),\n/* harmony export */ factoryAddress: () => (/* binding */ factoryAddress),\n/* harmony export */ spendPermissionManagerAbi: () => (/* binding */ spendPermissionManagerAbi),\n/* harmony export */ spendPermissionManagerAddress: () => (/* binding */ spendPermissionManagerAddress)\n/* harmony export */ });\n/**********************************************************************\n * Constants\n **********************************************************************/\nconst factoryAddress = '0x0ba5ed0c6aa8c49038f819e587e2633c4a9f428a';\nconst spendPermissionManagerAddress = '0xf85210B21cC50302F477BA56686d2019dC9b67Ad';\nconst abi = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n inputs: [{ name: 'owner', type: 'bytes' }],\n name: 'AlreadyOwner',\n type: 'error',\n },\n { inputs: [], name: 'Initialized', type: 'error' },\n {\n inputs: [{ name: 'owner', type: 'bytes' }],\n name: 'InvalidEthereumAddressOwner',\n type: 'error',\n },\n {\n inputs: [{ name: 'key', type: 'uint256' }],\n name: 'InvalidNonceKey',\n type: 'error',\n },\n {\n inputs: [{ name: 'owner', type: 'bytes' }],\n name: 'InvalidOwnerBytesLength',\n type: 'error',\n },\n { inputs: [], name: 'LastOwner', type: 'error' },\n {\n inputs: [{ name: 'index', type: 'uint256' }],\n name: 'NoOwnerAtIndex',\n type: 'error',\n },\n {\n inputs: [{ name: 'ownersRemaining', type: 'uint256' }],\n name: 'NotLastOwner',\n type: 'error',\n },\n {\n inputs: [{ name: 'selector', type: 'bytes4' }],\n name: 'SelectorNotAllowed',\n type: 'error',\n },\n { inputs: [], name: 'Unauthorized', type: 'error' },\n { inputs: [], name: 'UnauthorizedCallContext', type: 'error' },\n { inputs: [], name: 'UpgradeFailed', type: 'error' },\n {\n inputs: [\n { name: 'index', type: 'uint256' },\n { name: 'expectedOwner', type: 'bytes' },\n { name: 'actualOwner', type: 'bytes' },\n ],\n name: 'WrongOwnerAtIndex',\n type: 'error',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'index',\n type: 'uint256',\n },\n { indexed: false, name: 'owner', type: 'bytes' },\n ],\n name: 'AddOwner',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'index',\n type: 'uint256',\n },\n { indexed: false, name: 'owner', type: 'bytes' },\n ],\n name: 'RemoveOwner',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'implementation',\n type: 'address',\n },\n ],\n name: 'Upgraded',\n type: 'event',\n },\n { stateMutability: 'payable', type: 'fallback' },\n {\n inputs: [],\n name: 'REPLAYABLE_NONCE_KEY',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'owner', type: 'address' }],\n name: 'addOwnerAddress',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { name: 'x', type: 'bytes32' },\n { name: 'y', type: 'bytes32' },\n ],\n name: 'addOwnerPublicKey',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ name: 'functionSelector', type: 'bytes4' }],\n name: 'canSkipChainIdValidation',\n outputs: [{ name: '', type: 'bool' }],\n stateMutability: 'pure',\n type: 'function',\n },\n {\n inputs: [],\n name: 'domainSeparator',\n outputs: [{ name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', type: 'bytes1' },\n { name: 'name', type: 'string' },\n { name: 'version', type: 'string' },\n { name: 'chainId', type: 'uint256' },\n { name: 'verifyingContract', type: 'address' },\n { name: 'salt', type: 'bytes32' },\n { name: 'extensions', type: 'uint256[]' },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'entryPoint',\n outputs: [{ name: '', type: 'address' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'target', type: 'address' },\n { name: 'value', type: 'uint256' },\n { name: 'data', type: 'bytes' },\n ],\n name: 'execute',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'target', type: 'address' },\n { name: 'value', type: 'uint256' },\n { name: 'data', type: 'bytes' },\n ],\n name: 'calls',\n type: 'tuple[]',\n },\n ],\n name: 'executeBatch',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [{ name: 'calls', type: 'bytes[]' }],\n name: 'executeWithoutChainIdValidation',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n { name: 'callGasLimit', type: 'uint256' },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'maxFeePerGas', type: 'uint256' },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'userOp',\n type: 'tuple',\n },\n ],\n name: 'getUserOpHashWithoutChainId',\n outputs: [{ name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'implementation',\n outputs: [{ name: '$', type: 'address' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'owners', type: 'bytes[]' }],\n name: 'initialize',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'address' }],\n name: 'isOwnerAddress',\n outputs: [{ name: '', type: 'bool' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'bytes' }],\n name: 'isOwnerBytes',\n outputs: [{ name: '', type: 'bool' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'x', type: 'bytes32' },\n { name: 'y', type: 'bytes32' },\n ],\n name: 'isOwnerPublicKey',\n outputs: [{ name: '', type: 'bool' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'hash', type: 'bytes32' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'isValidSignature',\n outputs: [{ name: 'result', type: 'bytes4' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'nextOwnerIndex',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'index', type: 'uint256' }],\n name: 'ownerAtIndex',\n outputs: [{ name: '', type: 'bytes' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'ownerCount',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'index', type: 'uint256' },\n { name: 'owner', type: 'bytes' },\n ],\n name: 'removeLastOwner',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { name: 'index', type: 'uint256' },\n { name: 'owner', type: 'bytes' },\n ],\n name: 'removeOwnerAtIndex',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'removedOwnersCount',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'hash', type: 'bytes32' }],\n name: 'replaySafeHash',\n outputs: [{ name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'newImplementation', type: 'address' },\n { name: 'data', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n { name: 'callGasLimit', type: 'uint256' },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'maxFeePerGas', type: 'uint256' },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'userOp',\n type: 'tuple',\n },\n { name: 'userOpHash', type: 'bytes32' },\n { name: 'missingAccountFunds', type: 'uint256' },\n ],\n name: 'validateUserOp',\n outputs: [{ name: 'validationData', type: 'uint256' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n { stateMutability: 'payable', type: 'receive' },\n];\nconst factoryAbi = [\n {\n inputs: [{ name: 'implementation_', type: 'address' }],\n stateMutability: 'payable',\n type: 'constructor',\n },\n { inputs: [], name: 'OwnerRequired', type: 'error' },\n {\n inputs: [\n { name: 'owners', type: 'bytes[]' },\n { name: 'nonce', type: 'uint256' },\n ],\n name: 'createAccount',\n outputs: [\n {\n name: 'account',\n type: 'address',\n },\n ],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { name: 'owners', type: 'bytes[]' },\n { name: 'nonce', type: 'uint256' },\n ],\n name: 'getAddress',\n outputs: [{ name: '', type: 'address' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'implementation',\n outputs: [{ name: '', type: 'address' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'initCodeHash',\n outputs: [{ name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n];\nconst spendPermissionManagerAbi = [\n {\n type: 'constructor',\n inputs: [\n {\n name: 'publicERC6492Validator',\n type: 'address',\n internalType: 'contract PublicERC6492Validator',\n },\n { name: 'magicSpend', type: 'address', internalType: 'address' },\n ],\n stateMutability: 'nonpayable',\n },\n { type: 'receive', stateMutability: 'payable' },\n {\n type: 'function',\n name: 'MAGIC_SPEND',\n inputs: [],\n outputs: [{ name: '', type: 'address', internalType: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'NATIVE_TOKEN',\n inputs: [],\n outputs: [{ name: '', type: 'address', internalType: 'address' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'PERMISSION_DETAILS_TYPEHASH',\n inputs: [],\n outputs: [{ name: '', type: 'bytes32', internalType: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'PUBLIC_ERC6492_VALIDATOR',\n inputs: [],\n outputs: [\n {\n name: '',\n type: 'address',\n internalType: 'contract PublicERC6492Validator',\n },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'SPEND_PERMISSION_BATCH_TYPEHASH',\n inputs: [],\n outputs: [{ name: '', type: 'bytes32', internalType: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'SPEND_PERMISSION_TYPEHASH',\n inputs: [],\n outputs: [{ name: '', type: 'bytes32', internalType: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'approve',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [{ name: '', type: 'bool', internalType: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n name: 'approveBatchWithSignature',\n inputs: [\n {\n name: 'spendPermissionBatch',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermissionBatch',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n {\n name: 'permissions',\n type: 'tuple[]',\n internalType: 'struct SpendPermissionManager.PermissionDetails[]',\n components: [\n {\n name: 'spender',\n type: 'address',\n internalType: 'address',\n },\n {\n name: 'token',\n type: 'address',\n internalType: 'address',\n },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n {\n name: 'salt',\n type: 'uint256',\n internalType: 'uint256',\n },\n {\n name: 'extraData',\n type: 'bytes',\n internalType: 'bytes',\n },\n ],\n },\n ],\n },\n { name: 'signature', type: 'bytes', internalType: 'bytes' },\n ],\n outputs: [{ name: '', type: 'bool', internalType: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n name: 'approveWithRevoke',\n inputs: [\n {\n name: 'permissionToApprove',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n {\n name: 'permissionToRevoke',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n {\n name: 'expectedLastUpdatedPeriod',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.PeriodSpend',\n components: [\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'spend', type: 'uint160', internalType: 'uint160' },\n ],\n },\n ],\n outputs: [{ name: '', type: 'bool', internalType: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n name: 'approveWithSignature',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n { name: 'signature', type: 'bytes', internalType: 'bytes' },\n ],\n outputs: [{ name: '', type: 'bool', internalType: 'bool' }],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n name: 'eip712Domain',\n inputs: [],\n outputs: [\n { name: 'fields', type: 'bytes1', internalType: 'bytes1' },\n { name: 'name', type: 'string', internalType: 'string' },\n { name: 'version', type: 'string', internalType: 'string' },\n { name: 'chainId', type: 'uint256', internalType: 'uint256' },\n {\n name: 'verifyingContract',\n type: 'address',\n internalType: 'address',\n },\n { name: 'salt', type: 'bytes32', internalType: 'bytes32' },\n {\n name: 'extensions',\n type: 'uint256[]',\n internalType: 'uint256[]',\n },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'getBatchHash',\n inputs: [\n {\n name: 'spendPermissionBatch',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermissionBatch',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n {\n name: 'permissions',\n type: 'tuple[]',\n internalType: 'struct SpendPermissionManager.PermissionDetails[]',\n components: [\n {\n name: 'spender',\n type: 'address',\n internalType: 'address',\n },\n {\n name: 'token',\n type: 'address',\n internalType: 'address',\n },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n {\n name: 'salt',\n type: 'uint256',\n internalType: 'uint256',\n },\n {\n name: 'extraData',\n type: 'bytes',\n internalType: 'bytes',\n },\n ],\n },\n ],\n },\n ],\n outputs: [{ name: '', type: 'bytes32', internalType: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'getCurrentPeriod',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [\n {\n name: '',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.PeriodSpend',\n components: [\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'spend', type: 'uint160', internalType: 'uint160' },\n ],\n },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'getHash',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [{ name: '', type: 'bytes32', internalType: 'bytes32' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'getLastUpdatedPeriod',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [\n {\n name: '',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.PeriodSpend',\n components: [\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'spend', type: 'uint160', internalType: 'uint160' },\n ],\n },\n ],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'isApproved',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [{ name: '', type: 'bool', internalType: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'isRevoked',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [{ name: '', type: 'bool', internalType: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'isValid',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [{ name: '', type: 'bool', internalType: 'bool' }],\n stateMutability: 'view',\n },\n {\n type: 'function',\n name: 'revoke',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n name: 'revokeAsSpender',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n name: 'spend',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n { name: 'value', type: 'uint160', internalType: 'uint160' },\n ],\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'function',\n name: 'spendWithWithdraw',\n inputs: [\n {\n name: 'spendPermission',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n { name: 'value', type: 'uint160', internalType: 'uint160' },\n {\n name: 'withdrawRequest',\n type: 'tuple',\n internalType: 'struct MagicSpend.WithdrawRequest',\n components: [\n { name: 'signature', type: 'bytes', internalType: 'bytes' },\n { name: 'asset', type: 'address', internalType: 'address' },\n { name: 'amount', type: 'uint256', internalType: 'uint256' },\n { name: 'nonce', type: 'uint256', internalType: 'uint256' },\n { name: 'expiry', type: 'uint48', internalType: 'uint48' },\n ],\n },\n ],\n outputs: [],\n stateMutability: 'nonpayable',\n },\n {\n type: 'event',\n name: 'SpendPermissionApproved',\n inputs: [\n {\n name: 'hash',\n type: 'bytes32',\n indexed: true,\n internalType: 'bytes32',\n },\n {\n name: 'spendPermission',\n type: 'tuple',\n indexed: false,\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n anonymous: false,\n },\n {\n type: 'event',\n name: 'SpendPermissionRevoked',\n inputs: [\n {\n name: 'hash',\n type: 'bytes32',\n indexed: true,\n internalType: 'bytes32',\n },\n {\n name: 'spendPermission',\n type: 'tuple',\n indexed: false,\n internalType: 'struct SpendPermissionManager.SpendPermission',\n components: [\n { name: 'account', type: 'address', internalType: 'address' },\n { name: 'spender', type: 'address', internalType: 'address' },\n { name: 'token', type: 'address', internalType: 'address' },\n {\n name: 'allowance',\n type: 'uint160',\n internalType: 'uint160',\n },\n { name: 'period', type: 'uint48', internalType: 'uint48' },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'salt', type: 'uint256', internalType: 'uint256' },\n { name: 'extraData', type: 'bytes', internalType: 'bytes' },\n ],\n },\n ],\n anonymous: false,\n },\n {\n type: 'event',\n name: 'SpendPermissionUsed',\n inputs: [\n {\n name: 'hash',\n type: 'bytes32',\n indexed: true,\n internalType: 'bytes32',\n },\n {\n name: 'account',\n type: 'address',\n indexed: true,\n internalType: 'address',\n },\n {\n name: 'spender',\n type: 'address',\n indexed: true,\n internalType: 'address',\n },\n {\n name: 'token',\n type: 'address',\n indexed: false,\n internalType: 'address',\n },\n {\n name: 'periodSpend',\n type: 'tuple',\n indexed: false,\n internalType: 'struct SpendPermissionManager.PeriodSpend',\n components: [\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'spend', type: 'uint160', internalType: 'uint160' },\n ],\n },\n ],\n anonymous: false,\n },\n {\n type: 'error',\n name: 'AfterSpendPermissionEnd',\n inputs: [\n {\n name: 'currentTimestamp',\n type: 'uint48',\n internalType: 'uint48',\n },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n ],\n },\n {\n type: 'error',\n name: 'BeforeSpendPermissionStart',\n inputs: [\n {\n name: 'currentTimestamp',\n type: 'uint48',\n internalType: 'uint48',\n },\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n ],\n },\n {\n type: 'error',\n name: 'ERC721TokenNotSupported',\n inputs: [{ name: 'token', type: 'address', internalType: 'address' }],\n },\n { type: 'error', name: 'EmptySpendPermissionBatch', inputs: [] },\n {\n type: 'error',\n name: 'ExceededSpendPermission',\n inputs: [\n { name: 'value', type: 'uint256', internalType: 'uint256' },\n { name: 'allowance', type: 'uint256', internalType: 'uint256' },\n ],\n },\n {\n type: 'error',\n name: 'InvalidLastUpdatedPeriod',\n inputs: [\n {\n name: 'actualLastUpdatedPeriod',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.PeriodSpend',\n components: [\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'spend', type: 'uint160', internalType: 'uint160' },\n ],\n },\n {\n name: 'expectedLastUpdatedPeriod',\n type: 'tuple',\n internalType: 'struct SpendPermissionManager.PeriodSpend',\n components: [\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n { name: 'spend', type: 'uint160', internalType: 'uint160' },\n ],\n },\n ],\n },\n {\n type: 'error',\n name: 'InvalidSender',\n inputs: [\n { name: 'sender', type: 'address', internalType: 'address' },\n { name: 'expected', type: 'address', internalType: 'address' },\n ],\n },\n { type: 'error', name: 'InvalidSignature', inputs: [] },\n {\n type: 'error',\n name: 'InvalidStartEnd',\n inputs: [\n { name: 'start', type: 'uint48', internalType: 'uint48' },\n { name: 'end', type: 'uint48', internalType: 'uint48' },\n ],\n },\n {\n type: 'error',\n name: 'InvalidWithdrawRequestNonce',\n inputs: [\n {\n name: 'noncePostfix',\n type: 'uint128',\n internalType: 'uint128',\n },\n {\n name: 'permissionHashPostfix',\n type: 'uint128',\n internalType: 'uint128',\n },\n ],\n },\n {\n type: 'error',\n name: 'MismatchedAccounts',\n inputs: [\n {\n name: 'firstAccount',\n type: 'address',\n internalType: 'address',\n },\n {\n name: 'secondAccount',\n type: 'address',\n internalType: 'address',\n },\n ],\n },\n {\n type: 'error',\n name: 'SafeERC20FailedOperation',\n inputs: [{ name: 'token', type: 'address', internalType: 'address' }],\n },\n {\n type: 'error',\n name: 'SpendTokenWithdrawAssetMismatch',\n inputs: [\n { name: 'spendToken', type: 'address', internalType: 'address' },\n {\n name: 'withdrawAsset',\n type: 'address',\n internalType: 'address',\n },\n ],\n },\n {\n type: 'error',\n name: 'SpendValueOverflow',\n inputs: [{ name: 'value', type: 'uint256', internalType: 'uint256' }],\n },\n {\n type: 'error',\n name: 'SpendValueWithdrawAmountMismatch',\n inputs: [\n { name: 'spendValue', type: 'uint256', internalType: 'uint256' },\n {\n name: 'withdrawAmount',\n type: 'uint256',\n internalType: 'uint256',\n },\n ],\n },\n { type: 'error', name: 'UnauthorizedSpendPermission', inputs: [] },\n {\n type: 'error',\n name: 'UnexpectedReceiveAmount',\n inputs: [\n { name: 'received', type: 'uint256', internalType: 'uint256' },\n { name: 'expected', type: 'uint256', internalType: 'uint256' },\n ],\n },\n { type: 'error', name: 'ZeroAllowance', inputs: [] },\n { type: 'error', name: 'ZeroPeriod', inputs: [] },\n { type: 'error', name: 'ZeroSpender', inputs: [] },\n { type: 'error', name: 'ZeroToken', inputs: [] },\n { type: 'error', name: 'ZeroValue', inputs: [] },\n];\n//# sourceMappingURL=constants.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2NvbnN0YW50cy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNPO0FBQ0E7QUFDQTtBQUNQLE1BQU0sZ0VBQWdFO0FBQ3RFO0FBQ0EsbUJBQW1CLDhCQUE4QjtBQUNqRDtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0sZ0RBQWdEO0FBQ3REO0FBQ0EsbUJBQW1CLDhCQUE4QjtBQUNqRDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLDhCQUE4QjtBQUNqRDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLDhCQUE4QjtBQUNqRDtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0sOENBQThDO0FBQ3BEO0FBQ0EsbUJBQW1CLGdDQUFnQztBQUNuRDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLDBDQUEwQztBQUM3RDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGtDQUFrQztBQUNyRDtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0saURBQWlEO0FBQ3ZELE1BQU0sNERBQTREO0FBQ2xFLE1BQU0sa0RBQWtEO0FBQ3hEO0FBQ0E7QUFDQSxjQUFjLGdDQUFnQztBQUM5QyxjQUFjLHNDQUFzQztBQUNwRCxjQUFjLG9DQUFvQztBQUNsRDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsY0FBYyw4Q0FBOEM7QUFDNUQ7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMsOENBQThDO0FBQzVEO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsTUFBTSw4Q0FBOEM7QUFDcEQ7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGdDQUFnQztBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyw0QkFBNEI7QUFDMUMsY0FBYyw0QkFBNEI7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiwwQ0FBMEM7QUFDN0Q7QUFDQSxvQkFBb0Isd0JBQXdCO0FBQzVDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxnQ0FBZ0M7QUFDOUMsY0FBYyw4QkFBOEI7QUFDNUMsY0FBYyxpQ0FBaUM7QUFDL0MsY0FBYyxrQ0FBa0M7QUFDaEQsY0FBYyw0Q0FBNEM7QUFDMUQsY0FBYywrQkFBK0I7QUFDN0MsY0FBYyx1Q0FBdUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwyQkFBMkI7QUFDL0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxpQ0FBaUM7QUFDL0MsY0FBYyxnQ0FBZ0M7QUFDOUMsY0FBYyw2QkFBNkI7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsNkJBQTZCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGdDQUFnQztBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLHVDQUF1QztBQUM3RDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix1Q0FBdUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix5Q0FBeUM7QUFDL0Qsc0JBQXNCLGtDQUFrQztBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLG9CQUFvQiwyQkFBMkI7QUFDL0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNEJBQTRCO0FBQ2hEO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxtQkFBbUIsaUNBQWlDO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGtDQUFrQztBQUNyRDtBQUNBLG9CQUFvQix3QkFBd0I7QUFDNUM7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixnQ0FBZ0M7QUFDbkQ7QUFDQSxvQkFBb0Isd0JBQXdCO0FBQzVDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsNEJBQTRCO0FBQzFDLGNBQWMsNEJBQTRCO0FBQzFDO0FBQ0E7QUFDQSxvQkFBb0Isd0JBQXdCO0FBQzVDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsK0JBQStCO0FBQzdDLGNBQWMsa0NBQWtDO0FBQ2hEO0FBQ0E7QUFDQSxvQkFBb0IsZ0NBQWdDO0FBQ3BEO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGdDQUFnQztBQUNuRDtBQUNBLG9CQUFvQix5QkFBeUI7QUFDN0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsMkJBQTJCO0FBQy9DO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxjQUFjLGdDQUFnQztBQUM5QyxjQUFjLDhCQUE4QjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxjQUFjLGdDQUFnQztBQUM5QyxjQUFjLDhCQUE4QjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwyQkFBMkI7QUFDL0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiwrQkFBK0I7QUFDbEQ7QUFDQSxvQkFBb0IsMkJBQTJCO0FBQy9DO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsNENBQTRDO0FBQzFELGNBQWMsNkJBQTZCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixnQ0FBZ0M7QUFDdEQsc0JBQXNCLGlDQUFpQztBQUN2RCxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQix1Q0FBdUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0IsdUNBQXVDO0FBQzdEO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0IseUNBQXlDO0FBQy9ELHNCQUFzQixrQ0FBa0M7QUFDeEQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMscUNBQXFDO0FBQ25ELGNBQWMsOENBQThDO0FBQzVEO0FBQ0E7QUFDQSxvQkFBb0IseUNBQXlDO0FBQzdEO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsTUFBTSw2Q0FBNkM7QUFDbkQ7QUFDTztBQUNQO0FBQ0EsbUJBQW1CLDBDQUEwQztBQUM3RDtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0sa0RBQWtEO0FBQ3hEO0FBQ0E7QUFDQSxjQUFjLGlDQUFpQztBQUMvQyxjQUFjLGdDQUFnQztBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxjQUFjLGlDQUFpQztBQUMvQyxjQUFjLGdDQUFnQztBQUM5QztBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwyQkFBMkI7QUFDL0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsMkJBQTJCO0FBQy9DO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMsOERBQThEO0FBQzVFO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsTUFBTSw2Q0FBNkM7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isb0RBQW9EO0FBQ3hFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG9EQUFvRDtBQUN4RTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixvREFBb0Q7QUFDeEU7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isb0RBQW9EO0FBQ3hFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG9EQUFvRDtBQUN4RTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRSxzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQSxhQUFhO0FBQ2I7QUFDQSxvQkFBb0IsOENBQThDO0FBQ2xFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0EsYUFBYTtBQUNiLGNBQWMseURBQXlEO0FBQ3ZFO0FBQ0Esb0JBQW9CLDhDQUE4QztBQUNsRTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRSxzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQSxhQUFhO0FBQ2I7QUFDQSxvQkFBb0IsOENBQThDO0FBQ2xFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYixjQUFjLHlEQUF5RDtBQUN2RTtBQUNBLG9CQUFvQiw4Q0FBOEM7QUFDbEU7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsd0RBQXdEO0FBQ3RFLGNBQWMsc0RBQXNEO0FBQ3BFLGNBQWMseURBQXlEO0FBQ3ZFLGNBQWMsMkRBQTJEO0FBQ3pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMsd0RBQXdEO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQSxxQkFBcUI7QUFDckI7QUFDQSxhQUFhO0FBQ2I7QUFDQSxvQkFBb0Isb0RBQW9EO0FBQ3hFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRSxzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0Usc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0EsYUFBYTtBQUNiO0FBQ0Esb0JBQW9CLG9EQUFvRDtBQUN4RTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRSxzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0Usc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBLG9CQUFvQiw4Q0FBOEM7QUFDbEU7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0Usc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0EsYUFBYTtBQUNiO0FBQ0Esb0JBQW9CLDhDQUE4QztBQUNsRTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRSxzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQSxhQUFhO0FBQ2I7QUFDQSxvQkFBb0IsOENBQThDO0FBQ2xFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0Usc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRSxzQkFBc0Isd0RBQXdEO0FBQzlFLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQSxhQUFhO0FBQ2IsY0FBYyx5REFBeUQ7QUFDdkU7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYixjQUFjLHlEQUF5RDtBQUN2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHlEQUF5RDtBQUMvRSxzQkFBc0IseURBQXlEO0FBQy9FLHNCQUFzQiwwREFBMEQ7QUFDaEYsc0JBQXNCLHlEQUF5RDtBQUMvRSxzQkFBc0Isd0RBQXdEO0FBQzlFO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQix5REFBeUQ7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0Usc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLDJEQUEyRDtBQUNqRixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHVEQUF1RDtBQUM3RSxzQkFBc0IscURBQXFEO0FBQzNFLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0Usc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsY0FBYyxxREFBcUQ7QUFDbkU7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixjQUFjLHVEQUF1RDtBQUNyRTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIseURBQXlEO0FBQzVFLEtBQUs7QUFDTCxNQUFNLDhEQUE4RDtBQUNwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMseURBQXlEO0FBQ3ZFLGNBQWMsNkRBQTZEO0FBQzNFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQix1REFBdUQ7QUFDN0Usc0JBQXNCLHFEQUFxRDtBQUMzRSxzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsdURBQXVEO0FBQzdFLHNCQUFzQixxREFBcUQ7QUFDM0Usc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsMERBQTBEO0FBQ3hFLGNBQWMsNERBQTREO0FBQzFFO0FBQ0EsS0FBSztBQUNMLE1BQU0scURBQXFEO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyx1REFBdUQ7QUFDckUsY0FBYyxxREFBcUQ7QUFDbkU7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQix5REFBeUQ7QUFDNUUsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyw4REFBOEQ7QUFDNUU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHlEQUF5RDtBQUM1RSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLDhEQUE4RDtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTCxNQUFNLGdFQUFnRTtBQUN0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsNERBQTREO0FBQzFFLGNBQWMsNERBQTREO0FBQzFFO0FBQ0EsS0FBSztBQUNMLE1BQU0sa0RBQWtEO0FBQ3hELE1BQU0sK0NBQStDO0FBQ3JELE1BQU0sZ0RBQWdEO0FBQ3RELE1BQU0sOENBQThDO0FBQ3BELE1BQU0sOENBQThDO0FBQ3BEO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3Njdy91dGlscy9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENvbnN0YW50c1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5leHBvcnQgY29uc3QgZmFjdG9yeUFkZHJlc3MgPSAnMHgwYmE1ZWQwYzZhYThjNDkwMzhmODE5ZTU4N2UyNjMzYzRhOWY0MjhhJztcbmV4cG9ydCBjb25zdCBzcGVuZFBlcm1pc3Npb25NYW5hZ2VyQWRkcmVzcyA9ICcweGY4NTIxMEIyMWNDNTAzMDJGNDc3QkE1NjY4NmQyMDE5ZEM5YjY3QWQnO1xuZXhwb3J0IGNvbnN0IGFiaSA9IFtcbiAgICB7IGlucHV0czogW10sIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLCB0eXBlOiAnY29uc3RydWN0b3InIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdvd25lcicsIHR5cGU6ICdieXRlcycgfV0sXG4gICAgICAgIG5hbWU6ICdBbHJlYWR5T3duZXInLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAgeyBpbnB1dHM6IFtdLCBuYW1lOiAnSW5pdGlhbGl6ZWQnLCB0eXBlOiAnZXJyb3InIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdvd25lcicsIHR5cGU6ICdieXRlcycgfV0sXG4gICAgICAgIG5hbWU6ICdJbnZhbGlkRXRoZXJldW1BZGRyZXNzT3duZXInLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdrZXknLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIG5hbWU6ICdJbnZhbGlkTm9uY2VLZXknLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdvd25lcicsIHR5cGU6ICdieXRlcycgfV0sXG4gICAgICAgIG5hbWU6ICdJbnZhbGlkT3duZXJCeXRlc0xlbmd0aCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7IGlucHV0czogW10sIG5hbWU6ICdMYXN0T3duZXInLCB0eXBlOiAnZXJyb3InIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdpbmRleCcsIHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAgICAgbmFtZTogJ05vT3duZXJBdEluZGV4JyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnb3duZXJzUmVtYWluaW5nJywgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgICAgICBuYW1lOiAnTm90TGFzdE93bmVyJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnc2VsZWN0b3InLCB0eXBlOiAnYnl0ZXM0JyB9XSxcbiAgICAgICAgbmFtZTogJ1NlbGVjdG9yTm90QWxsb3dlZCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7IGlucHV0czogW10sIG5hbWU6ICdVbmF1dGhvcml6ZWQnLCB0eXBlOiAnZXJyb3InIH0sXG4gICAgeyBpbnB1dHM6IFtdLCBuYW1lOiAnVW5hdXRob3JpemVkQ2FsbENvbnRleHQnLCB0eXBlOiAnZXJyb3InIH0sXG4gICAgeyBpbnB1dHM6IFtdLCBuYW1lOiAnVXBncmFkZUZhaWxlZCcsIHR5cGU6ICdlcnJvcicgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnaW5kZXgnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2V4cGVjdGVkT3duZXInLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhY3R1YWxPd25lcicsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1dyb25nT3duZXJBdEluZGV4JyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGluZGV4ZWQ6IGZhbHNlLCBuYW1lOiAnb3duZXInLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdBZGRPd25lcicsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2luZGV4JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBpbmRleGVkOiBmYWxzZSwgbmFtZTogJ293bmVyJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnUmVtb3ZlT3duZXInLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdpbXBsZW1lbnRhdGlvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1VwZ3JhZGVkJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHsgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScsIHR5cGU6ICdmYWxsYmFjaycgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdSRVBMQVlBQkxFX05PTkNFX0tFWScsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdvd25lcicsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ2FkZE93bmVyQWRkcmVzcycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICd4JywgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd5JywgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdhZGRPd25lclB1YmxpY0tleScsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnZnVuY3Rpb25TZWxlY3RvcicsIHR5cGU6ICdieXRlczQnIH1dLFxuICAgICAgICBuYW1lOiAnY2FuU2tpcENoYWluSWRWYWxpZGF0aW9uJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdib29sJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncHVyZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdkb21haW5TZXBhcmF0b3InLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2J5dGVzMzInIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgbmFtZTogJ2VpcDcxMkRvbWFpbicsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2ZpZWxkcycsIHR5cGU6ICdieXRlczEnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZlcnNpb24nLCB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY2hhaW5JZCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndmVyaWZ5aW5nQ29udHJhY3QnLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2V4dGVuc2lvbnMnLCB0eXBlOiAndWludDI1NltdJyB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgbmFtZTogJ2VudHJ5UG9pbnQnLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICd0YXJnZXQnLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZhbHVlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdkYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnZXhlY3V0ZScsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd0YXJnZXQnLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndmFsdWUnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdjYWxscycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlW10nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2V4ZWN1dGVCYXRjaCcsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnY2FsbHMnLCB0eXBlOiAnYnl0ZXNbXScgfV0sXG4gICAgICAgIG5hbWU6ICdleGVjdXRlV2l0aG91dENoYWluSWRWYWxpZGF0aW9uJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3BheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NlbmRlcicsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdub25jZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdpbml0Q29kZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnY2FsbERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NhbGxHYXNMaW1pdCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndmVyaWZpY2F0aW9uR2FzTGltaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnbWF4RmVlUGVyR2FzJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdtYXhQcmlvcml0eUZlZVBlckdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BheW1hc3RlckFuZERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd1c2VyT3AnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnZ2V0VXNlck9wSGFzaFdpdGhvdXRDaGFpbklkJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdpbXBsZW1lbnRhdGlvbicsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICckJywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnb3duZXJzJywgdHlwZTogJ2J5dGVzW10nIH1dLFxuICAgICAgICBuYW1lOiAnaW5pdGlhbGl6ZScsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ2lzT3duZXJBZGRyZXNzJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdib29sJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgICAgICBuYW1lOiAnaXNPd25lckJ5dGVzJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdib29sJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAneCcsIHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAneScsIHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnaXNPd25lclB1YmxpY0tleScsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYm9vbCcgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2hhc2gnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2lzVmFsaWRTaWduYXR1cmUnLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAncmVzdWx0JywgdHlwZTogJ2J5dGVzNCcgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAnbmV4dE93bmVySW5kZXgnLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnaW5kZXgnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIG5hbWU6ICdvd25lckF0SW5kZXgnLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2J5dGVzJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdvd25lckNvdW50JyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdwcm94aWFibGVVVUlEJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnaW5kZXgnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ293bmVyJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAncmVtb3ZlTGFzdE93bmVyJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2luZGV4JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdvd25lcicsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3JlbW92ZU93bmVyQXRJbmRleCcsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgbmFtZTogJ3JlbW92ZWRPd25lcnNDb3VudCcsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdoYXNoJywgdHlwZTogJ2J5dGVzMzInIH1dLFxuICAgICAgICBuYW1lOiAncmVwbGF5U2FmZUhhc2gnLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2J5dGVzMzInIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICduZXdJbXBsZW1lbnRhdGlvbicsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnZGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3VwZ3JhZGVUb0FuZENhbGwnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdjYWxsRGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnY2FsbEdhc0xpbWl0JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd2ZXJpZmljYXRpb25HYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcmVWZXJpZmljYXRpb25HYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdtYXhGZWVQZXJHYXMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ21heFByaW9yaXR5RmVlUGVyR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGF5bWFzdGVyQW5kRGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2lnbmF0dXJlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd1c2VyT3BIYXNoJywgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdtaXNzaW5nQWNjb3VudEZ1bmRzJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICd2YWxpZGF0ZVVzZXJPcCcsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICd2YWxpZGF0aW9uRGF0YScsIHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7IHN0YXRlTXV0YWJpbGl0eTogJ3BheWFibGUnLCB0eXBlOiAncmVjZWl2ZScgfSxcbl07XG5leHBvcnQgY29uc3QgZmFjdG9yeUFiaSA9IFtcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJ2ltcGxlbWVudGF0aW9uXycsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdjb25zdHJ1Y3RvcicsXG4gICAgfSxcbiAgICB7IGlucHV0czogW10sIG5hbWU6ICdPd25lclJlcXVpcmVkJywgdHlwZTogJ2Vycm9yJyB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdvd25lcnMnLCB0eXBlOiAnYnl0ZXNbXScgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdjcmVhdGVBY2NvdW50JyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdvd25lcnMnLCB0eXBlOiAnYnl0ZXNbXScgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdnZXRBZGRyZXNzJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdpbXBsZW1lbnRhdGlvbicsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYWRkcmVzcycgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAnaW5pdENvZGVIYXNoJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbl07XG5leHBvcnQgY29uc3Qgc3BlbmRQZXJtaXNzaW9uTWFuYWdlckFiaSA9IFtcbiAgICB7XG4gICAgICAgIHR5cGU6ICdjb25zdHJ1Y3RvcicsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdwdWJsaWNFUkM2NDkyVmFsaWRhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnY29udHJhY3QgUHVibGljRVJDNjQ5MlZhbGlkYXRvcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnbWFnaWNTcGVuZCcsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgfSxcbiAgICB7IHR5cGU6ICdyZWNlaXZlJywgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdNQUdJQ19TUEVORCcsXG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ05BVElWRV9UT0tFTicsXG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ1BFUk1JU1NJT05fREVUQUlMU19UWVBFSEFTSCcsXG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYnl0ZXMzMicsIGludGVybmFsVHlwZTogJ2J5dGVzMzInIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ1BVQkxJQ19FUkM2NDkyX1ZBTElEQVRPUicsXG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnY29udHJhY3QgUHVibGljRVJDNjQ5MlZhbGlkYXRvcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ1NQRU5EX1BFUk1JU1NJT05fQkFUQ0hfVFlQRUhBU0gnLFxuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2J5dGVzMzInLCBpbnRlcm5hbFR5cGU6ICdieXRlczMyJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdTUEVORF9QRVJNSVNTSU9OX1RZUEVIQVNIJyxcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnYXBwcm92ZScsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuU3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kZXInLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2V4dHJhRGF0YScsIHR5cGU6ICdieXRlcycsIGludGVybmFsVHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2Jvb2wnLCBpbnRlcm5hbFR5cGU6ICdib29sJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdhcHByb3ZlQmF0Y2hXaXRoU2lnbmF0dXJlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kUGVybWlzc2lvbkJhdGNoJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlNwZW5kUGVybWlzc2lvbkJhdGNoJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BlcmlvZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3Blcm1pc3Npb25zJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZVtdJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlBlcm1pc3Npb25EZXRhaWxzW10nLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndG9rZW4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3NhbHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnZXh0cmFEYXRhJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc2lnbmF0dXJlJywgdHlwZTogJ2J5dGVzJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYm9vbCcsIGludGVybmFsVHlwZTogJ2Jvb2wnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2FwcHJvdmVXaXRoUmV2b2tlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3Blcm1pc3Npb25Ub0FwcHJvdmUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuU3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kZXInLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2V4dHJhRGF0YScsIHR5cGU6ICdieXRlcycsIGludGVybmFsVHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdwZXJtaXNzaW9uVG9SZXZva2UnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuU3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kZXInLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2V4dHJhRGF0YScsIHR5cGU6ICdieXRlcycsIGludGVybmFsVHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdleHBlY3RlZExhc3RVcGRhdGVkUGVyaW9kJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlBlcmlvZFNwZW5kJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3BlbmQnLCB0eXBlOiAndWludDE2MCcsIGludGVybmFsVHlwZTogJ3VpbnQxNjAnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYm9vbCcsIGludGVybmFsVHlwZTogJ2Jvb2wnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2FwcHJvdmVXaXRoU2lnbmF0dXJlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5TcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3BlbmRlcicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndG9rZW4nLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhbGxvd2FuY2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BlcmlvZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2FsdCcsIHR5cGU6ICd1aW50MjU2JywgaW50ZXJuYWxUeXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZXh0cmFEYXRhJywgdHlwZTogJ2J5dGVzJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdzaWduYXR1cmUnLCB0eXBlOiAnYnl0ZXMnLCBpbnRlcm5hbFR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdib29sJywgaW50ZXJuYWxUeXBlOiAnYm9vbCcgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnZWlwNzEyRG9tYWluJyxcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnZmllbGRzJywgdHlwZTogJ2J5dGVzMScsIGludGVybmFsVHlwZTogJ2J5dGVzMScgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAnc3RyaW5nJywgaW50ZXJuYWxUeXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndmVyc2lvbicsIHR5cGU6ICdzdHJpbmcnLCBpbnRlcm5hbFR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdjaGFpbklkJywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd2ZXJpZnlpbmdDb250cmFjdCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAnYnl0ZXMzMicsIGludGVybmFsVHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2V4dGVuc2lvbnMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2W10nLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2dldEJhdGNoSGFzaCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZFBlcm1pc3Npb25CYXRjaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5TcGVuZFBlcm1pc3Npb25CYXRjaCcsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwZXJtaXNzaW9ucycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5QZXJtaXNzaW9uRGV0YWlsc1tdJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3Rva2VuJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FsbG93YW5jZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdzYWx0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2V4dHJhRGF0YScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnZ2V0Q3VycmVudFBlcmlvZCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuU3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kZXInLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2V4dHJhRGF0YScsIHR5cGU6ICdieXRlcycsIGludGVybmFsVHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5QZXJpb2RTcGVuZCcsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kJywgdHlwZTogJ3VpbnQxNjAnLCBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2dldEhhc2gnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlNwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZGVyJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd0b2tlbicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FsbG93YW5jZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGVyaW9kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdleHRyYURhdGEnLCB0eXBlOiAnYnl0ZXMnLCBpbnRlcm5hbFR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnZ2V0TGFzdFVwZGF0ZWRQZXJpb2QnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlNwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZGVyJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd0b2tlbicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FsbG93YW5jZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGVyaW9kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdleHRyYURhdGEnLCB0eXBlOiAnYnl0ZXMnLCBpbnRlcm5hbFR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICcnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuUGVyaW9kU3BlbmQnLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZCcsIHR5cGU6ICd1aW50MTYwJywgaW50ZXJuYWxUeXBlOiAndWludDE2MCcgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdpc0FwcHJvdmVkJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5TcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3BlbmRlcicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndG9rZW4nLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhbGxvd2FuY2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BlcmlvZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2FsdCcsIHR5cGU6ICd1aW50MjU2JywgaW50ZXJuYWxUeXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZXh0cmFEYXRhJywgdHlwZTogJ2J5dGVzJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYm9vbCcsIGludGVybmFsVHlwZTogJ2Jvb2wnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2lzUmV2b2tlZCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuU3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kZXInLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2V4dHJhRGF0YScsIHR5cGU6ICdieXRlcycsIGludGVybmFsVHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2Jvb2wnLCBpbnRlcm5hbFR5cGU6ICdib29sJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdpc1ZhbGlkJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5TcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3BlbmRlcicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndG9rZW4nLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhbGxvd2FuY2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BlcmlvZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2FsdCcsIHR5cGU6ICd1aW50MjU2JywgaW50ZXJuYWxUeXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZXh0cmFEYXRhJywgdHlwZTogJ2J5dGVzJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYm9vbCcsIGludGVybmFsVHlwZTogJ2Jvb2wnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ3Jldm9rZScsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuU3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kZXInLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2V4dHJhRGF0YScsIHR5cGU6ICdieXRlcycsIGludGVybmFsVHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdyZXZva2VBc1NwZW5kZXInLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlNwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZGVyJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd0b2tlbicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FsbG93YW5jZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGVyaW9kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdleHRyYURhdGEnLCB0eXBlOiAnYnl0ZXMnLCBpbnRlcm5hbFR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnc3BlbmQnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlNwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZGVyJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd0b2tlbicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FsbG93YW5jZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGVyaW9kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdleHRyYURhdGEnLCB0eXBlOiAnYnl0ZXMnLCBpbnRlcm5hbFR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZhbHVlJywgdHlwZTogJ3VpbnQxNjAnLCBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdzcGVuZFdpdGhXaXRoZHJhdycsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuU3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kZXInLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Rva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWxsb3dhbmNlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwZXJpb2QnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2V4dHJhRGF0YScsIHR5cGU6ICdieXRlcycsIGludGVybmFsVHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndmFsdWUnLCB0eXBlOiAndWludDE2MCcsIGludGVybmFsVHlwZTogJ3VpbnQxNjAnIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3dpdGhkcmF3UmVxdWVzdCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgTWFnaWNTcGVuZC5XaXRoZHJhd1JlcXVlc3QnLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2lnbmF0dXJlJywgdHlwZTogJ2J5dGVzJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2Fzc2V0JywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhbW91bnQnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdleHBpcnknLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgICAgIG5hbWU6ICdTcGVuZFBlcm1pc3Npb25BcHByb3ZlZCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdoYXNoJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5TcGVuZFBlcm1pc3Npb24nLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3BlbmRlcicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndG9rZW4nLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhbGxvd2FuY2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQxNjAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BlcmlvZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2FsdCcsIHR5cGU6ICd1aW50MjU2JywgaW50ZXJuYWxUeXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZXh0cmFEYXRhJywgdHlwZTogJ2J5dGVzJywgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgICAgIG5hbWU6ICdTcGVuZFBlcm1pc3Npb25SZXZva2VkJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2hhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlNwZW5kUGVybWlzc2lvbicsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZGVyJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd0b2tlbicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FsbG93YW5jZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDE2MCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGVyaW9kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdleHRyYURhdGEnLCB0eXBlOiAnYnl0ZXMnLCBpbnRlcm5hbFR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICAgICAgbmFtZTogJ1NwZW5kUGVybWlzc2lvblVzZWQnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnaGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAndG9rZW4nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3BlcmlvZFNwZW5kJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBTcGVuZFBlcm1pc3Npb25NYW5hZ2VyLlBlcmlvZFNwZW5kJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3BlbmQnLCB0eXBlOiAndWludDE2MCcsIGludGVybmFsVHlwZTogJ3VpbnQxNjAnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgIG5hbWU6ICdBZnRlclNwZW5kUGVybWlzc2lvbkVuZCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdjdXJyZW50VGltZXN0YW1wJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDQ4JyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50NDgnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgIG5hbWU6ICdCZWZvcmVTcGVuZFBlcm1pc3Npb25TdGFydCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdjdXJyZW50VGltZXN0YW1wJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDQ4JyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50NDgnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3N0YXJ0JywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgbmFtZTogJ0VSQzcyMVRva2VuTm90U3VwcG9ydGVkJyxcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAndG9rZW4nLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgIH0sXG4gICAgeyB0eXBlOiAnZXJyb3InLCBuYW1lOiAnRW1wdHlTcGVuZFBlcm1pc3Npb25CYXRjaCcsIGlucHV0czogW10gfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgIG5hbWU6ICdFeGNlZWRlZFNwZW5kUGVybWlzc2lvbicsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAndmFsdWUnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhbGxvd2FuY2UnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgIG5hbWU6ICdJbnZhbGlkTGFzdFVwZGF0ZWRQZXJpb2QnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWN0dWFsTGFzdFVwZGF0ZWRQZXJpb2QnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFNwZW5kUGVybWlzc2lvbk1hbmFnZXIuUGVyaW9kU3BlbmQnLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdlbmQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzcGVuZCcsIHR5cGU6ICd1aW50MTYwJywgaW50ZXJuYWxUeXBlOiAndWludDE2MCcgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnZXhwZWN0ZWRMYXN0VXBkYXRlZFBlcmlvZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgU3BlbmRQZXJtaXNzaW9uTWFuYWdlci5QZXJpb2RTcGVuZCcsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFydCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2VuZCcsIHR5cGU6ICd1aW50NDgnLCBpbnRlcm5hbFR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kJywgdHlwZTogJ3VpbnQxNjAnLCBpbnRlcm5hbFR5cGU6ICd1aW50MTYwJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICBuYW1lOiAnSW52YWxpZFNlbmRlcicsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnZXhwZWN0ZWQnLCB0eXBlOiAnYWRkcmVzcycsIGludGVybmFsVHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7IHR5cGU6ICdlcnJvcicsIG5hbWU6ICdJbnZhbGlkU2lnbmF0dXJlJywgaW5wdXRzOiBbXSB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgbmFtZTogJ0ludmFsaWRTdGFydEVuZCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnc3RhcnQnLCB0eXBlOiAndWludDQ4JywgaW50ZXJuYWxUeXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnZW5kJywgdHlwZTogJ3VpbnQ0OCcsIGludGVybmFsVHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgbmFtZTogJ0ludmFsaWRXaXRoZHJhd1JlcXVlc3ROb25jZScsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdub25jZVBvc3RmaXgnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTI4JyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MTI4JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3Blcm1pc3Npb25IYXNoUG9zdGZpeCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQxMjgnLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQxMjgnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgbmFtZTogJ01pc21hdGNoZWRBY2NvdW50cycsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdmaXJzdEFjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlY29uZEFjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgIG5hbWU6ICdTYWZlRVJDMjBGYWlsZWRPcGVyYXRpb24nLFxuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICd0b2tlbicsIHR5cGU6ICdhZGRyZXNzJywgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycgfV0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgIG5hbWU6ICdTcGVuZFRva2VuV2l0aGRyYXdBc3NldE1pc21hdGNoJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdzcGVuZFRva2VuJywgdHlwZTogJ2FkZHJlc3MnLCBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd0Fzc2V0JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICBuYW1lOiAnU3BlbmRWYWx1ZU92ZXJmbG93JyxcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAndmFsdWUnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICBuYW1lOiAnU3BlbmRWYWx1ZVdpdGhkcmF3QW1vdW50TWlzbWF0Y2gnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ3NwZW5kVmFsdWUnLCB0eXBlOiAndWludDI1NicsIGludGVybmFsVHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3dpdGhkcmF3QW1vdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAgeyB0eXBlOiAnZXJyb3InLCBuYW1lOiAnVW5hdXRob3JpemVkU3BlbmRQZXJtaXNzaW9uJywgaW5wdXRzOiBbXSB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgbmFtZTogJ1VuZXhwZWN0ZWRSZWNlaXZlQW1vdW50JyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdyZWNlaXZlZCcsIHR5cGU6ICd1aW50MjU2JywgaW50ZXJuYWxUeXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2V4cGVjdGVkJywgdHlwZTogJ3VpbnQyNTYnLCBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAgeyB0eXBlOiAnZXJyb3InLCBuYW1lOiAnWmVyb0FsbG93YW5jZScsIGlucHV0czogW10gfSxcbiAgICB7IHR5cGU6ICdlcnJvcicsIG5hbWU6ICdaZXJvUGVyaW9kJywgaW5wdXRzOiBbXSB9LFxuICAgIHsgdHlwZTogJ2Vycm9yJywgbmFtZTogJ1plcm9TcGVuZGVyJywgaW5wdXRzOiBbXSB9LFxuICAgIHsgdHlwZTogJ2Vycm9yJywgbmFtZTogJ1plcm9Ub2tlbicsIGlucHV0czogW10gfSxcbiAgICB7IHR5cGU6ICdlcnJvcicsIG5hbWU6ICdaZXJvVmFsdWUnLCBpbnB1dHM6IFtdIH0sXG5dO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29uc3RhbnRzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSmartAccount.js": /*!*************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSmartAccount.js ***! \*************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createSmartAccount: () => (/* binding */ createSmartAccount),\n/* harmony export */ sign: () => (/* binding */ sign),\n/* harmony export */ toReplaySafeHash: () => (/* binding */ toReplaySafeHash),\n/* harmony export */ toWebAuthnSignature: () => (/* binding */ toWebAuthnSignature),\n/* harmony export */ wrapSignature: () => (/* binding */ wrapSignature)\n/* harmony export */ });\n/* harmony import */ var ox_Signature__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ox/Signature */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Signature.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionData.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashMessage.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashTypedData.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/parseSignature.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodePacked.js\");\n/* harmony import */ var viem_account_abstraction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! viem/account-abstraction */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/constants/abis.js\");\n/* harmony import */ var viem_account_abstraction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! viem/account-abstraction */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/constants/address.js\");\n/* harmony import */ var viem_account_abstraction__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! viem/account-abstraction */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/accounts/toSmartAccount.js\");\n/* harmony import */ var viem_account_abstraction__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! viem/account-abstraction */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js\");\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js\");\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n/**\n * @description Create a Coinbase Smart Account.\n *\n * @param parameters - {@link CreateSmartAccountParameters}\n * @returns Coinbase Smart Account. {@link CreateSmartAccountReturnType}\n *\n * @example\n *\n * const account = createSmartAccount({\n * client,\n * owner: privateKeyToAccount('0x...'),\n * ownerIndex: 0,\n * address: '0x...',\n * factoryData: '0x...',\n * })\n */\nasync function createSmartAccount(parameters) {\n const { owner, ownerIndex, address, client, factoryData } = parameters;\n const entryPoint = {\n abi: viem_account_abstraction__WEBPACK_IMPORTED_MODULE_0__.entryPoint06Abi,\n address: viem_account_abstraction__WEBPACK_IMPORTED_MODULE_1__.entryPoint06Address,\n version: '0.6',\n };\n const factory = {\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.factoryAbi,\n address: _constants_js__WEBPACK_IMPORTED_MODULE_2__.factoryAddress,\n };\n return (0,viem_account_abstraction__WEBPACK_IMPORTED_MODULE_3__.toSmartAccount)({\n client,\n entryPoint,\n extend: { abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.abi, factory },\n async decodeCalls(data) {\n const result = (0,viem__WEBPACK_IMPORTED_MODULE_4__.decodeFunctionData)({\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.abi,\n data,\n });\n if (result.functionName === 'execute')\n return [{ to: result.args[0], value: result.args[1], data: result.args[2] }];\n if (result.functionName === 'executeBatch')\n return result.args[0].map((arg) => ({\n to: arg.target,\n value: arg.value,\n data: arg.data,\n }));\n throw new viem__WEBPACK_IMPORTED_MODULE_5__.BaseError(`unable to decode calls for \"${result.functionName}\"`);\n },\n async encodeCalls(calls) {\n var _a, _b;\n if (calls.length === 1) {\n return (0,viem__WEBPACK_IMPORTED_MODULE_6__.encodeFunctionData)({\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.abi,\n functionName: 'execute',\n args: [calls[0].to, (_a = calls[0].value) !== null && _a !== void 0 ? _a : BigInt(0), (_b = calls[0].data) !== null && _b !== void 0 ? _b : '0x'],\n });\n }\n return (0,viem__WEBPACK_IMPORTED_MODULE_6__.encodeFunctionData)({\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.abi,\n functionName: 'executeBatch',\n args: [\n calls.map((call) => {\n var _a, _b;\n return ({\n data: (_a = call.data) !== null && _a !== void 0 ? _a : '0x',\n target: call.to,\n value: (_b = call.value) !== null && _b !== void 0 ? _b : BigInt(0),\n });\n }),\n ],\n });\n },\n async getAddress() {\n return address;\n },\n async getFactoryArgs() {\n if (factoryData)\n return { factory: factory.address, factoryData };\n // TODO: support creating factory data\n return { factory: factory.address, factoryData };\n },\n async getStubSignature() {\n if (owner.type === 'webAuthn')\n return '0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000001949fc7c88032b9fcb5f6efc7a7b8c63668eae9871b765e23123bb473ff57aa831a7c0d9276168ebcc29f2875a0239cffdf2a9cd1c2007c5c77c071db9264df1d000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008a7b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a2273496a396e6164474850596759334b7156384f7a4a666c726275504b474f716d59576f4d57516869467773222c226f726967696e223a2268747470733a2f2f7369676e2e636f696e626173652e636f6d222c2263726f73734f726967696e223a66616c73657d00000000000000000000000000000000000000000000';\n return wrapSignature({\n ownerIndex,\n signature: '0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c',\n });\n },\n async sign(parameters) {\n const address = await this.getAddress();\n const hash = toReplaySafeHash({\n address,\n chainId: client.chain.id,\n hash: parameters.hash,\n });\n const signature = await sign({ hash, owner });\n return wrapSignature({\n ownerIndex,\n signature,\n });\n },\n async signMessage(parameters) {\n const { message } = parameters;\n const address = await this.getAddress();\n const hash = toReplaySafeHash({\n address,\n chainId: client.chain.id,\n hash: (0,viem__WEBPACK_IMPORTED_MODULE_7__.hashMessage)(message),\n });\n const signature = await sign({ hash, owner });\n return wrapSignature({\n ownerIndex,\n signature,\n });\n },\n async signTypedData(parameters) {\n const { domain, types, primaryType, message } = parameters;\n const address = await this.getAddress();\n const hash = toReplaySafeHash({\n address,\n chainId: client.chain.id,\n hash: (0,viem__WEBPACK_IMPORTED_MODULE_8__.hashTypedData)({\n domain,\n message,\n primaryType,\n types,\n }),\n });\n const signature = await sign({ hash, owner });\n return wrapSignature({\n ownerIndex,\n signature,\n });\n },\n async signUserOperation(parameters) {\n const { chainId = client.chain.id } = parameters, userOperation = __rest(parameters, [\"chainId\"]);\n const address = await this.getAddress();\n const hash = (0,viem_account_abstraction__WEBPACK_IMPORTED_MODULE_9__.getUserOperationHash)({\n chainId,\n entryPointAddress: entryPoint.address,\n entryPointVersion: entryPoint.version,\n userOperation: Object.assign(Object.assign({}, userOperation), { sender: address }),\n });\n const signature = await sign({ hash, owner });\n return wrapSignature({\n ownerIndex,\n signature,\n });\n },\n userOperation: {\n async estimateGas(userOperation) {\n var _a;\n if (owner.type !== 'webAuthn')\n return;\n // Accounts with WebAuthn owner require a minimum verification gas limit of 800,000.\n return {\n verificationGasLimit: BigInt(Math.max(Number((_a = userOperation.verificationGasLimit) !== null && _a !== void 0 ? _a : BigInt(0)), 800000)),\n };\n },\n },\n });\n}\n/////////////////////////////////////////////////////////////////////////////////////////////\n// Utilities\n/////////////////////////////////////////////////////////////////////////////////////////////\n/** @internal */\nasync function sign({ hash, owner, }) {\n // WebAuthn Account (Passkey)\n if (owner.type === 'webAuthn') {\n const { signature, webauthn } = await owner.sign({\n hash,\n });\n return toWebAuthnSignature({ signature, webauthn });\n }\n if (owner.sign)\n return owner.sign({ hash });\n throw new viem__WEBPACK_IMPORTED_MODULE_5__.BaseError('`owner` does not support raw sign.');\n}\n/** @internal */\nfunction toReplaySafeHash({ address, chainId, hash, }) {\n return (0,viem__WEBPACK_IMPORTED_MODULE_8__.hashTypedData)({\n domain: {\n chainId,\n name: 'Coinbase Smart Wallet',\n verifyingContract: address,\n version: '1',\n },\n types: {\n CoinbaseSmartWalletMessage: [\n {\n name: 'hash',\n type: 'bytes32',\n },\n ],\n },\n primaryType: 'CoinbaseSmartWalletMessage',\n message: {\n hash,\n },\n });\n}\n/** @internal */\nfunction toWebAuthnSignature({ webauthn, signature, }) {\n const { r, s } = ox_Signature__WEBPACK_IMPORTED_MODULE_10__.fromHex(signature);\n return (0,viem__WEBPACK_IMPORTED_MODULE_11__.encodeAbiParameters)([\n {\n components: [\n {\n name: 'authenticatorData',\n type: 'bytes',\n },\n { name: 'clientDataJSON', type: 'bytes' },\n { name: 'challengeIndex', type: 'uint256' },\n { name: 'typeIndex', type: 'uint256' },\n {\n name: 'r',\n type: 'uint256',\n },\n {\n name: 's',\n type: 'uint256',\n },\n ],\n type: 'tuple',\n },\n ], [\n {\n authenticatorData: webauthn.authenticatorData,\n clientDataJSON: (0,viem__WEBPACK_IMPORTED_MODULE_12__.stringToHex)(webauthn.clientDataJSON),\n challengeIndex: BigInt(webauthn.challengeIndex),\n typeIndex: BigInt(webauthn.typeIndex),\n r,\n s,\n },\n ]);\n}\n/** @internal */\nfunction wrapSignature(parameters) {\n const { ownerIndex = 0 } = parameters;\n const signatureData = (() => {\n if ((0,viem__WEBPACK_IMPORTED_MODULE_13__.size)(parameters.signature) !== 65)\n return parameters.signature;\n const signature = (0,viem__WEBPACK_IMPORTED_MODULE_14__.parseSignature)(parameters.signature);\n return (0,viem__WEBPACK_IMPORTED_MODULE_15__.encodePacked)(['bytes32', 'bytes32', 'uint8'], [signature.r, signature.s, signature.yParity === 0 ? 27 : 28]);\n })();\n return (0,viem__WEBPACK_IMPORTED_MODULE_11__.encodeAbiParameters)([\n {\n components: [\n {\n name: 'ownerIndex',\n type: 'uint8',\n },\n {\n name: 'signatureData',\n type: 'bytes',\n },\n ],\n type: 'tuple',\n },\n ], [\n {\n ownerIndex,\n signatureData,\n },\n ]);\n}\n//# sourceMappingURL=createSmartAccount.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2NyZWF0ZVNtYXJ0QWNjb3VudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxjQUFjLFNBQUksSUFBSSxTQUFJO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkRBQTZELGNBQWM7QUFDM0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUMwQztBQUNrSTtBQUNyRDtBQUN0RDtBQUNqRTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIscUNBQXFDO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPO0FBQ1AsWUFBWSxrREFBa0Q7QUFDOUQ7QUFDQSxhQUFhLHFFQUFlO0FBQzVCLGlCQUFpQix5RUFBbUI7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsYUFBYSxxREFBVTtBQUN2QixpQkFBaUIseURBQWM7QUFDL0I7QUFDQSxXQUFXLHdFQUFjO0FBQ3pCO0FBQ0E7QUFDQSxrQkFBa0IsR0FBRywyREFBVztBQUNoQztBQUNBLDJCQUEyQix3REFBa0I7QUFDN0MsbUJBQW1CO0FBQ25CO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsMEJBQTBCLGlFQUFpRTtBQUMzRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCLHNCQUFzQiwyQ0FBUyxnQ0FBZ0Msb0JBQW9CO0FBQ25GLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsd0RBQWtCO0FBQ3pDLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsbUJBQW1CLHdEQUFrQjtBQUNyQyxtQkFBbUI7QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QixxQkFBcUI7QUFDckI7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBLHFCQUFxQjtBQUNyQixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsMkNBQTJDLGFBQWE7QUFDeEQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBLG9CQUFvQixVQUFVO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLGlEQUFXO0FBQ2pDLGFBQWE7QUFDYiwyQ0FBMkMsYUFBYTtBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0Esb0JBQW9CLHNDQUFzQztBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixtREFBYTtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQixhQUFhO0FBQ2IsMkNBQTJDLGFBQWE7QUFDeEQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBLG9CQUFvQiw0QkFBNEI7QUFDaEQ7QUFDQSx5QkFBeUIsOEVBQW9CO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLDZEQUE2RCxvQkFBb0IsaUJBQWlCO0FBQ2xHLGFBQWE7QUFDYiwyQ0FBMkMsYUFBYTtBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxzQkFBc0IsY0FBYztBQUMzQztBQUNBO0FBQ0EsZ0JBQWdCLHNCQUFzQjtBQUN0QztBQUNBLFNBQVM7QUFDVCxxQ0FBcUMscUJBQXFCO0FBQzFEO0FBQ0E7QUFDQSw0QkFBNEIsTUFBTTtBQUNsQyxjQUFjLDJDQUFTO0FBQ3ZCO0FBQ0E7QUFDTyw0QkFBNEIseUJBQXlCO0FBQzVELFdBQVcsbURBQWE7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNPLCtCQUErQixzQkFBc0I7QUFDNUQsWUFBWSxPQUFPLEVBQUUsa0RBQWlCO0FBQ3RDLFdBQVcsMERBQW1CO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakIsa0JBQWtCLHVDQUF1QztBQUN6RCxrQkFBa0IseUNBQXlDO0FBQzNELGtCQUFrQixvQ0FBb0M7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixrREFBVztBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksaUJBQWlCO0FBQzdCO0FBQ0EsWUFBWSwyQ0FBSTtBQUNoQjtBQUNBLDBCQUEwQixxREFBYztBQUN4QyxlQUFlLG1EQUFZO0FBQzNCLEtBQUs7QUFDTCxXQUFXLDBEQUFtQjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2NyZWF0ZVNtYXJ0QWNjb3VudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgKiBhcyBTaWduYXR1cmUgZnJvbSAnb3gvU2lnbmF0dXJlJztcbmltcG9ydCB7IEJhc2VFcnJvciwgZGVjb2RlRnVuY3Rpb25EYXRhLCBlbmNvZGVBYmlQYXJhbWV0ZXJzLCBlbmNvZGVGdW5jdGlvbkRhdGEsIGVuY29kZVBhY2tlZCwgaGFzaE1lc3NhZ2UsIGhhc2hUeXBlZERhdGEsIHBhcnNlU2lnbmF0dXJlLCBzaXplLCBzdHJpbmdUb0hleCwgfSBmcm9tICd2aWVtJztcbmltcG9ydCB7IGVudHJ5UG9pbnQwNkFiaSwgZW50cnlQb2ludDA2QWRkcmVzcywgZ2V0VXNlck9wZXJhdGlvbkhhc2gsIHRvU21hcnRBY2NvdW50LCB9IGZyb20gJ3ZpZW0vYWNjb3VudC1hYnN0cmFjdGlvbic7XG5pbXBvcnQgeyBhYmksIGZhY3RvcnlBYmksIGZhY3RvcnlBZGRyZXNzIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ3JlYXRlIGEgQ29pbmJhc2UgU21hcnQgQWNjb3VudC5cbiAqXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBDcmVhdGVTbWFydEFjY291bnRQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQ29pbmJhc2UgU21hcnQgQWNjb3VudC4ge0BsaW5rIENyZWF0ZVNtYXJ0QWNjb3VudFJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiBjb25zdCBhY2NvdW50ID0gY3JlYXRlU21hcnRBY2NvdW50KHtcbiAqICAgY2xpZW50LFxuICogICBvd25lcjogcHJpdmF0ZUtleVRvQWNjb3VudCgnMHguLi4nKSxcbiAqICAgb3duZXJJbmRleDogMCxcbiAqICAgYWRkcmVzczogJzB4Li4uJyxcbiAqICAgZmFjdG9yeURhdGE6ICcweC4uLicsXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlU21hcnRBY2NvdW50KHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IG93bmVyLCBvd25lckluZGV4LCBhZGRyZXNzLCBjbGllbnQsIGZhY3RvcnlEYXRhIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IGVudHJ5UG9pbnQgPSB7XG4gICAgICAgIGFiaTogZW50cnlQb2ludDA2QWJpLFxuICAgICAgICBhZGRyZXNzOiBlbnRyeVBvaW50MDZBZGRyZXNzLFxuICAgICAgICB2ZXJzaW9uOiAnMC42JyxcbiAgICB9O1xuICAgIGNvbnN0IGZhY3RvcnkgPSB7XG4gICAgICAgIGFiaTogZmFjdG9yeUFiaSxcbiAgICAgICAgYWRkcmVzczogZmFjdG9yeUFkZHJlc3MsXG4gICAgfTtcbiAgICByZXR1cm4gdG9TbWFydEFjY291bnQoe1xuICAgICAgICBjbGllbnQsXG4gICAgICAgIGVudHJ5UG9pbnQsXG4gICAgICAgIGV4dGVuZDogeyBhYmksIGZhY3RvcnkgfSxcbiAgICAgICAgYXN5bmMgZGVjb2RlQ2FsbHMoZGF0YSkge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gZGVjb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgICAgICBhYmksXG4gICAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKHJlc3VsdC5mdW5jdGlvbk5hbWUgPT09ICdleGVjdXRlJylcbiAgICAgICAgICAgICAgICByZXR1cm4gW3sgdG86IHJlc3VsdC5hcmdzWzBdLCB2YWx1ZTogcmVzdWx0LmFyZ3NbMV0sIGRhdGE6IHJlc3VsdC5hcmdzWzJdIH1dO1xuICAgICAgICAgICAgaWYgKHJlc3VsdC5mdW5jdGlvbk5hbWUgPT09ICdleGVjdXRlQmF0Y2gnKVxuICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQuYXJnc1swXS5tYXAoKGFyZykgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgdG86IGFyZy50YXJnZXQsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBhcmcudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IGFyZy5kYXRhLFxuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIHRocm93IG5ldyBCYXNlRXJyb3IoYHVuYWJsZSB0byBkZWNvZGUgY2FsbHMgZm9yIFwiJHtyZXN1bHQuZnVuY3Rpb25OYW1lfVwiYCk7XG4gICAgICAgIH0sXG4gICAgICAgIGFzeW5jIGVuY29kZUNhbGxzKGNhbGxzKSB7XG4gICAgICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICAgICAgaWYgKGNhbGxzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBlbmNvZGVGdW5jdGlvbkRhdGEoe1xuICAgICAgICAgICAgICAgICAgICBhYmksXG4gICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ2V4ZWN1dGUnLFxuICAgICAgICAgICAgICAgICAgICBhcmdzOiBbY2FsbHNbMF0udG8sIChfYSA9IGNhbGxzWzBdLnZhbHVlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBCaWdJbnQoMCksIChfYiA9IGNhbGxzWzBdLmRhdGEpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6ICcweCddLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGVuY29kZUZ1bmN0aW9uRGF0YSh7XG4gICAgICAgICAgICAgICAgYWJpLFxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ2V4ZWN1dGVCYXRjaCcsXG4gICAgICAgICAgICAgICAgYXJnczogW1xuICAgICAgICAgICAgICAgICAgICBjYWxscy5tYXAoKGNhbGwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiAoX2EgPSBjYWxsLmRhdGEpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICcweCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBjYWxsLnRvLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAoX2IgPSBjYWxsLnZhbHVlKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBCaWdJbnQoMCksXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBhc3luYyBnZXRBZGRyZXNzKCkge1xuICAgICAgICAgICAgcmV0dXJuIGFkZHJlc3M7XG4gICAgICAgIH0sXG4gICAgICAgIGFzeW5jIGdldEZhY3RvcnlBcmdzKCkge1xuICAgICAgICAgICAgaWYgKGZhY3RvcnlEYXRhKVxuICAgICAgICAgICAgICAgIHJldHVybiB7IGZhY3Rvcnk6IGZhY3RvcnkuYWRkcmVzcywgZmFjdG9yeURhdGEgfTtcbiAgICAgICAgICAgIC8vIFRPRE86IHN1cHBvcnQgY3JlYXRpbmcgZmFjdG9yeSBkYXRhXG4gICAgICAgICAgICByZXR1cm4geyBmYWN0b3J5OiBmYWN0b3J5LmFkZHJlc3MsIGZhY3RvcnlEYXRhIH07XG4gICAgICAgIH0sXG4gICAgICAgIGFzeW5jIGdldFN0dWJTaWduYXR1cmUoKSB7XG4gICAgICAgICAgICBpZiAob3duZXIudHlwZSA9PT0gJ3dlYkF1dGhuJylcbiAgICAgICAgICAgICAgICByZXR1cm4gJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxOTQ5ZmM3Yzg4MDMyYjlmY2I1ZjZlZmM3YTdiOGM2MzY2OGVhZTk4NzFiNzY1ZTIzMTIzYmI0NzNmZjU3YWE4MzFhN2MwZDkyNzYxNjhlYmNjMjlmMjg3NWEwMjM5Y2ZmZGYyYTljZDFjMjAwN2M1Yzc3YzA3MWRiOTI2NGRmMWQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI1NDk5NjBkZTU4ODBlOGM2ODc0MzQxNzBmNjQ3NjYwNWI4ZmU0YWViOWEyODYzMmM3OTk1Y2YzYmE4MzFkOTc2MzA1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDhhN2IyMjc0Nzk3MDY1MjIzYTIyNzc2NTYyNjE3NTc0Njg2ZTJlNjc2NTc0MjIyYzIyNjM2ODYxNmM2YzY1NmU2NzY1MjIzYTIyNzM0OTZhMzk2ZTYxNjQ0NzQ4NTA1OTY3NTkzMzRiNzE1NjM4NGY3YTRhNjY2YzcyNjI3NTUwNGI0NzRmNzE2ZDU5NTc2ZjRkNTc1MTY4Njk0Njc3NzMyMjJjMjI2ZjcyNjk2NzY5NmUyMjNhMjI2ODc0NzQ3MDczM2EyZjJmNzM2OTY3NmUyZTYzNmY2OTZlNjI2MTczNjUyZTYzNmY2ZDIyMmMyMjYzNzI2ZjczNzM0ZjcyNjk2NzY5NmUyMjNhNjY2MTZjNzM2NTdkMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnO1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBTaWduYXR1cmUoe1xuICAgICAgICAgICAgICAgIG93bmVySW5kZXgsXG4gICAgICAgICAgICAgICAgc2lnbmF0dXJlOiAnMHhmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYTFjJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBhc3luYyBzaWduKHBhcmFtZXRlcnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGFkZHJlc3MgPSBhd2FpdCB0aGlzLmdldEFkZHJlc3MoKTtcbiAgICAgICAgICAgIGNvbnN0IGhhc2ggPSB0b1JlcGxheVNhZmVIYXNoKHtcbiAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgICAgIGNoYWluSWQ6IGNsaWVudC5jaGFpbi5pZCxcbiAgICAgICAgICAgICAgICBoYXNoOiBwYXJhbWV0ZXJzLmhhc2gsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IHNpZ24oeyBoYXNoLCBvd25lciB9KTtcbiAgICAgICAgICAgIHJldHVybiB3cmFwU2lnbmF0dXJlKHtcbiAgICAgICAgICAgICAgICBvd25lckluZGV4LFxuICAgICAgICAgICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBhc3luYyBzaWduTWVzc2FnZShwYXJhbWV0ZXJzKSB7XG4gICAgICAgICAgICBjb25zdCB7IG1lc3NhZ2UgfSA9IHBhcmFtZXRlcnM7XG4gICAgICAgICAgICBjb25zdCBhZGRyZXNzID0gYXdhaXQgdGhpcy5nZXRBZGRyZXNzKCk7XG4gICAgICAgICAgICBjb25zdCBoYXNoID0gdG9SZXBsYXlTYWZlSGFzaCh7XG4gICAgICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgICAgICBjaGFpbklkOiBjbGllbnQuY2hhaW4uaWQsXG4gICAgICAgICAgICAgICAgaGFzaDogaGFzaE1lc3NhZ2UobWVzc2FnZSksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IHNpZ24oeyBoYXNoLCBvd25lciB9KTtcbiAgICAgICAgICAgIHJldHVybiB3cmFwU2lnbmF0dXJlKHtcbiAgICAgICAgICAgICAgICBvd25lckluZGV4LFxuICAgICAgICAgICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBhc3luYyBzaWduVHlwZWREYXRhKHBhcmFtZXRlcnMpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgZG9tYWluLCB0eXBlcywgcHJpbWFyeVR5cGUsIG1lc3NhZ2UgfSA9IHBhcmFtZXRlcnM7XG4gICAgICAgICAgICBjb25zdCBhZGRyZXNzID0gYXdhaXQgdGhpcy5nZXRBZGRyZXNzKCk7XG4gICAgICAgICAgICBjb25zdCBoYXNoID0gdG9SZXBsYXlTYWZlSGFzaCh7XG4gICAgICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgICAgICBjaGFpbklkOiBjbGllbnQuY2hhaW4uaWQsXG4gICAgICAgICAgICAgICAgaGFzaDogaGFzaFR5cGVkRGF0YSh7XG4gICAgICAgICAgICAgICAgICAgIGRvbWFpbixcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICAgcHJpbWFyeVR5cGUsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVzLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBzaWduYXR1cmUgPSBhd2FpdCBzaWduKHsgaGFzaCwgb3duZXIgfSk7XG4gICAgICAgICAgICByZXR1cm4gd3JhcFNpZ25hdHVyZSh7XG4gICAgICAgICAgICAgICAgb3duZXJJbmRleCxcbiAgICAgICAgICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgYXN5bmMgc2lnblVzZXJPcGVyYXRpb24ocGFyYW1ldGVycykge1xuICAgICAgICAgICAgY29uc3QgeyBjaGFpbklkID0gY2xpZW50LmNoYWluLmlkIH0gPSBwYXJhbWV0ZXJzLCB1c2VyT3BlcmF0aW9uID0gX19yZXN0KHBhcmFtZXRlcnMsIFtcImNoYWluSWRcIl0pO1xuICAgICAgICAgICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IHRoaXMuZ2V0QWRkcmVzcygpO1xuICAgICAgICAgICAgY29uc3QgaGFzaCA9IGdldFVzZXJPcGVyYXRpb25IYXNoKHtcbiAgICAgICAgICAgICAgICBjaGFpbklkLFxuICAgICAgICAgICAgICAgIGVudHJ5UG9pbnRBZGRyZXNzOiBlbnRyeVBvaW50LmFkZHJlc3MsXG4gICAgICAgICAgICAgICAgZW50cnlQb2ludFZlcnNpb246IGVudHJ5UG9pbnQudmVyc2lvbixcbiAgICAgICAgICAgICAgICB1c2VyT3BlcmF0aW9uOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHVzZXJPcGVyYXRpb24pLCB7IHNlbmRlcjogYWRkcmVzcyB9KSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgc2lnbih7IGhhc2gsIG93bmVyIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBTaWduYXR1cmUoe1xuICAgICAgICAgICAgICAgIG93bmVySW5kZXgsXG4gICAgICAgICAgICAgICAgc2lnbmF0dXJlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHVzZXJPcGVyYXRpb246IHtcbiAgICAgICAgICAgIGFzeW5jIGVzdGltYXRlR2FzKHVzZXJPcGVyYXRpb24pIHtcbiAgICAgICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICAgICAgaWYgKG93bmVyLnR5cGUgIT09ICd3ZWJBdXRobicpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAvLyBBY2NvdW50cyB3aXRoIFdlYkF1dGhuIG93bmVyIHJlcXVpcmUgYSBtaW5pbXVtIHZlcmlmaWNhdGlvbiBnYXMgbGltaXQgb2YgODAwLDAwMC5cbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB2ZXJpZmljYXRpb25HYXNMaW1pdDogQmlnSW50KE1hdGgubWF4KE51bWJlcigoX2EgPSB1c2VyT3BlcmF0aW9uLnZlcmlmaWNhdGlvbkdhc0xpbWl0KSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBCaWdJbnQoMCkpLCA4MDAwMDApKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICB9KTtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gVXRpbGl0aWVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaWduKHsgaGFzaCwgb3duZXIsIH0pIHtcbiAgICAvLyBXZWJBdXRobiBBY2NvdW50IChQYXNza2V5KVxuICAgIGlmIChvd25lci50eXBlID09PSAnd2ViQXV0aG4nKSB7XG4gICAgICAgIGNvbnN0IHsgc2lnbmF0dXJlLCB3ZWJhdXRobiB9ID0gYXdhaXQgb3duZXIuc2lnbih7XG4gICAgICAgICAgICBoYXNoLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRvV2ViQXV0aG5TaWduYXR1cmUoeyBzaWduYXR1cmUsIHdlYmF1dGhuIH0pO1xuICAgIH1cbiAgICBpZiAob3duZXIuc2lnbilcbiAgICAgICAgcmV0dXJuIG93bmVyLnNpZ24oeyBoYXNoIH0pO1xuICAgIHRocm93IG5ldyBCYXNlRXJyb3IoJ2Bvd25lcmAgZG9lcyBub3Qgc3VwcG9ydCByYXcgc2lnbi4nKTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1JlcGxheVNhZmVIYXNoKHsgYWRkcmVzcywgY2hhaW5JZCwgaGFzaCwgfSkge1xuICAgIHJldHVybiBoYXNoVHlwZWREYXRhKHtcbiAgICAgICAgZG9tYWluOiB7XG4gICAgICAgICAgICBjaGFpbklkLFxuICAgICAgICAgICAgbmFtZTogJ0NvaW5iYXNlIFNtYXJ0IFdhbGxldCcsXG4gICAgICAgICAgICB2ZXJpZnlpbmdDb250cmFjdDogYWRkcmVzcyxcbiAgICAgICAgICAgIHZlcnNpb246ICcxJyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZXM6IHtcbiAgICAgICAgICAgIENvaW5iYXNlU21hcnRXYWxsZXRNZXNzYWdlOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnaGFzaCcsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgcHJpbWFyeVR5cGU6ICdDb2luYmFzZVNtYXJ0V2FsbGV0TWVzc2FnZScsXG4gICAgICAgIG1lc3NhZ2U6IHtcbiAgICAgICAgICAgIGhhc2gsXG4gICAgICAgIH0sXG4gICAgfSk7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gdG9XZWJBdXRoblNpZ25hdHVyZSh7IHdlYmF1dGhuLCBzaWduYXR1cmUsIH0pIHtcbiAgICBjb25zdCB7IHIsIHMgfSA9IFNpZ25hdHVyZS5mcm9tSGV4KHNpZ25hdHVyZSk7XG4gICAgcmV0dXJuIGVuY29kZUFiaVBhcmFtZXRlcnMoW1xuICAgICAgICB7XG4gICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYXV0aGVudGljYXRvckRhdGEnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAnY2xpZW50RGF0YUpTT04nLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgeyBuYW1lOiAnY2hhbGxlbmdlSW5kZXgnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICB7IG5hbWU6ICd0eXBlSW5kZXgnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdyJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAncycsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgIH0sXG4gICAgXSwgW1xuICAgICAgICB7XG4gICAgICAgICAgICBhdXRoZW50aWNhdG9yRGF0YTogd2ViYXV0aG4uYXV0aGVudGljYXRvckRhdGEsXG4gICAgICAgICAgICBjbGllbnREYXRhSlNPTjogc3RyaW5nVG9IZXgod2ViYXV0aG4uY2xpZW50RGF0YUpTT04pLFxuICAgICAgICAgICAgY2hhbGxlbmdlSW5kZXg6IEJpZ0ludCh3ZWJhdXRobi5jaGFsbGVuZ2VJbmRleCksXG4gICAgICAgICAgICB0eXBlSW5kZXg6IEJpZ0ludCh3ZWJhdXRobi50eXBlSW5kZXgpLFxuICAgICAgICAgICAgcixcbiAgICAgICAgICAgIHMsXG4gICAgICAgIH0sXG4gICAgXSk7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gd3JhcFNpZ25hdHVyZShwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBvd25lckluZGV4ID0gMCB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBzaWduYXR1cmVEYXRhID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHNpemUocGFyYW1ldGVycy5zaWduYXR1cmUpICE9PSA2NSlcbiAgICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzLnNpZ25hdHVyZTtcbiAgICAgICAgY29uc3Qgc2lnbmF0dXJlID0gcGFyc2VTaWduYXR1cmUocGFyYW1ldGVycy5zaWduYXR1cmUpO1xuICAgICAgICByZXR1cm4gZW5jb2RlUGFja2VkKFsnYnl0ZXMzMicsICdieXRlczMyJywgJ3VpbnQ4J10sIFtzaWduYXR1cmUuciwgc2lnbmF0dXJlLnMsIHNpZ25hdHVyZS55UGFyaXR5ID09PSAwID8gMjcgOiAyOF0pO1xuICAgIH0pKCk7XG4gICAgcmV0dXJuIGVuY29kZUFiaVBhcmFtZXRlcnMoW1xuICAgICAgICB7XG4gICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb3duZXJJbmRleCcsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50OCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdzaWduYXR1cmVEYXRhJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgIH0sXG4gICAgXSwgW1xuICAgICAgICB7XG4gICAgICAgICAgICBvd25lckluZGV4LFxuICAgICAgICAgICAgc2lnbmF0dXJlRGF0YSxcbiAgICAgICAgfSxcbiAgICBdKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyZWF0ZVNtYXJ0QWNjb3VudC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSmartAccount.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSubAccountSigner.js": /*!*****************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSubAccountSigner.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createSubAccountSigner: () => (/* binding */ createSubAccountSigner)\n/* harmony export */ });\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n/* harmony import */ var _util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../util/assertPresence.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js\");\n/* harmony import */ var _util_encoding_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../util/encoding.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/encoding.js\");\n/* harmony import */ var _util_get_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../util/get.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/get.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/isHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils.js\");\n/* harmony import */ var _createSmartAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./createSmartAccount.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSmartAccount.js\");\n\n\n\n\n\n\n\n\nasync function createSubAccountSigner({ address, client, factory, factoryData, owner, ownerIndex, parentAddress, attribution, }) {\n var _a;\n const subAccount = {\n address,\n factory,\n factoryData,\n };\n const chainId = (_a = client.chain) === null || _a === void 0 ? void 0 : _a.id;\n if (!chainId) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('chainId not found');\n }\n const account = await (0,_createSmartAccount_js__WEBPACK_IMPORTED_MODULE_1__.createSmartAccount)({\n owner,\n ownerIndex: ownerIndex !== null && ownerIndex !== void 0 ? ownerIndex : 1,\n address,\n client,\n factoryData,\n });\n const request = async (args) => {\n var _a, _b, _c, _d, _e, _f;\n try {\n switch (args.method) {\n case 'wallet_addSubAccount':\n return subAccount;\n case 'eth_accounts':\n return [subAccount.address];\n case 'eth_coinbase':\n return subAccount.address;\n case 'net_version':\n return chainId.toString();\n case 'eth_chainId':\n return (0,viem__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(chainId);\n case 'eth_sendTransaction': {\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__.assertArrayPresence)(args.params);\n const rawParams = args.params[0];\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__.assertPresence)(rawParams.to, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('to is required'));\n const params = {\n to: rawParams.to,\n data: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_4__.ensureHexString)((_a = rawParams.data) !== null && _a !== void 0 ? _a : '0x', true),\n value: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_4__.ensureHexString)((_b = rawParams.value) !== null && _b !== void 0 ? _b : '0x', true),\n from: (_c = rawParams.from) !== null && _c !== void 0 ? _c : subAccount.address,\n };\n // Transform into wallet_sendCalls request\n const sendCallsRequest = (0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.createWalletSendCallsRequest)({\n calls: [params],\n chainId,\n from: params.from,\n });\n const response = (await request(sendCallsRequest));\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.waitForCallsTransactionHash)({\n client,\n id: response,\n });\n }\n case 'wallet_sendCalls': {\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__.assertArrayPresence)(args.params);\n // Get the client for the chain\n const chainId = (0,_util_get_js__WEBPACK_IMPORTED_MODULE_6__.get)(args.params[0], 'chainId');\n if (!chainId) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('chainId is required');\n }\n if (!(0,viem__WEBPACK_IMPORTED_MODULE_7__.isHex)(chainId)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('chainId must be a hex encoded integer');\n }\n if (!args.params[0]) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('params are required');\n }\n if (!('calls' in args.params[0])) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('calls are required');\n }\n let prepareCallsRequest = {\n method: 'wallet_prepareCalls',\n params: [\n {\n version: '1.0',\n calls: args.params[0].calls,\n chainId: chainId,\n from: subAccount.address,\n capabilities: 'capabilities' in args.params[0]\n ? args.params[0].capabilities\n : {},\n },\n ],\n };\n if (parentAddress) {\n prepareCallsRequest = (0,_utils_js__WEBPACK_IMPORTED_MODULE_5__.injectRequestCapabilities)(prepareCallsRequest, {\n funding: [\n {\n type: 'spendPermission',\n data: {\n autoApply: true,\n sources: [parentAddress],\n preference: 'PREFER_DIRECT_BALANCE',\n },\n },\n ],\n });\n }\n let prepareCallsResponse = (await request(prepareCallsRequest));\n const signResponse = await ((_e = (_d = owner).sign) === null || _e === void 0 ? void 0 : _e.call(_d, {\n // Hash returned from wallet_prepareCalls is double hex encoded\n hash: (0,viem__WEBPACK_IMPORTED_MODULE_8__.hexToString)(prepareCallsResponse.signatureRequest.hash),\n }));\n let signatureData;\n if (!signResponse) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('signature not found');\n }\n if ((0,viem__WEBPACK_IMPORTED_MODULE_7__.isHex)(signResponse)) {\n signatureData = {\n type: 'secp256k1',\n data: {\n address: owner.address,\n signature: signResponse,\n },\n };\n }\n else {\n signatureData = {\n type: 'webauthn',\n data: {\n signature: JSON.stringify((0,_util_encoding_js__WEBPACK_IMPORTED_MODULE_9__.convertCredentialToJSON)(Object.assign({ id: (_f = owner.id) !== null && _f !== void 0 ? _f : '1' }, signResponse))),\n publicKey: owner.publicKey,\n },\n };\n }\n const sendPreparedCallsResponse = (await request({\n method: 'wallet_sendPreparedCalls',\n params: [\n {\n version: '1.0',\n type: prepareCallsResponse.type,\n data: prepareCallsResponse.userOp,\n chainId: prepareCallsResponse.chainId,\n signature: signatureData,\n },\n ],\n }));\n return sendPreparedCallsResponse[0];\n }\n case 'wallet_sendPreparedCalls': {\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__.assertArrayPresence)(args.params);\n // Get the client for the chain\n const chainId = (0,_util_get_js__WEBPACK_IMPORTED_MODULE_6__.get)(args.params[0], 'chainId');\n if (!chainId) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('chainId is required');\n }\n if (!(0,viem__WEBPACK_IMPORTED_MODULE_7__.isHex)(chainId)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('chainId must be a hex encoded integer');\n }\n const sendPreparedCallsResponse = await client.request({\n method: 'wallet_sendPreparedCalls',\n params: args.params,\n });\n return sendPreparedCallsResponse;\n }\n case 'wallet_prepareCalls': {\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__.assertArrayPresence)(args.params);\n // Get the client for the chain\n const chainId = (0,_util_get_js__WEBPACK_IMPORTED_MODULE_6__.get)(args.params[0], 'chainId');\n if (!chainId) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('chainId is required');\n }\n if (!(0,viem__WEBPACK_IMPORTED_MODULE_7__.isHex)(chainId)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('chainId must be a hex encoded integer');\n }\n if (!args.params[0]) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('params are required');\n }\n if (!(0,_util_get_js__WEBPACK_IMPORTED_MODULE_6__.get)(args.params[0], 'calls')) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('calls are required');\n }\n const prepareCallsParams = args.params[0];\n if (attribution &&\n prepareCallsParams.capabilities &&\n !('attribution' in prepareCallsParams.capabilities)) {\n prepareCallsParams.capabilities.attribution = attribution;\n }\n const prepareCallsResponse = await client.request({\n method: 'wallet_prepareCalls',\n params: [Object.assign(Object.assign({}, args.params[0]), { chainId: chainId })],\n });\n return prepareCallsResponse;\n }\n case 'personal_sign': {\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__.assertArrayPresence)(args.params);\n // Param is expected to be a hex encoded string\n if (!(0,viem__WEBPACK_IMPORTED_MODULE_7__.isHex)(args.params[0])) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams('message must be a hex encoded string');\n }\n // signMessage expects the unencoded message\n const message = (0,viem__WEBPACK_IMPORTED_MODULE_8__.hexToString)(args.params[0]);\n return account.signMessage({ message });\n }\n case 'eth_signTypedData_v4': {\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_3__.assertArrayPresence)(args.params);\n const typedData = typeof args.params[1] === 'string' ? JSON.parse(args.params[1]) : args.params[1];\n return account.signTypedData(typedData);\n }\n case 'eth_signTypedData_v1':\n case 'eth_signTypedData_v3':\n case 'wallet_addEthereumChain':\n case 'wallet_switchEthereumChain':\n default:\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.methodNotSupported();\n }\n }\n catch (error) {\n // Convert error to RPC error if possible\n if ((0,_core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.isViemError)(error)) {\n const newError = (0,_core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.viemHttpErrorToProviderError)(error);\n if (newError) {\n throw newError;\n }\n }\n throw error;\n }\n };\n return { request };\n}\n//# sourceMappingURL=createSubAccountSigner.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2NyZWF0ZVN1YkFjY291bnRTaWduZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBMEc7QUFDN0M7QUFDeUI7QUFDbEI7QUFDekI7QUFDYTtBQUM0RDtBQUN2RDtBQUN0RCx3Q0FBd0MsdUZBQXVGO0FBQ3RJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0EsMEJBQTBCLDBFQUFrQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLGlEQUFXO0FBQ3RDO0FBQ0Esb0JBQW9CLDRFQUFtQjtBQUN2QztBQUNBLG9CQUFvQix1RUFBYyxlQUFlLGlFQUFjO0FBQy9EO0FBQ0E7QUFDQSw4QkFBOEIsbUVBQWU7QUFDN0MsK0JBQStCLG1FQUFlO0FBQzlDO0FBQ0E7QUFDQTtBQUNBLDZDQUE2Qyx1RUFBNEI7QUFDekU7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0EsMkJBQTJCLHNFQUEyQjtBQUN0RDtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSxvQkFBb0IsNEVBQW1CO0FBQ3ZDO0FBQ0Esb0NBQW9DLGlEQUFHO0FBQ3ZDO0FBQ0EsOEJBQThCLGlFQUFjO0FBQzVDO0FBQ0EseUJBQXlCLDJDQUFLO0FBQzlCLDhCQUE4QixpRUFBYztBQUM1QztBQUNBO0FBQ0EsOEJBQThCLGlFQUFjO0FBQzVDO0FBQ0E7QUFDQSw4QkFBOEIsaUVBQWM7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QztBQUN4Qyw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsOENBQThDLG9FQUF5QjtBQUN2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQztBQUNyQyxpQ0FBaUM7QUFDakM7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsaURBQVc7QUFDekMscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSw4QkFBOEIsaUVBQWM7QUFDNUM7QUFDQSx3QkFBd0IsMkNBQUs7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwREFBMEQsMEVBQXVCLGlCQUFpQiwwREFBMEQ7QUFDNUo7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNEVBQW1CO0FBQ3ZDO0FBQ0Esb0NBQW9DLGlEQUFHO0FBQ3ZDO0FBQ0EsOEJBQThCLGlFQUFjO0FBQzVDO0FBQ0EseUJBQXlCLDJDQUFLO0FBQzlCLDhCQUE4QixpRUFBYztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNEVBQW1CO0FBQ3ZDO0FBQ0Esb0NBQW9DLGlEQUFHO0FBQ3ZDO0FBQ0EsOEJBQThCLGlFQUFjO0FBQzVDO0FBQ0EseUJBQXlCLDJDQUFLO0FBQzlCLDhCQUE4QixpRUFBYztBQUM1QztBQUNBO0FBQ0EsOEJBQThCLGlFQUFjO0FBQzVDO0FBQ0EseUJBQXlCLGlEQUFHO0FBQzVCLDhCQUE4QixpRUFBYztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrREFBK0QscUJBQXFCLGtCQUFrQjtBQUN0RyxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDRFQUFtQjtBQUN2QztBQUNBLHlCQUF5QiwyQ0FBSztBQUM5Qiw4QkFBOEIsaUVBQWM7QUFDNUM7QUFDQTtBQUNBLG9DQUFvQyxpREFBVztBQUMvQyxpREFBaUQsU0FBUztBQUMxRDtBQUNBO0FBQ0Esb0JBQW9CLDRFQUFtQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLGlFQUFjO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGtFQUFXO0FBQzNCLGlDQUFpQyxtRkFBNEI7QUFDN0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2NyZWF0ZVN1YkFjY291bnRTaWduZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNWaWVtRXJyb3IsIHN0YW5kYXJkRXJyb3JzLCB2aWVtSHR0cEVycm9yVG9Qcm92aWRlckVycm9yIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9lcnJvci9lcnJvcnMuanMnO1xuaW1wb3J0IHsgZW5zdXJlSGV4U3RyaW5nIH0gZnJvbSAnLi4vLi4vLi4vY29yZS90eXBlL3V0aWwuanMnO1xuaW1wb3J0IHsgYXNzZXJ0QXJyYXlQcmVzZW5jZSwgYXNzZXJ0UHJlc2VuY2UgfSBmcm9tICcuLi8uLi8uLi91dGlsL2Fzc2VydFByZXNlbmNlLmpzJztcbmltcG9ydCB7IGNvbnZlcnRDcmVkZW50aWFsVG9KU09OIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9lbmNvZGluZy5qcyc7XG5pbXBvcnQgeyBnZXQgfSBmcm9tICcuLi8uLi8uLi91dGlsL2dldC5qcyc7XG5pbXBvcnQgeyBoZXhUb1N0cmluZywgaXNIZXgsIG51bWJlclRvSGV4LCB9IGZyb20gJ3ZpZW0nO1xuaW1wb3J0IHsgY3JlYXRlV2FsbGV0U2VuZENhbGxzUmVxdWVzdCwgaW5qZWN0UmVxdWVzdENhcGFiaWxpdGllcywgd2FpdEZvckNhbGxzVHJhbnNhY3Rpb25IYXNoLCB9IGZyb20gJy4uL3V0aWxzLmpzJztcbmltcG9ydCB7IGNyZWF0ZVNtYXJ0QWNjb3VudCB9IGZyb20gJy4vY3JlYXRlU21hcnRBY2NvdW50LmpzJztcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVTdWJBY2NvdW50U2lnbmVyKHsgYWRkcmVzcywgY2xpZW50LCBmYWN0b3J5LCBmYWN0b3J5RGF0YSwgb3duZXIsIG93bmVySW5kZXgsIHBhcmVudEFkZHJlc3MsIGF0dHJpYnV0aW9uLCB9KSB7XG4gICAgdmFyIF9hO1xuICAgIGNvbnN0IHN1YkFjY291bnQgPSB7XG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIGZhY3RvcnksXG4gICAgICAgIGZhY3RvcnlEYXRhLFxuICAgIH07XG4gICAgY29uc3QgY2hhaW5JZCA9IChfYSA9IGNsaWVudC5jaGFpbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmlkO1xuICAgIGlmICghY2hhaW5JZCkge1xuICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoJ2NoYWluSWQgbm90IGZvdW5kJyk7XG4gICAgfVxuICAgIGNvbnN0IGFjY291bnQgPSBhd2FpdCBjcmVhdGVTbWFydEFjY291bnQoe1xuICAgICAgICBvd25lcixcbiAgICAgICAgb3duZXJJbmRleDogb3duZXJJbmRleCAhPT0gbnVsbCAmJiBvd25lckluZGV4ICE9PSB2b2lkIDAgPyBvd25lckluZGV4IDogMSxcbiAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgY2xpZW50LFxuICAgICAgICBmYWN0b3J5RGF0YSxcbiAgICB9KTtcbiAgICBjb25zdCByZXF1ZXN0ID0gYXN5bmMgKGFyZ3MpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYiwgX2MsIF9kLCBfZSwgX2Y7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGFyZ3MubWV0aG9kKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnd2FsbGV0X2FkZFN1YkFjY291bnQnOlxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3ViQWNjb3VudDtcbiAgICAgICAgICAgICAgICBjYXNlICdldGhfYWNjb3VudHMnOlxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gW3N1YkFjY291bnQuYWRkcmVzc107XG4gICAgICAgICAgICAgICAgY2FzZSAnZXRoX2NvaW5iYXNlJzpcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN1YkFjY291bnQuYWRkcmVzcztcbiAgICAgICAgICAgICAgICBjYXNlICduZXRfdmVyc2lvbic6XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGFpbklkLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgICAgY2FzZSAnZXRoX2NoYWluSWQnOlxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVtYmVyVG9IZXgoY2hhaW5JZCk7XG4gICAgICAgICAgICAgICAgY2FzZSAnZXRoX3NlbmRUcmFuc2FjdGlvbic6IHtcbiAgICAgICAgICAgICAgICAgICAgYXNzZXJ0QXJyYXlQcmVzZW5jZShhcmdzLnBhcmFtcyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJhd1BhcmFtcyA9IGFyZ3MucGFyYW1zWzBdO1xuICAgICAgICAgICAgICAgICAgICBhc3NlcnRQcmVzZW5jZShyYXdQYXJhbXMudG8sIHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCd0byBpcyByZXF1aXJlZCcpKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG86IHJhd1BhcmFtcy50byxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IGVuc3VyZUhleFN0cmluZygoX2EgPSByYXdQYXJhbXMuZGF0YSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJzB4JywgdHJ1ZSksXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogZW5zdXJlSGV4U3RyaW5nKChfYiA9IHJhd1BhcmFtcy52YWx1ZSkgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogJzB4JywgdHJ1ZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBmcm9tOiAoX2MgPSByYXdQYXJhbXMuZnJvbSkgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogc3ViQWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAvLyBUcmFuc2Zvcm0gaW50byB3YWxsZXRfc2VuZENhbGxzIHJlcXVlc3RcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VuZENhbGxzUmVxdWVzdCA9IGNyZWF0ZVdhbGxldFNlbmRDYWxsc1JlcXVlc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbHM6IFtwYXJhbXNdLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2hhaW5JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZyb206IHBhcmFtcy5mcm9tLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSAoYXdhaXQgcmVxdWVzdChzZW5kQ2FsbHNSZXF1ZXN0KSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB3YWl0Rm9yQ2FsbHNUcmFuc2FjdGlvbkhhc2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IHJlc3BvbnNlLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FzZSAnd2FsbGV0X3NlbmRDYWxscyc6IHtcbiAgICAgICAgICAgICAgICAgICAgYXNzZXJ0QXJyYXlQcmVzZW5jZShhcmdzLnBhcmFtcyk7XG4gICAgICAgICAgICAgICAgICAgIC8vIEdldCB0aGUgY2xpZW50IGZvciB0aGUgY2hhaW5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhaW5JZCA9IGdldChhcmdzLnBhcmFtc1swXSwgJ2NoYWluSWQnKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFjaGFpbklkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygnY2hhaW5JZCBpcyByZXF1aXJlZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghaXNIZXgoY2hhaW5JZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCdjaGFpbklkIG11c3QgYmUgYSBoZXggZW5jb2RlZCBpbnRlZ2VyJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFhcmdzLnBhcmFtc1swXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ3BhcmFtcyBhcmUgcmVxdWlyZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoISgnY2FsbHMnIGluIGFyZ3MucGFyYW1zWzBdKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ2NhbGxzIGFyZSByZXF1aXJlZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGxldCBwcmVwYXJlQ2FsbHNSZXF1ZXN0ID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnd2FsbGV0X3ByZXBhcmVDYWxscycsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb246ICcxLjAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsczogYXJncy5wYXJhbXNbMF0uY2FsbHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYWluSWQ6IGNoYWluSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb206IHN1YkFjY291bnQuYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FwYWJpbGl0aWVzOiAnY2FwYWJpbGl0aWVzJyBpbiBhcmdzLnBhcmFtc1swXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBhcmdzLnBhcmFtc1swXS5jYXBhYmlsaXRpZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoge30sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIGlmIChwYXJlbnRBZGRyZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwcmVwYXJlQ2FsbHNSZXF1ZXN0ID0gaW5qZWN0UmVxdWVzdENhcGFiaWxpdGllcyhwcmVwYXJlQ2FsbHNSZXF1ZXN0LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuZGluZzogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc3BlbmRQZXJtaXNzaW9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvQXBwbHk6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlczogW3BhcmVudEFkZHJlc3NdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcmVuY2U6ICdQUkVGRVJfRElSRUNUX0JBTEFOQ0UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGV0IHByZXBhcmVDYWxsc1Jlc3BvbnNlID0gKGF3YWl0IHJlcXVlc3QocHJlcGFyZUNhbGxzUmVxdWVzdCkpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzaWduUmVzcG9uc2UgPSBhd2FpdCAoKF9lID0gKF9kID0gb3duZXIpLnNpZ24pID09PSBudWxsIHx8IF9lID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZS5jYWxsKF9kLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBIYXNoIHJldHVybmVkIGZyb20gd2FsbGV0X3ByZXBhcmVDYWxscyBpcyBkb3VibGUgaGV4IGVuY29kZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhc2g6IGhleFRvU3RyaW5nKHByZXBhcmVDYWxsc1Jlc3BvbnNlLnNpZ25hdHVyZVJlcXVlc3QuaGFzaCksXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHNpZ25hdHVyZURhdGE7XG4gICAgICAgICAgICAgICAgICAgIGlmICghc2lnblJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoJ3NpZ25hdHVyZSBub3QgZm91bmQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNIZXgoc2lnblJlc3BvbnNlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2lnbmF0dXJlRGF0YSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc2VjcDI1NmsxJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6IG93bmVyLmFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25hdHVyZTogc2lnblJlc3BvbnNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2lnbmF0dXJlRGF0YSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnd2ViYXV0aG4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lnbmF0dXJlOiBKU09OLnN0cmluZ2lmeShjb252ZXJ0Q3JlZGVudGlhbFRvSlNPTihPYmplY3QuYXNzaWduKHsgaWQ6IChfZiA9IG93bmVyLmlkKSAhPT0gbnVsbCAmJiBfZiAhPT0gdm9pZCAwID8gX2YgOiAnMScgfSwgc2lnblJlc3BvbnNlKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdWJsaWNLZXk6IG93bmVyLnB1YmxpY0tleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZW5kUHJlcGFyZWRDYWxsc1Jlc3BvbnNlID0gKGF3YWl0IHJlcXVlc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnd2FsbGV0X3NlbmRQcmVwYXJlZENhbGxzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbjogJzEuMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IHByZXBhcmVDYWxsc1Jlc3BvbnNlLnR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHByZXBhcmVDYWxsc1Jlc3BvbnNlLnVzZXJPcCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhaW5JZDogcHJlcGFyZUNhbGxzUmVzcG9uc2UuY2hhaW5JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lnbmF0dXJlOiBzaWduYXR1cmVEYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBzZW5kUHJlcGFyZWRDYWxsc1Jlc3BvbnNlWzBdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlICd3YWxsZXRfc2VuZFByZXBhcmVkQ2FsbHMnOiB7XG4gICAgICAgICAgICAgICAgICAgIGFzc2VydEFycmF5UHJlc2VuY2UoYXJncy5wYXJhbXMpO1xuICAgICAgICAgICAgICAgICAgICAvLyBHZXQgdGhlIGNsaWVudCBmb3IgdGhlIGNoYWluXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYWluSWQgPSBnZXQoYXJncy5wYXJhbXNbMF0sICdjaGFpbklkJyk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghY2hhaW5JZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ2NoYWluSWQgaXMgcmVxdWlyZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoIWlzSGV4KGNoYWluSWQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygnY2hhaW5JZCBtdXN0IGJlIGEgaGV4IGVuY29kZWQgaW50ZWdlcicpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNlbmRQcmVwYXJlZENhbGxzUmVzcG9uc2UgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICd3YWxsZXRfc2VuZFByZXBhcmVkQ2FsbHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiBhcmdzLnBhcmFtcyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBzZW5kUHJlcGFyZWRDYWxsc1Jlc3BvbnNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlICd3YWxsZXRfcHJlcGFyZUNhbGxzJzoge1xuICAgICAgICAgICAgICAgICAgICBhc3NlcnRBcnJheVByZXNlbmNlKGFyZ3MucGFyYW1zKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gR2V0IHRoZSBjbGllbnQgZm9yIHRoZSBjaGFpblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFpbklkID0gZ2V0KGFyZ3MucGFyYW1zWzBdLCAnY2hhaW5JZCcpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWNoYWluSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCdjaGFpbklkIGlzIHJlcXVpcmVkJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpc0hleChjaGFpbklkKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ2NoYWluSWQgbXVzdCBiZSBhIGhleCBlbmNvZGVkIGludGVnZXInKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoIWFyZ3MucGFyYW1zWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygncGFyYW1zIGFyZSByZXF1aXJlZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghZ2V0KGFyZ3MucGFyYW1zWzBdLCAnY2FsbHMnKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ2NhbGxzIGFyZSByZXF1aXJlZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXBhcmVDYWxsc1BhcmFtcyA9IGFyZ3MucGFyYW1zWzBdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoYXR0cmlidXRpb24gJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHByZXBhcmVDYWxsc1BhcmFtcy5jYXBhYmlsaXRpZXMgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICEoJ2F0dHJpYnV0aW9uJyBpbiBwcmVwYXJlQ2FsbHNQYXJhbXMuY2FwYWJpbGl0aWVzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJlcGFyZUNhbGxzUGFyYW1zLmNhcGFiaWxpdGllcy5hdHRyaWJ1dGlvbiA9IGF0dHJpYnV0aW9uO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXBhcmVDYWxsc1Jlc3BvbnNlID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnd2FsbGV0X3ByZXBhcmVDYWxscycsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IFtPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGFyZ3MucGFyYW1zWzBdKSwgeyBjaGFpbklkOiBjaGFpbklkIH0pXSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBwcmVwYXJlQ2FsbHNSZXNwb25zZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FzZSAncGVyc29uYWxfc2lnbic6IHtcbiAgICAgICAgICAgICAgICAgICAgYXNzZXJ0QXJyYXlQcmVzZW5jZShhcmdzLnBhcmFtcyk7XG4gICAgICAgICAgICAgICAgICAgIC8vIFBhcmFtIGlzIGV4cGVjdGVkIHRvIGJlIGEgaGV4IGVuY29kZWQgc3RyaW5nXG4gICAgICAgICAgICAgICAgICAgIGlmICghaXNIZXgoYXJncy5wYXJhbXNbMF0pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygnbWVzc2FnZSBtdXN0IGJlIGEgaGV4IGVuY29kZWQgc3RyaW5nJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLy8gc2lnbk1lc3NhZ2UgZXhwZWN0cyB0aGUgdW5lbmNvZGVkIG1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGhleFRvU3RyaW5nKGFyZ3MucGFyYW1zWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFjY291bnQuc2lnbk1lc3NhZ2UoeyBtZXNzYWdlIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92NCc6IHtcbiAgICAgICAgICAgICAgICAgICAgYXNzZXJ0QXJyYXlQcmVzZW5jZShhcmdzLnBhcmFtcyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHR5cGVkRGF0YSA9IHR5cGVvZiBhcmdzLnBhcmFtc1sxXSA9PT0gJ3N0cmluZycgPyBKU09OLnBhcnNlKGFyZ3MucGFyYW1zWzFdKSA6IGFyZ3MucGFyYW1zWzFdO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWNjb3VudC5zaWduVHlwZWREYXRhKHR5cGVkRGF0YSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgJ2V0aF9zaWduVHlwZWREYXRhX3YxJzpcbiAgICAgICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92Myc6XG4gICAgICAgICAgICAgICAgY2FzZSAnd2FsbGV0X2FkZEV0aGVyZXVtQ2hhaW4nOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9zd2l0Y2hFdGhlcmV1bUNoYWluJzpcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMubWV0aG9kTm90U3VwcG9ydGVkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAvLyBDb252ZXJ0IGVycm9yIHRvIFJQQyBlcnJvciBpZiBwb3NzaWJsZVxuICAgICAgICAgICAgaWYgKGlzVmllbUVycm9yKGVycm9yKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0Vycm9yID0gdmllbUh0dHBFcnJvclRvUHJvdmlkZXJFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgaWYgKG5ld0Vycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ld0Vycm9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgfTtcbiAgICByZXR1cm4geyByZXF1ZXN0IH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jcmVhdGVTdWJBY2NvdW50U2lnbmVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/createSubAccountSigner.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/findOwnerIndex.js": /*!*********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/findOwnerIndex.js ***! \*********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ findOwnerIndex: () => (/* binding */ findOwnerIndex),\n/* harmony export */ formatPublicKey: () => (/* binding */ formatPublicKey)\n/* harmony export */ });\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/getAddress.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionData.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/pad.js\");\n/* harmony import */ var viem_actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! viem/actions */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getCode.js\");\n/* harmony import */ var viem_actions__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! viem/actions */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js\");\n\n\n\n\nasync function findOwnerIndex({ address, client, publicKey, factory, factoryData, }) {\n const code = await (0,viem_actions__WEBPACK_IMPORTED_MODULE_0__.getCode)(client, {\n address,\n });\n // Check index of owner in the factoryData\n // Note: importing an undeployed contract might need to be handled differently\n // The implemention will likely require the signer to tell us the index\n if (!code && factory && factoryData) {\n if ((0,viem__WEBPACK_IMPORTED_MODULE_1__.getAddress)(factory) !== (0,viem__WEBPACK_IMPORTED_MODULE_1__.getAddress)(_constants_js__WEBPACK_IMPORTED_MODULE_2__.factoryAddress)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_3__.standardErrors.rpc.internal('unknown factory address');\n }\n const initData = (0,viem__WEBPACK_IMPORTED_MODULE_4__.decodeFunctionData)({\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.factoryAbi,\n data: factoryData,\n });\n if (initData.functionName !== 'createAccount') {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_3__.standardErrors.rpc.internal('unknown factory function');\n }\n const [owners] = initData.args;\n return owners.findIndex((owner) => {\n return owner.toLowerCase() === formatPublicKey(publicKey).toLowerCase();\n });\n }\n const ownerCount = await (0,viem_actions__WEBPACK_IMPORTED_MODULE_5__.readContract)(client, {\n address,\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.abi,\n functionName: 'ownerCount',\n });\n // Iterate from highest index down and return early when found\n for (let i = Number(ownerCount) - 1; i >= 0; i--) {\n const owner = await (0,viem_actions__WEBPACK_IMPORTED_MODULE_5__.readContract)(client, {\n address,\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_2__.abi,\n functionName: 'ownerAtIndex',\n args: [BigInt(i)],\n });\n const formatted = formatPublicKey(publicKey);\n if (owner.toLowerCase() === formatted.toLowerCase()) {\n return i;\n }\n }\n return -1;\n}\n/**\n * Formats 20 byte addresses to 32 byte public keys. Contract uses 32 byte keys for owners.\n * @param publicKey - The public key to format\n * @returns The formatted public key\n */\nfunction formatPublicKey(publicKey) {\n if ((0,viem__WEBPACK_IMPORTED_MODULE_6__.isAddress)(publicKey)) {\n return (0,viem__WEBPACK_IMPORTED_MODULE_7__.pad)(publicKey);\n }\n return publicKey;\n}\n//# sourceMappingURL=findOwnerIndex.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2ZpbmRPd25lckluZGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBK0Q7QUFDTztBQUNqQjtBQUNZO0FBQzFELGdDQUFnQyxtREFBbUQ7QUFDMUYsdUJBQXVCLHFEQUFPO0FBQzlCO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnREFBVSxjQUFjLGdEQUFVLENBQUMseURBQWM7QUFDN0Qsa0JBQWtCLGlFQUFjO0FBQ2hDO0FBQ0EseUJBQXlCLHdEQUFrQjtBQUMzQyxpQkFBaUIscURBQVU7QUFDM0I7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxrQkFBa0IsaUVBQWM7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSw2QkFBNkIsMERBQVk7QUFDekM7QUFDQSxXQUFXO0FBQ1g7QUFDQSxLQUFLO0FBQ0w7QUFDQSx5Q0FBeUMsUUFBUTtBQUNqRCw0QkFBNEIsMERBQVk7QUFDeEM7QUFDQSxlQUFlO0FBQ2Y7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFFBQVEsK0NBQVM7QUFDakIsZUFBZSx5Q0FBRztBQUNsQjtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2ZpbmRPd25lckluZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0YW5kYXJkRXJyb3JzIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9lcnJvci9lcnJvcnMuanMnO1xuaW1wb3J0IHsgZGVjb2RlRnVuY3Rpb25EYXRhLCBnZXRBZGRyZXNzLCBpc0FkZHJlc3MsIHBhZCB9IGZyb20gJ3ZpZW0nO1xuaW1wb3J0IHsgZ2V0Q29kZSwgcmVhZENvbnRyYWN0IH0gZnJvbSAndmllbS9hY3Rpb25zJztcbmltcG9ydCB7IGFiaSwgZmFjdG9yeUFiaSwgZmFjdG9yeUFkZHJlc3MgfSBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmluZE93bmVySW5kZXgoeyBhZGRyZXNzLCBjbGllbnQsIHB1YmxpY0tleSwgZmFjdG9yeSwgZmFjdG9yeURhdGEsIH0pIHtcbiAgICBjb25zdCBjb2RlID0gYXdhaXQgZ2V0Q29kZShjbGllbnQsIHtcbiAgICAgICAgYWRkcmVzcyxcbiAgICB9KTtcbiAgICAvLyBDaGVjayBpbmRleCBvZiBvd25lciBpbiB0aGUgZmFjdG9yeURhdGFcbiAgICAvLyBOb3RlOiBpbXBvcnRpbmcgYW4gdW5kZXBsb3llZCBjb250cmFjdCBtaWdodCBuZWVkIHRvIGJlIGhhbmRsZWQgZGlmZmVyZW50bHlcbiAgICAvLyBUaGUgaW1wbGVtZW50aW9uIHdpbGwgbGlrZWx5IHJlcXVpcmUgdGhlIHNpZ25lciB0byB0ZWxsIHVzIHRoZSBpbmRleFxuICAgIGlmICghY29kZSAmJiBmYWN0b3J5ICYmIGZhY3RvcnlEYXRhKSB7XG4gICAgICAgIGlmIChnZXRBZGRyZXNzKGZhY3RvcnkpICE9PSBnZXRBZGRyZXNzKGZhY3RvcnlBZGRyZXNzKSkge1xuICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludGVybmFsKCd1bmtub3duIGZhY3RvcnkgYWRkcmVzcycpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGluaXREYXRhID0gZGVjb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgIGFiaTogZmFjdG9yeUFiaSxcbiAgICAgICAgICAgIGRhdGE6IGZhY3RvcnlEYXRhLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGluaXREYXRhLmZ1bmN0aW9uTmFtZSAhPT0gJ2NyZWF0ZUFjY291bnQnKSB7XG4gICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoJ3Vua25vd24gZmFjdG9yeSBmdW5jdGlvbicpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IFtvd25lcnNdID0gaW5pdERhdGEuYXJncztcbiAgICAgICAgcmV0dXJuIG93bmVycy5maW5kSW5kZXgoKG93bmVyKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gb3duZXIudG9Mb3dlckNhc2UoKSA9PT0gZm9ybWF0UHVibGljS2V5KHB1YmxpY0tleSkudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IG93bmVyQ291bnQgPSBhd2FpdCByZWFkQ29udHJhY3QoY2xpZW50LCB7XG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIGFiaSxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiAnb3duZXJDb3VudCcsXG4gICAgfSk7XG4gICAgLy8gSXRlcmF0ZSBmcm9tIGhpZ2hlc3QgaW5kZXggZG93biBhbmQgcmV0dXJuIGVhcmx5IHdoZW4gZm91bmRcbiAgICBmb3IgKGxldCBpID0gTnVtYmVyKG93bmVyQ291bnQpIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgY29uc3Qgb3duZXIgPSBhd2FpdCByZWFkQ29udHJhY3QoY2xpZW50LCB7XG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgYWJpLFxuICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnb3duZXJBdEluZGV4JyxcbiAgICAgICAgICAgIGFyZ3M6IFtCaWdJbnQoaSldLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gZm9ybWF0UHVibGljS2V5KHB1YmxpY0tleSk7XG4gICAgICAgIGlmIChvd25lci50b0xvd2VyQ2FzZSgpID09PSBmb3JtYXR0ZWQudG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgcmV0dXJuIGk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIC0xO1xufVxuLyoqXG4gKiBGb3JtYXRzIDIwIGJ5dGUgYWRkcmVzc2VzIHRvIDMyIGJ5dGUgcHVibGljIGtleXMuIENvbnRyYWN0IHVzZXMgMzIgYnl0ZSBrZXlzIGZvciBvd25lcnMuXG4gKiBAcGFyYW0gcHVibGljS2V5IC0gVGhlIHB1YmxpYyBrZXkgdG8gZm9ybWF0XG4gKiBAcmV0dXJucyBUaGUgZm9ybWF0dGVkIHB1YmxpYyBrZXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFB1YmxpY0tleShwdWJsaWNLZXkpIHtcbiAgICBpZiAoaXNBZGRyZXNzKHB1YmxpY0tleSkpIHtcbiAgICAgICAgcmV0dXJuIHBhZChwdWJsaWNLZXkpO1xuICAgIH1cbiAgICByZXR1cm4gcHVibGljS2V5O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZmluZE93bmVySW5kZXguanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/findOwnerIndex.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleAddSubAccountOwner.js": /*!*******************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleAddSubAccountOwner.js ***! \*******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ handleAddSubAccountOwner: () => (/* binding */ handleAddSubAccountOwner)\n/* harmony export */ });\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _store_chain_clients_utils_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../store/chain-clients/utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/utils.js\");\n/* harmony import */ var _store_store_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../store/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\");\n/* harmony import */ var _util_assertPresence_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../util/assertPresence.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js\");\n/* harmony import */ var viem_experimental__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! viem/experimental */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/waitForCallsStatus.js\");\n/* harmony import */ var _utils_constants_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js\");\n/* harmony import */ var _utils_findOwnerIndex_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../utils/findOwnerIndex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/findOwnerIndex.js\");\n/* harmony import */ var _presentAddOwnerDialog_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./presentAddOwnerDialog.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/presentAddOwnerDialog.js\");\n\n\n\n\n\n\n\n\n\nasync function handleAddSubAccountOwner({ ownerAccount, globalAccountRequest, }) {\n var _a, _b;\n const account = _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.account.get();\n const subAccount = _store_store_js__WEBPACK_IMPORTED_MODULE_0__.store.subAccounts.get();\n const globalAccount = (_a = account.accounts) === null || _a === void 0 ? void 0 : _a.find((account) => account.toLowerCase() !== (subAccount === null || subAccount === void 0 ? void 0 : subAccount.address.toLowerCase()));\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_1__.assertPresence)(globalAccount, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.provider.unauthorized(\"no global account\"));\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_1__.assertPresence)((_b = account.chain) === null || _b === void 0 ? void 0 : _b.id, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.provider.unauthorized(\"no chain id\"));\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_1__.assertPresence)(subAccount === null || subAccount === void 0 ? void 0 : subAccount.address, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.provider.unauthorized(\"no sub account\"));\n const calls = [];\n if (ownerAccount.type === \"local\" && ownerAccount.address) {\n calls.push({\n to: subAccount.address,\n data: (0,viem__WEBPACK_IMPORTED_MODULE_3__.encodeFunctionData)({\n abi: _utils_constants_js__WEBPACK_IMPORTED_MODULE_4__.abi,\n functionName: \"addOwnerAddress\",\n args: [ownerAccount.address],\n }),\n value: (0,viem__WEBPACK_IMPORTED_MODULE_5__.toHex)(0),\n });\n }\n if (ownerAccount.publicKey) {\n const [x, y] = (0,viem__WEBPACK_IMPORTED_MODULE_6__.decodeAbiParameters)([{ type: \"bytes32\" }, { type: \"bytes32\" }], ownerAccount.publicKey);\n calls.push({\n to: subAccount.address,\n data: (0,viem__WEBPACK_IMPORTED_MODULE_3__.encodeFunctionData)({\n abi: _utils_constants_js__WEBPACK_IMPORTED_MODULE_4__.abi,\n functionName: \"addOwnerPublicKey\",\n args: [x, y],\n }),\n value: (0,viem__WEBPACK_IMPORTED_MODULE_5__.toHex)(0),\n });\n }\n const request = {\n method: \"wallet_sendCalls\",\n params: [\n {\n version: \"1\",\n calls,\n chainId: (0,viem__WEBPACK_IMPORTED_MODULE_5__.numberToHex)(84532),\n from: globalAccount,\n },\n ],\n };\n const selection = await (0,_presentAddOwnerDialog_js__WEBPACK_IMPORTED_MODULE_7__.presentAddOwnerDialog)();\n if (selection === \"cancel\") {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.provider.unauthorized(\"user cancelled\");\n }\n const callsId = (await globalAccountRequest(request));\n const client = (0,_store_chain_clients_utils_js__WEBPACK_IMPORTED_MODULE_8__.getClient)(account.chain.id);\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_1__.assertPresence)(client, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.rpc.internal(`client not found for chainId ${account.chain.id}`));\n const callsResult = await (0,viem_experimental__WEBPACK_IMPORTED_MODULE_9__.waitForCallsStatus)(client, {\n id: callsId,\n });\n if (callsResult.status !== 'success') {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.rpc.internal(\"add owner call failed\");\n }\n const ownerIndex = await (0,_utils_findOwnerIndex_js__WEBPACK_IMPORTED_MODULE_10__.findOwnerIndex)({\n address: subAccount.address,\n publicKey: ownerAccount.type === \"local\" && ownerAccount.address\n ? ownerAccount.address\n : ownerAccount.publicKey,\n client,\n });\n if (ownerIndex === -1) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.rpc.internal(\"failed to find owner index\");\n }\n return ownerIndex;\n}\n//# sourceMappingURL=handleAddSubAccountOwner.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2hhbmRsZUFkZFN1YkFjY291bnRPd25lci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBK0Q7QUFDRztBQUNsQjtBQUNpQjtBQUNtQjtBQUM3QjtBQUNYO0FBQ2dCO0FBQ087QUFDNUQsMENBQTBDLHFDQUFxQztBQUN0RjtBQUNBLG9CQUFvQixrREFBSztBQUN6Qix1QkFBdUIsa0RBQUs7QUFDNUI7QUFDQSxJQUFJLHVFQUFjLGdCQUFnQixpRUFBYztBQUNoRCxJQUFJLHVFQUFjLGtFQUFrRSxpRUFBYztBQUNsRyxJQUFJLHVFQUFjLDZFQUE2RSxpRUFBYztBQUM3RztBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQix3REFBa0I7QUFDcEMsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsbUJBQW1CLDJDQUFLO0FBQ3hCLFNBQVM7QUFDVDtBQUNBO0FBQ0EsdUJBQXVCLHlEQUFtQixJQUFJLGlCQUFpQixJQUFJLGlCQUFpQjtBQUNwRjtBQUNBO0FBQ0Esa0JBQWtCLHdEQUFrQjtBQUNwQyxtQkFBbUI7QUFDbkI7QUFDQTtBQUNBLGFBQWE7QUFDYixtQkFBbUIsMkNBQUs7QUFDeEIsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLGlEQUFXO0FBQ3BDO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSw0QkFBNEIsZ0ZBQXFCO0FBQ2pEO0FBQ0EsY0FBYyxpRUFBYztBQUM1QjtBQUNBO0FBQ0EsbUJBQW1CLHdFQUFTO0FBQzVCLElBQUksdUVBQWMsU0FBUyxpRUFBYyw4Q0FBOEMsaUJBQWlCO0FBQ3hHLDhCQUE4QixxRUFBa0I7QUFDaEQ7QUFDQSxLQUFLO0FBQ0w7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0EsNkJBQTZCLHlFQUFjO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3Qvc2lnbi9zY3cvdXRpbHMvaGFuZGxlQWRkU3ViQWNjb3VudE93bmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0YW5kYXJkRXJyb3JzIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvZXJyb3IvZXJyb3JzLmpzXCI7XG5pbXBvcnQgeyBnZXRDbGllbnQgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmUvY2hhaW4tY2xpZW50cy91dGlscy5qc1wiO1xuaW1wb3J0IHsgc3RvcmUgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmUvc3RvcmUuanNcIjtcbmltcG9ydCB7IGFzc2VydFByZXNlbmNlIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWwvYXNzZXJ0UHJlc2VuY2UuanNcIjtcbmltcG9ydCB7IGRlY29kZUFiaVBhcmFtZXRlcnMsIGVuY29kZUZ1bmN0aW9uRGF0YSwgbnVtYmVyVG9IZXgsIHRvSGV4LCB9IGZyb20gXCJ2aWVtXCI7XG5pbXBvcnQgeyB3YWl0Rm9yQ2FsbHNTdGF0dXMgfSBmcm9tIFwidmllbS9leHBlcmltZW50YWxcIjtcbmltcG9ydCB7IGFiaSB9IGZyb20gXCIuLi91dGlscy9jb25zdGFudHMuanNcIjtcbmltcG9ydCB7IGZpbmRPd25lckluZGV4IH0gZnJvbSBcIi4uL3V0aWxzL2ZpbmRPd25lckluZGV4LmpzXCI7XG5pbXBvcnQgeyBwcmVzZW50QWRkT3duZXJEaWFsb2cgfSBmcm9tIFwiLi9wcmVzZW50QWRkT3duZXJEaWFsb2cuanNcIjtcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVBZGRTdWJBY2NvdW50T3duZXIoeyBvd25lckFjY291bnQsIGdsb2JhbEFjY291bnRSZXF1ZXN0LCB9KSB7XG4gICAgdmFyIF9hLCBfYjtcbiAgICBjb25zdCBhY2NvdW50ID0gc3RvcmUuYWNjb3VudC5nZXQoKTtcbiAgICBjb25zdCBzdWJBY2NvdW50ID0gc3RvcmUuc3ViQWNjb3VudHMuZ2V0KCk7XG4gICAgY29uc3QgZ2xvYmFsQWNjb3VudCA9IChfYSA9IGFjY291bnQuYWNjb3VudHMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5maW5kKChhY2NvdW50KSA9PiBhY2NvdW50LnRvTG93ZXJDYXNlKCkgIT09IChzdWJBY2NvdW50ID09PSBudWxsIHx8IHN1YkFjY291bnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YkFjY291bnQuYWRkcmVzcy50b0xvd2VyQ2FzZSgpKSk7XG4gICAgYXNzZXJ0UHJlc2VuY2UoZ2xvYmFsQWNjb3VudCwgc3RhbmRhcmRFcnJvcnMucHJvdmlkZXIudW5hdXRob3JpemVkKFwibm8gZ2xvYmFsIGFjY291bnRcIikpO1xuICAgIGFzc2VydFByZXNlbmNlKChfYiA9IGFjY291bnQuY2hhaW4pID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5pZCwgc3RhbmRhcmRFcnJvcnMucHJvdmlkZXIudW5hdXRob3JpemVkKFwibm8gY2hhaW4gaWRcIikpO1xuICAgIGFzc2VydFByZXNlbmNlKHN1YkFjY291bnQgPT09IG51bGwgfHwgc3ViQWNjb3VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3ViQWNjb3VudC5hZGRyZXNzLCBzdGFuZGFyZEVycm9ycy5wcm92aWRlci51bmF1dGhvcml6ZWQoXCJubyBzdWIgYWNjb3VudFwiKSk7XG4gICAgY29uc3QgY2FsbHMgPSBbXTtcbiAgICBpZiAob3duZXJBY2NvdW50LnR5cGUgPT09IFwibG9jYWxcIiAmJiBvd25lckFjY291bnQuYWRkcmVzcykge1xuICAgICAgICBjYWxscy5wdXNoKHtcbiAgICAgICAgICAgIHRvOiBzdWJBY2NvdW50LmFkZHJlc3MsXG4gICAgICAgICAgICBkYXRhOiBlbmNvZGVGdW5jdGlvbkRhdGEoe1xuICAgICAgICAgICAgICAgIGFiaSxcbiAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWU6IFwiYWRkT3duZXJBZGRyZXNzXCIsXG4gICAgICAgICAgICAgICAgYXJnczogW293bmVyQWNjb3VudC5hZGRyZXNzXSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdmFsdWU6IHRvSGV4KDApLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgaWYgKG93bmVyQWNjb3VudC5wdWJsaWNLZXkpIHtcbiAgICAgICAgY29uc3QgW3gsIHldID0gZGVjb2RlQWJpUGFyYW1ldGVycyhbeyB0eXBlOiBcImJ5dGVzMzJcIiB9LCB7IHR5cGU6IFwiYnl0ZXMzMlwiIH1dLCBvd25lckFjY291bnQucHVibGljS2V5KTtcbiAgICAgICAgY2FsbHMucHVzaCh7XG4gICAgICAgICAgICB0bzogc3ViQWNjb3VudC5hZGRyZXNzLFxuICAgICAgICAgICAgZGF0YTogZW5jb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgICAgICBhYmksXG4gICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiBcImFkZE93bmVyUHVibGljS2V5XCIsXG4gICAgICAgICAgICAgICAgYXJnczogW3gsIHldLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB2YWx1ZTogdG9IZXgoMCksXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCByZXF1ZXN0ID0ge1xuICAgICAgICBtZXRob2Q6IFwid2FsbGV0X3NlbmRDYWxsc1wiLFxuICAgICAgICBwYXJhbXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2ZXJzaW9uOiBcIjFcIixcbiAgICAgICAgICAgICAgICBjYWxscyxcbiAgICAgICAgICAgICAgICBjaGFpbklkOiBudW1iZXJUb0hleCg4NDUzMiksXG4gICAgICAgICAgICAgICAgZnJvbTogZ2xvYmFsQWNjb3VudCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfTtcbiAgICBjb25zdCBzZWxlY3Rpb24gPSBhd2FpdCBwcmVzZW50QWRkT3duZXJEaWFsb2coKTtcbiAgICBpZiAoc2VsZWN0aW9uID09PSBcImNhbmNlbFwiKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLnVuYXV0aG9yaXplZChcInVzZXIgY2FuY2VsbGVkXCIpO1xuICAgIH1cbiAgICBjb25zdCBjYWxsc0lkID0gKGF3YWl0IGdsb2JhbEFjY291bnRSZXF1ZXN0KHJlcXVlc3QpKTtcbiAgICBjb25zdCBjbGllbnQgPSBnZXRDbGllbnQoYWNjb3VudC5jaGFpbi5pZCk7XG4gICAgYXNzZXJ0UHJlc2VuY2UoY2xpZW50LCBzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoYGNsaWVudCBub3QgZm91bmQgZm9yIGNoYWluSWQgJHthY2NvdW50LmNoYWluLmlkfWApKTtcbiAgICBjb25zdCBjYWxsc1Jlc3VsdCA9IGF3YWl0IHdhaXRGb3JDYWxsc1N0YXR1cyhjbGllbnQsIHtcbiAgICAgICAgaWQ6IGNhbGxzSWQsXG4gICAgfSk7XG4gICAgaWYgKGNhbGxzUmVzdWx0LnN0YXR1cyAhPT0gJ3N1Y2Nlc3MnKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnRlcm5hbChcImFkZCBvd25lciBjYWxsIGZhaWxlZFwiKTtcbiAgICB9XG4gICAgY29uc3Qgb3duZXJJbmRleCA9IGF3YWl0IGZpbmRPd25lckluZGV4KHtcbiAgICAgICAgYWRkcmVzczogc3ViQWNjb3VudC5hZGRyZXNzLFxuICAgICAgICBwdWJsaWNLZXk6IG93bmVyQWNjb3VudC50eXBlID09PSBcImxvY2FsXCIgJiYgb3duZXJBY2NvdW50LmFkZHJlc3NcbiAgICAgICAgICAgID8gb3duZXJBY2NvdW50LmFkZHJlc3NcbiAgICAgICAgICAgIDogb3duZXJBY2NvdW50LnB1YmxpY0tleSxcbiAgICAgICAgY2xpZW50LFxuICAgIH0pO1xuICAgIGlmIChvd25lckluZGV4ID09PSAtMSkge1xuICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoXCJmYWlsZWQgdG8gZmluZCBvd25lciBpbmRleFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIG93bmVySW5kZXg7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1oYW5kbGVBZGRTdWJBY2NvdW50T3duZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleAddSubAccountOwner.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleInsufficientBalance.js": /*!********************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleInsufficientBalance.js ***! \********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ handleInsufficientBalanceError: () => (/* binding */ handleInsufficientBalanceError)\n/* harmony export */ });\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _util_assertPresence_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../util/assertPresence.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils.js\");\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/constants.js\");\n\n\n\n\n\nasync function handleInsufficientBalanceError({ errorData, globalAccountAddress, subAccountAddress, client, request, subAccountRequest, globalAccountRequest, }) {\n var _a;\n const chainId = (_a = client.chain) === null || _a === void 0 ? void 0 : _a.id;\n (0,_util_assertPresence_js__WEBPACK_IMPORTED_MODULE_0__.assertPresence)(chainId, _core_error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.internal(`invalid chainId`));\n // Build spend permission requests for each token and check\n // that each token has global account as sufficient source\n // If not, will throw error\n const spendPermissionRequests = (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.parseFundingOptions)({\n errorData,\n sourceAddress: globalAccountAddress,\n });\n // Present options to user via snackbar\n const userChoice = await (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.presentSubAccountFundingDialog)();\n if (userChoice === 'cancel') {\n throw new Error('User cancelled funding');\n }\n let signatureRequest;\n // Request 3x the amount per day -- maybe we can do something smarter here\n const defaultPeriod = 60 * 60 * 24;\n const defaultMultiplier = 3;\n if (userChoice === 'update_permission') {\n if (spendPermissionRequests.length === 1) {\n const spendPermission = spendPermissionRequests[0];\n const message = (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.createSpendPermissionMessage)({\n spendPermission: {\n token: spendPermission.token,\n allowance: (0,viem__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(spendPermission.requiredAmount * BigInt(defaultMultiplier)),\n period: defaultPeriod,\n account: globalAccountAddress,\n spender: subAccountAddress,\n start: 0,\n end: 281474976710655,\n salt: (0,viem__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(BigInt(Math.floor(Math.random() * Number.MAX_SAFE_INTEGER))),\n extraData: '0x',\n },\n chainId,\n });\n signatureRequest = {\n method: 'eth_signTypedData_v4',\n params: [globalAccountAddress, message],\n };\n }\n else {\n // Batch spend permission request\n const message = (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.createSpendPermissionBatchMessage)({\n spendPermissionBatch: {\n account: globalAccountAddress,\n period: defaultPeriod,\n start: 0,\n end: 281474976710655,\n permissions: spendPermissionRequests.map((spendPermission) => ({\n token: spendPermission.token,\n allowance: (0,viem__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(spendPermission.requiredAmount * BigInt(defaultMultiplier)),\n period: defaultPeriod,\n account: globalAccountAddress,\n spender: subAccountAddress,\n salt: '0x0',\n extraData: '0x',\n })),\n },\n chainId,\n });\n signatureRequest = {\n method: 'eth_signTypedData_v4',\n params: [globalAccountAddress, message],\n };\n }\n try {\n // Request the signature - will be stored in backend\n await globalAccountRequest(signatureRequest);\n }\n catch (error) {\n console.error(error);\n // If the signature request is denied, we throw the original error\n throw new Error('User denied spend permission request');\n }\n // Retry the original request after updating permissions\n return subAccountRequest(request);\n }\n /* Handle continue_popup path */\n // Construct calls to transfer required tokens to sub account\n const transferCalls = spendPermissionRequests.map((spendPermission) => {\n const isNative = spendPermission.token.toLowerCase() ===\n '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE'.toLowerCase();\n if (isNative) {\n return {\n to: subAccountAddress,\n value: (0,viem__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(spendPermission.requiredAmount),\n data: '0x',\n };\n }\n return {\n to: spendPermission.token,\n value: '0x0',\n data: (0,viem__WEBPACK_IMPORTED_MODULE_4__.encodeFunctionData)({\n abi: viem__WEBPACK_IMPORTED_MODULE_5__.erc20Abi,\n functionName: 'transfer',\n args: [subAccountAddress, spendPermission.requiredAmount],\n }),\n };\n });\n // Construct call to execute the original calls using executeBatch\n let originalSendCallsParams;\n if (request.method === 'wallet_sendCalls' && (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.isSendCallsParams)(request.params)) {\n originalSendCallsParams = request.params[0];\n }\n else if (request.method === 'eth_sendTransaction' &&\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.isEthSendTransactionParams)(request.params)) {\n const sendCallsRequest = (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.createWalletSendCallsRequest)({\n calls: [request.params[0]],\n chainId,\n from: request.params[0].from,\n });\n originalSendCallsParams = sendCallsRequest.params[0];\n }\n else {\n throw new Error('Could not get original call');\n }\n const subAccountCallData = (0,viem__WEBPACK_IMPORTED_MODULE_4__.encodeFunctionData)({\n abi: _constants_js__WEBPACK_IMPORTED_MODULE_6__.abi,\n functionName: 'executeBatch',\n args: [\n originalSendCallsParams.calls.map((call) => {\n var _a, _b;\n return ({\n target: call.to,\n value: (0,viem__WEBPACK_IMPORTED_MODULE_7__.hexToBigInt)((_a = call.value) !== null && _a !== void 0 ? _a : '0x0'),\n data: (_b = call.data) !== null && _b !== void 0 ? _b : '0x',\n });\n }),\n ],\n });\n // Send using wallet_sendCalls\n const calls = [\n ...transferCalls,\n { data: subAccountCallData, to: subAccountAddress, value: '0x0' },\n ];\n const result = await globalAccountRequest({\n method: 'wallet_sendCalls',\n params: [Object.assign(Object.assign({}, originalSendCallsParams), { calls, from: globalAccountAddress })],\n });\n if (request.method === 'eth_sendTransaction') {\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.waitForCallsTransactionHash)({\n client,\n id: result,\n });\n }\n return result;\n}\n//# sourceMappingURL=handleInsufficientBalance.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL2hhbmRsZUluc3VmZmljaWVudEJhbGFuY2UuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQStEO0FBQ0U7QUFDYztBQUMrSztBQUN6TjtBQUM5QixnREFBZ0QsK0dBQStHO0FBQ3RLO0FBQ0E7QUFDQSxJQUFJLHVFQUFjLFVBQVUsaUVBQWM7QUFDMUM7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLDhEQUFtQjtBQUN2RDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsNkJBQTZCLHlFQUE4QjtBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0Qix1RUFBNEI7QUFDeEQ7QUFDQTtBQUNBLCtCQUErQixpREFBVztBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLGlEQUFXO0FBQ3JDO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLDRFQUFpQztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQyxpREFBVztBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQjtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixpREFBVztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0Isd0RBQWtCO0FBQ3BDLHFCQUFxQiwwQ0FBUTtBQUM3QjtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxpREFBaUQsNERBQWlCO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBLFFBQVEscUVBQTBCO0FBQ2xDLGlDQUFpQyx1RUFBNEI7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0Isd0RBQWtCO0FBQ2pELFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsaURBQVc7QUFDdEM7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLFVBQVUsK0RBQStEO0FBQ3pFO0FBQ0E7QUFDQTtBQUNBLCtDQUErQyw4QkFBOEIsbUNBQW1DO0FBQ2hILEtBQUs7QUFDTDtBQUNBLGVBQWUsc0VBQTJCO0FBQzFDO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3Njdy91dGlscy9oYW5kbGVJbnN1ZmZpY2llbnRCYWxhbmNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0YW5kYXJkRXJyb3JzIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9lcnJvci9lcnJvcnMuanMnO1xuaW1wb3J0IHsgYXNzZXJ0UHJlc2VuY2UgfSBmcm9tICcuLi8uLi8uLi91dGlsL2Fzc2VydFByZXNlbmNlLmpzJztcbmltcG9ydCB7IGVuY29kZUZ1bmN0aW9uRGF0YSwgZXJjMjBBYmksIGhleFRvQmlnSW50LCBudW1iZXJUb0hleCwgfSBmcm9tICd2aWVtJztcbmltcG9ydCB7IGNyZWF0ZVNwZW5kUGVybWlzc2lvbkJhdGNoTWVzc2FnZSwgY3JlYXRlU3BlbmRQZXJtaXNzaW9uTWVzc2FnZSwgY3JlYXRlV2FsbGV0U2VuZENhbGxzUmVxdWVzdCwgaXNFdGhTZW5kVHJhbnNhY3Rpb25QYXJhbXMsIGlzU2VuZENhbGxzUGFyYW1zLCBwYXJzZUZ1bmRpbmdPcHRpb25zLCBwcmVzZW50U3ViQWNjb3VudEZ1bmRpbmdEaWFsb2csIHdhaXRGb3JDYWxsc1RyYW5zYWN0aW9uSGFzaCwgfSBmcm9tICcuLi91dGlscy5qcyc7XG5pbXBvcnQgeyBhYmkgfSBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaGFuZGxlSW5zdWZmaWNpZW50QmFsYW5jZUVycm9yKHsgZXJyb3JEYXRhLCBnbG9iYWxBY2NvdW50QWRkcmVzcywgc3ViQWNjb3VudEFkZHJlc3MsIGNsaWVudCwgcmVxdWVzdCwgc3ViQWNjb3VudFJlcXVlc3QsIGdsb2JhbEFjY291bnRSZXF1ZXN0LCB9KSB7XG4gICAgdmFyIF9hO1xuICAgIGNvbnN0IGNoYWluSWQgPSAoX2EgPSBjbGllbnQuY2hhaW4pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pZDtcbiAgICBhc3NlcnRQcmVzZW5jZShjaGFpbklkLCBzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoYGludmFsaWQgY2hhaW5JZGApKTtcbiAgICAvLyBCdWlsZCBzcGVuZCBwZXJtaXNzaW9uIHJlcXVlc3RzIGZvciBlYWNoIHRva2VuIGFuZCBjaGVja1xuICAgIC8vIHRoYXQgZWFjaCB0b2tlbiBoYXMgZ2xvYmFsIGFjY291bnQgYXMgc3VmZmljaWVudCBzb3VyY2VcbiAgICAvLyBJZiBub3QsIHdpbGwgdGhyb3cgZXJyb3JcbiAgICBjb25zdCBzcGVuZFBlcm1pc3Npb25SZXF1ZXN0cyA9IHBhcnNlRnVuZGluZ09wdGlvbnMoe1xuICAgICAgICBlcnJvckRhdGEsXG4gICAgICAgIHNvdXJjZUFkZHJlc3M6IGdsb2JhbEFjY291bnRBZGRyZXNzLFxuICAgIH0pO1xuICAgIC8vIFByZXNlbnQgb3B0aW9ucyB0byB1c2VyIHZpYSBzbmFja2JhclxuICAgIGNvbnN0IHVzZXJDaG9pY2UgPSBhd2FpdCBwcmVzZW50U3ViQWNjb3VudEZ1bmRpbmdEaWFsb2coKTtcbiAgICBpZiAodXNlckNob2ljZSA9PT0gJ2NhbmNlbCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVc2VyIGNhbmNlbGxlZCBmdW5kaW5nJyk7XG4gICAgfVxuICAgIGxldCBzaWduYXR1cmVSZXF1ZXN0O1xuICAgIC8vIFJlcXVlc3QgM3ggdGhlIGFtb3VudCBwZXIgZGF5IC0tIG1heWJlIHdlIGNhbiBkbyBzb21ldGhpbmcgc21hcnRlciBoZXJlXG4gICAgY29uc3QgZGVmYXVsdFBlcmlvZCA9IDYwICogNjAgKiAyNDtcbiAgICBjb25zdCBkZWZhdWx0TXVsdGlwbGllciA9IDM7XG4gICAgaWYgKHVzZXJDaG9pY2UgPT09ICd1cGRhdGVfcGVybWlzc2lvbicpIHtcbiAgICAgICAgaWYgKHNwZW5kUGVybWlzc2lvblJlcXVlc3RzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgY29uc3Qgc3BlbmRQZXJtaXNzaW9uID0gc3BlbmRQZXJtaXNzaW9uUmVxdWVzdHNbMF07XG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gY3JlYXRlU3BlbmRQZXJtaXNzaW9uTWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgc3BlbmRQZXJtaXNzaW9uOiB7XG4gICAgICAgICAgICAgICAgICAgIHRva2VuOiBzcGVuZFBlcm1pc3Npb24udG9rZW4sXG4gICAgICAgICAgICAgICAgICAgIGFsbG93YW5jZTogbnVtYmVyVG9IZXgoc3BlbmRQZXJtaXNzaW9uLnJlcXVpcmVkQW1vdW50ICogQmlnSW50KGRlZmF1bHRNdWx0aXBsaWVyKSksXG4gICAgICAgICAgICAgICAgICAgIHBlcmlvZDogZGVmYXVsdFBlcmlvZCxcbiAgICAgICAgICAgICAgICAgICAgYWNjb3VudDogZ2xvYmFsQWNjb3VudEFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgIHNwZW5kZXI6IHN1YkFjY291bnRBZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICBzdGFydDogMCxcbiAgICAgICAgICAgICAgICAgICAgZW5kOiAyODE0NzQ5NzY3MTA2NTUsXG4gICAgICAgICAgICAgICAgICAgIHNhbHQ6IG51bWJlclRvSGV4KEJpZ0ludChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUikpKSxcbiAgICAgICAgICAgICAgICAgICAgZXh0cmFEYXRhOiAnMHgnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgY2hhaW5JZCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc2lnbmF0dXJlUmVxdWVzdCA9IHtcbiAgICAgICAgICAgICAgICBtZXRob2Q6ICdldGhfc2lnblR5cGVkRGF0YV92NCcsXG4gICAgICAgICAgICAgICAgcGFyYW1zOiBbZ2xvYmFsQWNjb3VudEFkZHJlc3MsIG1lc3NhZ2VdLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIEJhdGNoIHNwZW5kIHBlcm1pc3Npb24gcmVxdWVzdFxuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGNyZWF0ZVNwZW5kUGVybWlzc2lvbkJhdGNoTWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgc3BlbmRQZXJtaXNzaW9uQmF0Y2g6IHtcbiAgICAgICAgICAgICAgICAgICAgYWNjb3VudDogZ2xvYmFsQWNjb3VudEFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgIHBlcmlvZDogZGVmYXVsdFBlcmlvZCxcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IDAsXG4gICAgICAgICAgICAgICAgICAgIGVuZDogMjgxNDc0OTc2NzEwNjU1LFxuICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uczogc3BlbmRQZXJtaXNzaW9uUmVxdWVzdHMubWFwKChzcGVuZFBlcm1pc3Npb24pID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b2tlbjogc3BlbmRQZXJtaXNzaW9uLnRva2VuLFxuICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dhbmNlOiBudW1iZXJUb0hleChzcGVuZFBlcm1pc3Npb24ucmVxdWlyZWRBbW91bnQgKiBCaWdJbnQoZGVmYXVsdE11bHRpcGxpZXIpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBlcmlvZDogZGVmYXVsdFBlcmlvZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjY291bnQ6IGdsb2JhbEFjY291bnRBZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3BlbmRlcjogc3ViQWNjb3VudEFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBzYWx0OiAnMHgwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhRGF0YTogJzB4JyxcbiAgICAgICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgY2hhaW5JZCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc2lnbmF0dXJlUmVxdWVzdCA9IHtcbiAgICAgICAgICAgICAgICBtZXRob2Q6ICdldGhfc2lnblR5cGVkRGF0YV92NCcsXG4gICAgICAgICAgICAgICAgcGFyYW1zOiBbZ2xvYmFsQWNjb3VudEFkZHJlc3MsIG1lc3NhZ2VdLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gUmVxdWVzdCB0aGUgc2lnbmF0dXJlIC0gd2lsbCBiZSBzdG9yZWQgaW4gYmFja2VuZFxuICAgICAgICAgICAgYXdhaXQgZ2xvYmFsQWNjb3VudFJlcXVlc3Qoc2lnbmF0dXJlUmVxdWVzdCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgICAgICAgIC8vIElmIHRoZSBzaWduYXR1cmUgcmVxdWVzdCBpcyBkZW5pZWQsIHdlIHRocm93IHRoZSBvcmlnaW5hbCBlcnJvclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVc2VyIGRlbmllZCBzcGVuZCBwZXJtaXNzaW9uIHJlcXVlc3QnKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBSZXRyeSB0aGUgb3JpZ2luYWwgcmVxdWVzdCBhZnRlciB1cGRhdGluZyBwZXJtaXNzaW9uc1xuICAgICAgICByZXR1cm4gc3ViQWNjb3VudFJlcXVlc3QocmVxdWVzdCk7XG4gICAgfVxuICAgIC8qIEhhbmRsZSBjb250aW51ZV9wb3B1cCBwYXRoICovXG4gICAgLy8gQ29uc3RydWN0IGNhbGxzIHRvIHRyYW5zZmVyIHJlcXVpcmVkIHRva2VucyB0byBzdWIgYWNjb3VudFxuICAgIGNvbnN0IHRyYW5zZmVyQ2FsbHMgPSBzcGVuZFBlcm1pc3Npb25SZXF1ZXN0cy5tYXAoKHNwZW5kUGVybWlzc2lvbikgPT4ge1xuICAgICAgICBjb25zdCBpc05hdGl2ZSA9IHNwZW5kUGVybWlzc2lvbi50b2tlbi50b0xvd2VyQ2FzZSgpID09PVxuICAgICAgICAgICAgJzB4RWVlZWVFZWVlRWVFZWVFZUVlRWVlRUVFZWVlZUVlZWVlZWVlRUVlRScudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgaWYgKGlzTmF0aXZlKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHRvOiBzdWJBY2NvdW50QWRkcmVzcyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogbnVtYmVyVG9IZXgoc3BlbmRQZXJtaXNzaW9uLnJlcXVpcmVkQW1vdW50KSxcbiAgICAgICAgICAgICAgICBkYXRhOiAnMHgnLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdG86IHNwZW5kUGVybWlzc2lvbi50b2tlbixcbiAgICAgICAgICAgIHZhbHVlOiAnMHgwJyxcbiAgICAgICAgICAgIGRhdGE6IGVuY29kZUZ1bmN0aW9uRGF0YSh7XG4gICAgICAgICAgICAgICAgYWJpOiBlcmMyMEFiaSxcbiAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWU6ICd0cmFuc2ZlcicsXG4gICAgICAgICAgICAgICAgYXJnczogW3N1YkFjY291bnRBZGRyZXNzLCBzcGVuZFBlcm1pc3Npb24ucmVxdWlyZWRBbW91bnRdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgIH07XG4gICAgfSk7XG4gICAgLy8gQ29uc3RydWN0IGNhbGwgdG8gZXhlY3V0ZSB0aGUgb3JpZ2luYWwgY2FsbHMgdXNpbmcgZXhlY3V0ZUJhdGNoXG4gICAgbGV0IG9yaWdpbmFsU2VuZENhbGxzUGFyYW1zO1xuICAgIGlmIChyZXF1ZXN0Lm1ldGhvZCA9PT0gJ3dhbGxldF9zZW5kQ2FsbHMnICYmIGlzU2VuZENhbGxzUGFyYW1zKHJlcXVlc3QucGFyYW1zKSkge1xuICAgICAgICBvcmlnaW5hbFNlbmRDYWxsc1BhcmFtcyA9IHJlcXVlc3QucGFyYW1zWzBdO1xuICAgIH1cbiAgICBlbHNlIGlmIChyZXF1ZXN0Lm1ldGhvZCA9PT0gJ2V0aF9zZW5kVHJhbnNhY3Rpb24nICYmXG4gICAgICAgIGlzRXRoU2VuZFRyYW5zYWN0aW9uUGFyYW1zKHJlcXVlc3QucGFyYW1zKSkge1xuICAgICAgICBjb25zdCBzZW5kQ2FsbHNSZXF1ZXN0ID0gY3JlYXRlV2FsbGV0U2VuZENhbGxzUmVxdWVzdCh7XG4gICAgICAgICAgICBjYWxsczogW3JlcXVlc3QucGFyYW1zWzBdXSxcbiAgICAgICAgICAgIGNoYWluSWQsXG4gICAgICAgICAgICBmcm9tOiByZXF1ZXN0LnBhcmFtc1swXS5mcm9tLFxuICAgICAgICB9KTtcbiAgICAgICAgb3JpZ2luYWxTZW5kQ2FsbHNQYXJhbXMgPSBzZW5kQ2FsbHNSZXF1ZXN0LnBhcmFtc1swXTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGdldCBvcmlnaW5hbCBjYWxsJyk7XG4gICAgfVxuICAgIGNvbnN0IHN1YkFjY291bnRDYWxsRGF0YSA9IGVuY29kZUZ1bmN0aW9uRGF0YSh7XG4gICAgICAgIGFiaSxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiAnZXhlY3V0ZUJhdGNoJyxcbiAgICAgICAgYXJnczogW1xuICAgICAgICAgICAgb3JpZ2luYWxTZW5kQ2FsbHNQYXJhbXMuY2FsbHMubWFwKChjYWxsKSA9PiB7XG4gICAgICAgICAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgICAgICAgICByZXR1cm4gKHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBjYWxsLnRvLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogaGV4VG9CaWdJbnQoKF9hID0gY2FsbC52YWx1ZSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJzB4MCcpLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiAoX2IgPSBjYWxsLmRhdGEpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6ICcweCcsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXSxcbiAgICB9KTtcbiAgICAvLyBTZW5kIHVzaW5nIHdhbGxldF9zZW5kQ2FsbHNcbiAgICBjb25zdCBjYWxscyA9IFtcbiAgICAgICAgLi4udHJhbnNmZXJDYWxscyxcbiAgICAgICAgeyBkYXRhOiBzdWJBY2NvdW50Q2FsbERhdGEsIHRvOiBzdWJBY2NvdW50QWRkcmVzcywgdmFsdWU6ICcweDAnIH0sXG4gICAgXTtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBnbG9iYWxBY2NvdW50UmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ3dhbGxldF9zZW5kQ2FsbHMnLFxuICAgICAgICBwYXJhbXM6IFtPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIG9yaWdpbmFsU2VuZENhbGxzUGFyYW1zKSwgeyBjYWxscywgZnJvbTogZ2xvYmFsQWNjb3VudEFkZHJlc3MgfSldLFxuICAgIH0pO1xuICAgIGlmIChyZXF1ZXN0Lm1ldGhvZCA9PT0gJ2V0aF9zZW5kVHJhbnNhY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiB3YWl0Rm9yQ2FsbHNUcmFuc2FjdGlvbkhhc2goe1xuICAgICAgICAgICAgY2xpZW50LFxuICAgICAgICAgICAgaWQ6IHJlc3VsdCxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1oYW5kbGVJbnN1ZmZpY2llbnRCYWxhbmNlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/handleInsufficientBalance.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/presentAddOwnerDialog.js": /*!****************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/presentAddOwnerDialog.js ***! \****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ presentAddOwnerDialog: () => (/* binding */ presentAddOwnerDialog)\n/* harmony export */ });\n/* harmony import */ var _core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../core/telemetry/events/snackbar.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/snackbar.js\");\n/* harmony import */ var _util_web_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../util/web.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/web.js\");\n\n\nasync function presentAddOwnerDialog() {\n const snackbar = (0,_util_web_js__WEBPACK_IMPORTED_MODULE_0__.initSnackbar)();\n return new Promise((resolve) => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_1__.logSnackbarShown)({ snackbarContext: 'sub_account_add_owner' });\n snackbar.presentItem({\n autoExpand: true,\n message: 'App requires a signer update',\n menuItems: [\n {\n isRed: false,\n info: 'Confirm',\n svgWidth: '10',\n svgHeight: '11',\n path: '',\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n onClick: () => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_1__.logSnackbarActionClicked)({\n snackbarContext: 'sub_account_add_owner',\n snackbarAction: 'confirm',\n });\n snackbar.clear();\n resolve('authenticate');\n },\n },\n {\n isRed: true,\n info: 'Cancel',\n svgWidth: '10',\n svgHeight: '11',\n path: '',\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n onClick: () => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_1__.logSnackbarActionClicked)({\n snackbarContext: 'sub_account_add_owner',\n snackbarAction: 'cancel',\n });\n snackbar.clear();\n resolve('cancel');\n },\n },\n ],\n });\n });\n}\n//# sourceMappingURL=presentAddOwnerDialog.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vc2N3L3V0aWxzL3ByZXNlbnRBZGRPd25lckRpYWxvZy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBd0c7QUFDcEQ7QUFDN0M7QUFDUCxxQkFBcUIsMERBQVk7QUFDakM7QUFDQSxRQUFRLG9GQUFnQixHQUFHLDBDQUEwQztBQUNyRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qiw0RkFBd0I7QUFDaEQ7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsNEZBQXdCO0FBQ2hEO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixpQkFBaUI7QUFDakI7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3Njdy91dGlscy9wcmVzZW50QWRkT3duZXJEaWFsb2cuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9nU25hY2tiYXJBY3Rpb25DbGlja2VkLCBsb2dTbmFja2JhclNob3duIH0gZnJvbSAnLi4vLi4vLi4vY29yZS90ZWxlbWV0cnkvZXZlbnRzL3NuYWNrYmFyLmpzJztcbmltcG9ydCB7IGluaXRTbmFja2JhciB9IGZyb20gJy4uLy4uLy4uL3V0aWwvd2ViLmpzJztcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcmVzZW50QWRkT3duZXJEaWFsb2coKSB7XG4gICAgY29uc3Qgc25hY2tiYXIgPSBpbml0U25hY2tiYXIoKTtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgbG9nU25hY2tiYXJTaG93bih7IHNuYWNrYmFyQ29udGV4dDogJ3N1Yl9hY2NvdW50X2FkZF9vd25lcicgfSk7XG4gICAgICAgIHNuYWNrYmFyLnByZXNlbnRJdGVtKHtcbiAgICAgICAgICAgIGF1dG9FeHBhbmQ6IHRydWUsXG4gICAgICAgICAgICBtZXNzYWdlOiAnQXBwIHJlcXVpcmVzIGEgc2lnbmVyIHVwZGF0ZScsXG4gICAgICAgICAgICBtZW51SXRlbXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGlzUmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgaW5mbzogJ0NvbmZpcm0nLFxuICAgICAgICAgICAgICAgICAgICBzdmdXaWR0aDogJzEwJyxcbiAgICAgICAgICAgICAgICAgICAgc3ZnSGVpZ2h0OiAnMTEnLFxuICAgICAgICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdEZpbGxSdWxlOiAnZXZlbm9kZCcsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRDbGlwUnVsZTogJ2V2ZW5vZGQnLFxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsb2dTbmFja2JhckFjdGlvbkNsaWNrZWQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNuYWNrYmFyQ29udGV4dDogJ3N1Yl9hY2NvdW50X2FkZF9vd25lcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXJBY3Rpb246ICdjb25maXJtJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXIuY2xlYXIoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoJ2F1dGhlbnRpY2F0ZScpO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBpc1JlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgaW5mbzogJ0NhbmNlbCcsXG4gICAgICAgICAgICAgICAgICAgIHN2Z1dpZHRoOiAnMTAnLFxuICAgICAgICAgICAgICAgICAgICBzdmdIZWlnaHQ6ICcxMScsXG4gICAgICAgICAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0RmlsbFJ1bGU6ICdldmVub2RkJyxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdENsaXBSdWxlOiAnZXZlbm9kZCcsXG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvZ1NuYWNrYmFyQWN0aW9uQ2xpY2tlZCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXJDb250ZXh0OiAnc3ViX2FjY291bnRfYWRkX293bmVyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbmFja2JhckFjdGlvbjogJ2NhbmNlbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNuYWNrYmFyLmNsZWFyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCdjYW5jZWwnKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wcmVzZW50QWRkT3duZXJEaWFsb2cuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/utils/presentAddOwnerDialog.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/util.js": /*!*************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/util.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createSigner: () => (/* binding */ createSigner),\n/* harmony export */ fetchSignerType: () => (/* binding */ fetchSignerType),\n/* harmony export */ loadSignerType: () => (/* binding */ loadSignerType),\n/* harmony export */ signerToSignerType: () => (/* binding */ signerToSignerType),\n/* harmony export */ storeSignerType: () => (/* binding */ storeSignerType)\n/* harmony export */ });\n/* harmony import */ var _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/storage/ScopedLocalStorage.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/storage/ScopedLocalStorage.js\");\n/* harmony import */ var _scw_SCWSigner_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./scw/SCWSigner.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/scw/SCWSigner.js\");\n/* harmony import */ var _walletlink_WalletLinkSigner_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./walletlink/WalletLinkSigner.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/WalletLinkSigner.js\");\n\n\n\nconst SIGNER_TYPE_KEY = 'SignerType';\nconst storage = new _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_0__.ScopedLocalStorage('CBWSDK', 'SignerConfigurator');\nfunction loadSignerType() {\n return storage.getItem(SIGNER_TYPE_KEY);\n}\nfunction storeSignerType(signerType) {\n storage.setItem(SIGNER_TYPE_KEY, signerType);\n}\nfunction signerToSignerType(signer) {\n if (!signer) {\n return undefined;\n }\n return signer instanceof _scw_SCWSigner_js__WEBPACK_IMPORTED_MODULE_1__.SCWSigner ? 'scw' : 'walletlink';\n}\nasync function fetchSignerType(params) {\n const { communicator, metadata, handshakeRequest, callback } = params;\n listenForWalletLinkSessionRequest(communicator, metadata, callback, handshakeRequest).catch(() => { });\n const request = {\n id: crypto.randomUUID(),\n event: 'selectSignerType',\n data: Object.assign(Object.assign({}, params.preference), { handshakeRequest }),\n };\n const { data } = await communicator.postRequestAndWaitForResponse(request);\n return data;\n}\nfunction createSigner(params) {\n const { signerType, metadata, communicator, callback } = params;\n switch (signerType) {\n case 'scw': {\n return new _scw_SCWSigner_js__WEBPACK_IMPORTED_MODULE_1__.SCWSigner({\n metadata,\n callback,\n communicator,\n });\n }\n case 'walletlink': {\n return new _walletlink_WalletLinkSigner_js__WEBPACK_IMPORTED_MODULE_2__.WalletLinkSigner({\n metadata,\n callback,\n });\n }\n }\n}\nasync function listenForWalletLinkSessionRequest(communicator, metadata, callback, handshakeRequest) {\n await communicator.onMessage(({ event }) => event === 'WalletLinkSessionRequest');\n // temporary walletlink signer instance to handle WalletLinkSessionRequest\n // will revisit this when refactoring the walletlink signer\n const walletlink = new _walletlink_WalletLinkSigner_js__WEBPACK_IMPORTED_MODULE_2__.WalletLinkSigner({\n metadata,\n callback,\n });\n // send wallet link session to popup\n communicator.postMessage({\n event: 'WalletLinkUpdate',\n data: { session: walletlink.getSession() },\n });\n // wait for handshake to complete\n await walletlink.handshake(handshakeRequest);\n // send connected status to popup\n communicator.postMessage({\n event: 'WalletLinkUpdate',\n data: { connected: true },\n });\n}\n//# sourceMappingURL=util.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vdXRpbC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUEyRTtBQUM1QjtBQUNxQjtBQUNwRTtBQUNBLG9CQUFvQixtRkFBa0I7QUFDL0I7QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsd0RBQVM7QUFDdEM7QUFDTztBQUNQLFlBQVkscURBQXFEO0FBQ2pFLHlHQUF5RztBQUN6RztBQUNBO0FBQ0E7QUFDQSw0Q0FBNEMsd0JBQXdCLGtCQUFrQjtBQUN0RjtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ087QUFDUCxZQUFZLCtDQUErQztBQUMzRDtBQUNBO0FBQ0EsdUJBQXVCLHdEQUFTO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsdUJBQXVCLDZFQUFnQjtBQUN2QztBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLE9BQU87QUFDM0M7QUFDQTtBQUNBLDJCQUEyQiw2RUFBZ0I7QUFDM0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isa0NBQWtDO0FBQ2xELEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlCQUFpQjtBQUNqQyxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vdXRpbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY29wZWRMb2NhbFN0b3JhZ2UgfSBmcm9tICcuLi9jb3JlL3N0b3JhZ2UvU2NvcGVkTG9jYWxTdG9yYWdlLmpzJztcbmltcG9ydCB7IFNDV1NpZ25lciB9IGZyb20gJy4vc2N3L1NDV1NpZ25lci5qcyc7XG5pbXBvcnQgeyBXYWxsZXRMaW5rU2lnbmVyIH0gZnJvbSAnLi93YWxsZXRsaW5rL1dhbGxldExpbmtTaWduZXIuanMnO1xuY29uc3QgU0lHTkVSX1RZUEVfS0VZID0gJ1NpZ25lclR5cGUnO1xuY29uc3Qgc3RvcmFnZSA9IG5ldyBTY29wZWRMb2NhbFN0b3JhZ2UoJ0NCV1NESycsICdTaWduZXJDb25maWd1cmF0b3InKTtcbmV4cG9ydCBmdW5jdGlvbiBsb2FkU2lnbmVyVHlwZSgpIHtcbiAgICByZXR1cm4gc3RvcmFnZS5nZXRJdGVtKFNJR05FUl9UWVBFX0tFWSk7XG59XG5leHBvcnQgZnVuY3Rpb24gc3RvcmVTaWduZXJUeXBlKHNpZ25lclR5cGUpIHtcbiAgICBzdG9yYWdlLnNldEl0ZW0oU0lHTkVSX1RZUEVfS0VZLCBzaWduZXJUeXBlKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBzaWduZXJUb1NpZ25lclR5cGUoc2lnbmVyKSB7XG4gICAgaWYgKCFzaWduZXIpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHNpZ25lciBpbnN0YW5jZW9mIFNDV1NpZ25lciA/ICdzY3cnIDogJ3dhbGxldGxpbmsnO1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoU2lnbmVyVHlwZShwYXJhbXMpIHtcbiAgICBjb25zdCB7IGNvbW11bmljYXRvciwgbWV0YWRhdGEsIGhhbmRzaGFrZVJlcXVlc3QsIGNhbGxiYWNrIH0gPSBwYXJhbXM7XG4gICAgbGlzdGVuRm9yV2FsbGV0TGlua1Nlc3Npb25SZXF1ZXN0KGNvbW11bmljYXRvciwgbWV0YWRhdGEsIGNhbGxiYWNrLCBoYW5kc2hha2VSZXF1ZXN0KS5jYXRjaCgoKSA9PiB7IH0pO1xuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICAgIGlkOiBjcnlwdG8ucmFuZG9tVVVJRCgpLFxuICAgICAgICBldmVudDogJ3NlbGVjdFNpZ25lclR5cGUnLFxuICAgICAgICBkYXRhOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHBhcmFtcy5wcmVmZXJlbmNlKSwgeyBoYW5kc2hha2VSZXF1ZXN0IH0pLFxuICAgIH07XG4gICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBjb21tdW5pY2F0b3IucG9zdFJlcXVlc3RBbmRXYWl0Rm9yUmVzcG9uc2UocmVxdWVzdCk7XG4gICAgcmV0dXJuIGRhdGE7XG59XG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2lnbmVyKHBhcmFtcykge1xuICAgIGNvbnN0IHsgc2lnbmVyVHlwZSwgbWV0YWRhdGEsIGNvbW11bmljYXRvciwgY2FsbGJhY2sgfSA9IHBhcmFtcztcbiAgICBzd2l0Y2ggKHNpZ25lclR5cGUpIHtcbiAgICAgICAgY2FzZSAnc2N3Jzoge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBTQ1dTaWduZXIoe1xuICAgICAgICAgICAgICAgIG1ldGFkYXRhLFxuICAgICAgICAgICAgICAgIGNhbGxiYWNrLFxuICAgICAgICAgICAgICAgIGNvbW11bmljYXRvcixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ3dhbGxldGxpbmsnOiB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFdhbGxldExpbmtTaWduZXIoe1xuICAgICAgICAgICAgICAgIG1ldGFkYXRhLFxuICAgICAgICAgICAgICAgIGNhbGxiYWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5hc3luYyBmdW5jdGlvbiBsaXN0ZW5Gb3JXYWxsZXRMaW5rU2Vzc2lvblJlcXVlc3QoY29tbXVuaWNhdG9yLCBtZXRhZGF0YSwgY2FsbGJhY2ssIGhhbmRzaGFrZVJlcXVlc3QpIHtcbiAgICBhd2FpdCBjb21tdW5pY2F0b3Iub25NZXNzYWdlKCh7IGV2ZW50IH0pID0+IGV2ZW50ID09PSAnV2FsbGV0TGlua1Nlc3Npb25SZXF1ZXN0Jyk7XG4gICAgLy8gdGVtcG9yYXJ5IHdhbGxldGxpbmsgc2lnbmVyIGluc3RhbmNlIHRvIGhhbmRsZSBXYWxsZXRMaW5rU2Vzc2lvblJlcXVlc3RcbiAgICAvLyB3aWxsIHJldmlzaXQgdGhpcyB3aGVuIHJlZmFjdG9yaW5nIHRoZSB3YWxsZXRsaW5rIHNpZ25lclxuICAgIGNvbnN0IHdhbGxldGxpbmsgPSBuZXcgV2FsbGV0TGlua1NpZ25lcih7XG4gICAgICAgIG1ldGFkYXRhLFxuICAgICAgICBjYWxsYmFjayxcbiAgICB9KTtcbiAgICAvLyBzZW5kIHdhbGxldCBsaW5rIHNlc3Npb24gdG8gcG9wdXBcbiAgICBjb21tdW5pY2F0b3IucG9zdE1lc3NhZ2Uoe1xuICAgICAgICBldmVudDogJ1dhbGxldExpbmtVcGRhdGUnLFxuICAgICAgICBkYXRhOiB7IHNlc3Npb246IHdhbGxldGxpbmsuZ2V0U2Vzc2lvbigpIH0sXG4gICAgfSk7XG4gICAgLy8gd2FpdCBmb3IgaGFuZHNoYWtlIHRvIGNvbXBsZXRlXG4gICAgYXdhaXQgd2FsbGV0bGluay5oYW5kc2hha2UoaGFuZHNoYWtlUmVxdWVzdCk7XG4gICAgLy8gc2VuZCBjb25uZWN0ZWQgc3RhdHVzIHRvIHBvcHVwXG4gICAgY29tbXVuaWNhdG9yLnBvc3RNZXNzYWdlKHtcbiAgICAgICAgZXZlbnQ6ICdXYWxsZXRMaW5rVXBkYXRlJyxcbiAgICAgICAgZGF0YTogeyBjb25uZWN0ZWQ6IHRydWUgfSxcbiAgICB9KTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWwuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/util.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/WalletLinkSigner.js": /*!************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/WalletLinkSigner.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WalletLinkSigner: () => (/* binding */ WalletLinkSigner)\n/* harmony export */ });\n/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/constants.js\");\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../core/storage/ScopedLocalStorage.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/storage/ScopedLocalStorage.js\");\n/* harmony import */ var _core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../core/telemetry/events/walletlink-signer.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/walletlink-signer.js\");\n/* harmony import */ var _core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../core/telemetry/utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/utils.js\");\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n/* harmony import */ var _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../store/correlation-ids/store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/correlation-ids/store.js\");\n/* harmony import */ var _util_provider_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/provider.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/provider.js\");\n/* harmony import */ var _vendor_js_eth_eip712_util_index_cjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../vendor-js/eth-eip712-util/index.cjs */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/index.cjs\");\n/* harmony import */ var _relay_WalletLinkRelay_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./relay/WalletLinkRelay.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/WalletLinkRelay.js\");\n/* harmony import */ var _relay_constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./relay/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/constants.js\");\n/* harmony import */ var _relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./relay/type/Web3Response.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/Web3Response.js\");\n/* provided dependency */ var Buffer = __webpack_require__(/*! buffer */ \"(app-pages-browser)/./node_modules/buffer/index.js\")[\"Buffer\"];\n// Copyright (c) 2018-2024 Coinbase, Inc. <https://www.coinbase.com/>\n\n\n\n\n\n\n\n\n\n\n\n\nconst DEFAULT_CHAIN_ID_KEY = 'DefaultChainId';\nconst DEFAULT_JSON_RPC_URL = 'DefaultJsonRpcUrl';\n// original source: https://github.com/coinbase/coinbase-wallet-sdk/blob/v3.7.1/packages/wallet-sdk/src/provider/CoinbaseWalletProvider.ts\nclass WalletLinkSigner {\n constructor(options) {\n this._relay = null;\n this._addresses = [];\n this.metadata = options.metadata;\n this._storage = new _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_0__.ScopedLocalStorage('walletlink', _core_constants_js__WEBPACK_IMPORTED_MODULE_1__.WALLETLINK_URL);\n this.callback = options.callback || null;\n const cachedAddresses = this._storage.getItem(_relay_constants_js__WEBPACK_IMPORTED_MODULE_2__.LOCAL_STORAGE_ADDRESSES_KEY);\n if (cachedAddresses) {\n const addresses = cachedAddresses.split(' ');\n if (addresses[0] !== '') {\n this._addresses = addresses.map((address) => (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(address));\n }\n }\n this.initializeRelay();\n }\n getSession() {\n const relay = this.initializeRelay();\n const { id, secret } = relay.getWalletLinkSession();\n return { id, secret };\n }\n async handshake(args) {\n // only eth_requestAccounts is supported for handshake in WalletLink\n const method = 'eth_requestAccounts';\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_4__.correlationIds.get(args);\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logHandshakeStarted)({\n method,\n correlationId,\n });\n try {\n await this._eth_requestAccounts();\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logHandshakeCompleted)({\n method,\n correlationId,\n });\n }\n catch (error) {\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logHandshakeError)({\n method,\n correlationId,\n errorMessage: (0,_core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__.parseErrorMessageFromAny)(error),\n });\n throw error;\n }\n }\n get selectedAddress() {\n return this._addresses[0] || undefined;\n }\n get jsonRpcUrl() {\n var _a;\n return (_a = this._storage.getItem(DEFAULT_JSON_RPC_URL)) !== null && _a !== void 0 ? _a : undefined;\n }\n set jsonRpcUrl(value) {\n this._storage.setItem(DEFAULT_JSON_RPC_URL, value);\n }\n updateProviderInfo(jsonRpcUrl, chainId) {\n var _a;\n this.jsonRpcUrl = jsonRpcUrl;\n // emit chainChanged event if necessary\n const originalChainId = this.getChainId();\n this._storage.setItem(DEFAULT_CHAIN_ID_KEY, chainId.toString(10));\n const chainChanged = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureIntNumber)(chainId) !== originalChainId;\n if (chainChanged) {\n (_a = this.callback) === null || _a === void 0 ? void 0 : _a.call(this, 'chainChanged', (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.hexStringFromNumber)(chainId));\n }\n }\n async watchAsset(params) {\n const request = (Array.isArray(params) ? params[0] : params);\n if (!request.type) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams('Type is required');\n }\n if ((request === null || request === void 0 ? void 0 : request.type) !== 'ERC20') {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams(`Asset of type '${request.type}' is not supported`);\n }\n if (!(request === null || request === void 0 ? void 0 : request.options)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams('Options are required');\n }\n if (!(request === null || request === void 0 ? void 0 : request.options.address)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams('Address is required');\n }\n const chainId = this.getChainId();\n const { address, symbol, image, decimals } = request.options;\n const relay = this.initializeRelay();\n const result = await relay.watchAsset(request.type, address, symbol, decimals, image, chainId === null || chainId === void 0 ? void 0 : chainId.toString());\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(result))\n return false;\n return !!result.result;\n }\n async addEthereumChain(params) {\n var _a, _b;\n const request = params[0];\n if (((_a = request.rpcUrls) === null || _a === void 0 ? void 0 : _a.length) === 0) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams('please pass in at least 1 rpcUrl');\n }\n if (!request.chainName || request.chainName.trim() === '') {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams('chainName is a required field');\n }\n if (!request.nativeCurrency) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams('nativeCurrency is a required field');\n }\n const chainIdNumber = Number.parseInt(request.chainId, 16);\n if (chainIdNumber === this.getChainId()) {\n return false;\n }\n const relay = this.initializeRelay();\n const { rpcUrls = [], blockExplorerUrls = [], chainName, iconUrls = [], nativeCurrency, } = request;\n const res = await relay.addEthereumChain(chainIdNumber.toString(), rpcUrls, iconUrls, blockExplorerUrls, chainName, nativeCurrency);\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n return false;\n if (((_b = res.result) === null || _b === void 0 ? void 0 : _b.isApproved) === true) {\n this.updateProviderInfo(rpcUrls[0], chainIdNumber);\n return null;\n }\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.internal('unable to add ethereum chain');\n }\n async switchEthereumChain(params) {\n const request = params[0];\n const chainId = Number.parseInt(request.chainId, 16);\n const relay = this.initializeRelay();\n const res = await relay.switchEthereumChain(chainId.toString(10), this.selectedAddress || undefined);\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n const switchResponse = res.result;\n if (switchResponse.isApproved && switchResponse.rpcUrl.length > 0) {\n this.updateProviderInfo(switchResponse.rpcUrl, chainId);\n }\n return null;\n }\n async cleanup() {\n this.callback = null;\n if (this._relay) {\n this._relay.resetAndReload();\n }\n this._storage.clear();\n }\n _setAddresses(addresses, _) {\n var _a;\n if (!Array.isArray(addresses)) {\n throw new Error('addresses is not an array');\n }\n const newAddresses = addresses.map((address) => (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(address));\n if (JSON.stringify(newAddresses) === JSON.stringify(this._addresses)) {\n return;\n }\n this._addresses = newAddresses;\n (_a = this.callback) === null || _a === void 0 ? void 0 : _a.call(this, 'accountsChanged', newAddresses);\n this._storage.setItem(_relay_constants_js__WEBPACK_IMPORTED_MODULE_2__.LOCAL_STORAGE_ADDRESSES_KEY, newAddresses.join(' '));\n }\n async request(request) {\n const correlationId = _store_correlation_ids_store_js__WEBPACK_IMPORTED_MODULE_4__.correlationIds.get(request);\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logRequestStarted)({ method: request.method, correlationId });\n try {\n const result = await this._request(request);\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logRequestCompleted)({ method: request.method, correlationId });\n return result;\n }\n catch (error) {\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logRequestError)({\n method: request.method,\n correlationId,\n errorMessage: (0,_core_telemetry_utils_js__WEBPACK_IMPORTED_MODULE_6__.parseErrorMessageFromAny)(error),\n });\n throw error;\n }\n }\n async _request(request) {\n const params = request.params || [];\n switch (request.method) {\n case 'eth_accounts':\n return [...this._addresses];\n case 'eth_coinbase':\n return this.selectedAddress || null;\n case 'net_version':\n return this.getChainId().toString(10);\n case 'eth_chainId':\n return (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.hexStringFromNumber)(this.getChainId());\n case 'eth_requestAccounts':\n return this._eth_requestAccounts();\n case 'eth_ecRecover':\n case 'personal_ecRecover':\n return this.ecRecover(request);\n case 'personal_sign':\n return this.personalSign(request);\n case 'eth_signTransaction':\n return this._eth_signTransaction(params);\n case 'eth_sendRawTransaction':\n return this._eth_sendRawTransaction(params);\n case 'eth_sendTransaction':\n return this._eth_sendTransaction(params);\n case 'eth_signTypedData_v1':\n case 'eth_signTypedData_v3':\n case 'eth_signTypedData_v4':\n case 'eth_signTypedData':\n return this.signTypedData(request);\n case 'wallet_addEthereumChain':\n return this.addEthereumChain(params);\n case 'wallet_switchEthereumChain':\n return this.switchEthereumChain(params);\n case 'wallet_watchAsset':\n return this.watchAsset(params);\n default:\n if (!this.jsonRpcUrl)\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.internal('No RPC URL set for chain');\n return (0,_util_provider_js__WEBPACK_IMPORTED_MODULE_9__.fetchRPCRequest)(request, this.jsonRpcUrl);\n }\n }\n _ensureKnownAddress(addressString) {\n const addressStr = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(addressString);\n const lowercaseAddresses = this._addresses.map((address) => (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(address));\n if (!lowercaseAddresses.includes(addressStr)) {\n throw new Error('Unknown Ethereum address');\n }\n }\n _prepareTransactionParams(tx) {\n const fromAddress = tx.from ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(tx.from) : this.selectedAddress;\n if (!fromAddress) {\n throw new Error('Ethereum address is unavailable');\n }\n this._ensureKnownAddress(fromAddress);\n const toAddress = tx.to ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(tx.to) : null;\n const weiValue = tx.value != null ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureBigInt)(tx.value) : BigInt(0);\n const data = tx.data ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureBuffer)(tx.data) : Buffer.alloc(0);\n const nonce = tx.nonce != null ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureIntNumber)(tx.nonce) : null;\n const gasPriceInWei = tx.gasPrice != null ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureBigInt)(tx.gasPrice) : null;\n const maxFeePerGas = tx.maxFeePerGas != null ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureBigInt)(tx.maxFeePerGas) : null;\n const maxPriorityFeePerGas = tx.maxPriorityFeePerGas != null ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureBigInt)(tx.maxPriorityFeePerGas) : null;\n const gasLimit = tx.gas != null ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureBigInt)(tx.gas) : null;\n const chainId = tx.chainId ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureIntNumber)(tx.chainId) : this.getChainId();\n return {\n fromAddress,\n toAddress,\n weiValue,\n data,\n nonce,\n gasPriceInWei,\n maxFeePerGas,\n maxPriorityFeePerGas,\n gasLimit,\n chainId,\n };\n }\n async ecRecover(request) {\n const { method, params } = request;\n if (!Array.isArray(params))\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams();\n const relay = this.initializeRelay();\n const res = await relay.sendRequest({\n method: 'ethereumAddressFromSignedMessage',\n params: {\n message: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.encodeToHexString)(params[0]),\n signature: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.encodeToHexString)(params[1]),\n addPrefix: method === 'personal_ecRecover',\n },\n });\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n return res.result;\n }\n getChainId() {\n var _a;\n return Number.parseInt((_a = this._storage.getItem(DEFAULT_CHAIN_ID_KEY)) !== null && _a !== void 0 ? _a : '1', 10);\n }\n async _eth_requestAccounts() {\n var _a, _b;\n if (this._addresses.length > 0) {\n (_a = this.callback) === null || _a === void 0 ? void 0 : _a.call(this, 'connect', { chainId: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.hexStringFromNumber)(this.getChainId()) });\n return this._addresses;\n }\n const relay = this.initializeRelay();\n const res = await relay.requestEthereumAccounts();\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n if (!res.result) {\n throw new Error('accounts received is empty');\n }\n this._setAddresses(res.result);\n (_b = this.callback) === null || _b === void 0 ? void 0 : _b.call(this, 'connect', { chainId: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.hexStringFromNumber)(this.getChainId()) });\n return this._addresses;\n }\n async personalSign({ params }) {\n if (!Array.isArray(params))\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams();\n const address = params[1];\n const rawData = params[0];\n this._ensureKnownAddress(address);\n const relay = this.initializeRelay();\n const res = await relay.sendRequest({\n method: 'signEthereumMessage',\n params: {\n address: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(address),\n message: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.encodeToHexString)(rawData),\n addPrefix: true,\n typedDataJson: null,\n },\n });\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n return res.result;\n }\n async _eth_signTransaction(params) {\n const tx = this._prepareTransactionParams(params[0] || {});\n const relay = this.initializeRelay();\n const res = await relay.signEthereumTransaction(tx);\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n return res.result;\n }\n async _eth_sendRawTransaction(params) {\n const signedTransaction = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureBuffer)(params[0]);\n const relay = this.initializeRelay();\n const res = await relay.submitEthereumTransaction(signedTransaction, this.getChainId());\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n return res.result;\n }\n async _eth_sendTransaction(params) {\n const tx = this._prepareTransactionParams(params[0] || {});\n const relay = this.initializeRelay();\n const res = await relay.signAndSubmitEthereumTransaction(tx);\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n return res.result;\n }\n async signTypedData(request) {\n const { method, params } = request;\n if (!Array.isArray(params))\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_7__.standardErrors.rpc.invalidParams();\n const encode = (input) => {\n const hashFuncMap = {\n eth_signTypedData_v1: _vendor_js_eth_eip712_util_index_cjs__WEBPACK_IMPORTED_MODULE_10__.hashForSignTypedDataLegacy,\n eth_signTypedData_v3: _vendor_js_eth_eip712_util_index_cjs__WEBPACK_IMPORTED_MODULE_10__.hashForSignTypedData_v3,\n eth_signTypedData_v4: _vendor_js_eth_eip712_util_index_cjs__WEBPACK_IMPORTED_MODULE_10__.hashForSignTypedData_v4,\n eth_signTypedData: _vendor_js_eth_eip712_util_index_cjs__WEBPACK_IMPORTED_MODULE_10__.hashForSignTypedData_v4,\n };\n return (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.hexStringFromBuffer)(hashFuncMap[method]({\n data: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureParsedJSONObject)(input),\n }), true);\n };\n const address = params[method === 'eth_signTypedData_v1' ? 1 : 0];\n const rawData = params[method === 'eth_signTypedData_v1' ? 0 : 1];\n this._ensureKnownAddress(address);\n const relay = this.initializeRelay();\n const res = await relay.sendRequest({\n method: 'signEthereumMessage',\n params: {\n address: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_3__.ensureAddressString)(address),\n message: encode(rawData),\n typedDataJson: JSON.stringify(rawData, null, 2),\n addPrefix: false,\n },\n });\n if ((0,_relay_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_8__.isErrorResponse)(res))\n throw res;\n return res.result;\n }\n initializeRelay() {\n if (!this._relay) {\n this._relay = new _relay_WalletLinkRelay_js__WEBPACK_IMPORTED_MODULE_11__.WalletLinkRelay({\n linkAPIUrl: _core_constants_js__WEBPACK_IMPORTED_MODULE_1__.WALLETLINK_URL,\n storage: this._storage,\n metadata: this.metadata,\n accountsCallback: this._setAddresses.bind(this),\n chainCallback: this.updateProviderInfo.bind(this),\n });\n }\n return this._relay;\n }\n}\n//# sourceMappingURL=WalletLinkSigner.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9XYWxsZXRMaW5rU2lnbmVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDeUQ7QUFDRztBQUNrQjtBQUM2RztBQUNsSDtBQUN3SDtBQUMzSDtBQUNiO0FBQ007QUFDRjtBQUNNO0FBQ0o7QUFDL0Q7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixtRkFBa0IsZUFBZSw4REFBYztBQUMzRTtBQUNBLHNEQUFzRCw0RUFBMkI7QUFDakY7QUFDQTtBQUNBO0FBQ0EsNkRBQTZELHVFQUFtQjtBQUNoRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsYUFBYTtBQUM3QixpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsMkVBQWM7QUFDNUMsUUFBUSxnR0FBbUI7QUFDM0I7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsWUFBWSxrR0FBcUI7QUFDakM7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsWUFBWSw4RkFBaUI7QUFDN0I7QUFDQTtBQUNBLDhCQUE4QixrRkFBd0I7QUFDdEQsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLG1FQUFlO0FBQzVDO0FBQ0Esb0dBQW9HLHVFQUFtQjtBQUN2SDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGlFQUFjO0FBQ2hDO0FBQ0E7QUFDQSxrQkFBa0IsaUVBQWMscUNBQXFDLGFBQWE7QUFDbEY7QUFDQTtBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBO0FBQ0Esa0JBQWtCLGlFQUFjO0FBQ2hDO0FBQ0E7QUFDQSxnQkFBZ0IsbUNBQW1DO0FBQ25EO0FBQ0E7QUFDQSxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGlFQUFjO0FBQ2hDO0FBQ0E7QUFDQSxrQkFBa0IsaUVBQWM7QUFDaEM7QUFDQTtBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isa0ZBQWtGO0FBQ2xHO0FBQ0EsWUFBWSw0RUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxpRUFBYztBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0RBQXdELHVFQUFtQjtBQUMzRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDRFQUEyQjtBQUN6RDtBQUNBO0FBQ0EsOEJBQThCLDJFQUFjO0FBQzVDLFFBQVEsOEZBQWlCLEdBQUcsdUNBQXVDO0FBQ25FO0FBQ0E7QUFDQSxZQUFZLGdHQUFtQixHQUFHLHVDQUF1QztBQUN6RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDRGQUFlO0FBQzNCO0FBQ0E7QUFDQSw4QkFBOEIsa0ZBQXdCO0FBQ3RELGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qix1RUFBbUI7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixpRUFBYztBQUN4Qyx1QkFBdUIsa0VBQWU7QUFDdEM7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLHVFQUFtQjtBQUM5QyxvRUFBb0UsdUVBQW1CO0FBQ3ZGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsdUVBQW1CO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHVFQUFtQjtBQUNyRCw0Q0FBNEMsZ0VBQVk7QUFDeEQsK0JBQStCLGdFQUFZLFlBQVksTUFBTTtBQUM3RCx5Q0FBeUMsbUVBQWU7QUFDeEQsb0RBQW9ELGdFQUFZO0FBQ2hFLHVEQUF1RCxnRUFBWTtBQUNuRSx1RUFBdUUsZ0VBQVk7QUFDbkYsMENBQTBDLGdFQUFZO0FBQ3RELHFDQUFxQyxtRUFBZTtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlCQUFpQjtBQUNqQztBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixxRUFBaUI7QUFDMUMsMkJBQTJCLHFFQUFpQjtBQUM1QztBQUNBLGFBQWE7QUFDYixTQUFTO0FBQ1QsWUFBWSw0RUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlHQUFpRyxTQUFTLHVFQUFtQixxQkFBcUI7QUFDbEo7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2RkFBNkYsU0FBUyx1RUFBbUIscUJBQXFCO0FBQzlJO0FBQ0E7QUFDQSx5QkFBeUIsUUFBUTtBQUNqQztBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5Qix1RUFBbUI7QUFDNUMseUJBQXlCLHFFQUFpQjtBQUMxQztBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVCxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUVBQWlFO0FBQ2pFO0FBQ0E7QUFDQSxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLGdFQUFZO0FBQzlDO0FBQ0E7QUFDQSxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUVBQWlFO0FBQ2pFO0FBQ0E7QUFDQSxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlCQUFpQjtBQUNqQztBQUNBLGtCQUFrQixpRUFBYztBQUNoQztBQUNBO0FBQ0Esc0NBQXNDLDZGQUFpQztBQUN2RSxzQ0FBc0MsMEZBQThCO0FBQ3BFLHNDQUFzQywwRkFBOEI7QUFDcEUsbUNBQW1DLDBGQUE4QjtBQUNqRTtBQUNBLG1CQUFtQix1RUFBbUI7QUFDdEMsc0JBQXNCLDBFQUFzQjtBQUM1QyxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5Qix1RUFBbUI7QUFDNUM7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVCxZQUFZLDRFQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsdUVBQWU7QUFDN0MsNEJBQTRCLDhEQUFjO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvV2FsbGV0TGlua1NpZ25lci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyNCBDb2luYmFzZSwgSW5jLiA8aHR0cHM6Ly93d3cuY29pbmJhc2UuY29tLz5cbmltcG9ydCB7IFdBTExFVExJTktfVVJMIH0gZnJvbSAnLi4vLi4vY29yZS9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgc3RhbmRhcmRFcnJvcnMgfSBmcm9tICcuLi8uLi9jb3JlL2Vycm9yL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBTY29wZWRMb2NhbFN0b3JhZ2UgfSBmcm9tICcuLi8uLi9jb3JlL3N0b3JhZ2UvU2NvcGVkTG9jYWxTdG9yYWdlLmpzJztcbmltcG9ydCB7IGxvZ0hhbmRzaGFrZUNvbXBsZXRlZCwgbG9nSGFuZHNoYWtlRXJyb3IsIGxvZ0hhbmRzaGFrZVN0YXJ0ZWQsIGxvZ1JlcXVlc3RDb21wbGV0ZWQsIGxvZ1JlcXVlc3RFcnJvciwgbG9nUmVxdWVzdFN0YXJ0ZWQsIH0gZnJvbSAnLi4vLi4vY29yZS90ZWxlbWV0cnkvZXZlbnRzL3dhbGxldGxpbmstc2lnbmVyLmpzJztcbmltcG9ydCB7IHBhcnNlRXJyb3JNZXNzYWdlRnJvbUFueSB9IGZyb20gJy4uLy4uL2NvcmUvdGVsZW1ldHJ5L3V0aWxzLmpzJztcbmltcG9ydCB7IGVuY29kZVRvSGV4U3RyaW5nLCBlbnN1cmVBZGRyZXNzU3RyaW5nLCBlbnN1cmVCaWdJbnQsIGVuc3VyZUJ1ZmZlciwgZW5zdXJlSW50TnVtYmVyLCBlbnN1cmVQYXJzZWRKU09OT2JqZWN0LCBoZXhTdHJpbmdGcm9tQnVmZmVyLCBoZXhTdHJpbmdGcm9tTnVtYmVyLCB9IGZyb20gJy4uLy4uL2NvcmUvdHlwZS91dGlsLmpzJztcbmltcG9ydCB7IGNvcnJlbGF0aW9uSWRzIH0gZnJvbSAnLi4vLi4vc3RvcmUvY29ycmVsYXRpb24taWRzL3N0b3JlLmpzJztcbmltcG9ydCB7IGZldGNoUlBDUmVxdWVzdCB9IGZyb20gJy4uLy4uL3V0aWwvcHJvdmlkZXIuanMnO1xuaW1wb3J0IGVpcDcxMiBmcm9tICcuLi8uLi92ZW5kb3ItanMvZXRoLWVpcDcxMi11dGlsL2luZGV4LmNqcyc7XG5pbXBvcnQgeyBXYWxsZXRMaW5rUmVsYXkgfSBmcm9tICcuL3JlbGF5L1dhbGxldExpbmtSZWxheS5qcyc7XG5pbXBvcnQgeyBMT0NBTF9TVE9SQUdFX0FERFJFU1NFU19LRVkgfSBmcm9tICcuL3JlbGF5L2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgeyBpc0Vycm9yUmVzcG9uc2UgfSBmcm9tICcuL3JlbGF5L3R5cGUvV2ViM1Jlc3BvbnNlLmpzJztcbmNvbnN0IERFRkFVTFRfQ0hBSU5fSURfS0VZID0gJ0RlZmF1bHRDaGFpbklkJztcbmNvbnN0IERFRkFVTFRfSlNPTl9SUENfVVJMID0gJ0RlZmF1bHRKc29uUnBjVXJsJztcbi8vIG9yaWdpbmFsIHNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2NvaW5iYXNlL2NvaW5iYXNlLXdhbGxldC1zZGsvYmxvYi92My43LjEvcGFja2FnZXMvd2FsbGV0LXNkay9zcmMvcHJvdmlkZXIvQ29pbmJhc2VXYWxsZXRQcm92aWRlci50c1xuZXhwb3J0IGNsYXNzIFdhbGxldExpbmtTaWduZXIge1xuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5fcmVsYXkgPSBudWxsO1xuICAgICAgICB0aGlzLl9hZGRyZXNzZXMgPSBbXTtcbiAgICAgICAgdGhpcy5tZXRhZGF0YSA9IG9wdGlvbnMubWV0YWRhdGE7XG4gICAgICAgIHRoaXMuX3N0b3JhZ2UgPSBuZXcgU2NvcGVkTG9jYWxTdG9yYWdlKCd3YWxsZXRsaW5rJywgV0FMTEVUTElOS19VUkwpO1xuICAgICAgICB0aGlzLmNhbGxiYWNrID0gb3B0aW9ucy5jYWxsYmFjayB8fCBudWxsO1xuICAgICAgICBjb25zdCBjYWNoZWRBZGRyZXNzZXMgPSB0aGlzLl9zdG9yYWdlLmdldEl0ZW0oTE9DQUxfU1RPUkFHRV9BRERSRVNTRVNfS0VZKTtcbiAgICAgICAgaWYgKGNhY2hlZEFkZHJlc3Nlcykge1xuICAgICAgICAgICAgY29uc3QgYWRkcmVzc2VzID0gY2FjaGVkQWRkcmVzc2VzLnNwbGl0KCcgJyk7XG4gICAgICAgICAgICBpZiAoYWRkcmVzc2VzWzBdICE9PSAnJykge1xuICAgICAgICAgICAgICAgIHRoaXMuX2FkZHJlc3NlcyA9IGFkZHJlc3Nlcy5tYXAoKGFkZHJlc3MpID0+IGVuc3VyZUFkZHJlc3NTdHJpbmcoYWRkcmVzcykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVJlbGF5KCk7XG4gICAgfVxuICAgIGdldFNlc3Npb24oKSB7XG4gICAgICAgIGNvbnN0IHJlbGF5ID0gdGhpcy5pbml0aWFsaXplUmVsYXkoKTtcbiAgICAgICAgY29uc3QgeyBpZCwgc2VjcmV0IH0gPSByZWxheS5nZXRXYWxsZXRMaW5rU2Vzc2lvbigpO1xuICAgICAgICByZXR1cm4geyBpZCwgc2VjcmV0IH07XG4gICAgfVxuICAgIGFzeW5jIGhhbmRzaGFrZShhcmdzKSB7XG4gICAgICAgIC8vIG9ubHkgZXRoX3JlcXVlc3RBY2NvdW50cyBpcyBzdXBwb3J0ZWQgZm9yIGhhbmRzaGFrZSBpbiBXYWxsZXRMaW5rXG4gICAgICAgIGNvbnN0IG1ldGhvZCA9ICdldGhfcmVxdWVzdEFjY291bnRzJztcbiAgICAgICAgY29uc3QgY29ycmVsYXRpb25JZCA9IGNvcnJlbGF0aW9uSWRzLmdldChhcmdzKTtcbiAgICAgICAgbG9nSGFuZHNoYWtlU3RhcnRlZCh7XG4gICAgICAgICAgICBtZXRob2QsXG4gICAgICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICB9KTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuX2V0aF9yZXF1ZXN0QWNjb3VudHMoKTtcbiAgICAgICAgICAgIGxvZ0hhbmRzaGFrZUNvbXBsZXRlZCh7XG4gICAgICAgICAgICAgICAgbWV0aG9kLFxuICAgICAgICAgICAgICAgIGNvcnJlbGF0aW9uSWQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIGxvZ0hhbmRzaGFrZUVycm9yKHtcbiAgICAgICAgICAgICAgICBtZXRob2QsXG4gICAgICAgICAgICAgICAgY29ycmVsYXRpb25JZCxcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IHBhcnNlRXJyb3JNZXNzYWdlRnJvbUFueShlcnJvciksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBzZWxlY3RlZEFkZHJlc3MoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hZGRyZXNzZXNbMF0gfHwgdW5kZWZpbmVkO1xuICAgIH1cbiAgICBnZXQganNvblJwY1VybCgpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICByZXR1cm4gKF9hID0gdGhpcy5fc3RvcmFnZS5nZXRJdGVtKERFRkFVTFRfSlNPTl9SUENfVVJMKSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdW5kZWZpbmVkO1xuICAgIH1cbiAgICBzZXQganNvblJwY1VybCh2YWx1ZSkge1xuICAgICAgICB0aGlzLl9zdG9yYWdlLnNldEl0ZW0oREVGQVVMVF9KU09OX1JQQ19VUkwsIHZhbHVlKTtcbiAgICB9XG4gICAgdXBkYXRlUHJvdmlkZXJJbmZvKGpzb25ScGNVcmwsIGNoYWluSWQpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICB0aGlzLmpzb25ScGNVcmwgPSBqc29uUnBjVXJsO1xuICAgICAgICAvLyBlbWl0IGNoYWluQ2hhbmdlZCBldmVudCBpZiBuZWNlc3NhcnlcbiAgICAgICAgY29uc3Qgb3JpZ2luYWxDaGFpbklkID0gdGhpcy5nZXRDaGFpbklkKCk7XG4gICAgICAgIHRoaXMuX3N0b3JhZ2Uuc2V0SXRlbShERUZBVUxUX0NIQUlOX0lEX0tFWSwgY2hhaW5JZC50b1N0cmluZygxMCkpO1xuICAgICAgICBjb25zdCBjaGFpbkNoYW5nZWQgPSBlbnN1cmVJbnROdW1iZXIoY2hhaW5JZCkgIT09IG9yaWdpbmFsQ2hhaW5JZDtcbiAgICAgICAgaWYgKGNoYWluQ2hhbmdlZCkge1xuICAgICAgICAgICAgKF9hID0gdGhpcy5jYWxsYmFjaykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcywgJ2NoYWluQ2hhbmdlZCcsIGhleFN0cmluZ0Zyb21OdW1iZXIoY2hhaW5JZCkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGFzeW5jIHdhdGNoQXNzZXQocGFyYW1zKSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoQXJyYXkuaXNBcnJheShwYXJhbXMpID8gcGFyYW1zWzBdIDogcGFyYW1zKTtcbiAgICAgICAgaWYgKCFyZXF1ZXN0LnR5cGUpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCdUeXBlIGlzIHJlcXVpcmVkJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKChyZXF1ZXN0ID09PSBudWxsIHx8IHJlcXVlc3QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHJlcXVlc3QudHlwZSkgIT09ICdFUkMyMCcpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKGBBc3NldCBvZiB0eXBlICcke3JlcXVlc3QudHlwZX0nIGlzIG5vdCBzdXBwb3J0ZWRgKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIShyZXF1ZXN0ID09PSBudWxsIHx8IHJlcXVlc3QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHJlcXVlc3Qub3B0aW9ucykpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCdPcHRpb25zIGFyZSByZXF1aXJlZCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghKHJlcXVlc3QgPT09IG51bGwgfHwgcmVxdWVzdCA9PT0gdm9pZCAwID8gdm9pZCAwIDogcmVxdWVzdC5vcHRpb25zLmFkZHJlc3MpKSB7XG4gICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygnQWRkcmVzcyBpcyByZXF1aXJlZCcpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNoYWluSWQgPSB0aGlzLmdldENoYWluSWQoKTtcbiAgICAgICAgY29uc3QgeyBhZGRyZXNzLCBzeW1ib2wsIGltYWdlLCBkZWNpbWFscyB9ID0gcmVxdWVzdC5vcHRpb25zO1xuICAgICAgICBjb25zdCByZWxheSA9IHRoaXMuaW5pdGlhbGl6ZVJlbGF5KCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHJlbGF5LndhdGNoQXNzZXQocmVxdWVzdC50eXBlLCBhZGRyZXNzLCBzeW1ib2wsIGRlY2ltYWxzLCBpbWFnZSwgY2hhaW5JZCA9PT0gbnVsbCB8fCBjaGFpbklkID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjaGFpbklkLnRvU3RyaW5nKCkpO1xuICAgICAgICBpZiAoaXNFcnJvclJlc3BvbnNlKHJlc3VsdCkpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIHJldHVybiAhIXJlc3VsdC5yZXN1bHQ7XG4gICAgfVxuICAgIGFzeW5jIGFkZEV0aGVyZXVtQ2hhaW4ocGFyYW1zKSB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSBwYXJhbXNbMF07XG4gICAgICAgIGlmICgoKF9hID0gcmVxdWVzdC5ycGNVcmxzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubGVuZ3RoKSA9PT0gMCkge1xuICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoJ3BsZWFzZSBwYXNzIGluIGF0IGxlYXN0IDEgcnBjVXJsJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFyZXF1ZXN0LmNoYWluTmFtZSB8fCByZXF1ZXN0LmNoYWluTmFtZS50cmltKCkgPT09ICcnKSB7XG4gICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygnY2hhaW5OYW1lIGlzIGEgcmVxdWlyZWQgZmllbGQnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXJlcXVlc3QubmF0aXZlQ3VycmVuY3kpIHtcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCduYXRpdmVDdXJyZW5jeSBpcyBhIHJlcXVpcmVkIGZpZWxkJyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY2hhaW5JZE51bWJlciA9IE51bWJlci5wYXJzZUludChyZXF1ZXN0LmNoYWluSWQsIDE2KTtcbiAgICAgICAgaWYgKGNoYWluSWROdW1iZXIgPT09IHRoaXMuZ2V0Q2hhaW5JZCgpKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVsYXkgPSB0aGlzLmluaXRpYWxpemVSZWxheSgpO1xuICAgICAgICBjb25zdCB7IHJwY1VybHMgPSBbXSwgYmxvY2tFeHBsb3JlclVybHMgPSBbXSwgY2hhaW5OYW1lLCBpY29uVXJscyA9IFtdLCBuYXRpdmVDdXJyZW5jeSwgfSA9IHJlcXVlc3Q7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlbGF5LmFkZEV0aGVyZXVtQ2hhaW4oY2hhaW5JZE51bWJlci50b1N0cmluZygpLCBycGNVcmxzLCBpY29uVXJscywgYmxvY2tFeHBsb3JlclVybHMsIGNoYWluTmFtZSwgbmF0aXZlQ3VycmVuY3kpO1xuICAgICAgICBpZiAoaXNFcnJvclJlc3BvbnNlKHJlcykpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmICgoKF9iID0gcmVzLnJlc3VsdCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmlzQXBwcm92ZWQpID09PSB0cnVlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVByb3ZpZGVySW5mbyhycGNVcmxzWzBdLCBjaGFpbklkTnVtYmVyKTtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnRlcm5hbCgndW5hYmxlIHRvIGFkZCBldGhlcmV1bSBjaGFpbicpO1xuICAgIH1cbiAgICBhc3luYyBzd2l0Y2hFdGhlcmV1bUNoYWluKHBhcmFtcykge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gcGFyYW1zWzBdO1xuICAgICAgICBjb25zdCBjaGFpbklkID0gTnVtYmVyLnBhcnNlSW50KHJlcXVlc3QuY2hhaW5JZCwgMTYpO1xuICAgICAgICBjb25zdCByZWxheSA9IHRoaXMuaW5pdGlhbGl6ZVJlbGF5KCk7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlbGF5LnN3aXRjaEV0aGVyZXVtQ2hhaW4oY2hhaW5JZC50b1N0cmluZygxMCksIHRoaXMuc2VsZWN0ZWRBZGRyZXNzIHx8IHVuZGVmaW5lZCk7XG4gICAgICAgIGlmIChpc0Vycm9yUmVzcG9uc2UocmVzKSlcbiAgICAgICAgICAgIHRocm93IHJlcztcbiAgICAgICAgY29uc3Qgc3dpdGNoUmVzcG9uc2UgPSByZXMucmVzdWx0O1xuICAgICAgICBpZiAoc3dpdGNoUmVzcG9uc2UuaXNBcHByb3ZlZCAmJiBzd2l0Y2hSZXNwb25zZS5ycGNVcmwubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVQcm92aWRlckluZm8oc3dpdGNoUmVzcG9uc2UucnBjVXJsLCBjaGFpbklkKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgYXN5bmMgY2xlYW51cCgpIHtcbiAgICAgICAgdGhpcy5jYWxsYmFjayA9IG51bGw7XG4gICAgICAgIGlmICh0aGlzLl9yZWxheSkge1xuICAgICAgICAgICAgdGhpcy5fcmVsYXkucmVzZXRBbmRSZWxvYWQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zdG9yYWdlLmNsZWFyKCk7XG4gICAgfVxuICAgIF9zZXRBZGRyZXNzZXMoYWRkcmVzc2VzLCBfKSB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGFkZHJlc3NlcykpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYWRkcmVzc2VzIGlzIG5vdCBhbiBhcnJheScpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld0FkZHJlc3NlcyA9IGFkZHJlc3Nlcy5tYXAoKGFkZHJlc3MpID0+IGVuc3VyZUFkZHJlc3NTdHJpbmcoYWRkcmVzcykpO1xuICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkobmV3QWRkcmVzc2VzKSA9PT0gSlNPTi5zdHJpbmdpZnkodGhpcy5fYWRkcmVzc2VzKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2FkZHJlc3NlcyA9IG5ld0FkZHJlc3NlcztcbiAgICAgICAgKF9hID0gdGhpcy5jYWxsYmFjaykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcywgJ2FjY291bnRzQ2hhbmdlZCcsIG5ld0FkZHJlc3Nlcyk7XG4gICAgICAgIHRoaXMuX3N0b3JhZ2Uuc2V0SXRlbShMT0NBTF9TVE9SQUdFX0FERFJFU1NFU19LRVksIG5ld0FkZHJlc3Nlcy5qb2luKCcgJykpO1xuICAgIH1cbiAgICBhc3luYyByZXF1ZXN0KHJlcXVlc3QpIHtcbiAgICAgICAgY29uc3QgY29ycmVsYXRpb25JZCA9IGNvcnJlbGF0aW9uSWRzLmdldChyZXF1ZXN0KTtcbiAgICAgICAgbG9nUmVxdWVzdFN0YXJ0ZWQoeyBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLCBjb3JyZWxhdGlvbklkIH0pO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5fcmVxdWVzdChyZXF1ZXN0KTtcbiAgICAgICAgICAgIGxvZ1JlcXVlc3RDb21wbGV0ZWQoeyBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLCBjb3JyZWxhdGlvbklkIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIGxvZ1JlcXVlc3RFcnJvcih7XG4gICAgICAgICAgICAgICAgbWV0aG9kOiByZXF1ZXN0Lm1ldGhvZCxcbiAgICAgICAgICAgICAgICBjb3JyZWxhdGlvbklkLFxuICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogcGFyc2VFcnJvck1lc3NhZ2VGcm9tQW55KGVycm9yKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYXN5bmMgX3JlcXVlc3QocmVxdWVzdCkge1xuICAgICAgICBjb25zdCBwYXJhbXMgPSByZXF1ZXN0LnBhcmFtcyB8fCBbXTtcbiAgICAgICAgc3dpdGNoIChyZXF1ZXN0Lm1ldGhvZCkge1xuICAgICAgICAgICAgY2FzZSAnZXRoX2FjY291bnRzJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gWy4uLnRoaXMuX2FkZHJlc3Nlc107XG4gICAgICAgICAgICBjYXNlICdldGhfY29pbmJhc2UnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkQWRkcmVzcyB8fCBudWxsO1xuICAgICAgICAgICAgY2FzZSAnbmV0X3ZlcnNpb24nOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldENoYWluSWQoKS50b1N0cmluZygxMCk7XG4gICAgICAgICAgICBjYXNlICdldGhfY2hhaW5JZCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGhleFN0cmluZ0Zyb21OdW1iZXIodGhpcy5nZXRDaGFpbklkKCkpO1xuICAgICAgICAgICAgY2FzZSAnZXRoX3JlcXVlc3RBY2NvdW50cyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2V0aF9yZXF1ZXN0QWNjb3VudHMoKTtcbiAgICAgICAgICAgIGNhc2UgJ2V0aF9lY1JlY292ZXInOlxuICAgICAgICAgICAgY2FzZSAncGVyc29uYWxfZWNSZWNvdmVyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lY1JlY292ZXIocmVxdWVzdCk7XG4gICAgICAgICAgICBjYXNlICdwZXJzb25hbF9zaWduJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wZXJzb25hbFNpZ24ocmVxdWVzdCk7XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblRyYW5zYWN0aW9uJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fZXRoX3NpZ25UcmFuc2FjdGlvbihwYXJhbXMpO1xuICAgICAgICAgICAgY2FzZSAnZXRoX3NlbmRSYXdUcmFuc2FjdGlvbic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2V0aF9zZW5kUmF3VHJhbnNhY3Rpb24ocGFyYW1zKTtcbiAgICAgICAgICAgIGNhc2UgJ2V0aF9zZW5kVHJhbnNhY3Rpb24nOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9ldGhfc2VuZFRyYW5zYWN0aW9uKHBhcmFtcyk7XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92MSc6XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92Myc6XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YV92NCc6XG4gICAgICAgICAgICBjYXNlICdldGhfc2lnblR5cGVkRGF0YSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2lnblR5cGVkRGF0YShyZXF1ZXN0KTtcbiAgICAgICAgICAgIGNhc2UgJ3dhbGxldF9hZGRFdGhlcmV1bUNoYWluJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hZGRFdGhlcmV1bUNoYWluKHBhcmFtcyk7XG4gICAgICAgICAgICBjYXNlICd3YWxsZXRfc3dpdGNoRXRoZXJldW1DaGFpbic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3dpdGNoRXRoZXJldW1DaGFpbihwYXJhbXMpO1xuICAgICAgICAgICAgY2FzZSAnd2FsbGV0X3dhdGNoQXNzZXQnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLndhdGNoQXNzZXQocGFyYW1zKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmpzb25ScGNVcmwpXG4gICAgICAgICAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnRlcm5hbCgnTm8gUlBDIFVSTCBzZXQgZm9yIGNoYWluJyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZldGNoUlBDUmVxdWVzdChyZXF1ZXN0LCB0aGlzLmpzb25ScGNVcmwpO1xuICAgICAgICB9XG4gICAgfVxuICAgIF9lbnN1cmVLbm93bkFkZHJlc3MoYWRkcmVzc1N0cmluZykge1xuICAgICAgICBjb25zdCBhZGRyZXNzU3RyID0gZW5zdXJlQWRkcmVzc1N0cmluZyhhZGRyZXNzU3RyaW5nKTtcbiAgICAgICAgY29uc3QgbG93ZXJjYXNlQWRkcmVzc2VzID0gdGhpcy5fYWRkcmVzc2VzLm1hcCgoYWRkcmVzcykgPT4gZW5zdXJlQWRkcmVzc1N0cmluZyhhZGRyZXNzKSk7XG4gICAgICAgIGlmICghbG93ZXJjYXNlQWRkcmVzc2VzLmluY2x1ZGVzKGFkZHJlc3NTdHIpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gRXRoZXJldW0gYWRkcmVzcycpO1xuICAgICAgICB9XG4gICAgfVxuICAgIF9wcmVwYXJlVHJhbnNhY3Rpb25QYXJhbXModHgpIHtcbiAgICAgICAgY29uc3QgZnJvbUFkZHJlc3MgPSB0eC5mcm9tID8gZW5zdXJlQWRkcmVzc1N0cmluZyh0eC5mcm9tKSA6IHRoaXMuc2VsZWN0ZWRBZGRyZXNzO1xuICAgICAgICBpZiAoIWZyb21BZGRyZXNzKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0V0aGVyZXVtIGFkZHJlc3MgaXMgdW5hdmFpbGFibGUnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9lbnN1cmVLbm93bkFkZHJlc3MoZnJvbUFkZHJlc3MpO1xuICAgICAgICBjb25zdCB0b0FkZHJlc3MgPSB0eC50byA/IGVuc3VyZUFkZHJlc3NTdHJpbmcodHgudG8pIDogbnVsbDtcbiAgICAgICAgY29uc3Qgd2VpVmFsdWUgPSB0eC52YWx1ZSAhPSBudWxsID8gZW5zdXJlQmlnSW50KHR4LnZhbHVlKSA6IEJpZ0ludCgwKTtcbiAgICAgICAgY29uc3QgZGF0YSA9IHR4LmRhdGEgPyBlbnN1cmVCdWZmZXIodHguZGF0YSkgOiBCdWZmZXIuYWxsb2MoMCk7XG4gICAgICAgIGNvbnN0IG5vbmNlID0gdHgubm9uY2UgIT0gbnVsbCA/IGVuc3VyZUludE51bWJlcih0eC5ub25jZSkgOiBudWxsO1xuICAgICAgICBjb25zdCBnYXNQcmljZUluV2VpID0gdHguZ2FzUHJpY2UgIT0gbnVsbCA/IGVuc3VyZUJpZ0ludCh0eC5nYXNQcmljZSkgOiBudWxsO1xuICAgICAgICBjb25zdCBtYXhGZWVQZXJHYXMgPSB0eC5tYXhGZWVQZXJHYXMgIT0gbnVsbCA/IGVuc3VyZUJpZ0ludCh0eC5tYXhGZWVQZXJHYXMpIDogbnVsbDtcbiAgICAgICAgY29uc3QgbWF4UHJpb3JpdHlGZWVQZXJHYXMgPSB0eC5tYXhQcmlvcml0eUZlZVBlckdhcyAhPSBudWxsID8gZW5zdXJlQmlnSW50KHR4Lm1heFByaW9yaXR5RmVlUGVyR2FzKSA6IG51bGw7XG4gICAgICAgIGNvbnN0IGdhc0xpbWl0ID0gdHguZ2FzICE9IG51bGwgPyBlbnN1cmVCaWdJbnQodHguZ2FzKSA6IG51bGw7XG4gICAgICAgIGNvbnN0IGNoYWluSWQgPSB0eC5jaGFpbklkID8gZW5zdXJlSW50TnVtYmVyKHR4LmNoYWluSWQpIDogdGhpcy5nZXRDaGFpbklkKCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmcm9tQWRkcmVzcyxcbiAgICAgICAgICAgIHRvQWRkcmVzcyxcbiAgICAgICAgICAgIHdlaVZhbHVlLFxuICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgIG5vbmNlLFxuICAgICAgICAgICAgZ2FzUHJpY2VJbldlaSxcbiAgICAgICAgICAgIG1heEZlZVBlckdhcyxcbiAgICAgICAgICAgIG1heFByaW9yaXR5RmVlUGVyR2FzLFxuICAgICAgICAgICAgZ2FzTGltaXQsXG4gICAgICAgICAgICBjaGFpbklkLFxuICAgICAgICB9O1xuICAgIH1cbiAgICBhc3luYyBlY1JlY292ZXIocmVxdWVzdCkge1xuICAgICAgICBjb25zdCB7IG1ldGhvZCwgcGFyYW1zIH0gPSByZXF1ZXN0O1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGFyYW1zKSlcbiAgICAgICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKCk7XG4gICAgICAgIGNvbnN0IHJlbGF5ID0gdGhpcy5pbml0aWFsaXplUmVsYXkoKTtcbiAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgcmVsYXkuc2VuZFJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnZXRoZXJldW1BZGRyZXNzRnJvbVNpZ25lZE1lc3NhZ2UnLFxuICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgbWVzc2FnZTogZW5jb2RlVG9IZXhTdHJpbmcocGFyYW1zWzBdKSxcbiAgICAgICAgICAgICAgICBzaWduYXR1cmU6IGVuY29kZVRvSGV4U3RyaW5nKHBhcmFtc1sxXSksXG4gICAgICAgICAgICAgICAgYWRkUHJlZml4OiBtZXRob2QgPT09ICdwZXJzb25hbF9lY1JlY292ZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChpc0Vycm9yUmVzcG9uc2UocmVzKSlcbiAgICAgICAgICAgIHRocm93IHJlcztcbiAgICAgICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gICAgfVxuICAgIGdldENoYWluSWQoKSB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgcmV0dXJuIE51bWJlci5wYXJzZUludCgoX2EgPSB0aGlzLl9zdG9yYWdlLmdldEl0ZW0oREVGQVVMVF9DSEFJTl9JRF9LRVkpKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnMScsIDEwKTtcbiAgICB9XG4gICAgYXN5bmMgX2V0aF9yZXF1ZXN0QWNjb3VudHMoKSB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGlmICh0aGlzLl9hZGRyZXNzZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgKF9hID0gdGhpcy5jYWxsYmFjaykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcywgJ2Nvbm5lY3QnLCB7IGNoYWluSWQ6IGhleFN0cmluZ0Zyb21OdW1iZXIodGhpcy5nZXRDaGFpbklkKCkpIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2FkZHJlc3NlcztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZWxheSA9IHRoaXMuaW5pdGlhbGl6ZVJlbGF5KCk7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlbGF5LnJlcXVlc3RFdGhlcmV1bUFjY291bnRzKCk7XG4gICAgICAgIGlmIChpc0Vycm9yUmVzcG9uc2UocmVzKSlcbiAgICAgICAgICAgIHRocm93IHJlcztcbiAgICAgICAgaWYgKCFyZXMucmVzdWx0KSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FjY291bnRzIHJlY2VpdmVkIGlzIGVtcHR5Jyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fc2V0QWRkcmVzc2VzKHJlcy5yZXN1bHQpO1xuICAgICAgICAoX2IgPSB0aGlzLmNhbGxiYWNrKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbCh0aGlzLCAnY29ubmVjdCcsIHsgY2hhaW5JZDogaGV4U3RyaW5nRnJvbU51bWJlcih0aGlzLmdldENoYWluSWQoKSkgfSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9hZGRyZXNzZXM7XG4gICAgfVxuICAgIGFzeW5jIHBlcnNvbmFsU2lnbih7IHBhcmFtcyB9KSB7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShwYXJhbXMpKVxuICAgICAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoKTtcbiAgICAgICAgY29uc3QgYWRkcmVzcyA9IHBhcmFtc1sxXTtcbiAgICAgICAgY29uc3QgcmF3RGF0YSA9IHBhcmFtc1swXTtcbiAgICAgICAgdGhpcy5fZW5zdXJlS25vd25BZGRyZXNzKGFkZHJlc3MpO1xuICAgICAgICBjb25zdCByZWxheSA9IHRoaXMuaW5pdGlhbGl6ZVJlbGF5KCk7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlbGF5LnNlbmRSZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogJ3NpZ25FdGhlcmV1bU1lc3NhZ2UnLFxuICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgYWRkcmVzczogZW5zdXJlQWRkcmVzc1N0cmluZyhhZGRyZXNzKSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBlbmNvZGVUb0hleFN0cmluZyhyYXdEYXRhKSxcbiAgICAgICAgICAgICAgICBhZGRQcmVmaXg6IHRydWUsXG4gICAgICAgICAgICAgICAgdHlwZWREYXRhSnNvbjogbnVsbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoaXNFcnJvclJlc3BvbnNlKHJlcykpXG4gICAgICAgICAgICB0aHJvdyByZXM7XG4gICAgICAgIHJldHVybiByZXMucmVzdWx0O1xuICAgIH1cbiAgICBhc3luYyBfZXRoX3NpZ25UcmFuc2FjdGlvbihwYXJhbXMpIHtcbiAgICAgICAgY29uc3QgdHggPSB0aGlzLl9wcmVwYXJlVHJhbnNhY3Rpb25QYXJhbXMocGFyYW1zWzBdIHx8IHt9KTtcbiAgICAgICAgY29uc3QgcmVsYXkgPSB0aGlzLmluaXRpYWxpemVSZWxheSgpO1xuICAgICAgICBjb25zdCByZXMgPSBhd2FpdCByZWxheS5zaWduRXRoZXJldW1UcmFuc2FjdGlvbih0eCk7XG4gICAgICAgIGlmIChpc0Vycm9yUmVzcG9uc2UocmVzKSlcbiAgICAgICAgICAgIHRocm93IHJlcztcbiAgICAgICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gICAgfVxuICAgIGFzeW5jIF9ldGhfc2VuZFJhd1RyYW5zYWN0aW9uKHBhcmFtcykge1xuICAgICAgICBjb25zdCBzaWduZWRUcmFuc2FjdGlvbiA9IGVuc3VyZUJ1ZmZlcihwYXJhbXNbMF0pO1xuICAgICAgICBjb25zdCByZWxheSA9IHRoaXMuaW5pdGlhbGl6ZVJlbGF5KCk7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlbGF5LnN1Ym1pdEV0aGVyZXVtVHJhbnNhY3Rpb24oc2lnbmVkVHJhbnNhY3Rpb24sIHRoaXMuZ2V0Q2hhaW5JZCgpKTtcbiAgICAgICAgaWYgKGlzRXJyb3JSZXNwb25zZShyZXMpKVxuICAgICAgICAgICAgdGhyb3cgcmVzO1xuICAgICAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgICB9XG4gICAgYXN5bmMgX2V0aF9zZW5kVHJhbnNhY3Rpb24ocGFyYW1zKSB7XG4gICAgICAgIGNvbnN0IHR4ID0gdGhpcy5fcHJlcGFyZVRyYW5zYWN0aW9uUGFyYW1zKHBhcmFtc1swXSB8fCB7fSk7XG4gICAgICAgIGNvbnN0IHJlbGF5ID0gdGhpcy5pbml0aWFsaXplUmVsYXkoKTtcbiAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgcmVsYXkuc2lnbkFuZFN1Ym1pdEV0aGVyZXVtVHJhbnNhY3Rpb24odHgpO1xuICAgICAgICBpZiAoaXNFcnJvclJlc3BvbnNlKHJlcykpXG4gICAgICAgICAgICB0aHJvdyByZXM7XG4gICAgICAgIHJldHVybiByZXMucmVzdWx0O1xuICAgIH1cbiAgICBhc3luYyBzaWduVHlwZWREYXRhKHJlcXVlc3QpIHtcbiAgICAgICAgY29uc3QgeyBtZXRob2QsIHBhcmFtcyB9ID0gcmVxdWVzdDtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcmFtcykpXG4gICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcygpO1xuICAgICAgICBjb25zdCBlbmNvZGUgPSAoaW5wdXQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGhhc2hGdW5jTWFwID0ge1xuICAgICAgICAgICAgICAgIGV0aF9zaWduVHlwZWREYXRhX3YxOiBlaXA3MTIuaGFzaEZvclNpZ25UeXBlZERhdGFMZWdhY3ksXG4gICAgICAgICAgICAgICAgZXRoX3NpZ25UeXBlZERhdGFfdjM6IGVpcDcxMi5oYXNoRm9yU2lnblR5cGVkRGF0YV92MyxcbiAgICAgICAgICAgICAgICBldGhfc2lnblR5cGVkRGF0YV92NDogZWlwNzEyLmhhc2hGb3JTaWduVHlwZWREYXRhX3Y0LFxuICAgICAgICAgICAgICAgIGV0aF9zaWduVHlwZWREYXRhOiBlaXA3MTIuaGFzaEZvclNpZ25UeXBlZERhdGFfdjQsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmV0dXJuIGhleFN0cmluZ0Zyb21CdWZmZXIoaGFzaEZ1bmNNYXBbbWV0aG9kXSh7XG4gICAgICAgICAgICAgICAgZGF0YTogZW5zdXJlUGFyc2VkSlNPTk9iamVjdChpbnB1dCksXG4gICAgICAgICAgICB9KSwgdHJ1ZSk7XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGFkZHJlc3MgPSBwYXJhbXNbbWV0aG9kID09PSAnZXRoX3NpZ25UeXBlZERhdGFfdjEnID8gMSA6IDBdO1xuICAgICAgICBjb25zdCByYXdEYXRhID0gcGFyYW1zW21ldGhvZCA9PT0gJ2V0aF9zaWduVHlwZWREYXRhX3YxJyA/IDAgOiAxXTtcbiAgICAgICAgdGhpcy5fZW5zdXJlS25vd25BZGRyZXNzKGFkZHJlc3MpO1xuICAgICAgICBjb25zdCByZWxheSA9IHRoaXMuaW5pdGlhbGl6ZVJlbGF5KCk7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlbGF5LnNlbmRSZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogJ3NpZ25FdGhlcmV1bU1lc3NhZ2UnLFxuICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgYWRkcmVzczogZW5zdXJlQWRkcmVzc1N0cmluZyhhZGRyZXNzKSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBlbmNvZGUocmF3RGF0YSksXG4gICAgICAgICAgICAgICAgdHlwZWREYXRhSnNvbjogSlNPTi5zdHJpbmdpZnkocmF3RGF0YSwgbnVsbCwgMiksXG4gICAgICAgICAgICAgICAgYWRkUHJlZml4OiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoaXNFcnJvclJlc3BvbnNlKHJlcykpXG4gICAgICAgICAgICB0aHJvdyByZXM7XG4gICAgICAgIHJldHVybiByZXMucmVzdWx0O1xuICAgIH1cbiAgICBpbml0aWFsaXplUmVsYXkoKSB7XG4gICAgICAgIGlmICghdGhpcy5fcmVsYXkpIHtcbiAgICAgICAgICAgIHRoaXMuX3JlbGF5ID0gbmV3IFdhbGxldExpbmtSZWxheSh7XG4gICAgICAgICAgICAgICAgbGlua0FQSVVybDogV0FMTEVUTElOS19VUkwsXG4gICAgICAgICAgICAgICAgc3RvcmFnZTogdGhpcy5fc3RvcmFnZSxcbiAgICAgICAgICAgICAgICBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YSxcbiAgICAgICAgICAgICAgICBhY2NvdW50c0NhbGxiYWNrOiB0aGlzLl9zZXRBZGRyZXNzZXMuYmluZCh0aGlzKSxcbiAgICAgICAgICAgICAgICBjaGFpbkNhbGxiYWNrOiB0aGlzLnVwZGF0ZVByb3ZpZGVySW5mby5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3JlbGF5O1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVdhbGxldExpbmtTaWduZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/WalletLinkSigner.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/RelayEventManager.js": /*!*******************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/RelayEventManager.js ***! \*******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RelayEventManager: () => (/* binding */ RelayEventManager)\n/* harmony export */ });\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n\nclass RelayEventManager {\n constructor() {\n this._nextRequestId = 0;\n this.callbacks = new Map();\n }\n makeRequestId() {\n // max nextId == max int32 for compatibility with mobile\n this._nextRequestId = (this._nextRequestId + 1) % 0x7fffffff;\n const id = this._nextRequestId;\n const idStr = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_0__.prepend0x)(id.toString(16));\n // unlikely that this will ever be an issue, but just to be safe\n const callback = this.callbacks.get(idStr);\n if (callback) {\n this.callbacks.delete(idStr);\n }\n return id;\n }\n}\n//# sourceMappingURL=RelayEventManager.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9SZWxheUV2ZW50TWFuYWdlci5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUF1RDtBQUNoRDtBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsNkRBQVM7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3Qvc2lnbi93YWxsZXRsaW5rL3JlbGF5L1JlbGF5RXZlbnRNYW5hZ2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHByZXBlbmQweCB9IGZyb20gJy4uLy4uLy4uL2NvcmUvdHlwZS91dGlsLmpzJztcbmV4cG9ydCBjbGFzcyBSZWxheUV2ZW50TWFuYWdlciB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuX25leHRSZXF1ZXN0SWQgPSAwO1xuICAgICAgICB0aGlzLmNhbGxiYWNrcyA9IG5ldyBNYXAoKTtcbiAgICB9XG4gICAgbWFrZVJlcXVlc3RJZCgpIHtcbiAgICAgICAgLy8gbWF4IG5leHRJZCA9PSBtYXggaW50MzIgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBtb2JpbGVcbiAgICAgICAgdGhpcy5fbmV4dFJlcXVlc3RJZCA9ICh0aGlzLl9uZXh0UmVxdWVzdElkICsgMSkgJSAweDdmZmZmZmZmO1xuICAgICAgICBjb25zdCBpZCA9IHRoaXMuX25leHRSZXF1ZXN0SWQ7XG4gICAgICAgIGNvbnN0IGlkU3RyID0gcHJlcGVuZDB4KGlkLnRvU3RyaW5nKDE2KSk7XG4gICAgICAgIC8vIHVubGlrZWx5IHRoYXQgdGhpcyB3aWxsIGV2ZXIgYmUgYW4gaXNzdWUsIGJ1dCBqdXN0IHRvIGJlIHNhZmVcbiAgICAgICAgY29uc3QgY2FsbGJhY2sgPSB0aGlzLmNhbGxiYWNrcy5nZXQoaWRTdHIpO1xuICAgICAgICBpZiAoY2FsbGJhY2spIHtcbiAgICAgICAgICAgIHRoaXMuY2FsbGJhY2tzLmRlbGV0ZShpZFN0cik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlkO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVJlbGF5RXZlbnRNYW5hZ2VyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/RelayEventManager.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/WalletLinkRelay.js": /*!*****************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/WalletLinkRelay.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WalletLinkRelay: () => (/* binding */ WalletLinkRelay)\n/* harmony export */ });\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../core/storage/ScopedLocalStorage.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/storage/ScopedLocalStorage.js\");\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n/* harmony import */ var _connection_WalletLinkConnection_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./connection/WalletLinkConnection.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkConnection.js\");\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/constants.js\");\n/* harmony import */ var _RelayEventManager_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./RelayEventManager.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/RelayEventManager.js\");\n/* harmony import */ var _type_WalletLinkSession_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./type/WalletLinkSession.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/WalletLinkSession.js\");\n/* harmony import */ var _type_Web3Response_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./type/Web3Response.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/Web3Response.js\");\n/* harmony import */ var _ui_components_util_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ui/components/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/util.js\");\n/* harmony import */ var _ui_WalletLinkRelayUI_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./ui/WalletLinkRelayUI.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WalletLinkRelayUI.js\");\n/* harmony import */ var _ui_WLMobileRelayUI_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ui/WLMobileRelayUI.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WLMobileRelayUI.js\");\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\n\n\n\n\n\n\n\n\n\n\n\nclass WalletLinkRelay {\n constructor(options) {\n this.chainCallbackParams = { chainId: '', jsonRpcUrl: '' }; // to implement distinctUntilChanged\n this.isMobileWeb = (0,_ui_components_util_js__WEBPACK_IMPORTED_MODULE_0__.isMobileWeb)();\n this.linkedUpdated = (linked) => {\n this.isLinked = linked;\n const cachedAddresses = this.storage.getItem(_constants_js__WEBPACK_IMPORTED_MODULE_1__.LOCAL_STORAGE_ADDRESSES_KEY);\n if (linked) {\n // Only set linked session variable one way\n this._session.linked = linked;\n }\n this.isUnlinkedErrorState = false;\n if (cachedAddresses) {\n const addresses = cachedAddresses.split(' ');\n const wasConnectedViaStandalone = this.storage.getItem('IsStandaloneSigning') === 'true';\n if (addresses[0] !== '' && !linked && this._session.linked && !wasConnectedViaStandalone) {\n this.isUnlinkedErrorState = true;\n }\n }\n };\n this.metadataUpdated = (key, value) => {\n this.storage.setItem(key, value);\n };\n this.chainUpdated = (chainId, jsonRpcUrl) => {\n if (this.chainCallbackParams.chainId === chainId &&\n this.chainCallbackParams.jsonRpcUrl === jsonRpcUrl) {\n return;\n }\n this.chainCallbackParams = {\n chainId,\n jsonRpcUrl,\n };\n if (this.chainCallback) {\n this.chainCallback(jsonRpcUrl, Number.parseInt(chainId, 10));\n }\n };\n this.accountUpdated = (selectedAddress) => {\n if (this.accountsCallback) {\n this.accountsCallback([selectedAddress]);\n }\n if (WalletLinkRelay.accountRequestCallbackIds.size > 0) {\n // We get the ethereum address from the metadata. If for whatever\n // reason we don't get a response via an explicit web3 message\n // we can still fulfill the eip1102 request.\n Array.from(WalletLinkRelay.accountRequestCallbackIds.values()).forEach((id) => {\n this.invokeCallback(id, {\n method: 'requestEthereumAccounts',\n result: [selectedAddress],\n });\n });\n WalletLinkRelay.accountRequestCallbackIds.clear();\n }\n };\n this.resetAndReload = this.resetAndReload.bind(this);\n this.linkAPIUrl = options.linkAPIUrl;\n this.storage = options.storage;\n this.metadata = options.metadata;\n this.accountsCallback = options.accountsCallback;\n this.chainCallback = options.chainCallback;\n const { session, ui, connection } = this.subscribe();\n this._session = session;\n this.connection = connection;\n this.relayEventManager = new _RelayEventManager_js__WEBPACK_IMPORTED_MODULE_2__.RelayEventManager();\n this.ui = ui;\n this.ui.attach();\n }\n subscribe() {\n const session = _type_WalletLinkSession_js__WEBPACK_IMPORTED_MODULE_3__.WalletLinkSession.load(this.storage) || _type_WalletLinkSession_js__WEBPACK_IMPORTED_MODULE_3__.WalletLinkSession.create(this.storage);\n const { linkAPIUrl } = this;\n const connection = new _connection_WalletLinkConnection_js__WEBPACK_IMPORTED_MODULE_4__.WalletLinkConnection({\n session,\n linkAPIUrl,\n listener: this,\n });\n const ui = this.isMobileWeb ? new _ui_WLMobileRelayUI_js__WEBPACK_IMPORTED_MODULE_5__.WLMobileRelayUI() : new _ui_WalletLinkRelayUI_js__WEBPACK_IMPORTED_MODULE_6__.WalletLinkRelayUI();\n connection.connect();\n return { session, ui, connection };\n }\n resetAndReload() {\n this.connection\n .destroy()\n .then(() => {\n /**\n * Only clear storage if the session id we have in memory matches the one on disk\n * Otherwise, in the case where we have 2 tabs, another tab might have cleared\n * storage already. In that case if we clear storage again, the user will be in\n * a state where the first tab allows the user to connect but the session that\n * was used isn't persisted. This leaves the user in a state where they aren't\n * connected to the mobile app.\n */\n const storedSession = _type_WalletLinkSession_js__WEBPACK_IMPORTED_MODULE_3__.WalletLinkSession.load(this.storage);\n if ((storedSession === null || storedSession === void 0 ? void 0 : storedSession.id) === this._session.id) {\n _core_storage_ScopedLocalStorage_js__WEBPACK_IMPORTED_MODULE_7__.ScopedLocalStorage.clearAll();\n }\n document.location.reload();\n })\n .catch((_) => { });\n }\n signEthereumTransaction(params) {\n return this.sendRequest({\n method: 'signEthereumTransaction',\n params: {\n fromAddress: params.fromAddress,\n toAddress: params.toAddress,\n weiValue: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.weiValue),\n data: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.hexStringFromBuffer)(params.data, true),\n nonce: params.nonce,\n gasPriceInWei: params.gasPriceInWei ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.gasPriceInWei) : null,\n maxFeePerGas: params.gasPriceInWei ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.gasPriceInWei) : null,\n maxPriorityFeePerGas: params.gasPriceInWei\n ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.gasPriceInWei)\n : null,\n gasLimit: params.gasLimit ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.gasLimit) : null,\n chainId: params.chainId,\n shouldSubmit: false,\n },\n });\n }\n signAndSubmitEthereumTransaction(params) {\n return this.sendRequest({\n method: 'signEthereumTransaction',\n params: {\n fromAddress: params.fromAddress,\n toAddress: params.toAddress,\n weiValue: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.weiValue),\n data: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.hexStringFromBuffer)(params.data, true),\n nonce: params.nonce,\n gasPriceInWei: params.gasPriceInWei ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.gasPriceInWei) : null,\n maxFeePerGas: params.maxFeePerGas ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.maxFeePerGas) : null,\n maxPriorityFeePerGas: params.maxPriorityFeePerGas\n ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.maxPriorityFeePerGas)\n : null,\n gasLimit: params.gasLimit ? (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.bigIntStringFromBigInt)(params.gasLimit) : null,\n chainId: params.chainId,\n shouldSubmit: true,\n },\n });\n }\n submitEthereumTransaction(signedTransaction, chainId) {\n return this.sendRequest({\n method: 'submitEthereumTransaction',\n params: {\n signedTransaction: (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.hexStringFromBuffer)(signedTransaction, true),\n chainId,\n },\n });\n }\n getWalletLinkSession() {\n return this._session;\n }\n sendRequest(request) {\n let hideSnackbarItem = null;\n const id = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.randomBytesHex)(8);\n const cancel = (error) => {\n this.publishWeb3RequestCanceledEvent(id);\n this.handleErrorResponse(id, request.method, error);\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n };\n return new Promise((resolve, reject) => {\n {\n hideSnackbarItem = this.ui.showConnecting({\n isUnlinkedErrorState: this.isUnlinkedErrorState,\n onCancel: cancel,\n onResetConnection: this.resetAndReload,\n });\n }\n this.relayEventManager.callbacks.set(id, (response) => {\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n if ((0,_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_9__.isErrorResponse)(response)) {\n return reject(new Error(response.errorMessage));\n }\n resolve(response);\n });\n this.publishWeb3RequestEvent(id, request);\n });\n }\n publishWeb3RequestEvent(id, request) {\n const message = { type: 'WEB3_REQUEST', id, request };\n this.publishEvent('Web3Request', message, true)\n .then((_) => { })\n .catch((err) => {\n this.handleWeb3ResponseMessage(message.id, {\n method: request.method,\n errorMessage: err.message,\n });\n });\n if (this.isMobileWeb) {\n this.openCoinbaseWalletDeeplink(request.method);\n }\n }\n // copied from MobileRelay\n openCoinbaseWalletDeeplink(method) {\n if (!(this.ui instanceof _ui_WLMobileRelayUI_js__WEBPACK_IMPORTED_MODULE_5__.WLMobileRelayUI))\n return;\n // For mobile relay requests, open the Coinbase Wallet app\n switch (method) {\n case 'requestEthereumAccounts': // requestEthereumAccounts is handled via popup\n case 'switchEthereumChain': // switchEthereumChain doesn't need to open the app\n return;\n default:\n window.addEventListener('blur', () => {\n window.addEventListener('focus', () => {\n this.connection.checkUnseenEvents();\n }, { once: true });\n }, { once: true });\n this.ui.openCoinbaseWalletDeeplink();\n break;\n }\n }\n publishWeb3RequestCanceledEvent(id) {\n const message = {\n type: 'WEB3_REQUEST_CANCELED',\n id,\n };\n this.publishEvent('Web3RequestCanceled', message, false).then();\n }\n publishEvent(event, message, callWebhook) {\n return this.connection.publishEvent(event, message, callWebhook);\n }\n handleWeb3ResponseMessage(id, response) {\n if (response.method === 'requestEthereumAccounts') {\n WalletLinkRelay.accountRequestCallbackIds.forEach((id) => this.invokeCallback(id, response));\n WalletLinkRelay.accountRequestCallbackIds.clear();\n return;\n }\n this.invokeCallback(id, response);\n }\n handleErrorResponse(id, method, error) {\n var _a;\n const errorMessage = (_a = error === null || error === void 0 ? void 0 : error.message) !== null && _a !== void 0 ? _a : 'Unspecified error message.';\n this.handleWeb3ResponseMessage(id, {\n method,\n errorMessage,\n });\n }\n invokeCallback(id, response) {\n const callback = this.relayEventManager.callbacks.get(id);\n if (callback) {\n callback(response);\n this.relayEventManager.callbacks.delete(id);\n }\n }\n requestEthereumAccounts() {\n const { appName, appLogoUrl } = this.metadata;\n const request = {\n method: 'requestEthereumAccounts',\n params: {\n appName,\n appLogoUrl,\n },\n };\n const hideSnackbarItem = null;\n const id = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.randomBytesHex)(8);\n return new Promise((resolve, reject) => {\n this.relayEventManager.callbacks.set(id, (response) => {\n // @ts-ignore\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n if ((0,_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_9__.isErrorResponse)(response)) {\n return reject(new Error(response.errorMessage));\n }\n resolve(response);\n });\n WalletLinkRelay.accountRequestCallbackIds.add(id);\n this.publishWeb3RequestEvent(id, request);\n });\n }\n watchAsset(type, address, symbol, decimals, image, chainId) {\n const request = {\n method: 'watchAsset',\n params: {\n type,\n options: {\n address,\n symbol,\n decimals,\n image,\n },\n chainId,\n },\n };\n let hideSnackbarItem = null;\n const id = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.randomBytesHex)(8);\n const cancel = (error) => {\n this.publishWeb3RequestCanceledEvent(id);\n this.handleErrorResponse(id, request.method, error);\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n };\n {\n hideSnackbarItem = this.ui.showConnecting({\n isUnlinkedErrorState: this.isUnlinkedErrorState,\n onCancel: cancel,\n onResetConnection: this.resetAndReload,\n });\n }\n return new Promise((resolve, reject) => {\n this.relayEventManager.callbacks.set(id, (response) => {\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n if ((0,_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_9__.isErrorResponse)(response)) {\n return reject(new Error(response.errorMessage));\n }\n resolve(response);\n });\n this.publishWeb3RequestEvent(id, request);\n });\n }\n addEthereumChain(chainId, rpcUrls, iconUrls, blockExplorerUrls, chainName, nativeCurrency) {\n const request = {\n method: 'addEthereumChain',\n params: {\n chainId,\n rpcUrls,\n blockExplorerUrls,\n chainName,\n iconUrls,\n nativeCurrency,\n },\n };\n let hideSnackbarItem = null;\n const id = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.randomBytesHex)(8);\n const cancel = (error) => {\n this.publishWeb3RequestCanceledEvent(id);\n this.handleErrorResponse(id, request.method, error);\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n };\n {\n hideSnackbarItem = this.ui.showConnecting({\n isUnlinkedErrorState: this.isUnlinkedErrorState,\n onCancel: cancel,\n onResetConnection: this.resetAndReload,\n });\n }\n return new Promise((resolve, reject) => {\n this.relayEventManager.callbacks.set(id, (response) => {\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n if ((0,_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_9__.isErrorResponse)(response)) {\n return reject(new Error(response.errorMessage));\n }\n resolve(response);\n });\n this.publishWeb3RequestEvent(id, request);\n });\n }\n switchEthereumChain(chainId, address) {\n const request = {\n method: 'switchEthereumChain',\n params: Object.assign({ chainId }, { address }),\n };\n let hideSnackbarItem = null;\n const id = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_8__.randomBytesHex)(8);\n const cancel = (error) => {\n this.publishWeb3RequestCanceledEvent(id);\n this.handleErrorResponse(id, request.method, error);\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n };\n {\n hideSnackbarItem = this.ui.showConnecting({\n isUnlinkedErrorState: this.isUnlinkedErrorState,\n onCancel: cancel,\n onResetConnection: this.resetAndReload,\n });\n }\n return new Promise((resolve, reject) => {\n this.relayEventManager.callbacks.set(id, (response) => {\n hideSnackbarItem === null || hideSnackbarItem === void 0 ? void 0 : hideSnackbarItem();\n if ((0,_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_9__.isErrorResponse)(response) && response.errorCode) {\n return reject(_core_error_errors_js__WEBPACK_IMPORTED_MODULE_10__.standardErrors.provider.custom({\n code: response.errorCode,\n message: `Unrecognized chain ID. Try adding the chain using addEthereumChain first.`,\n }));\n }\n if ((0,_type_Web3Response_js__WEBPACK_IMPORTED_MODULE_9__.isErrorResponse)(response)) {\n return reject(new Error(response.errorMessage));\n }\n resolve(response);\n });\n this.publishWeb3RequestEvent(id, request);\n });\n }\n}\nWalletLinkRelay.accountRequestCallbackIds = new Set();\n//# sourceMappingURL=WalletLinkRelay.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9XYWxsZXRMaW5rUmVsYXkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDK0Q7QUFDa0I7QUFDd0I7QUFDNUI7QUFDaEI7QUFDRjtBQUNLO0FBQ1A7QUFDSDtBQUNRO0FBQ0o7QUFDbkQ7QUFDUDtBQUNBLHFDQUFxQywrQkFBK0I7QUFDcEUsMkJBQTJCLG1FQUFXO0FBQ3RDO0FBQ0E7QUFDQSx5REFBeUQsc0VBQTJCO0FBQ3BGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiwwQkFBMEI7QUFDMUM7QUFDQTtBQUNBLHFDQUFxQyxvRUFBaUI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IseUVBQWlCLHVCQUF1Qix5RUFBaUI7QUFDakYsZ0JBQWdCLGFBQWE7QUFDN0IsK0JBQStCLHFGQUFvQjtBQUNuRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsMENBQTBDLG1FQUFlLFNBQVMsdUVBQWlCO0FBQ25GO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHlFQUFpQjtBQUNuRDtBQUNBLGdCQUFnQixtRkFBa0I7QUFDbEM7QUFDQTtBQUNBLFNBQVM7QUFDVCw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsMEVBQXNCO0FBQ2hELHNCQUFzQix1RUFBbUI7QUFDekM7QUFDQSxzREFBc0QsMEVBQXNCO0FBQzVFLHFEQUFxRCwwRUFBc0I7QUFDM0U7QUFDQSxzQkFBc0IsMEVBQXNCO0FBQzVDO0FBQ0EsNENBQTRDLDBFQUFzQjtBQUNsRTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwwRUFBc0I7QUFDaEQsc0JBQXNCLHVFQUFtQjtBQUN6QztBQUNBLHNEQUFzRCwwRUFBc0I7QUFDNUUsb0RBQW9ELDBFQUFzQjtBQUMxRTtBQUNBLHNCQUFzQiwwRUFBc0I7QUFDNUM7QUFDQSw0Q0FBNEMsMEVBQXNCO0FBQ2xFO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsdUVBQW1CO0FBQ3REO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsa0VBQWM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isc0VBQWU7QUFDbkM7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSwwQkFBMEI7QUFDMUI7QUFDQSw0QkFBNEI7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxtRUFBZTtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixJQUFJLFlBQVk7QUFDckMsaUJBQWlCLElBQUksWUFBWTtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isc0JBQXNCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLG1CQUFtQixrRUFBYztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzRUFBZTtBQUNuQztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxtQkFBbUIsa0VBQWM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isc0VBQWU7QUFDbkM7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLG1CQUFtQixrRUFBYztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzRUFBZTtBQUNuQztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsU0FBUyxJQUFJLFNBQVM7QUFDMUQ7QUFDQTtBQUNBLG1CQUFtQixrRUFBYztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzRUFBZTtBQUNuQyxrQ0FBa0Msa0VBQWM7QUFDaEQ7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBLG9CQUFvQixzRUFBZTtBQUNuQztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvcmVsYXkvV2FsbGV0TGlua1JlbGF5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIENvaW5iYXNlLCBJbmMuIDxodHRwczovL3d3dy5jb2luYmFzZS5jb20vPlxuaW1wb3J0IHsgc3RhbmRhcmRFcnJvcnMgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2Vycm9yL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBTY29wZWRMb2NhbFN0b3JhZ2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3N0b3JhZ2UvU2NvcGVkTG9jYWxTdG9yYWdlLmpzJztcbmltcG9ydCB7IGJpZ0ludFN0cmluZ0Zyb21CaWdJbnQsIGhleFN0cmluZ0Zyb21CdWZmZXIsIHJhbmRvbUJ5dGVzSGV4IH0gZnJvbSAnLi4vLi4vLi4vY29yZS90eXBlL3V0aWwuanMnO1xuaW1wb3J0IHsgV2FsbGV0TGlua0Nvbm5lY3Rpb24sIH0gZnJvbSAnLi9jb25uZWN0aW9uL1dhbGxldExpbmtDb25uZWN0aW9uLmpzJztcbmltcG9ydCB7IExPQ0FMX1NUT1JBR0VfQUREUkVTU0VTX0tFWSB9IGZyb20gJy4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB7IFJlbGF5RXZlbnRNYW5hZ2VyIH0gZnJvbSAnLi9SZWxheUV2ZW50TWFuYWdlci5qcyc7XG5pbXBvcnQgeyBXYWxsZXRMaW5rU2Vzc2lvbiB9IGZyb20gJy4vdHlwZS9XYWxsZXRMaW5rU2Vzc2lvbi5qcyc7XG5pbXBvcnQgeyBpc0Vycm9yUmVzcG9uc2UgfSBmcm9tICcuL3R5cGUvV2ViM1Jlc3BvbnNlLmpzJztcbmltcG9ydCB7IGlzTW9iaWxlV2ViIH0gZnJvbSAnLi91aS9jb21wb25lbnRzL3V0aWwuanMnO1xuaW1wb3J0IHsgV2FsbGV0TGlua1JlbGF5VUkgfSBmcm9tICcuL3VpL1dhbGxldExpbmtSZWxheVVJLmpzJztcbmltcG9ydCB7IFdMTW9iaWxlUmVsYXlVSSB9IGZyb20gJy4vdWkvV0xNb2JpbGVSZWxheVVJLmpzJztcbmV4cG9ydCBjbGFzcyBXYWxsZXRMaW5rUmVsYXkge1xuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5jaGFpbkNhbGxiYWNrUGFyYW1zID0geyBjaGFpbklkOiAnJywganNvblJwY1VybDogJycgfTsgLy8gdG8gaW1wbGVtZW50IGRpc3RpbmN0VW50aWxDaGFuZ2VkXG4gICAgICAgIHRoaXMuaXNNb2JpbGVXZWIgPSBpc01vYmlsZVdlYigpO1xuICAgICAgICB0aGlzLmxpbmtlZFVwZGF0ZWQgPSAobGlua2VkKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzTGlua2VkID0gbGlua2VkO1xuICAgICAgICAgICAgY29uc3QgY2FjaGVkQWRkcmVzc2VzID0gdGhpcy5zdG9yYWdlLmdldEl0ZW0oTE9DQUxfU1RPUkFHRV9BRERSRVNTRVNfS0VZKTtcbiAgICAgICAgICAgIGlmIChsaW5rZWQpIHtcbiAgICAgICAgICAgICAgICAvLyBPbmx5IHNldCBsaW5rZWQgc2Vzc2lvbiB2YXJpYWJsZSBvbmUgd2F5XG4gICAgICAgICAgICAgICAgdGhpcy5fc2Vzc2lvbi5saW5rZWQgPSBsaW5rZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmlzVW5saW5rZWRFcnJvclN0YXRlID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAoY2FjaGVkQWRkcmVzc2VzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYWRkcmVzc2VzID0gY2FjaGVkQWRkcmVzc2VzLnNwbGl0KCcgJyk7XG4gICAgICAgICAgICAgICAgY29uc3Qgd2FzQ29ubmVjdGVkVmlhU3RhbmRhbG9uZSA9IHRoaXMuc3RvcmFnZS5nZXRJdGVtKCdJc1N0YW5kYWxvbmVTaWduaW5nJykgPT09ICd0cnVlJztcbiAgICAgICAgICAgICAgICBpZiAoYWRkcmVzc2VzWzBdICE9PSAnJyAmJiAhbGlua2VkICYmIHRoaXMuX3Nlc3Npb24ubGlua2VkICYmICF3YXNDb25uZWN0ZWRWaWFTdGFuZGFsb25lKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNVbmxpbmtlZEVycm9yU3RhdGUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5tZXRhZGF0YVVwZGF0ZWQgPSAoa2V5LCB2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSk7XG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuY2hhaW5VcGRhdGVkID0gKGNoYWluSWQsIGpzb25ScGNVcmwpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNoYWluQ2FsbGJhY2tQYXJhbXMuY2hhaW5JZCA9PT0gY2hhaW5JZCAmJlxuICAgICAgICAgICAgICAgIHRoaXMuY2hhaW5DYWxsYmFja1BhcmFtcy5qc29uUnBjVXJsID09PSBqc29uUnBjVXJsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5jaGFpbkNhbGxiYWNrUGFyYW1zID0ge1xuICAgICAgICAgICAgICAgIGNoYWluSWQsXG4gICAgICAgICAgICAgICAganNvblJwY1VybCxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBpZiAodGhpcy5jaGFpbkNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFpbkNhbGxiYWNrKGpzb25ScGNVcmwsIE51bWJlci5wYXJzZUludChjaGFpbklkLCAxMCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmFjY291bnRVcGRhdGVkID0gKHNlbGVjdGVkQWRkcmVzcykgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuYWNjb3VudHNDYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudHNDYWxsYmFjayhbc2VsZWN0ZWRBZGRyZXNzXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoV2FsbGV0TGlua1JlbGF5LmFjY291bnRSZXF1ZXN0Q2FsbGJhY2tJZHMuc2l6ZSA+IDApIHtcbiAgICAgICAgICAgICAgICAvLyBXZSBnZXQgdGhlIGV0aGVyZXVtIGFkZHJlc3MgZnJvbSB0aGUgbWV0YWRhdGEuICBJZiBmb3Igd2hhdGV2ZXJcbiAgICAgICAgICAgICAgICAvLyByZWFzb24gd2UgZG9uJ3QgZ2V0IGEgcmVzcG9uc2UgdmlhIGFuIGV4cGxpY2l0IHdlYjMgbWVzc2FnZVxuICAgICAgICAgICAgICAgIC8vIHdlIGNhbiBzdGlsbCBmdWxmaWxsIHRoZSBlaXAxMTAyIHJlcXVlc3QuXG4gICAgICAgICAgICAgICAgQXJyYXkuZnJvbShXYWxsZXRMaW5rUmVsYXkuYWNjb3VudFJlcXVlc3RDYWxsYmFja0lkcy52YWx1ZXMoKSkuZm9yRWFjaCgoaWQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnZva2VDYWxsYmFjayhpZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAncmVxdWVzdEV0aGVyZXVtQWNjb3VudHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0OiBbc2VsZWN0ZWRBZGRyZXNzXSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgV2FsbGV0TGlua1JlbGF5LmFjY291bnRSZXF1ZXN0Q2FsbGJhY2tJZHMuY2xlYXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5yZXNldEFuZFJlbG9hZCA9IHRoaXMucmVzZXRBbmRSZWxvYWQuYmluZCh0aGlzKTtcbiAgICAgICAgdGhpcy5saW5rQVBJVXJsID0gb3B0aW9ucy5saW5rQVBJVXJsO1xuICAgICAgICB0aGlzLnN0b3JhZ2UgPSBvcHRpb25zLnN0b3JhZ2U7XG4gICAgICAgIHRoaXMubWV0YWRhdGEgPSBvcHRpb25zLm1ldGFkYXRhO1xuICAgICAgICB0aGlzLmFjY291bnRzQ2FsbGJhY2sgPSBvcHRpb25zLmFjY291bnRzQ2FsbGJhY2s7XG4gICAgICAgIHRoaXMuY2hhaW5DYWxsYmFjayA9IG9wdGlvbnMuY2hhaW5DYWxsYmFjaztcbiAgICAgICAgY29uc3QgeyBzZXNzaW9uLCB1aSwgY29ubmVjdGlvbiB9ID0gdGhpcy5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fc2Vzc2lvbiA9IHNlc3Npb247XG4gICAgICAgIHRoaXMuY29ubmVjdGlvbiA9IGNvbm5lY3Rpb247XG4gICAgICAgIHRoaXMucmVsYXlFdmVudE1hbmFnZXIgPSBuZXcgUmVsYXlFdmVudE1hbmFnZXIoKTtcbiAgICAgICAgdGhpcy51aSA9IHVpO1xuICAgICAgICB0aGlzLnVpLmF0dGFjaCgpO1xuICAgIH1cbiAgICBzdWJzY3JpYmUoKSB7XG4gICAgICAgIGNvbnN0IHNlc3Npb24gPSBXYWxsZXRMaW5rU2Vzc2lvbi5sb2FkKHRoaXMuc3RvcmFnZSkgfHwgV2FsbGV0TGlua1Nlc3Npb24uY3JlYXRlKHRoaXMuc3RvcmFnZSk7XG4gICAgICAgIGNvbnN0IHsgbGlua0FQSVVybCB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgY29ubmVjdGlvbiA9IG5ldyBXYWxsZXRMaW5rQ29ubmVjdGlvbih7XG4gICAgICAgICAgICBzZXNzaW9uLFxuICAgICAgICAgICAgbGlua0FQSVVybCxcbiAgICAgICAgICAgIGxpc3RlbmVyOiB0aGlzLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgdWkgPSB0aGlzLmlzTW9iaWxlV2ViID8gbmV3IFdMTW9iaWxlUmVsYXlVSSgpIDogbmV3IFdhbGxldExpbmtSZWxheVVJKCk7XG4gICAgICAgIGNvbm5lY3Rpb24uY29ubmVjdCgpO1xuICAgICAgICByZXR1cm4geyBzZXNzaW9uLCB1aSwgY29ubmVjdGlvbiB9O1xuICAgIH1cbiAgICByZXNldEFuZFJlbG9hZCgpIHtcbiAgICAgICAgdGhpcy5jb25uZWN0aW9uXG4gICAgICAgICAgICAuZGVzdHJveSgpXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE9ubHkgY2xlYXIgc3RvcmFnZSBpZiB0aGUgc2Vzc2lvbiBpZCB3ZSBoYXZlIGluIG1lbW9yeSBtYXRjaGVzIHRoZSBvbmUgb24gZGlza1xuICAgICAgICAgICAgICogT3RoZXJ3aXNlLCBpbiB0aGUgY2FzZSB3aGVyZSB3ZSBoYXZlIDIgdGFicywgYW5vdGhlciB0YWIgbWlnaHQgaGF2ZSBjbGVhcmVkXG4gICAgICAgICAgICAgKiBzdG9yYWdlIGFscmVhZHkuICBJbiB0aGF0IGNhc2UgaWYgd2UgY2xlYXIgc3RvcmFnZSBhZ2FpbiwgdGhlIHVzZXIgd2lsbCBiZSBpblxuICAgICAgICAgICAgICogYSBzdGF0ZSB3aGVyZSB0aGUgZmlyc3QgdGFiIGFsbG93cyB0aGUgdXNlciB0byBjb25uZWN0IGJ1dCB0aGUgc2Vzc2lvbiB0aGF0XG4gICAgICAgICAgICAgKiB3YXMgdXNlZCBpc24ndCBwZXJzaXN0ZWQuICBUaGlzIGxlYXZlcyB0aGUgdXNlciBpbiBhIHN0YXRlIHdoZXJlIHRoZXkgYXJlbid0XG4gICAgICAgICAgICAgKiBjb25uZWN0ZWQgdG8gdGhlIG1vYmlsZSBhcHAuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnN0IHN0b3JlZFNlc3Npb24gPSBXYWxsZXRMaW5rU2Vzc2lvbi5sb2FkKHRoaXMuc3RvcmFnZSk7XG4gICAgICAgICAgICBpZiAoKHN0b3JlZFNlc3Npb24gPT09IG51bGwgfHwgc3RvcmVkU2Vzc2lvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3RvcmVkU2Vzc2lvbi5pZCkgPT09IHRoaXMuX3Nlc3Npb24uaWQpIHtcbiAgICAgICAgICAgICAgICBTY29wZWRMb2NhbFN0b3JhZ2UuY2xlYXJBbGwoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKChfKSA9PiB7IH0pO1xuICAgIH1cbiAgICBzaWduRXRoZXJldW1UcmFuc2FjdGlvbihwYXJhbXMpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VuZFJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnc2lnbkV0aGVyZXVtVHJhbnNhY3Rpb24nLFxuICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgZnJvbUFkZHJlc3M6IHBhcmFtcy5mcm9tQWRkcmVzcyxcbiAgICAgICAgICAgICAgICB0b0FkZHJlc3M6IHBhcmFtcy50b0FkZHJlc3MsXG4gICAgICAgICAgICAgICAgd2VpVmFsdWU6IGJpZ0ludFN0cmluZ0Zyb21CaWdJbnQocGFyYW1zLndlaVZhbHVlKSxcbiAgICAgICAgICAgICAgICBkYXRhOiBoZXhTdHJpbmdGcm9tQnVmZmVyKHBhcmFtcy5kYXRhLCB0cnVlKSxcbiAgICAgICAgICAgICAgICBub25jZTogcGFyYW1zLm5vbmNlLFxuICAgICAgICAgICAgICAgIGdhc1ByaWNlSW5XZWk6IHBhcmFtcy5nYXNQcmljZUluV2VpID8gYmlnSW50U3RyaW5nRnJvbUJpZ0ludChwYXJhbXMuZ2FzUHJpY2VJbldlaSkgOiBudWxsLFxuICAgICAgICAgICAgICAgIG1heEZlZVBlckdhczogcGFyYW1zLmdhc1ByaWNlSW5XZWkgPyBiaWdJbnRTdHJpbmdGcm9tQmlnSW50KHBhcmFtcy5nYXNQcmljZUluV2VpKSA6IG51bGwsXG4gICAgICAgICAgICAgICAgbWF4UHJpb3JpdHlGZWVQZXJHYXM6IHBhcmFtcy5nYXNQcmljZUluV2VpXG4gICAgICAgICAgICAgICAgICAgID8gYmlnSW50U3RyaW5nRnJvbUJpZ0ludChwYXJhbXMuZ2FzUHJpY2VJbldlaSlcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgIGdhc0xpbWl0OiBwYXJhbXMuZ2FzTGltaXQgPyBiaWdJbnRTdHJpbmdGcm9tQmlnSW50KHBhcmFtcy5nYXNMaW1pdCkgOiBudWxsLFxuICAgICAgICAgICAgICAgIGNoYWluSWQ6IHBhcmFtcy5jaGFpbklkLFxuICAgICAgICAgICAgICAgIHNob3VsZFN1Ym1pdDogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgc2lnbkFuZFN1Ym1pdEV0aGVyZXVtVHJhbnNhY3Rpb24ocGFyYW1zKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbmRSZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogJ3NpZ25FdGhlcmV1bVRyYW5zYWN0aW9uJyxcbiAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgIGZyb21BZGRyZXNzOiBwYXJhbXMuZnJvbUFkZHJlc3MsXG4gICAgICAgICAgICAgICAgdG9BZGRyZXNzOiBwYXJhbXMudG9BZGRyZXNzLFxuICAgICAgICAgICAgICAgIHdlaVZhbHVlOiBiaWdJbnRTdHJpbmdGcm9tQmlnSW50KHBhcmFtcy53ZWlWYWx1ZSksXG4gICAgICAgICAgICAgICAgZGF0YTogaGV4U3RyaW5nRnJvbUJ1ZmZlcihwYXJhbXMuZGF0YSwgdHJ1ZSksXG4gICAgICAgICAgICAgICAgbm9uY2U6IHBhcmFtcy5ub25jZSxcbiAgICAgICAgICAgICAgICBnYXNQcmljZUluV2VpOiBwYXJhbXMuZ2FzUHJpY2VJbldlaSA/IGJpZ0ludFN0cmluZ0Zyb21CaWdJbnQocGFyYW1zLmdhc1ByaWNlSW5XZWkpIDogbnVsbCxcbiAgICAgICAgICAgICAgICBtYXhGZWVQZXJHYXM6IHBhcmFtcy5tYXhGZWVQZXJHYXMgPyBiaWdJbnRTdHJpbmdGcm9tQmlnSW50KHBhcmFtcy5tYXhGZWVQZXJHYXMpIDogbnVsbCxcbiAgICAgICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhczogcGFyYW1zLm1heFByaW9yaXR5RmVlUGVyR2FzXG4gICAgICAgICAgICAgICAgICAgID8gYmlnSW50U3RyaW5nRnJvbUJpZ0ludChwYXJhbXMubWF4UHJpb3JpdHlGZWVQZXJHYXMpXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICAgICAgICBnYXNMaW1pdDogcGFyYW1zLmdhc0xpbWl0ID8gYmlnSW50U3RyaW5nRnJvbUJpZ0ludChwYXJhbXMuZ2FzTGltaXQpIDogbnVsbCxcbiAgICAgICAgICAgICAgICBjaGFpbklkOiBwYXJhbXMuY2hhaW5JZCxcbiAgICAgICAgICAgICAgICBzaG91bGRTdWJtaXQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgc3VibWl0RXRoZXJldW1UcmFuc2FjdGlvbihzaWduZWRUcmFuc2FjdGlvbiwgY2hhaW5JZCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zZW5kUmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdzdWJtaXRFdGhlcmV1bVRyYW5zYWN0aW9uJyxcbiAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgIHNpZ25lZFRyYW5zYWN0aW9uOiBoZXhTdHJpbmdGcm9tQnVmZmVyKHNpZ25lZFRyYW5zYWN0aW9uLCB0cnVlKSxcbiAgICAgICAgICAgICAgICBjaGFpbklkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGdldFdhbGxldExpbmtTZXNzaW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2Vzc2lvbjtcbiAgICB9XG4gICAgc2VuZFJlcXVlc3QocmVxdWVzdCkge1xuICAgICAgICBsZXQgaGlkZVNuYWNrYmFySXRlbSA9IG51bGw7XG4gICAgICAgIGNvbnN0IGlkID0gcmFuZG9tQnl0ZXNIZXgoOCk7XG4gICAgICAgIGNvbnN0IGNhbmNlbCA9IChlcnJvcikgPT4ge1xuICAgICAgICAgICAgdGhpcy5wdWJsaXNoV2ViM1JlcXVlc3RDYW5jZWxlZEV2ZW50KGlkKTtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3JSZXNwb25zZShpZCwgcmVxdWVzdC5tZXRob2QsIGVycm9yKTtcbiAgICAgICAgICAgIGhpZGVTbmFja2Jhckl0ZW0gPT09IG51bGwgfHwgaGlkZVNuYWNrYmFySXRlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogaGlkZVNuYWNrYmFySXRlbSgpO1xuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGhpZGVTbmFja2Jhckl0ZW0gPSB0aGlzLnVpLnNob3dDb25uZWN0aW5nKHtcbiAgICAgICAgICAgICAgICAgICAgaXNVbmxpbmtlZEVycm9yU3RhdGU6IHRoaXMuaXNVbmxpbmtlZEVycm9yU3RhdGUsXG4gICAgICAgICAgICAgICAgICAgIG9uQ2FuY2VsOiBjYW5jZWwsXG4gICAgICAgICAgICAgICAgICAgIG9uUmVzZXRDb25uZWN0aW9uOiB0aGlzLnJlc2V0QW5kUmVsb2FkLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5yZWxheUV2ZW50TWFuYWdlci5jYWxsYmFja3Muc2V0KGlkLCAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBoaWRlU25hY2tiYXJJdGVtID09PSBudWxsIHx8IGhpZGVTbmFja2Jhckl0ZW0gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGhpZGVTbmFja2Jhckl0ZW0oKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFcnJvclJlc3BvbnNlKHJlc3BvbnNlKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVqZWN0KG5ldyBFcnJvcihyZXNwb25zZS5lcnJvck1lc3NhZ2UpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMucHVibGlzaFdlYjNSZXF1ZXN0RXZlbnQoaWQsIHJlcXVlc3QpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgcHVibGlzaFdlYjNSZXF1ZXN0RXZlbnQoaWQsIHJlcXVlc3QpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IHsgdHlwZTogJ1dFQjNfUkVRVUVTVCcsIGlkLCByZXF1ZXN0IH07XG4gICAgICAgIHRoaXMucHVibGlzaEV2ZW50KCdXZWIzUmVxdWVzdCcsIG1lc3NhZ2UsIHRydWUpXG4gICAgICAgICAgICAudGhlbigoXykgPT4geyB9KVxuICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlV2ViM1Jlc3BvbnNlTWVzc2FnZShtZXNzYWdlLmlkLCB7XG4gICAgICAgICAgICAgICAgbWV0aG9kOiByZXF1ZXN0Lm1ldGhvZCxcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IGVyci5tZXNzYWdlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZVdlYikge1xuICAgICAgICAgICAgdGhpcy5vcGVuQ29pbmJhc2VXYWxsZXREZWVwbGluayhyZXF1ZXN0Lm1ldGhvZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gY29waWVkIGZyb20gTW9iaWxlUmVsYXlcbiAgICBvcGVuQ29pbmJhc2VXYWxsZXREZWVwbGluayhtZXRob2QpIHtcbiAgICAgICAgaWYgKCEodGhpcy51aSBpbnN0YW5jZW9mIFdMTW9iaWxlUmVsYXlVSSkpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIC8vIEZvciBtb2JpbGUgcmVsYXkgcmVxdWVzdHMsIG9wZW4gdGhlIENvaW5iYXNlIFdhbGxldCBhcHBcbiAgICAgICAgc3dpdGNoIChtZXRob2QpIHtcbiAgICAgICAgICAgIGNhc2UgJ3JlcXVlc3RFdGhlcmV1bUFjY291bnRzJzogLy8gcmVxdWVzdEV0aGVyZXVtQWNjb3VudHMgaXMgaGFuZGxlZCB2aWEgcG9wdXBcbiAgICAgICAgICAgIGNhc2UgJ3N3aXRjaEV0aGVyZXVtQ2hhaW4nOiAvLyBzd2l0Y2hFdGhlcmV1bUNoYWluIGRvZXNuJ3QgbmVlZCB0byBvcGVuIHRoZSBhcHBcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXMnLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3Rpb24uY2hlY2tVbnNlZW5FdmVudHMoKTtcbiAgICAgICAgICAgICAgICAgICAgfSwgeyBvbmNlOiB0cnVlIH0pO1xuICAgICAgICAgICAgICAgIH0sIHsgb25jZTogdHJ1ZSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnVpLm9wZW5Db2luYmFzZVdhbGxldERlZXBsaW5rKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHVibGlzaFdlYjNSZXF1ZXN0Q2FuY2VsZWRFdmVudChpZCkge1xuICAgICAgICBjb25zdCBtZXNzYWdlID0ge1xuICAgICAgICAgICAgdHlwZTogJ1dFQjNfUkVRVUVTVF9DQU5DRUxFRCcsXG4gICAgICAgICAgICBpZCxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5wdWJsaXNoRXZlbnQoJ1dlYjNSZXF1ZXN0Q2FuY2VsZWQnLCBtZXNzYWdlLCBmYWxzZSkudGhlbigpO1xuICAgIH1cbiAgICBwdWJsaXNoRXZlbnQoZXZlbnQsIG1lc3NhZ2UsIGNhbGxXZWJob29rKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rpb24ucHVibGlzaEV2ZW50KGV2ZW50LCBtZXNzYWdlLCBjYWxsV2ViaG9vayk7XG4gICAgfVxuICAgIGhhbmRsZVdlYjNSZXNwb25zZU1lc3NhZ2UoaWQsIHJlc3BvbnNlKSB7XG4gICAgICAgIGlmIChyZXNwb25zZS5tZXRob2QgPT09ICdyZXF1ZXN0RXRoZXJldW1BY2NvdW50cycpIHtcbiAgICAgICAgICAgIFdhbGxldExpbmtSZWxheS5hY2NvdW50UmVxdWVzdENhbGxiYWNrSWRzLmZvckVhY2goKGlkKSA9PiB0aGlzLmludm9rZUNhbGxiYWNrKGlkLCByZXNwb25zZSkpO1xuICAgICAgICAgICAgV2FsbGV0TGlua1JlbGF5LmFjY291bnRSZXF1ZXN0Q2FsbGJhY2tJZHMuY2xlYXIoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmludm9rZUNhbGxiYWNrKGlkLCByZXNwb25zZSk7XG4gICAgfVxuICAgIGhhbmRsZUVycm9yUmVzcG9uc2UoaWQsIG1ldGhvZCwgZXJyb3IpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAoX2EgPSBlcnJvciA9PT0gbnVsbCB8fCBlcnJvciA9PT0gdm9pZCAwID8gdm9pZCAwIDogZXJyb3IubWVzc2FnZSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJ1Vuc3BlY2lmaWVkIGVycm9yIG1lc3NhZ2UuJztcbiAgICAgICAgdGhpcy5oYW5kbGVXZWIzUmVzcG9uc2VNZXNzYWdlKGlkLCB7XG4gICAgICAgICAgICBtZXRob2QsXG4gICAgICAgICAgICBlcnJvck1lc3NhZ2UsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBpbnZva2VDYWxsYmFjayhpZCwgcmVzcG9uc2UpIHtcbiAgICAgICAgY29uc3QgY2FsbGJhY2sgPSB0aGlzLnJlbGF5RXZlbnRNYW5hZ2VyLmNhbGxiYWNrcy5nZXQoaWQpO1xuICAgICAgICBpZiAoY2FsbGJhY2spIHtcbiAgICAgICAgICAgIGNhbGxiYWNrKHJlc3BvbnNlKTtcbiAgICAgICAgICAgIHRoaXMucmVsYXlFdmVudE1hbmFnZXIuY2FsbGJhY2tzLmRlbGV0ZShpZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmVxdWVzdEV0aGVyZXVtQWNjb3VudHMoKSB7XG4gICAgICAgIGNvbnN0IHsgYXBwTmFtZSwgYXBwTG9nb1VybCB9ID0gdGhpcy5tZXRhZGF0YTtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICAgICAgICAgIG1ldGhvZDogJ3JlcXVlc3RFdGhlcmV1bUFjY291bnRzJyxcbiAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgIGFwcE5hbWUsXG4gICAgICAgICAgICAgICAgYXBwTG9nb1VybCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGhpZGVTbmFja2Jhckl0ZW0gPSBudWxsO1xuICAgICAgICBjb25zdCBpZCA9IHJhbmRvbUJ5dGVzSGV4KDgpO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZWxheUV2ZW50TWFuYWdlci5jYWxsYmFja3Muc2V0KGlkLCAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgaGlkZVNuYWNrYmFySXRlbSA9PT0gbnVsbCB8fCBoaWRlU25hY2tiYXJJdGVtID09PSB2b2lkIDAgPyB2b2lkIDAgOiBoaWRlU25hY2tiYXJJdGVtKCk7XG4gICAgICAgICAgICAgICAgaWYgKGlzRXJyb3JSZXNwb25zZShyZXNwb25zZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlamVjdChuZXcgRXJyb3IocmVzcG9uc2UuZXJyb3JNZXNzYWdlKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBXYWxsZXRMaW5rUmVsYXkuYWNjb3VudFJlcXVlc3RDYWxsYmFja0lkcy5hZGQoaWQpO1xuICAgICAgICAgICAgdGhpcy5wdWJsaXNoV2ViM1JlcXVlc3RFdmVudChpZCwgcmVxdWVzdCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICB3YXRjaEFzc2V0KHR5cGUsIGFkZHJlc3MsIHN5bWJvbCwgZGVjaW1hbHMsIGltYWdlLCBjaGFpbklkKSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICAgICAgICBtZXRob2Q6ICd3YXRjaEFzc2V0JyxcbiAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICBzeW1ib2wsXG4gICAgICAgICAgICAgICAgICAgIGRlY2ltYWxzLFxuICAgICAgICAgICAgICAgICAgICBpbWFnZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGNoYWluSWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgICBsZXQgaGlkZVNuYWNrYmFySXRlbSA9IG51bGw7XG4gICAgICAgIGNvbnN0IGlkID0gcmFuZG9tQnl0ZXNIZXgoOCk7XG4gICAgICAgIGNvbnN0IGNhbmNlbCA9IChlcnJvcikgPT4ge1xuICAgICAgICAgICAgdGhpcy5wdWJsaXNoV2ViM1JlcXVlc3RDYW5jZWxlZEV2ZW50KGlkKTtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3JSZXNwb25zZShpZCwgcmVxdWVzdC5tZXRob2QsIGVycm9yKTtcbiAgICAgICAgICAgIGhpZGVTbmFja2Jhckl0ZW0gPT09IG51bGwgfHwgaGlkZVNuYWNrYmFySXRlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogaGlkZVNuYWNrYmFySXRlbSgpO1xuICAgICAgICB9O1xuICAgICAgICB7XG4gICAgICAgICAgICBoaWRlU25hY2tiYXJJdGVtID0gdGhpcy51aS5zaG93Q29ubmVjdGluZyh7XG4gICAgICAgICAgICAgICAgaXNVbmxpbmtlZEVycm9yU3RhdGU6IHRoaXMuaXNVbmxpbmtlZEVycm9yU3RhdGUsXG4gICAgICAgICAgICAgICAgb25DYW5jZWw6IGNhbmNlbCxcbiAgICAgICAgICAgICAgICBvblJlc2V0Q29ubmVjdGlvbjogdGhpcy5yZXNldEFuZFJlbG9hZCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlbGF5RXZlbnRNYW5hZ2VyLmNhbGxiYWNrcy5zZXQoaWQsIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGhpZGVTbmFja2Jhckl0ZW0gPT09IG51bGwgfHwgaGlkZVNuYWNrYmFySXRlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogaGlkZVNuYWNrYmFySXRlbSgpO1xuICAgICAgICAgICAgICAgIGlmIChpc0Vycm9yUmVzcG9uc2UocmVzcG9uc2UpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZWplY3QobmV3IEVycm9yKHJlc3BvbnNlLmVycm9yTWVzc2FnZSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5wdWJsaXNoV2ViM1JlcXVlc3RFdmVudChpZCwgcmVxdWVzdCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBhZGRFdGhlcmV1bUNoYWluKGNoYWluSWQsIHJwY1VybHMsIGljb25VcmxzLCBibG9ja0V4cGxvcmVyVXJscywgY2hhaW5OYW1lLCBuYXRpdmVDdXJyZW5jeSkge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0ge1xuICAgICAgICAgICAgbWV0aG9kOiAnYWRkRXRoZXJldW1DaGFpbicsXG4gICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICBjaGFpbklkLFxuICAgICAgICAgICAgICAgIHJwY1VybHMsXG4gICAgICAgICAgICAgICAgYmxvY2tFeHBsb3JlclVybHMsXG4gICAgICAgICAgICAgICAgY2hhaW5OYW1lLFxuICAgICAgICAgICAgICAgIGljb25VcmxzLFxuICAgICAgICAgICAgICAgIG5hdGl2ZUN1cnJlbmN5LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IGhpZGVTbmFja2Jhckl0ZW0gPSBudWxsO1xuICAgICAgICBjb25zdCBpZCA9IHJhbmRvbUJ5dGVzSGV4KDgpO1xuICAgICAgICBjb25zdCBjYW5jZWwgPSAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIHRoaXMucHVibGlzaFdlYjNSZXF1ZXN0Q2FuY2VsZWRFdmVudChpZCk7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yUmVzcG9uc2UoaWQsIHJlcXVlc3QubWV0aG9kLCBlcnJvcik7XG4gICAgICAgICAgICBoaWRlU25hY2tiYXJJdGVtID09PSBudWxsIHx8IGhpZGVTbmFja2Jhckl0ZW0gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGhpZGVTbmFja2Jhckl0ZW0oKTtcbiAgICAgICAgfTtcbiAgICAgICAge1xuICAgICAgICAgICAgaGlkZVNuYWNrYmFySXRlbSA9IHRoaXMudWkuc2hvd0Nvbm5lY3Rpbmcoe1xuICAgICAgICAgICAgICAgIGlzVW5saW5rZWRFcnJvclN0YXRlOiB0aGlzLmlzVW5saW5rZWRFcnJvclN0YXRlLFxuICAgICAgICAgICAgICAgIG9uQ2FuY2VsOiBjYW5jZWwsXG4gICAgICAgICAgICAgICAgb25SZXNldENvbm5lY3Rpb246IHRoaXMucmVzZXRBbmRSZWxvYWQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZWxheUV2ZW50TWFuYWdlci5jYWxsYmFja3Muc2V0KGlkLCAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBoaWRlU25hY2tiYXJJdGVtID09PSBudWxsIHx8IGhpZGVTbmFja2Jhckl0ZW0gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGhpZGVTbmFja2Jhckl0ZW0oKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFcnJvclJlc3BvbnNlKHJlc3BvbnNlKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVqZWN0KG5ldyBFcnJvcihyZXNwb25zZS5lcnJvck1lc3NhZ2UpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMucHVibGlzaFdlYjNSZXF1ZXN0RXZlbnQoaWQsIHJlcXVlc3QpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgc3dpdGNoRXRoZXJldW1DaGFpbihjaGFpbklkLCBhZGRyZXNzKSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICAgICAgICBtZXRob2Q6ICdzd2l0Y2hFdGhlcmV1bUNoYWluJyxcbiAgICAgICAgICAgIHBhcmFtczogT2JqZWN0LmFzc2lnbih7IGNoYWluSWQgfSwgeyBhZGRyZXNzIH0pLFxuICAgICAgICB9O1xuICAgICAgICBsZXQgaGlkZVNuYWNrYmFySXRlbSA9IG51bGw7XG4gICAgICAgIGNvbnN0IGlkID0gcmFuZG9tQnl0ZXNIZXgoOCk7XG4gICAgICAgIGNvbnN0IGNhbmNlbCA9IChlcnJvcikgPT4ge1xuICAgICAgICAgICAgdGhpcy5wdWJsaXNoV2ViM1JlcXVlc3RDYW5jZWxlZEV2ZW50KGlkKTtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3JSZXNwb25zZShpZCwgcmVxdWVzdC5tZXRob2QsIGVycm9yKTtcbiAgICAgICAgICAgIGhpZGVTbmFja2Jhckl0ZW0gPT09IG51bGwgfHwgaGlkZVNuYWNrYmFySXRlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogaGlkZVNuYWNrYmFySXRlbSgpO1xuICAgICAgICB9O1xuICAgICAgICB7XG4gICAgICAgICAgICBoaWRlU25hY2tiYXJJdGVtID0gdGhpcy51aS5zaG93Q29ubmVjdGluZyh7XG4gICAgICAgICAgICAgICAgaXNVbmxpbmtlZEVycm9yU3RhdGU6IHRoaXMuaXNVbmxpbmtlZEVycm9yU3RhdGUsXG4gICAgICAgICAgICAgICAgb25DYW5jZWw6IGNhbmNlbCxcbiAgICAgICAgICAgICAgICBvblJlc2V0Q29ubmVjdGlvbjogdGhpcy5yZXNldEFuZFJlbG9hZCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlbGF5RXZlbnRNYW5hZ2VyLmNhbGxiYWNrcy5zZXQoaWQsIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGhpZGVTbmFja2Jhckl0ZW0gPT09IG51bGwgfHwgaGlkZVNuYWNrYmFySXRlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogaGlkZVNuYWNrYmFySXRlbSgpO1xuICAgICAgICAgICAgICAgIGlmIChpc0Vycm9yUmVzcG9uc2UocmVzcG9uc2UpICYmIHJlc3BvbnNlLmVycm9yQ29kZSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVqZWN0KHN0YW5kYXJkRXJyb3JzLnByb3ZpZGVyLmN1c3RvbSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiByZXNwb25zZS5lcnJvckNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiBgVW5yZWNvZ25pemVkIGNoYWluIElELiBUcnkgYWRkaW5nIHRoZSBjaGFpbiB1c2luZyBhZGRFdGhlcmV1bUNoYWluIGZpcnN0LmAsXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzRXJyb3JSZXNwb25zZShyZXNwb25zZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlamVjdChuZXcgRXJyb3IocmVzcG9uc2UuZXJyb3JNZXNzYWdlKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLnB1Ymxpc2hXZWIzUmVxdWVzdEV2ZW50KGlkLCByZXF1ZXN0KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuV2FsbGV0TGlua1JlbGF5LmFjY291bnRSZXF1ZXN0Q2FsbGJhY2tJZHMgPSBuZXcgU2V0KCk7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1XYWxsZXRMaW5rUmVsYXkuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/WalletLinkRelay.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkCipher.js": /*!*****************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkCipher.js ***! \*****************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WalletLinkCipher: () => (/* binding */ WalletLinkCipher)\n/* harmony export */ });\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\n\nclass WalletLinkCipher {\n // @param secret hex representation of 32-byte secret\n constructor(secret) {\n this.secret = secret;\n }\n /**\n *\n * @param plainText string to be encrypted\n * returns hex string representation of bytes in the order: initialization vector (iv),\n * auth tag, encrypted plaintext. IV is 12 bytes. Auth tag is 16 bytes. Remaining bytes are the\n * encrypted plainText.\n */\n async encrypt(plainText) {\n const secret = this.secret;\n if (secret.length !== 64)\n throw new Error(`secret must be 256 bits`);\n const ivBytes = crypto.getRandomValues(new Uint8Array(12));\n const secretKey = await crypto.subtle.importKey('raw', (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_0__.hexStringToUint8Array)(secret), { name: 'aes-gcm' }, false, ['encrypt', 'decrypt']);\n const enc = new TextEncoder();\n // Will return encrypted plainText with auth tag (ie MAC or checksum) appended at the end\n const encryptedResult = await window.crypto.subtle.encrypt({\n name: 'AES-GCM',\n iv: ivBytes,\n }, secretKey, enc.encode(plainText));\n const tagLength = 16;\n const authTag = encryptedResult.slice(encryptedResult.byteLength - tagLength);\n const encryptedPlaintext = encryptedResult.slice(0, encryptedResult.byteLength - tagLength);\n const authTagBytes = new Uint8Array(authTag);\n const encryptedPlaintextBytes = new Uint8Array(encryptedPlaintext);\n const concatenated = new Uint8Array([...ivBytes, ...authTagBytes, ...encryptedPlaintextBytes]);\n return (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_0__.uint8ArrayToHex)(concatenated);\n }\n /**\n *\n * @param cipherText hex string representation of bytes in the order: initialization vector (iv),\n * auth tag, encrypted plaintext. IV is 12 bytes. Auth tag is 16 bytes.\n */\n async decrypt(cipherText) {\n const secret = this.secret;\n if (secret.length !== 64)\n throw new Error(`secret must be 256 bits`);\n return new Promise((resolve, reject) => {\n void (async () => {\n const secretKey = await crypto.subtle.importKey('raw', (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_0__.hexStringToUint8Array)(secret), { name: 'aes-gcm' }, false, ['encrypt', 'decrypt']);\n const encrypted = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_0__.hexStringToUint8Array)(cipherText);\n const ivBytes = encrypted.slice(0, 12);\n const authTagBytes = encrypted.slice(12, 28);\n const encryptedPlaintextBytes = encrypted.slice(28);\n const concatenatedBytes = new Uint8Array([...encryptedPlaintextBytes, ...authTagBytes]);\n const algo = {\n name: 'AES-GCM',\n iv: new Uint8Array(ivBytes),\n };\n try {\n const decrypted = await window.crypto.subtle.decrypt(algo, secretKey, concatenatedBytes);\n const decoder = new TextDecoder();\n resolve(decoder.decode(decrypted));\n }\n catch (err) {\n reject(err);\n }\n })();\n });\n }\n}\n//# sourceMappingURL=WalletLinkCipher.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9jb25uZWN0aW9uL1dhbGxldExpbmtDaXBoZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUN1RjtBQUNoRjtBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0RBQStELHlFQUFxQixZQUFZLGlCQUFpQjtBQUNqSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsbUVBQWU7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUVBQXVFLHlFQUFxQixZQUFZLGlCQUFpQjtBQUN6SCxrQ0FBa0MseUVBQXFCO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvcmVsYXkvY29ubmVjdGlvbi9XYWxsZXRMaW5rQ2lwaGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIENvaW5iYXNlLCBJbmMuIDxodHRwczovL3d3dy5jb2luYmFzZS5jb20vPlxuaW1wb3J0IHsgaGV4U3RyaW5nVG9VaW50OEFycmF5LCB1aW50OEFycmF5VG9IZXggfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3R5cGUvdXRpbC5qcyc7XG5leHBvcnQgY2xhc3MgV2FsbGV0TGlua0NpcGhlciB7XG4gICAgLy8gQHBhcmFtIHNlY3JldCBoZXggcmVwcmVzZW50YXRpb24gb2YgMzItYnl0ZSBzZWNyZXRcbiAgICBjb25zdHJ1Y3RvcihzZWNyZXQpIHtcbiAgICAgICAgdGhpcy5zZWNyZXQgPSBzZWNyZXQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqXG4gICAgICogQHBhcmFtIHBsYWluVGV4dCBzdHJpbmcgdG8gYmUgZW5jcnlwdGVkXG4gICAgICogcmV0dXJucyBoZXggc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGJ5dGVzIGluIHRoZSBvcmRlcjogaW5pdGlhbGl6YXRpb24gdmVjdG9yIChpdiksXG4gICAgICogYXV0aCB0YWcsIGVuY3J5cHRlZCBwbGFpbnRleHQuIElWIGlzIDEyIGJ5dGVzLiBBdXRoIHRhZyBpcyAxNiBieXRlcy4gUmVtYWluaW5nIGJ5dGVzIGFyZSB0aGVcbiAgICAgKiBlbmNyeXB0ZWQgcGxhaW5UZXh0LlxuICAgICAqL1xuICAgIGFzeW5jIGVuY3J5cHQocGxhaW5UZXh0KSB7XG4gICAgICAgIGNvbnN0IHNlY3JldCA9IHRoaXMuc2VjcmV0O1xuICAgICAgICBpZiAoc2VjcmV0Lmxlbmd0aCAhPT0gNjQpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHNlY3JldCBtdXN0IGJlIDI1NiBiaXRzYCk7XG4gICAgICAgIGNvbnN0IGl2Qnl0ZXMgPSBjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKG5ldyBVaW50OEFycmF5KDEyKSk7XG4gICAgICAgIGNvbnN0IHNlY3JldEtleSA9IGF3YWl0IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCdyYXcnLCBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoc2VjcmV0KSwgeyBuYW1lOiAnYWVzLWdjbScgfSwgZmFsc2UsIFsnZW5jcnlwdCcsICdkZWNyeXB0J10pO1xuICAgICAgICBjb25zdCBlbmMgPSBuZXcgVGV4dEVuY29kZXIoKTtcbiAgICAgICAgLy8gV2lsbCByZXR1cm4gZW5jcnlwdGVkIHBsYWluVGV4dCB3aXRoIGF1dGggdGFnIChpZSBNQUMgb3IgY2hlY2tzdW0pIGFwcGVuZGVkIGF0IHRoZSBlbmRcbiAgICAgICAgY29uc3QgZW5jcnlwdGVkUmVzdWx0ID0gYXdhaXQgd2luZG93LmNyeXB0by5zdWJ0bGUuZW5jcnlwdCh7XG4gICAgICAgICAgICBuYW1lOiAnQUVTLUdDTScsXG4gICAgICAgICAgICBpdjogaXZCeXRlcyxcbiAgICAgICAgfSwgc2VjcmV0S2V5LCBlbmMuZW5jb2RlKHBsYWluVGV4dCkpO1xuICAgICAgICBjb25zdCB0YWdMZW5ndGggPSAxNjtcbiAgICAgICAgY29uc3QgYXV0aFRhZyA9IGVuY3J5cHRlZFJlc3VsdC5zbGljZShlbmNyeXB0ZWRSZXN1bHQuYnl0ZUxlbmd0aCAtIHRhZ0xlbmd0aCk7XG4gICAgICAgIGNvbnN0IGVuY3J5cHRlZFBsYWludGV4dCA9IGVuY3J5cHRlZFJlc3VsdC5zbGljZSgwLCBlbmNyeXB0ZWRSZXN1bHQuYnl0ZUxlbmd0aCAtIHRhZ0xlbmd0aCk7XG4gICAgICAgIGNvbnN0IGF1dGhUYWdCeXRlcyA9IG5ldyBVaW50OEFycmF5KGF1dGhUYWcpO1xuICAgICAgICBjb25zdCBlbmNyeXB0ZWRQbGFpbnRleHRCeXRlcyA9IG5ldyBVaW50OEFycmF5KGVuY3J5cHRlZFBsYWludGV4dCk7XG4gICAgICAgIGNvbnN0IGNvbmNhdGVuYXRlZCA9IG5ldyBVaW50OEFycmF5KFsuLi5pdkJ5dGVzLCAuLi5hdXRoVGFnQnl0ZXMsIC4uLmVuY3J5cHRlZFBsYWludGV4dEJ5dGVzXSk7XG4gICAgICAgIHJldHVybiB1aW50OEFycmF5VG9IZXgoY29uY2F0ZW5hdGVkKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY2lwaGVyVGV4dCBoZXggc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGJ5dGVzIGluIHRoZSBvcmRlcjogaW5pdGlhbGl6YXRpb24gdmVjdG9yIChpdiksXG4gICAgICogYXV0aCB0YWcsIGVuY3J5cHRlZCBwbGFpbnRleHQuIElWIGlzIDEyIGJ5dGVzLiBBdXRoIHRhZyBpcyAxNiBieXRlcy5cbiAgICAgKi9cbiAgICBhc3luYyBkZWNyeXB0KGNpcGhlclRleHQpIHtcbiAgICAgICAgY29uc3Qgc2VjcmV0ID0gdGhpcy5zZWNyZXQ7XG4gICAgICAgIGlmIChzZWNyZXQubGVuZ3RoICE9PSA2NClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgc2VjcmV0IG11c3QgYmUgMjU2IGJpdHNgKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHZvaWQgKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzZWNyZXRLZXkgPSBhd2FpdCBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgncmF3JywgaGV4U3RyaW5nVG9VaW50OEFycmF5KHNlY3JldCksIHsgbmFtZTogJ2Flcy1nY20nIH0sIGZhbHNlLCBbJ2VuY3J5cHQnLCAnZGVjcnlwdCddKTtcbiAgICAgICAgICAgICAgICBjb25zdCBlbmNyeXB0ZWQgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoY2lwaGVyVGV4dCk7XG4gICAgICAgICAgICAgICAgY29uc3QgaXZCeXRlcyA9IGVuY3J5cHRlZC5zbGljZSgwLCAxMik7XG4gICAgICAgICAgICAgICAgY29uc3QgYXV0aFRhZ0J5dGVzID0gZW5jcnlwdGVkLnNsaWNlKDEyLCAyOCk7XG4gICAgICAgICAgICAgICAgY29uc3QgZW5jcnlwdGVkUGxhaW50ZXh0Qnl0ZXMgPSBlbmNyeXB0ZWQuc2xpY2UoMjgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbmNhdGVuYXRlZEJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkoWy4uLmVuY3J5cHRlZFBsYWludGV4dEJ5dGVzLCAuLi5hdXRoVGFnQnl0ZXNdKTtcbiAgICAgICAgICAgICAgICBjb25zdCBhbGdvID0ge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnQUVTLUdDTScsXG4gICAgICAgICAgICAgICAgICAgIGl2OiBuZXcgVWludDhBcnJheShpdkJ5dGVzKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlY3J5cHRlZCA9IGF3YWl0IHdpbmRvdy5jcnlwdG8uc3VidGxlLmRlY3J5cHQoYWxnbywgc2VjcmV0S2V5LCBjb25jYXRlbmF0ZWRCeXRlcyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoKTtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShkZWNvZGVyLmRlY29kZShkZWNyeXB0ZWQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSgpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1XYWxsZXRMaW5rQ2lwaGVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkCipher.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkConnection.js": /*!*********************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkConnection.js ***! \*********************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WalletLinkConnection: () => (/* binding */ WalletLinkConnection)\n/* harmony export */ });\n/* harmony import */ var _core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../core/telemetry/events/walletlink-signer.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/walletlink-signer.js\");\n/* harmony import */ var _core_type_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../core/type/index.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/index.js\");\n/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/constants.js\");\n/* harmony import */ var _WalletLinkCipher_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./WalletLinkCipher.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkCipher.js\");\n/* harmony import */ var _WalletLinkHTTP_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./WalletLinkHTTP.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkHTTP.js\");\n/* harmony import */ var _WalletLinkWebSocket_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./WalletLinkWebSocket.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkWebSocket.js\");\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\n\n\n\n\n\n\nconst HEARTBEAT_INTERVAL = 10000;\nconst REQUEST_TIMEOUT = 60000;\n/**\n * Coinbase Wallet Connection\n */\nclass WalletLinkConnection {\n /**\n * Constructor\n * @param session Session\n * @param linkAPIUrl Coinbase Wallet link server URL\n * @param listener WalletLinkConnectionUpdateListener\n * @param [WebSocketClass] Custom WebSocket implementation\n */\n constructor({ session, linkAPIUrl, listener }) {\n this.destroyed = false;\n this.lastHeartbeatResponse = 0;\n this.nextReqId = (0,_core_type_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(1);\n this.reconnectAttempts = 0;\n this.isReconnecting = false;\n /**\n * true if connected and authenticated, else false\n * runs listener when connected status changes\n */\n this._connected = false;\n /**\n * true if linked (a guest has joined before)\n * runs listener when linked status changes\n */\n this._linked = false;\n this.requestResolutions = new Map();\n this.handleSessionMetadataUpdated = (metadata) => {\n if (!metadata)\n return;\n // Map of metadata key to handler function\n const handlers = new Map([\n ['__destroyed', this.handleDestroyed],\n ['EthereumAddress', this.handleAccountUpdated],\n ['WalletUsername', this.handleWalletUsernameUpdated],\n ['AppVersion', this.handleAppVersionUpdated],\n [\n 'ChainId', // ChainId and JsonRpcUrl are always updated together\n (v) => metadata.JsonRpcUrl && this.handleChainUpdated(v, metadata.JsonRpcUrl),\n ],\n ]);\n // call handler for each metadata key if value is defined\n handlers.forEach((handler, key) => {\n const value = metadata[key];\n if (value === undefined)\n return;\n handler(value);\n });\n };\n this.handleDestroyed = (__destroyed) => {\n var _a;\n if (__destroyed !== '1')\n return;\n (_a = this.listener) === null || _a === void 0 ? void 0 : _a.resetAndReload();\n };\n this.handleAccountUpdated = async (encryptedEthereumAddress) => {\n var _a;\n try {\n const address = await this.cipher.decrypt(encryptedEthereumAddress);\n (_a = this.listener) === null || _a === void 0 ? void 0 : _a.accountUpdated(address);\n }\n catch (_b) {\n // Had error decrypting\n }\n };\n this.handleMetadataUpdated = async (key, encryptedMetadataValue) => {\n var _a;\n try {\n const decryptedValue = await this.cipher.decrypt(encryptedMetadataValue);\n (_a = this.listener) === null || _a === void 0 ? void 0 : _a.metadataUpdated(key, decryptedValue);\n }\n catch (_b) {\n // Had error decrypting\n }\n };\n this.handleWalletUsernameUpdated = async (walletUsername) => {\n this.handleMetadataUpdated(_constants_js__WEBPACK_IMPORTED_MODULE_1__.WALLET_USER_NAME_KEY, walletUsername);\n };\n this.handleAppVersionUpdated = async (appVersion) => {\n this.handleMetadataUpdated(_constants_js__WEBPACK_IMPORTED_MODULE_1__.APP_VERSION_KEY, appVersion);\n };\n this.handleChainUpdated = async (encryptedChainId, encryptedJsonRpcUrl) => {\n var _a;\n try {\n const chainId = await this.cipher.decrypt(encryptedChainId);\n const jsonRpcUrl = await this.cipher.decrypt(encryptedJsonRpcUrl);\n (_a = this.listener) === null || _a === void 0 ? void 0 : _a.chainUpdated(chainId, jsonRpcUrl);\n }\n catch (_b) {\n // Had error decrypting\n }\n };\n this.session = session;\n this.cipher = new _WalletLinkCipher_js__WEBPACK_IMPORTED_MODULE_2__.WalletLinkCipher(session.secret);\n this.listener = listener;\n this.linkAPIUrl = linkAPIUrl;\n this.WebSocketClass = WebSocket;\n const ws = this.createWebSocket();\n this.ws = ws;\n this.http = new _WalletLinkHTTP_js__WEBPACK_IMPORTED_MODULE_3__.WalletLinkHTTP(linkAPIUrl, session.id, session.key);\n this.setupVisibilityChangeHandler();\n }\n createWebSocket() {\n const ws = new _WalletLinkWebSocket_js__WEBPACK_IMPORTED_MODULE_4__.WalletLinkWebSocket(`${this.linkAPIUrl}/rpc`, this.WebSocketClass);\n // Track this as the active WebSocket instance\n this.activeWsInstance = ws;\n ws.setConnectionStateListener(async (state) => {\n // Ignore events from non-active WebSocket instances\n if (ws !== this.activeWsInstance) {\n return;\n }\n // attempt to reconnect every 5 seconds when disconnected\n let connected = false;\n switch (state) {\n case _WalletLinkWebSocket_js__WEBPACK_IMPORTED_MODULE_4__.ConnectionState.DISCONNECTED:\n // Clear heartbeat timer when disconnected\n if (this.heartbeatIntervalId) {\n clearInterval(this.heartbeatIntervalId);\n this.heartbeatIntervalId = undefined;\n }\n // Reset lastHeartbeatResponse to prevent false timeout on reconnection\n this.lastHeartbeatResponse = 0;\n // Reset connected state to false on disconnect\n connected = false;\n // if DISCONNECTED and not destroyed, create a fresh WebSocket connection\n if (!this.destroyed) {\n const reconnect = async () => {\n // Prevent multiple concurrent reconnection attempts\n if (this.isReconnecting) {\n return;\n }\n this.isReconnecting = true;\n // 0 second delay on first attempt, then 3 seconds\n const delay = this.reconnectAttempts === 0 ? 0 : 3000;\n // wait before reconnecting\n await new Promise((resolve) => setTimeout(resolve, delay));\n // check whether it's destroyed again and ensure this is still the active instance\n if (!this.destroyed && ws === this.activeWsInstance) {\n this.reconnectAttempts++;\n // Clean up the old WebSocket instance\n if ('cleanup' in this.ws && typeof this.ws.cleanup === 'function') {\n this.ws.cleanup();\n }\n // Create a fresh WebSocket instance\n this.ws = this.createWebSocket();\n this.ws\n .connect()\n .catch(() => {\n // Reconnection failed, will retry\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logWalletLinkConnectionConnectionFailed)();\n })\n .finally(() => {\n this.isReconnecting = false;\n });\n }\n else {\n this.isReconnecting = false;\n }\n };\n reconnect();\n }\n break;\n case _WalletLinkWebSocket_js__WEBPACK_IMPORTED_MODULE_4__.ConnectionState.CONNECTED:\n // Reset reconnect attempts on successful connection\n this.reconnectAttempts = 0;\n // perform authentication upon connection\n try {\n // if CONNECTED, authenticate, and then check link status\n connected = await this.handleConnected();\n // Always fetch unseen events when WebSocket state changes to CONNECTED\n this.fetchUnseenEventsAPI().catch(() => {\n // Failed to fetch unseen events after connection\n });\n }\n catch (_error) {\n // Don't set connected to true if authentication fails\n break;\n }\n // Update connected state immediately after successful authentication\n // This ensures heartbeats won't be skipped\n this.connected = connected;\n // send heartbeat every n seconds while connected\n // if CONNECTED, start the heartbeat timer\n // first timer event updates lastHeartbeat timestamp\n // subsequent calls send heartbeat message\n this.updateLastHeartbeat();\n // Clear existing heartbeat timer\n if (this.heartbeatIntervalId) {\n clearInterval(this.heartbeatIntervalId);\n }\n this.heartbeatIntervalId = window.setInterval(() => {\n this.heartbeat();\n }, HEARTBEAT_INTERVAL);\n // Send an immediate heartbeat\n setTimeout(() => {\n this.heartbeat();\n }, 100);\n break;\n case _WalletLinkWebSocket_js__WEBPACK_IMPORTED_MODULE_4__.ConnectionState.CONNECTING:\n break;\n }\n // Update connected state for DISCONNECTED and CONNECTING cases\n // For CONNECTED case, it's already set above\n if (state !== _WalletLinkWebSocket_js__WEBPACK_IMPORTED_MODULE_4__.ConnectionState.CONNECTED) {\n this.connected = connected;\n }\n });\n ws.setIncomingDataListener((m) => {\n var _a;\n switch (m.type) {\n // handle server's heartbeat responses\n case 'Heartbeat':\n this.updateLastHeartbeat();\n return;\n // handle link status updates\n case 'IsLinkedOK':\n case 'Linked': {\n const linked = m.type === 'IsLinkedOK' ? m.linked : undefined;\n this.linked = linked || m.onlineGuests > 0;\n break;\n }\n // handle session config updates\n case 'GetSessionConfigOK':\n case 'SessionConfigUpdated': {\n this.handleSessionMetadataUpdated(m.metadata);\n break;\n }\n case 'Event': {\n this.handleIncomingEvent(m);\n break;\n }\n }\n // resolve request promises\n if (m.id !== undefined) {\n (_a = this.requestResolutions.get(m.id)) === null || _a === void 0 ? void 0 : _a(m);\n }\n });\n return ws;\n }\n setupVisibilityChangeHandler() {\n this.visibilityChangeHandler = () => {\n if (!document.hidden && !this.destroyed) {\n if (!this.connected) {\n // Force a fresh connection if we're disconnected\n this.reconnectWithFreshWebSocket();\n }\n else {\n // Otherwise send a heartbeat to check if connection is still alive\n this.heartbeat();\n }\n }\n };\n // Handle focus events (when user switches back to the tab/app)\n this.focusHandler = () => {\n if (!this.destroyed && !this.connected) {\n this.reconnectWithFreshWebSocket();\n }\n };\n // Add event listeners\n document.addEventListener('visibilitychange', this.visibilityChangeHandler);\n window.addEventListener('focus', this.focusHandler);\n window.addEventListener('pageshow', (event) => {\n if (event.persisted) {\n if (this.focusHandler) {\n this.focusHandler();\n }\n }\n });\n }\n reconnectWithFreshWebSocket() {\n if (this.destroyed)\n return;\n // Clear the active instance reference before disconnecting\n const oldWs = this.ws;\n this.activeWsInstance = undefined;\n // Disconnect current WebSocket\n oldWs.disconnect();\n // Clean up the old instance\n if ('cleanup' in oldWs && typeof oldWs.cleanup === 'function') {\n oldWs.cleanup();\n }\n // Create and connect fresh WebSocket\n this.ws = this.createWebSocket();\n this.ws.connect().catch(() => {\n // Fresh reconnection failed\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logWalletLinkConnectionConnectionFailed)();\n });\n }\n /**\n * Make a connection to the server\n */\n connect() {\n if (this.destroyed) {\n throw new Error('instance is destroyed');\n }\n this.ws.connect();\n }\n /**\n * Terminate connection, and mark as destroyed. To reconnect, create a new\n * instance of WalletSDKConnection\n */\n async destroy() {\n if (this.destroyed)\n return;\n await this.makeRequest({\n type: 'SetSessionConfig',\n id: (0,_core_type_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(this.nextReqId++),\n sessionId: this.session.id,\n metadata: { __destroyed: '1' },\n }, { timeout: 1000 });\n this.destroyed = true;\n // Clear the active instance reference\n this.activeWsInstance = undefined;\n // Clear heartbeat timer\n if (this.heartbeatIntervalId) {\n clearInterval(this.heartbeatIntervalId);\n this.heartbeatIntervalId = undefined;\n }\n // Remove event listeners\n if (this.visibilityChangeHandler) {\n document.removeEventListener('visibilitychange', this.visibilityChangeHandler);\n }\n if (this.focusHandler) {\n window.removeEventListener('focus', this.focusHandler);\n }\n this.ws.disconnect();\n // Call cleanup on the WebSocket instance if it has the method\n if ('cleanup' in this.ws && typeof this.ws.cleanup === 'function') {\n this.ws.cleanup();\n }\n this.listener = undefined;\n }\n get connected() {\n return this._connected;\n }\n set connected(connected) {\n this._connected = connected;\n }\n get linked() {\n return this._linked;\n }\n set linked(linked) {\n var _a, _b;\n this._linked = linked;\n if (linked)\n (_a = this.onceLinked) === null || _a === void 0 ? void 0 : _a.call(this);\n (_b = this.listener) === null || _b === void 0 ? void 0 : _b.linkedUpdated(linked);\n }\n setOnceLinked(callback) {\n return new Promise((resolve) => {\n if (this.linked) {\n callback().then(resolve);\n }\n else {\n this.onceLinked = () => {\n callback().then(resolve);\n this.onceLinked = undefined;\n };\n }\n });\n }\n async handleIncomingEvent(m) {\n var _a;\n if (m.type !== 'Event' || m.event !== 'Web3Response') {\n return;\n }\n try {\n const decryptedData = await this.cipher.decrypt(m.data);\n const message = JSON.parse(decryptedData);\n if (message.type !== 'WEB3_RESPONSE')\n return;\n (_a = this.listener) === null || _a === void 0 ? void 0 : _a.handleWeb3ResponseMessage(message.id, message.response);\n }\n catch (_error) {\n // Had error decrypting\n }\n }\n async checkUnseenEvents() {\n // Add a small delay to ensure any pending operations complete\n await new Promise((resolve) => setTimeout(resolve, 250));\n try {\n await this.fetchUnseenEventsAPI();\n }\n catch (e) {\n console.error('Unable to check for unseen events', e);\n }\n }\n async fetchUnseenEventsAPI() {\n try {\n const responseEvents = await this.http.fetchUnseenEvents();\n responseEvents.forEach((e) => {\n this.handleIncomingEvent(e);\n });\n }\n catch (_error) {\n // Failed to fetch unseen events\n (0,_core_telemetry_events_walletlink_signer_js__WEBPACK_IMPORTED_MODULE_5__.logWalletLinkConnectionFetchUnseenEventsFailed)();\n }\n }\n /**\n * Publish an event and emit event ID when successful\n * @param event event name\n * @param unencryptedData unencrypted event data\n * @param callWebhook whether the webhook should be invoked\n * @returns a Promise that emits event ID when successful\n */\n async publishEvent(event, unencryptedData, callWebhook = false) {\n const data = await this.cipher.encrypt(JSON.stringify(Object.assign(Object.assign({}, unencryptedData), { origin: location.origin, location: location.href, relaySource: 'coinbaseWalletExtension' in window && window.coinbaseWalletExtension\n ? 'injected_sdk'\n : 'sdk' })));\n const message = {\n type: 'PublishEvent',\n id: (0,_core_type_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(this.nextReqId++),\n sessionId: this.session.id,\n event,\n data,\n callWebhook,\n };\n return this.setOnceLinked(async () => {\n const res = await this.makeRequest(message);\n if (res.type === 'Fail') {\n throw new Error(res.error || 'failed to publish event');\n }\n return res.eventId;\n });\n }\n sendData(message) {\n this.ws.sendData(JSON.stringify(message));\n }\n updateLastHeartbeat() {\n this.lastHeartbeatResponse = Date.now();\n }\n heartbeat() {\n if (Date.now() - this.lastHeartbeatResponse > HEARTBEAT_INTERVAL * 2) {\n this.ws.disconnect();\n return;\n }\n // Only send heartbeat if we're connected\n if (!this.connected) {\n return;\n }\n try {\n this.ws.sendData('h');\n }\n catch (_error) {\n // Error sending heartbeat\n }\n }\n async makeRequest(message, options = { timeout: REQUEST_TIMEOUT }) {\n const reqId = message.id;\n this.sendData(message);\n // await server message with corresponding id\n let timeoutId;\n return Promise.race([\n new Promise((_, reject) => {\n timeoutId = window.setTimeout(() => {\n reject(new Error(`request ${reqId} timed out`));\n }, options.timeout);\n }),\n new Promise((resolve) => {\n this.requestResolutions.set(reqId, (m) => {\n clearTimeout(timeoutId); // clear the timeout\n resolve(m);\n this.requestResolutions.delete(reqId);\n });\n }),\n ]);\n }\n async handleConnected() {\n const res = await this.makeRequest({\n type: 'HostSession',\n id: (0,_core_type_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(this.nextReqId++),\n sessionId: this.session.id,\n sessionKey: this.session.key,\n });\n if (res.type === 'Fail') {\n return false;\n }\n this.sendData({\n type: 'IsLinked',\n id: (0,_core_type_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(this.nextReqId++),\n sessionId: this.session.id,\n });\n this.sendData({\n type: 'GetSessionConfig',\n id: (0,_core_type_index_js__WEBPACK_IMPORTED_MODULE_0__.IntNumber)(this.nextReqId++),\n sessionId: this.session.id,\n });\n return true;\n }\n}\n//# sourceMappingURL=WalletLinkConnection.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9jb25uZWN0aW9uL1dhbGxldExpbmtDb25uZWN0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTtBQUNrSztBQUN2RztBQUNhO0FBQ2Y7QUFDSjtBQUMyQjtBQUNoRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQiwrQkFBK0I7QUFDakQ7QUFDQTtBQUNBLHlCQUF5Qiw4REFBUztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsK0RBQW9CO0FBQzNEO0FBQ0E7QUFDQSx1Q0FBdUMsMERBQWU7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsa0VBQWdCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsOERBQWM7QUFDdEM7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHdFQUFtQixJQUFJLGdCQUFnQjtBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixvRUFBZTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxvSEFBdUM7QUFDM0UsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixvRUFBZTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0EscUJBQXFCLG9FQUFlO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLG9FQUFlO0FBQ3pDO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksb0hBQXVDO0FBQ25ELFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiw4REFBUztBQUN6QjtBQUNBLHdCQUF3QixrQkFBa0I7QUFDMUMsU0FBUyxJQUFJLGVBQWU7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxZQUFZLDJIQUE4QztBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRGQUE0RixzQkFBc0I7QUFDbEg7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBLGdCQUFnQiw4REFBUztBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsMEJBQTBCO0FBQ3JFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELE9BQU87QUFDdkQsaUJBQWlCO0FBQ2pCLGFBQWE7QUFDYjtBQUNBO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsOERBQVM7QUFDekI7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLDhEQUFTO0FBQ3pCO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxnQkFBZ0IsOERBQVM7QUFDekI7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvcmVsYXkvY29ubmVjdGlvbi9XYWxsZXRMaW5rQ29ubmVjdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMyBDb2luYmFzZSwgSW5jLiA8aHR0cHM6Ly93d3cuY29pbmJhc2UuY29tLz5cbmltcG9ydCB7IGxvZ1dhbGxldExpbmtDb25uZWN0aW9uQ29ubmVjdGlvbkZhaWxlZCwgbG9nV2FsbGV0TGlua0Nvbm5lY3Rpb25GZXRjaFVuc2VlbkV2ZW50c0ZhaWxlZCwgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3RlbGVtZXRyeS9ldmVudHMvd2FsbGV0bGluay1zaWduZXIuanMnO1xuaW1wb3J0IHsgSW50TnVtYmVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS90eXBlL2luZGV4LmpzJztcbmltcG9ydCB7IEFQUF9WRVJTSU9OX0tFWSwgV0FMTEVUX1VTRVJfTkFNRV9LRVkgfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgV2FsbGV0TGlua0NpcGhlciB9IGZyb20gJy4vV2FsbGV0TGlua0NpcGhlci5qcyc7XG5pbXBvcnQgeyBXYWxsZXRMaW5rSFRUUCB9IGZyb20gJy4vV2FsbGV0TGlua0hUVFAuanMnO1xuaW1wb3J0IHsgQ29ubmVjdGlvblN0YXRlLCBXYWxsZXRMaW5rV2ViU29ja2V0IH0gZnJvbSAnLi9XYWxsZXRMaW5rV2ViU29ja2V0LmpzJztcbmNvbnN0IEhFQVJUQkVBVF9JTlRFUlZBTCA9IDEwMDAwO1xuY29uc3QgUkVRVUVTVF9USU1FT1VUID0gNjAwMDA7XG4vKipcbiAqIENvaW5iYXNlIFdhbGxldCBDb25uZWN0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBXYWxsZXRMaW5rQ29ubmVjdGlvbiB7XG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0b3JcbiAgICAgKiBAcGFyYW0gc2Vzc2lvbiBTZXNzaW9uXG4gICAgICogQHBhcmFtIGxpbmtBUElVcmwgQ29pbmJhc2UgV2FsbGV0IGxpbmsgc2VydmVyIFVSTFxuICAgICAqIEBwYXJhbSBsaXN0ZW5lciBXYWxsZXRMaW5rQ29ubmVjdGlvblVwZGF0ZUxpc3RlbmVyXG4gICAgICogQHBhcmFtIFtXZWJTb2NrZXRDbGFzc10gQ3VzdG9tIFdlYlNvY2tldCBpbXBsZW1lbnRhdGlvblxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHsgc2Vzc2lvbiwgbGlua0FQSVVybCwgbGlzdGVuZXIgfSkge1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxhc3RIZWFydGJlYXRSZXNwb25zZSA9IDA7XG4gICAgICAgIHRoaXMubmV4dFJlcUlkID0gSW50TnVtYmVyKDEpO1xuICAgICAgICB0aGlzLnJlY29ubmVjdEF0dGVtcHRzID0gMDtcbiAgICAgICAgdGhpcy5pc1JlY29ubmVjdGluZyA9IGZhbHNlO1xuICAgICAgICAvKipcbiAgICAgICAgICogdHJ1ZSBpZiBjb25uZWN0ZWQgYW5kIGF1dGhlbnRpY2F0ZWQsIGVsc2UgZmFsc2VcbiAgICAgICAgICogcnVucyBsaXN0ZW5lciB3aGVuIGNvbm5lY3RlZCBzdGF0dXMgY2hhbmdlc1xuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5fY29ubmVjdGVkID0gZmFsc2U7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiB0cnVlIGlmIGxpbmtlZCAoYSBndWVzdCBoYXMgam9pbmVkIGJlZm9yZSlcbiAgICAgICAgICogcnVucyBsaXN0ZW5lciB3aGVuIGxpbmtlZCBzdGF0dXMgY2hhbmdlc1xuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5fbGlua2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMucmVxdWVzdFJlc29sdXRpb25zID0gbmV3IE1hcCgpO1xuICAgICAgICB0aGlzLmhhbmRsZVNlc3Npb25NZXRhZGF0YVVwZGF0ZWQgPSAobWV0YWRhdGEpID0+IHtcbiAgICAgICAgICAgIGlmICghbWV0YWRhdGEpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgLy8gTWFwIG9mIG1ldGFkYXRhIGtleSB0byBoYW5kbGVyIGZ1bmN0aW9uXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVycyA9IG5ldyBNYXAoW1xuICAgICAgICAgICAgICAgIFsnX19kZXN0cm95ZWQnLCB0aGlzLmhhbmRsZURlc3Ryb3llZF0sXG4gICAgICAgICAgICAgICAgWydFdGhlcmV1bUFkZHJlc3MnLCB0aGlzLmhhbmRsZUFjY291bnRVcGRhdGVkXSxcbiAgICAgICAgICAgICAgICBbJ1dhbGxldFVzZXJuYW1lJywgdGhpcy5oYW5kbGVXYWxsZXRVc2VybmFtZVVwZGF0ZWRdLFxuICAgICAgICAgICAgICAgIFsnQXBwVmVyc2lvbicsIHRoaXMuaGFuZGxlQXBwVmVyc2lvblVwZGF0ZWRdLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgJ0NoYWluSWQnLCAvLyBDaGFpbklkIGFuZCBKc29uUnBjVXJsIGFyZSBhbHdheXMgdXBkYXRlZCB0b2dldGhlclxuICAgICAgICAgICAgICAgICAgICAodikgPT4gbWV0YWRhdGEuSnNvblJwY1VybCAmJiB0aGlzLmhhbmRsZUNoYWluVXBkYXRlZCh2LCBtZXRhZGF0YS5Kc29uUnBjVXJsKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgXSk7XG4gICAgICAgICAgICAvLyBjYWxsIGhhbmRsZXIgZm9yIGVhY2ggbWV0YWRhdGEga2V5IGlmIHZhbHVlIGlzIGRlZmluZWRcbiAgICAgICAgICAgIGhhbmRsZXJzLmZvckVhY2goKGhhbmRsZXIsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gbWV0YWRhdGFba2V5XTtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGhhbmRsZXIodmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuaGFuZGxlRGVzdHJveWVkID0gKF9fZGVzdHJveWVkKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBpZiAoX19kZXN0cm95ZWQgIT09ICcxJylcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAoX2EgPSB0aGlzLmxpc3RlbmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EucmVzZXRBbmRSZWxvYWQoKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5oYW5kbGVBY2NvdW50VXBkYXRlZCA9IGFzeW5jIChlbmNyeXB0ZWRFdGhlcmV1bUFkZHJlc3MpID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IHRoaXMuY2lwaGVyLmRlY3J5cHQoZW5jcnlwdGVkRXRoZXJldW1BZGRyZXNzKTtcbiAgICAgICAgICAgICAgICAoX2EgPSB0aGlzLmxpc3RlbmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuYWNjb3VudFVwZGF0ZWQoYWRkcmVzcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoX2IpIHtcbiAgICAgICAgICAgICAgICAvLyBIYWQgZXJyb3IgZGVjcnlwdGluZ1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmhhbmRsZU1ldGFkYXRhVXBkYXRlZCA9IGFzeW5jIChrZXksIGVuY3J5cHRlZE1ldGFkYXRhVmFsdWUpID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZGVjcnlwdGVkVmFsdWUgPSBhd2FpdCB0aGlzLmNpcGhlci5kZWNyeXB0KGVuY3J5cHRlZE1ldGFkYXRhVmFsdWUpO1xuICAgICAgICAgICAgICAgIChfYSA9IHRoaXMubGlzdGVuZXIpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5tZXRhZGF0YVVwZGF0ZWQoa2V5LCBkZWNyeXB0ZWRWYWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoX2IpIHtcbiAgICAgICAgICAgICAgICAvLyBIYWQgZXJyb3IgZGVjcnlwdGluZ1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmhhbmRsZVdhbGxldFVzZXJuYW1lVXBkYXRlZCA9IGFzeW5jICh3YWxsZXRVc2VybmFtZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVNZXRhZGF0YVVwZGF0ZWQoV0FMTEVUX1VTRVJfTkFNRV9LRVksIHdhbGxldFVzZXJuYW1lKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5oYW5kbGVBcHBWZXJzaW9uVXBkYXRlZCA9IGFzeW5jIChhcHBWZXJzaW9uKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZU1ldGFkYXRhVXBkYXRlZChBUFBfVkVSU0lPTl9LRVksIGFwcFZlcnNpb24pO1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLmhhbmRsZUNoYWluVXBkYXRlZCA9IGFzeW5jIChlbmNyeXB0ZWRDaGFpbklkLCBlbmNyeXB0ZWRKc29uUnBjVXJsKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNoYWluSWQgPSBhd2FpdCB0aGlzLmNpcGhlci5kZWNyeXB0KGVuY3J5cHRlZENoYWluSWQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGpzb25ScGNVcmwgPSBhd2FpdCB0aGlzLmNpcGhlci5kZWNyeXB0KGVuY3J5cHRlZEpzb25ScGNVcmwpO1xuICAgICAgICAgICAgICAgIChfYSA9IHRoaXMubGlzdGVuZXIpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jaGFpblVwZGF0ZWQoY2hhaW5JZCwganNvblJwY1VybCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoX2IpIHtcbiAgICAgICAgICAgICAgICAvLyBIYWQgZXJyb3IgZGVjcnlwdGluZ1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICB0aGlzLnNlc3Npb24gPSBzZXNzaW9uO1xuICAgICAgICB0aGlzLmNpcGhlciA9IG5ldyBXYWxsZXRMaW5rQ2lwaGVyKHNlc3Npb24uc2VjcmV0KTtcbiAgICAgICAgdGhpcy5saXN0ZW5lciA9IGxpc3RlbmVyO1xuICAgICAgICB0aGlzLmxpbmtBUElVcmwgPSBsaW5rQVBJVXJsO1xuICAgICAgICB0aGlzLldlYlNvY2tldENsYXNzID0gV2ViU29ja2V0O1xuICAgICAgICBjb25zdCB3cyA9IHRoaXMuY3JlYXRlV2ViU29ja2V0KCk7XG4gICAgICAgIHRoaXMud3MgPSB3cztcbiAgICAgICAgdGhpcy5odHRwID0gbmV3IFdhbGxldExpbmtIVFRQKGxpbmtBUElVcmwsIHNlc3Npb24uaWQsIHNlc3Npb24ua2V5KTtcbiAgICAgICAgdGhpcy5zZXR1cFZpc2liaWxpdHlDaGFuZ2VIYW5kbGVyKCk7XG4gICAgfVxuICAgIGNyZWF0ZVdlYlNvY2tldCgpIHtcbiAgICAgICAgY29uc3Qgd3MgPSBuZXcgV2FsbGV0TGlua1dlYlNvY2tldChgJHt0aGlzLmxpbmtBUElVcmx9L3JwY2AsIHRoaXMuV2ViU29ja2V0Q2xhc3MpO1xuICAgICAgICAvLyBUcmFjayB0aGlzIGFzIHRoZSBhY3RpdmUgV2ViU29ja2V0IGluc3RhbmNlXG4gICAgICAgIHRoaXMuYWN0aXZlV3NJbnN0YW5jZSA9IHdzO1xuICAgICAgICB3cy5zZXRDb25uZWN0aW9uU3RhdGVMaXN0ZW5lcihhc3luYyAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgIC8vIElnbm9yZSBldmVudHMgZnJvbSBub24tYWN0aXZlIFdlYlNvY2tldCBpbnN0YW5jZXNcbiAgICAgICAgICAgIGlmICh3cyAhPT0gdGhpcy5hY3RpdmVXc0luc3RhbmNlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gYXR0ZW1wdCB0byByZWNvbm5lY3QgZXZlcnkgNSBzZWNvbmRzIHdoZW4gZGlzY29ubmVjdGVkXG4gICAgICAgICAgICBsZXQgY29ubmVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICBzd2l0Y2ggKHN0YXRlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBDb25uZWN0aW9uU3RhdGUuRElTQ09OTkVDVEVEOlxuICAgICAgICAgICAgICAgICAgICAvLyBDbGVhciBoZWFydGJlYXQgdGltZXIgd2hlbiBkaXNjb25uZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaGVhcnRiZWF0SW50ZXJ2YWxJZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmhlYXJ0YmVhdEludGVydmFsSWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oZWFydGJlYXRJbnRlcnZhbElkID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIFJlc2V0IGxhc3RIZWFydGJlYXRSZXNwb25zZSB0byBwcmV2ZW50IGZhbHNlIHRpbWVvdXQgb24gcmVjb25uZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubGFzdEhlYXJ0YmVhdFJlc3BvbnNlID0gMDtcbiAgICAgICAgICAgICAgICAgICAgLy8gUmVzZXQgY29ubmVjdGVkIHN0YXRlIHRvIGZhbHNlIG9uIGRpc2Nvbm5lY3RcbiAgICAgICAgICAgICAgICAgICAgY29ubmVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIC8vIGlmIERJU0NPTk5FQ1RFRCBhbmQgbm90IGRlc3Ryb3llZCwgY3JlYXRlIGEgZnJlc2ggV2ViU29ja2V0IGNvbm5lY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmRlc3Ryb3llZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjb25uZWN0ID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFByZXZlbnQgbXVsdGlwbGUgY29uY3VycmVudCByZWNvbm5lY3Rpb24gYXR0ZW1wdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1JlY29ubmVjdGluZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaXNSZWNvbm5lY3RpbmcgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDAgc2Vjb25kIGRlbGF5IG9uIGZpcnN0IGF0dGVtcHQsIHRoZW4gMyBzZWNvbmRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVsYXkgPSB0aGlzLnJlY29ubmVjdEF0dGVtcHRzID09PSAwID8gMCA6IDMwMDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gd2FpdCBiZWZvcmUgcmVjb25uZWN0aW5nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgZGVsYXkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBjaGVjayB3aGV0aGVyIGl0J3MgZGVzdHJveWVkIGFnYWluIGFuZCBlbnN1cmUgdGhpcyBpcyBzdGlsbCB0aGUgYWN0aXZlIGluc3RhbmNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmRlc3Ryb3llZCAmJiB3cyA9PT0gdGhpcy5hY3RpdmVXc0luc3RhbmNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVjb25uZWN0QXR0ZW1wdHMrKztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2xlYW4gdXAgdGhlIG9sZCBXZWJTb2NrZXQgaW5zdGFuY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCdjbGVhbnVwJyBpbiB0aGlzLndzICYmIHR5cGVvZiB0aGlzLndzLmNsZWFudXAgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMud3MuY2xlYW51cCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIENyZWF0ZSBhIGZyZXNoIFdlYlNvY2tldCBpbnN0YW5jZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLndzID0gdGhpcy5jcmVhdGVXZWJTb2NrZXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy53c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbm5lY3QoKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlY29ubmVjdGlvbiBmYWlsZWQsIHdpbGwgcmV0cnlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvZ1dhbGxldExpbmtDb25uZWN0aW9uQ29ubmVjdGlvbkZhaWxlZCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pc1JlY29ubmVjdGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaXNSZWNvbm5lY3RpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVjb25uZWN0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBDb25uZWN0aW9uU3RhdGUuQ09OTkVDVEVEOlxuICAgICAgICAgICAgICAgICAgICAvLyBSZXNldCByZWNvbm5lY3QgYXR0ZW1wdHMgb24gc3VjY2Vzc2Z1bCBjb25uZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVjb25uZWN0QXR0ZW1wdHMgPSAwO1xuICAgICAgICAgICAgICAgICAgICAvLyBwZXJmb3JtIGF1dGhlbnRpY2F0aW9uIHVwb24gY29ubmVjdGlvblxuICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gaWYgQ09OTkVDVEVELCBhdXRoZW50aWNhdGUsIGFuZCB0aGVuIGNoZWNrIGxpbmsgc3RhdHVzXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25uZWN0ZWQgPSBhd2FpdCB0aGlzLmhhbmRsZUNvbm5lY3RlZCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQWx3YXlzIGZldGNoIHVuc2VlbiBldmVudHMgd2hlbiBXZWJTb2NrZXQgc3RhdGUgY2hhbmdlcyB0byBDT05ORUNURURcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmV0Y2hVbnNlZW5FdmVudHNBUEkoKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRmFpbGVkIHRvIGZldGNoIHVuc2VlbiBldmVudHMgYWZ0ZXIgY29ubmVjdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKF9lcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRG9uJ3Qgc2V0IGNvbm5lY3RlZCB0byB0cnVlIGlmIGF1dGhlbnRpY2F0aW9uIGZhaWxzXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvLyBVcGRhdGUgY29ubmVjdGVkIHN0YXRlIGltbWVkaWF0ZWx5IGFmdGVyIHN1Y2Nlc3NmdWwgYXV0aGVudGljYXRpb25cbiAgICAgICAgICAgICAgICAgICAgLy8gVGhpcyBlbnN1cmVzIGhlYXJ0YmVhdHMgd29uJ3QgYmUgc2tpcHBlZFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3RlZCA9IGNvbm5lY3RlZDtcbiAgICAgICAgICAgICAgICAgICAgLy8gc2VuZCBoZWFydGJlYXQgZXZlcnkgbiBzZWNvbmRzIHdoaWxlIGNvbm5lY3RlZFxuICAgICAgICAgICAgICAgICAgICAvLyBpZiBDT05ORUNURUQsIHN0YXJ0IHRoZSBoZWFydGJlYXQgdGltZXJcbiAgICAgICAgICAgICAgICAgICAgLy8gZmlyc3QgdGltZXIgZXZlbnQgdXBkYXRlcyBsYXN0SGVhcnRiZWF0IHRpbWVzdGFtcFxuICAgICAgICAgICAgICAgICAgICAvLyBzdWJzZXF1ZW50IGNhbGxzIHNlbmQgaGVhcnRiZWF0IG1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVMYXN0SGVhcnRiZWF0KCk7XG4gICAgICAgICAgICAgICAgICAgIC8vIENsZWFyIGV4aXN0aW5nIGhlYXJ0YmVhdCB0aW1lclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5oZWFydGJlYXRJbnRlcnZhbElkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuaGVhcnRiZWF0SW50ZXJ2YWxJZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oZWFydGJlYXRJbnRlcnZhbElkID0gd2luZG93LnNldEludGVydmFsKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGVhcnRiZWF0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIEhFQVJUQkVBVF9JTlRFUlZBTCk7XG4gICAgICAgICAgICAgICAgICAgIC8vIFNlbmQgYW4gaW1tZWRpYXRlIGhlYXJ0YmVhdFxuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaGVhcnRiZWF0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgQ29ubmVjdGlvblN0YXRlLkNPTk5FQ1RJTkc6XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gVXBkYXRlIGNvbm5lY3RlZCBzdGF0ZSBmb3IgRElTQ09OTkVDVEVEIGFuZCBDT05ORUNUSU5HIGNhc2VzXG4gICAgICAgICAgICAvLyBGb3IgQ09OTkVDVEVEIGNhc2UsIGl0J3MgYWxyZWFkeSBzZXQgYWJvdmVcbiAgICAgICAgICAgIGlmIChzdGF0ZSAhPT0gQ29ubmVjdGlvblN0YXRlLkNPTk5FQ1RFRCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGVkID0gY29ubmVjdGVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgd3Muc2V0SW5jb21pbmdEYXRhTGlzdGVuZXIoKG0pID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIHN3aXRjaCAobS50eXBlKSB7XG4gICAgICAgICAgICAgICAgLy8gaGFuZGxlIHNlcnZlcidzIGhlYXJ0YmVhdCByZXNwb25zZXNcbiAgICAgICAgICAgICAgICBjYXNlICdIZWFydGJlYXQnOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUxhc3RIZWFydGJlYXQoKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIC8vIGhhbmRsZSBsaW5rIHN0YXR1cyB1cGRhdGVzXG4gICAgICAgICAgICAgICAgY2FzZSAnSXNMaW5rZWRPSyc6XG4gICAgICAgICAgICAgICAgY2FzZSAnTGlua2VkJzoge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBsaW5rZWQgPSBtLnR5cGUgPT09ICdJc0xpbmtlZE9LJyA/IG0ubGlua2VkIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxpbmtlZCA9IGxpbmtlZCB8fCBtLm9ubGluZUd1ZXN0cyA+IDA7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBoYW5kbGUgc2Vzc2lvbiBjb25maWcgdXBkYXRlc1xuICAgICAgICAgICAgICAgIGNhc2UgJ0dldFNlc3Npb25Db25maWdPSyc6XG4gICAgICAgICAgICAgICAgY2FzZSAnU2Vzc2lvbkNvbmZpZ1VwZGF0ZWQnOiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU2Vzc2lvbk1ldGFkYXRhVXBkYXRlZChtLm1ldGFkYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgJ0V2ZW50Jzoge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUluY29taW5nRXZlbnQobSk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHJlc29sdmUgcmVxdWVzdCBwcm9taXNlc1xuICAgICAgICAgICAgaWYgKG0uaWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIChfYSA9IHRoaXMucmVxdWVzdFJlc29sdXRpb25zLmdldChtLmlkKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hKG0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHdzO1xuICAgIH1cbiAgICBzZXR1cFZpc2liaWxpdHlDaGFuZ2VIYW5kbGVyKCkge1xuICAgICAgICB0aGlzLnZpc2liaWxpdHlDaGFuZ2VIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFkb2N1bWVudC5oaWRkZW4gJiYgIXRoaXMuZGVzdHJveWVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmNvbm5lY3RlZCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBGb3JjZSBhIGZyZXNoIGNvbm5lY3Rpb24gaWYgd2UncmUgZGlzY29ubmVjdGVkXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVjb25uZWN0V2l0aEZyZXNoV2ViU29ja2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvLyBPdGhlcndpc2Ugc2VuZCBhIGhlYXJ0YmVhdCB0byBjaGVjayBpZiBjb25uZWN0aW9uIGlzIHN0aWxsIGFsaXZlXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGVhcnRiZWF0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICAvLyBIYW5kbGUgZm9jdXMgZXZlbnRzICh3aGVuIHVzZXIgc3dpdGNoZXMgYmFjayB0byB0aGUgdGFiL2FwcClcbiAgICAgICAgdGhpcy5mb2N1c0hhbmRsZXIgPSAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZGVzdHJveWVkICYmICF0aGlzLmNvbm5lY3RlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMucmVjb25uZWN0V2l0aEZyZXNoV2ViU29ja2V0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIC8vIEFkZCBldmVudCBsaXN0ZW5lcnNcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndmlzaWJpbGl0eWNoYW5nZScsIHRoaXMudmlzaWJpbGl0eUNoYW5nZUhhbmRsZXIpO1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXMnLCB0aGlzLmZvY3VzSGFuZGxlcik7XG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdwYWdlc2hvdycsIChldmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGV2ZW50LnBlcnNpc3RlZCkge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmZvY3VzSGFuZGxlcikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzSGFuZGxlcigpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJlY29ubmVjdFdpdGhGcmVzaFdlYlNvY2tldCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZGVzdHJveWVkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAvLyBDbGVhciB0aGUgYWN0aXZlIGluc3RhbmNlIHJlZmVyZW5jZSBiZWZvcmUgZGlzY29ubmVjdGluZ1xuICAgICAgICBjb25zdCBvbGRXcyA9IHRoaXMud3M7XG4gICAgICAgIHRoaXMuYWN0aXZlV3NJbnN0YW5jZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgLy8gRGlzY29ubmVjdCBjdXJyZW50IFdlYlNvY2tldFxuICAgICAgICBvbGRXcy5kaXNjb25uZWN0KCk7XG4gICAgICAgIC8vIENsZWFuIHVwIHRoZSBvbGQgaW5zdGFuY2VcbiAgICAgICAgaWYgKCdjbGVhbnVwJyBpbiBvbGRXcyAmJiB0eXBlb2Ygb2xkV3MuY2xlYW51cCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgb2xkV3MuY2xlYW51cCgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIENyZWF0ZSBhbmQgY29ubmVjdCBmcmVzaCBXZWJTb2NrZXRcbiAgICAgICAgdGhpcy53cyA9IHRoaXMuY3JlYXRlV2ViU29ja2V0KCk7XG4gICAgICAgIHRoaXMud3MuY29ubmVjdCgpLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgIC8vIEZyZXNoIHJlY29ubmVjdGlvbiBmYWlsZWRcbiAgICAgICAgICAgIGxvZ1dhbGxldExpbmtDb25uZWN0aW9uQ29ubmVjdGlvbkZhaWxlZCgpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogTWFrZSBhIGNvbm5lY3Rpb24gdG8gdGhlIHNlcnZlclxuICAgICAqL1xuICAgIGNvbm5lY3QoKSB7XG4gICAgICAgIGlmICh0aGlzLmRlc3Ryb3llZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnN0YW5jZSBpcyBkZXN0cm95ZWQnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLndzLmNvbm5lY3QoKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogVGVybWluYXRlIGNvbm5lY3Rpb24sIGFuZCBtYXJrIGFzIGRlc3Ryb3llZC4gVG8gcmVjb25uZWN0LCBjcmVhdGUgYSBuZXdcbiAgICAgKiBpbnN0YW5jZSBvZiBXYWxsZXRTREtDb25uZWN0aW9uXG4gICAgICovXG4gICAgYXN5bmMgZGVzdHJveSgpIHtcbiAgICAgICAgaWYgKHRoaXMuZGVzdHJveWVkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBhd2FpdCB0aGlzLm1ha2VSZXF1ZXN0KHtcbiAgICAgICAgICAgIHR5cGU6ICdTZXRTZXNzaW9uQ29uZmlnJyxcbiAgICAgICAgICAgIGlkOiBJbnROdW1iZXIodGhpcy5uZXh0UmVxSWQrKyksXG4gICAgICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbi5pZCxcbiAgICAgICAgICAgIG1ldGFkYXRhOiB7IF9fZGVzdHJveWVkOiAnMScgfSxcbiAgICAgICAgfSwgeyB0aW1lb3V0OiAxMDAwIH0pO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgIC8vIENsZWFyIHRoZSBhY3RpdmUgaW5zdGFuY2UgcmVmZXJlbmNlXG4gICAgICAgIHRoaXMuYWN0aXZlV3NJbnN0YW5jZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgLy8gQ2xlYXIgaGVhcnRiZWF0IHRpbWVyXG4gICAgICAgIGlmICh0aGlzLmhlYXJ0YmVhdEludGVydmFsSWQpIHtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5oZWFydGJlYXRJbnRlcnZhbElkKTtcbiAgICAgICAgICAgIHRoaXMuaGVhcnRiZWF0SW50ZXJ2YWxJZCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICAvLyBSZW1vdmUgZXZlbnQgbGlzdGVuZXJzXG4gICAgICAgIGlmICh0aGlzLnZpc2liaWxpdHlDaGFuZ2VIYW5kbGVyKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd2aXNpYmlsaXR5Y2hhbmdlJywgdGhpcy52aXNpYmlsaXR5Q2hhbmdlSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZm9jdXNIYW5kbGVyKSB7XG4gICAgICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXMnLCB0aGlzLmZvY3VzSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy53cy5kaXNjb25uZWN0KCk7XG4gICAgICAgIC8vIENhbGwgY2xlYW51cCBvbiB0aGUgV2ViU29ja2V0IGluc3RhbmNlIGlmIGl0IGhhcyB0aGUgbWV0aG9kXG4gICAgICAgIGlmICgnY2xlYW51cCcgaW4gdGhpcy53cyAmJiB0eXBlb2YgdGhpcy53cy5jbGVhbnVwID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB0aGlzLndzLmNsZWFudXAoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmxpc3RlbmVyID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBnZXQgY29ubmVjdGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29ubmVjdGVkO1xuICAgIH1cbiAgICBzZXQgY29ubmVjdGVkKGNvbm5lY3RlZCkge1xuICAgICAgICB0aGlzLl9jb25uZWN0ZWQgPSBjb25uZWN0ZWQ7XG4gICAgfVxuICAgIGdldCBsaW5rZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9saW5rZWQ7XG4gICAgfVxuICAgIHNldCBsaW5rZWQobGlua2VkKSB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIHRoaXMuX2xpbmtlZCA9IGxpbmtlZDtcbiAgICAgICAgaWYgKGxpbmtlZClcbiAgICAgICAgICAgIChfYSA9IHRoaXMub25jZUxpbmtlZCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcyk7XG4gICAgICAgIChfYiA9IHRoaXMubGlzdGVuZXIpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5saW5rZWRVcGRhdGVkKGxpbmtlZCk7XG4gICAgfVxuICAgIHNldE9uY2VMaW5rZWQoY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5saW5rZWQpIHtcbiAgICAgICAgICAgICAgICBjYWxsYmFjaygpLnRoZW4ocmVzb2x2ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uY2VMaW5rZWQgPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKCkudGhlbihyZXNvbHZlKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbmNlTGlua2VkID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBhc3luYyBoYW5kbGVJbmNvbWluZ0V2ZW50KG0pIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAobS50eXBlICE9PSAnRXZlbnQnIHx8IG0uZXZlbnQgIT09ICdXZWIzUmVzcG9uc2UnKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGRlY3J5cHRlZERhdGEgPSBhd2FpdCB0aGlzLmNpcGhlci5kZWNyeXB0KG0uZGF0YSk7XG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gSlNPTi5wYXJzZShkZWNyeXB0ZWREYXRhKTtcbiAgICAgICAgICAgIGlmIChtZXNzYWdlLnR5cGUgIT09ICdXRUIzX1JFU1BPTlNFJylcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAoX2EgPSB0aGlzLmxpc3RlbmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaGFuZGxlV2ViM1Jlc3BvbnNlTWVzc2FnZShtZXNzYWdlLmlkLCBtZXNzYWdlLnJlc3BvbnNlKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoX2Vycm9yKSB7XG4gICAgICAgICAgICAvLyBIYWQgZXJyb3IgZGVjcnlwdGluZ1xuICAgICAgICB9XG4gICAgfVxuICAgIGFzeW5jIGNoZWNrVW5zZWVuRXZlbnRzKCkge1xuICAgICAgICAvLyBBZGQgYSBzbWFsbCBkZWxheSB0byBlbnN1cmUgYW55IHBlbmRpbmcgb3BlcmF0aW9ucyBjb21wbGV0ZVxuICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAyNTApKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZmV0Y2hVbnNlZW5FdmVudHNBUEkoKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcignVW5hYmxlIHRvIGNoZWNrIGZvciB1bnNlZW4gZXZlbnRzJywgZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYXN5bmMgZmV0Y2hVbnNlZW5FdmVudHNBUEkoKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZUV2ZW50cyA9IGF3YWl0IHRoaXMuaHR0cC5mZXRjaFVuc2VlbkV2ZW50cygpO1xuICAgICAgICAgICAgcmVzcG9uc2VFdmVudHMuZm9yRWFjaCgoZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlSW5jb21pbmdFdmVudChlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChfZXJyb3IpIHtcbiAgICAgICAgICAgIC8vIEZhaWxlZCB0byBmZXRjaCB1bnNlZW4gZXZlbnRzXG4gICAgICAgICAgICBsb2dXYWxsZXRMaW5rQ29ubmVjdGlvbkZldGNoVW5zZWVuRXZlbnRzRmFpbGVkKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogUHVibGlzaCBhbiBldmVudCBhbmQgZW1pdCBldmVudCBJRCB3aGVuIHN1Y2Nlc3NmdWxcbiAgICAgKiBAcGFyYW0gZXZlbnQgZXZlbnQgbmFtZVxuICAgICAqIEBwYXJhbSB1bmVuY3J5cHRlZERhdGEgdW5lbmNyeXB0ZWQgZXZlbnQgZGF0YVxuICAgICAqIEBwYXJhbSBjYWxsV2ViaG9vayB3aGV0aGVyIHRoZSB3ZWJob29rIHNob3VsZCBiZSBpbnZva2VkXG4gICAgICogQHJldHVybnMgYSBQcm9taXNlIHRoYXQgZW1pdHMgZXZlbnQgSUQgd2hlbiBzdWNjZXNzZnVsXG4gICAgICovXG4gICAgYXN5bmMgcHVibGlzaEV2ZW50KGV2ZW50LCB1bmVuY3J5cHRlZERhdGEsIGNhbGxXZWJob29rID0gZmFsc2UpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHRoaXMuY2lwaGVyLmVuY3J5cHQoSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCB1bmVuY3J5cHRlZERhdGEpLCB7IG9yaWdpbjogbG9jYXRpb24ub3JpZ2luLCBsb2NhdGlvbjogbG9jYXRpb24uaHJlZiwgcmVsYXlTb3VyY2U6ICdjb2luYmFzZVdhbGxldEV4dGVuc2lvbicgaW4gd2luZG93ICYmIHdpbmRvdy5jb2luYmFzZVdhbGxldEV4dGVuc2lvblxuICAgICAgICAgICAgICAgID8gJ2luamVjdGVkX3NkaydcbiAgICAgICAgICAgICAgICA6ICdzZGsnIH0pKSk7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSB7XG4gICAgICAgICAgICB0eXBlOiAnUHVibGlzaEV2ZW50JyxcbiAgICAgICAgICAgIGlkOiBJbnROdW1iZXIodGhpcy5uZXh0UmVxSWQrKyksXG4gICAgICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbi5pZCxcbiAgICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgIGNhbGxXZWJob29rLFxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gdGhpcy5zZXRPbmNlTGlua2VkKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMubWFrZVJlcXVlc3QobWVzc2FnZSk7XG4gICAgICAgICAgICBpZiAocmVzLnR5cGUgPT09ICdGYWlsJykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihyZXMuZXJyb3IgfHwgJ2ZhaWxlZCB0byBwdWJsaXNoIGV2ZW50Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcmVzLmV2ZW50SWQ7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBzZW5kRGF0YShtZXNzYWdlKSB7XG4gICAgICAgIHRoaXMud3Muc2VuZERhdGEoSlNPTi5zdHJpbmdpZnkobWVzc2FnZSkpO1xuICAgIH1cbiAgICB1cGRhdGVMYXN0SGVhcnRiZWF0KCkge1xuICAgICAgICB0aGlzLmxhc3RIZWFydGJlYXRSZXNwb25zZSA9IERhdGUubm93KCk7XG4gICAgfVxuICAgIGhlYXJ0YmVhdCgpIHtcbiAgICAgICAgaWYgKERhdGUubm93KCkgLSB0aGlzLmxhc3RIZWFydGJlYXRSZXNwb25zZSA+IEhFQVJUQkVBVF9JTlRFUlZBTCAqIDIpIHtcbiAgICAgICAgICAgIHRoaXMud3MuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIE9ubHkgc2VuZCBoZWFydGJlYXQgaWYgd2UncmUgY29ubmVjdGVkXG4gICAgICAgIGlmICghdGhpcy5jb25uZWN0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy53cy5zZW5kRGF0YSgnaCcpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChfZXJyb3IpIHtcbiAgICAgICAgICAgIC8vIEVycm9yIHNlbmRpbmcgaGVhcnRiZWF0XG4gICAgICAgIH1cbiAgICB9XG4gICAgYXN5bmMgbWFrZVJlcXVlc3QobWVzc2FnZSwgb3B0aW9ucyA9IHsgdGltZW91dDogUkVRVUVTVF9USU1FT1VUIH0pIHtcbiAgICAgICAgY29uc3QgcmVxSWQgPSBtZXNzYWdlLmlkO1xuICAgICAgICB0aGlzLnNlbmREYXRhKG1lc3NhZ2UpO1xuICAgICAgICAvLyBhd2FpdCBzZXJ2ZXIgbWVzc2FnZSB3aXRoIGNvcnJlc3BvbmRpbmcgaWRcbiAgICAgICAgbGV0IHRpbWVvdXRJZDtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmFjZShbXG4gICAgICAgICAgICBuZXcgUHJvbWlzZSgoXywgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgdGltZW91dElkID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGByZXF1ZXN0ICR7cmVxSWR9IHRpbWVkIG91dGApKTtcbiAgICAgICAgICAgICAgICB9LCBvcHRpb25zLnRpbWVvdXQpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVxdWVzdFJlc29sdXRpb25zLnNldChyZXFJZCwgKG0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZCk7IC8vIGNsZWFyIHRoZSB0aW1lb3V0XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUobSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVxdWVzdFJlc29sdXRpb25zLmRlbGV0ZShyZXFJZCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXSk7XG4gICAgfVxuICAgIGFzeW5jIGhhbmRsZUNvbm5lY3RlZCgpIHtcbiAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5tYWtlUmVxdWVzdCh7XG4gICAgICAgICAgICB0eXBlOiAnSG9zdFNlc3Npb24nLFxuICAgICAgICAgICAgaWQ6IEludE51bWJlcih0aGlzLm5leHRSZXFJZCsrKSxcbiAgICAgICAgICAgIHNlc3Npb25JZDogdGhpcy5zZXNzaW9uLmlkLFxuICAgICAgICAgICAgc2Vzc2lvbktleTogdGhpcy5zZXNzaW9uLmtleSxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChyZXMudHlwZSA9PT0gJ0ZhaWwnKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZW5kRGF0YSh7XG4gICAgICAgICAgICB0eXBlOiAnSXNMaW5rZWQnLFxuICAgICAgICAgICAgaWQ6IEludE51bWJlcih0aGlzLm5leHRSZXFJZCsrKSxcbiAgICAgICAgICAgIHNlc3Npb25JZDogdGhpcy5zZXNzaW9uLmlkLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5zZW5kRGF0YSh7XG4gICAgICAgICAgICB0eXBlOiAnR2V0U2Vzc2lvbkNvbmZpZycsXG4gICAgICAgICAgICBpZDogSW50TnVtYmVyKHRoaXMubmV4dFJlcUlkKyspLFxuICAgICAgICAgICAgc2Vzc2lvbklkOiB0aGlzLnNlc3Npb24uaWQsXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1XYWxsZXRMaW5rQ29ubmVjdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkConnection.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkHTTP.js": /*!***************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkHTTP.js ***! \***************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WalletLinkHTTP: () => (/* binding */ WalletLinkHTTP)\n/* harmony export */ });\nclass WalletLinkHTTP {\n constructor(linkAPIUrl, sessionId, sessionKey) {\n this.linkAPIUrl = linkAPIUrl;\n this.sessionId = sessionId;\n const credentials = `${sessionId}:${sessionKey}`;\n this.auth = `Basic ${btoa(credentials)}`;\n }\n // mark unseen events as seen\n async markUnseenEventsAsSeen(events) {\n return Promise.all(events.map((e) => fetch(`${this.linkAPIUrl}/events/${e.eventId}/seen`, {\n method: 'POST',\n headers: {\n Authorization: this.auth,\n },\n }))).catch((error) => console.error('Unable to mark events as seen:', error));\n }\n async fetchUnseenEvents() {\n var _a;\n const response = await fetch(`${this.linkAPIUrl}/events?unseen=true`, {\n headers: {\n Authorization: this.auth,\n },\n });\n if (response.ok) {\n const { events, error } = (await response.json());\n if (error) {\n throw new Error(`Check unseen events failed: ${error}`);\n }\n const responseEvents = (_a = events === null || events === void 0 ? void 0 : events.filter((e) => e.event === 'Web3Response').map((e) => ({\n type: 'Event',\n sessionId: this.sessionId,\n eventId: e.id,\n event: e.event,\n data: e.data,\n }))) !== null && _a !== void 0 ? _a : [];\n this.markUnseenEventsAsSeen(responseEvents);\n return responseEvents;\n }\n throw new Error(`Check unseen events failed: ${response.status}`);\n }\n}\n//# sourceMappingURL=WalletLinkHTTP.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9jb25uZWN0aW9uL1dhbGxldExpbmtIVFRQLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixVQUFVLEdBQUcsV0FBVztBQUN2RCw2QkFBNkIsa0JBQWtCO0FBQy9DO0FBQ0E7QUFDQTtBQUNBLHNEQUFzRCxnQkFBZ0IsVUFBVSxVQUFVO0FBQzFGO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0Esd0NBQXdDLGdCQUFnQjtBQUN4RDtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBLG9CQUFvQixnQkFBZ0I7QUFDcEM7QUFDQSwrREFBK0QsTUFBTTtBQUNyRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSx1REFBdUQsZ0JBQWdCO0FBQ3ZFO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9jb25uZWN0aW9uL1dhbGxldExpbmtIVFRQLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBXYWxsZXRMaW5rSFRUUCB7XG4gICAgY29uc3RydWN0b3IobGlua0FQSVVybCwgc2Vzc2lvbklkLCBzZXNzaW9uS2V5KSB7XG4gICAgICAgIHRoaXMubGlua0FQSVVybCA9IGxpbmtBUElVcmw7XG4gICAgICAgIHRoaXMuc2Vzc2lvbklkID0gc2Vzc2lvbklkO1xuICAgICAgICBjb25zdCBjcmVkZW50aWFscyA9IGAke3Nlc3Npb25JZH06JHtzZXNzaW9uS2V5fWA7XG4gICAgICAgIHRoaXMuYXV0aCA9IGBCYXNpYyAke2J0b2EoY3JlZGVudGlhbHMpfWA7XG4gICAgfVxuICAgIC8vIG1hcmsgdW5zZWVuIGV2ZW50cyBhcyBzZWVuXG4gICAgYXN5bmMgbWFya1Vuc2VlbkV2ZW50c0FzU2VlbihldmVudHMpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKGV2ZW50cy5tYXAoKGUpID0+IGZldGNoKGAke3RoaXMubGlua0FQSVVybH0vZXZlbnRzLyR7ZS5ldmVudElkfS9zZWVuYCwge1xuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogdGhpcy5hdXRoLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSkpKS5jYXRjaCgoZXJyb3IpID0+IGNvbnNvbGUuZXJyb3IoJ1VuYWJsZSB0byBtYXJrIGV2ZW50cyBhcyBzZWVuOicsIGVycm9yKSk7XG4gICAgfVxuICAgIGFzeW5jIGZldGNoVW5zZWVuRXZlbnRzKCkge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYCR7dGhpcy5saW5rQVBJVXJsfS9ldmVudHM/dW5zZWVuPXRydWVgLCB7XG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogdGhpcy5hdXRoLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgY29uc3QgeyBldmVudHMsIGVycm9yIH0gPSAoYXdhaXQgcmVzcG9uc2UuanNvbigpKTtcbiAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2hlY2sgdW5zZWVuIGV2ZW50cyBmYWlsZWQ6ICR7ZXJyb3J9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZUV2ZW50cyA9IChfYSA9IGV2ZW50cyA9PT0gbnVsbCB8fCBldmVudHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGV2ZW50cy5maWx0ZXIoKGUpID0+IGUuZXZlbnQgPT09ICdXZWIzUmVzcG9uc2UnKS5tYXAoKGUpID0+ICh7XG4gICAgICAgICAgICAgICAgdHlwZTogJ0V2ZW50JyxcbiAgICAgICAgICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbklkLFxuICAgICAgICAgICAgICAgIGV2ZW50SWQ6IGUuaWQsXG4gICAgICAgICAgICAgICAgZXZlbnQ6IGUuZXZlbnQsXG4gICAgICAgICAgICAgICAgZGF0YTogZS5kYXRhLFxuICAgICAgICAgICAgfSkpKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXTtcbiAgICAgICAgICAgIHRoaXMubWFya1Vuc2VlbkV2ZW50c0FzU2VlbihyZXNwb25zZUV2ZW50cyk7XG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2VFdmVudHM7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDaGVjayB1bnNlZW4gZXZlbnRzIGZhaWxlZDogJHtyZXNwb25zZS5zdGF0dXN9YCk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9V2FsbGV0TGlua0hUVFAuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkHTTP.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkWebSocket.js": /*!********************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkWebSocket.js ***! \********************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ConnectionState: () => (/* binding */ ConnectionState),\n/* harmony export */ WalletLinkWebSocket: () => (/* binding */ WalletLinkWebSocket)\n/* harmony export */ });\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\nvar ConnectionState;\n(function (ConnectionState) {\n ConnectionState[ConnectionState[\"DISCONNECTED\"] = 0] = \"DISCONNECTED\";\n ConnectionState[ConnectionState[\"CONNECTING\"] = 1] = \"CONNECTING\";\n ConnectionState[ConnectionState[\"CONNECTED\"] = 2] = \"CONNECTED\";\n})(ConnectionState || (ConnectionState = {}));\nclass WalletLinkWebSocket {\n setConnectionStateListener(listener) {\n this.connectionStateListener = listener;\n }\n setIncomingDataListener(listener) {\n this.incomingDataListener = listener;\n }\n /**\n * Constructor\n * @param url WebSocket server URL\n * @param [WebSocketClass] Custom WebSocket implementation\n */\n constructor(url, WebSocketClass = WebSocket) {\n this.WebSocketClass = WebSocketClass;\n this.webSocket = null;\n this.isDisconnecting = false;\n this.url = url.replace(/^http/, 'ws');\n this.instanceId = WalletLinkWebSocket.instanceCounter++;\n WalletLinkWebSocket.activeInstances.add(this.instanceId);\n }\n /**\n * Make a websocket connection\n * @returns a Promise that resolves when connected\n */\n async connect() {\n if (this.webSocket) {\n throw new Error('webSocket object is not null');\n }\n if (this.isDisconnecting) {\n throw new Error('WebSocket is disconnecting, cannot reconnect on same instance');\n }\n return new Promise((resolve, reject) => {\n var _a;\n let webSocket;\n try {\n this.webSocket = webSocket = new this.WebSocketClass(this.url);\n }\n catch (err) {\n reject(err);\n return;\n }\n (_a = this.connectionStateListener) === null || _a === void 0 ? void 0 : _a.call(this, ConnectionState.CONNECTING);\n webSocket.onclose = (evt) => {\n var _a;\n this.clearWebSocket();\n // Only reject the connection promise if we haven't connected yet\n if (webSocket.readyState !== WebSocket.OPEN) {\n reject(new Error(`websocket error ${evt.code}: ${evt.reason}`));\n }\n (_a = this.connectionStateListener) === null || _a === void 0 ? void 0 : _a.call(this, ConnectionState.DISCONNECTED);\n };\n webSocket.onopen = (_) => {\n var _a;\n resolve();\n (_a = this.connectionStateListener) === null || _a === void 0 ? void 0 : _a.call(this, ConnectionState.CONNECTED);\n if (WalletLinkWebSocket.pendingData.length > 0) {\n const pending = [...WalletLinkWebSocket.pendingData];\n pending.forEach((data) => this.sendData(data));\n WalletLinkWebSocket.pendingData = [];\n }\n };\n webSocket.onmessage = (evt) => {\n var _a, _b;\n if (evt.data === 'h') {\n (_a = this.incomingDataListener) === null || _a === void 0 ? void 0 : _a.call(this, {\n type: 'Heartbeat',\n });\n }\n else {\n try {\n const message = JSON.parse(evt.data);\n (_b = this.incomingDataListener) === null || _b === void 0 ? void 0 : _b.call(this, message);\n }\n catch (_c) {\n }\n }\n };\n });\n }\n /**\n * Disconnect from server\n */\n disconnect() {\n var _a;\n const { webSocket } = this;\n if (!webSocket) {\n return;\n }\n // Mark as disconnecting to prevent reconnection attempts on this instance\n this.isDisconnecting = true;\n this.clearWebSocket();\n // Clear listeners\n (_a = this.connectionStateListener) === null || _a === void 0 ? void 0 : _a.call(this, ConnectionState.DISCONNECTED);\n this.connectionStateListener = undefined;\n this.incomingDataListener = undefined;\n try {\n webSocket.close();\n }\n catch (_b) {\n // noop\n }\n }\n /**\n * Send data to server\n * @param data text to send\n */\n sendData(data) {\n const { webSocket } = this;\n if (!webSocket) {\n WalletLinkWebSocket.pendingData.push(data);\n if (!this.isDisconnecting) {\n this.connect();\n }\n return;\n }\n // Check if WebSocket is actually open before sending\n if (webSocket.readyState !== WebSocket.OPEN) {\n WalletLinkWebSocket.pendingData.push(data);\n return;\n }\n webSocket.send(data);\n }\n clearWebSocket() {\n const { webSocket } = this;\n if (!webSocket) {\n return;\n }\n this.webSocket = null;\n webSocket.onclose = null;\n webSocket.onerror = null;\n webSocket.onmessage = null;\n webSocket.onopen = null;\n }\n /**\n * remove ws from active instances\n */\n cleanup() {\n WalletLinkWebSocket.activeInstances.delete(this.instanceId);\n }\n}\n// used to differentiate instances\nWalletLinkWebSocket.instanceCounter = 0;\nWalletLinkWebSocket.activeInstances = new Set();\nWalletLinkWebSocket.pendingData = [];\n//# sourceMappingURL=WalletLinkWebSocket.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9jb25uZWN0aW9uL1dhbGxldExpbmtXZWJTb2NrZXQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDLDBDQUEwQztBQUNwQztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0RBQXdELFNBQVMsSUFBSSxXQUFXO0FBQ2hGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsWUFBWTtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixZQUFZO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixZQUFZO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9jb25uZWN0aW9uL1dhbGxldExpbmtXZWJTb2NrZXQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDE4LTIwMjMgQ29pbmJhc2UsIEluYy4gPGh0dHBzOi8vd3d3LmNvaW5iYXNlLmNvbS8+XG5leHBvcnQgdmFyIENvbm5lY3Rpb25TdGF0ZTtcbihmdW5jdGlvbiAoQ29ubmVjdGlvblN0YXRlKSB7XG4gICAgQ29ubmVjdGlvblN0YXRlW0Nvbm5lY3Rpb25TdGF0ZVtcIkRJU0NPTk5FQ1RFRFwiXSA9IDBdID0gXCJESVNDT05ORUNURURcIjtcbiAgICBDb25uZWN0aW9uU3RhdGVbQ29ubmVjdGlvblN0YXRlW1wiQ09OTkVDVElOR1wiXSA9IDFdID0gXCJDT05ORUNUSU5HXCI7XG4gICAgQ29ubmVjdGlvblN0YXRlW0Nvbm5lY3Rpb25TdGF0ZVtcIkNPTk5FQ1RFRFwiXSA9IDJdID0gXCJDT05ORUNURURcIjtcbn0pKENvbm5lY3Rpb25TdGF0ZSB8fCAoQ29ubmVjdGlvblN0YXRlID0ge30pKTtcbmV4cG9ydCBjbGFzcyBXYWxsZXRMaW5rV2ViU29ja2V0IHtcbiAgICBzZXRDb25uZWN0aW9uU3RhdGVMaXN0ZW5lcihsaXN0ZW5lcikge1xuICAgICAgICB0aGlzLmNvbm5lY3Rpb25TdGF0ZUxpc3RlbmVyID0gbGlzdGVuZXI7XG4gICAgfVxuICAgIHNldEluY29taW5nRGF0YUxpc3RlbmVyKGxpc3RlbmVyKSB7XG4gICAgICAgIHRoaXMuaW5jb21pbmdEYXRhTGlzdGVuZXIgPSBsaXN0ZW5lcjtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0b3JcbiAgICAgKiBAcGFyYW0gdXJsIFdlYlNvY2tldCBzZXJ2ZXIgVVJMXG4gICAgICogQHBhcmFtIFtXZWJTb2NrZXRDbGFzc10gQ3VzdG9tIFdlYlNvY2tldCBpbXBsZW1lbnRhdGlvblxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHVybCwgV2ViU29ja2V0Q2xhc3MgPSBXZWJTb2NrZXQpIHtcbiAgICAgICAgdGhpcy5XZWJTb2NrZXRDbGFzcyA9IFdlYlNvY2tldENsYXNzO1xuICAgICAgICB0aGlzLndlYlNvY2tldCA9IG51bGw7XG4gICAgICAgIHRoaXMuaXNEaXNjb25uZWN0aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMudXJsID0gdXJsLnJlcGxhY2UoL15odHRwLywgJ3dzJyk7XG4gICAgICAgIHRoaXMuaW5zdGFuY2VJZCA9IFdhbGxldExpbmtXZWJTb2NrZXQuaW5zdGFuY2VDb3VudGVyKys7XG4gICAgICAgIFdhbGxldExpbmtXZWJTb2NrZXQuYWN0aXZlSW5zdGFuY2VzLmFkZCh0aGlzLmluc3RhbmNlSWQpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBNYWtlIGEgd2Vic29ja2V0IGNvbm5lY3Rpb25cbiAgICAgKiBAcmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIGNvbm5lY3RlZFxuICAgICAqL1xuICAgIGFzeW5jIGNvbm5lY3QoKSB7XG4gICAgICAgIGlmICh0aGlzLndlYlNvY2tldCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZWJTb2NrZXQgb2JqZWN0IGlzIG5vdCBudWxsJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaXNEaXNjb25uZWN0aW5nKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1dlYlNvY2tldCBpcyBkaXNjb25uZWN0aW5nLCBjYW5ub3QgcmVjb25uZWN0IG9uIHNhbWUgaW5zdGFuY2UnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgbGV0IHdlYlNvY2tldDtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgdGhpcy53ZWJTb2NrZXQgPSB3ZWJTb2NrZXQgPSBuZXcgdGhpcy5XZWJTb2NrZXRDbGFzcyh0aGlzLnVybCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgKF9hID0gdGhpcy5jb25uZWN0aW9uU3RhdGVMaXN0ZW5lcikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcywgQ29ubmVjdGlvblN0YXRlLkNPTk5FQ1RJTkcpO1xuICAgICAgICAgICAgd2ViU29ja2V0Lm9uY2xvc2UgPSAoZXZ0KSA9PiB7XG4gICAgICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJXZWJTb2NrZXQoKTtcbiAgICAgICAgICAgICAgICAvLyBPbmx5IHJlamVjdCB0aGUgY29ubmVjdGlvbiBwcm9taXNlIGlmIHdlIGhhdmVuJ3QgY29ubmVjdGVkIHlldFxuICAgICAgICAgICAgICAgIGlmICh3ZWJTb2NrZXQucmVhZHlTdGF0ZSAhPT0gV2ViU29ja2V0Lk9QRU4pIHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihgd2Vic29ja2V0IGVycm9yICR7ZXZ0LmNvZGV9OiAke2V2dC5yZWFzb259YCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAoX2EgPSB0aGlzLmNvbm5lY3Rpb25TdGF0ZUxpc3RlbmVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbCh0aGlzLCBDb25uZWN0aW9uU3RhdGUuRElTQ09OTkVDVEVEKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB3ZWJTb2NrZXQub25vcGVuID0gKF8pID0+IHtcbiAgICAgICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgIChfYSA9IHRoaXMuY29ubmVjdGlvblN0YXRlTGlzdGVuZXIpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKHRoaXMsIENvbm5lY3Rpb25TdGF0ZS5DT05ORUNURUQpO1xuICAgICAgICAgICAgICAgIGlmIChXYWxsZXRMaW5rV2ViU29ja2V0LnBlbmRpbmdEYXRhLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGVuZGluZyA9IFsuLi5XYWxsZXRMaW5rV2ViU29ja2V0LnBlbmRpbmdEYXRhXTtcbiAgICAgICAgICAgICAgICAgICAgcGVuZGluZy5mb3JFYWNoKChkYXRhKSA9PiB0aGlzLnNlbmREYXRhKGRhdGEpKTtcbiAgICAgICAgICAgICAgICAgICAgV2FsbGV0TGlua1dlYlNvY2tldC5wZW5kaW5nRGF0YSA9IFtdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB3ZWJTb2NrZXQub25tZXNzYWdlID0gKGV2dCkgPT4ge1xuICAgICAgICAgICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgICAgICAgICAgaWYgKGV2dC5kYXRhID09PSAnaCcpIHtcbiAgICAgICAgICAgICAgICAgICAgKF9hID0gdGhpcy5pbmNvbWluZ0RhdGFMaXN0ZW5lcikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcywge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ0hlYXJ0YmVhdCcsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBKU09OLnBhcnNlKGV2dC5kYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIChfYiA9IHRoaXMuaW5jb21pbmdEYXRhTGlzdGVuZXIpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKHRoaXMsIG1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhdGNoIChfYykge1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIERpc2Nvbm5lY3QgZnJvbSBzZXJ2ZXJcbiAgICAgKi9cbiAgICBkaXNjb25uZWN0KCkge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGNvbnN0IHsgd2ViU29ja2V0IH0gPSB0aGlzO1xuICAgICAgICBpZiAoIXdlYlNvY2tldCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIE1hcmsgYXMgZGlzY29ubmVjdGluZyB0byBwcmV2ZW50IHJlY29ubmVjdGlvbiBhdHRlbXB0cyBvbiB0aGlzIGluc3RhbmNlXG4gICAgICAgIHRoaXMuaXNEaXNjb25uZWN0aW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5jbGVhcldlYlNvY2tldCgpO1xuICAgICAgICAvLyBDbGVhciBsaXN0ZW5lcnNcbiAgICAgICAgKF9hID0gdGhpcy5jb25uZWN0aW9uU3RhdGVMaXN0ZW5lcikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwodGhpcywgQ29ubmVjdGlvblN0YXRlLkRJU0NPTk5FQ1RFRCk7XG4gICAgICAgIHRoaXMuY29ubmVjdGlvblN0YXRlTGlzdGVuZXIgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuaW5jb21pbmdEYXRhTGlzdGVuZXIgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB3ZWJTb2NrZXQuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoX2IpIHtcbiAgICAgICAgICAgIC8vIG5vb3BcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZW5kIGRhdGEgdG8gc2VydmVyXG4gICAgICogQHBhcmFtIGRhdGEgdGV4dCB0byBzZW5kXG4gICAgICovXG4gICAgc2VuZERhdGEoZGF0YSkge1xuICAgICAgICBjb25zdCB7IHdlYlNvY2tldCB9ID0gdGhpcztcbiAgICAgICAgaWYgKCF3ZWJTb2NrZXQpIHtcbiAgICAgICAgICAgIFdhbGxldExpbmtXZWJTb2NrZXQucGVuZGluZ0RhdGEucHVzaChkYXRhKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5pc0Rpc2Nvbm5lY3RpbmcpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3QoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBDaGVjayBpZiBXZWJTb2NrZXQgaXMgYWN0dWFsbHkgb3BlbiBiZWZvcmUgc2VuZGluZ1xuICAgICAgICBpZiAod2ViU29ja2V0LnJlYWR5U3RhdGUgIT09IFdlYlNvY2tldC5PUEVOKSB7XG4gICAgICAgICAgICBXYWxsZXRMaW5rV2ViU29ja2V0LnBlbmRpbmdEYXRhLnB1c2goZGF0YSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgd2ViU29ja2V0LnNlbmQoZGF0YSk7XG4gICAgfVxuICAgIGNsZWFyV2ViU29ja2V0KCkge1xuICAgICAgICBjb25zdCB7IHdlYlNvY2tldCB9ID0gdGhpcztcbiAgICAgICAgaWYgKCF3ZWJTb2NrZXQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLndlYlNvY2tldCA9IG51bGw7XG4gICAgICAgIHdlYlNvY2tldC5vbmNsb3NlID0gbnVsbDtcbiAgICAgICAgd2ViU29ja2V0Lm9uZXJyb3IgPSBudWxsO1xuICAgICAgICB3ZWJTb2NrZXQub25tZXNzYWdlID0gbnVsbDtcbiAgICAgICAgd2ViU29ja2V0Lm9ub3BlbiA9IG51bGw7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIHJlbW92ZSB3cyBmcm9tIGFjdGl2ZSBpbnN0YW5jZXNcbiAgICAgKi9cbiAgICBjbGVhbnVwKCkge1xuICAgICAgICBXYWxsZXRMaW5rV2ViU29ja2V0LmFjdGl2ZUluc3RhbmNlcy5kZWxldGUodGhpcy5pbnN0YW5jZUlkKTtcbiAgICB9XG59XG4vLyB1c2VkIHRvIGRpZmZlcmVudGlhdGUgaW5zdGFuY2VzXG5XYWxsZXRMaW5rV2ViU29ja2V0Lmluc3RhbmNlQ291bnRlciA9IDA7XG5XYWxsZXRMaW5rV2ViU29ja2V0LmFjdGl2ZUluc3RhbmNlcyA9IG5ldyBTZXQoKTtcbldhbGxldExpbmtXZWJTb2NrZXQucGVuZGluZ0RhdGEgPSBbXTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVdhbGxldExpbmtXZWJTb2NrZXQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/connection/WalletLinkWebSocket.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/constants.js": /*!***********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/constants.js ***! \***********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ APP_VERSION_KEY: () => (/* binding */ APP_VERSION_KEY),\n/* harmony export */ LOCAL_STORAGE_ADDRESSES_KEY: () => (/* binding */ LOCAL_STORAGE_ADDRESSES_KEY),\n/* harmony export */ WALLET_USER_NAME_KEY: () => (/* binding */ WALLET_USER_NAME_KEY)\n/* harmony export */ });\nconst WALLET_USER_NAME_KEY = 'walletUsername';\nconst LOCAL_STORAGE_ADDRESSES_KEY = 'Addresses';\nconst APP_VERSION_KEY = 'AppVersion';\n//# sourceMappingURL=constants.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS9jb25zdGFudHMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQU87QUFDQTtBQUNBO0FBQ1AiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvcmVsYXkvY29uc3RhbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBXQUxMRVRfVVNFUl9OQU1FX0tFWSA9ICd3YWxsZXRVc2VybmFtZSc7XG5leHBvcnQgY29uc3QgTE9DQUxfU1RPUkFHRV9BRERSRVNTRVNfS0VZID0gJ0FkZHJlc3Nlcyc7XG5leHBvcnQgY29uc3QgQVBQX1ZFUlNJT05fS0VZID0gJ0FwcFZlcnNpb24nO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29uc3RhbnRzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/constants.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/WalletLinkSession.js": /*!************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/WalletLinkSession.js ***! \************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WalletLinkSession: () => (/* binding */ WalletLinkSession)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_sha256__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @noble/hashes/sha256 */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/sha256.js\");\n/* harmony import */ var _noble_hashes_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/hashes/utils */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/utils.js\");\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\n\n\n\nconst STORAGE_KEY_SESSION_ID = 'session:id';\nconst STORAGE_KEY_SESSION_SECRET = 'session:secret';\nconst STORAGE_KEY_SESSION_LINKED = 'session:linked';\nclass WalletLinkSession {\n constructor(storage, id, secret, linked = false) {\n this.storage = storage;\n this.id = id;\n this.secret = secret;\n this.key = (0,_noble_hashes_utils__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)((0,_noble_hashes_sha256__WEBPACK_IMPORTED_MODULE_1__.sha256)(`${id}, ${secret} WalletLink`));\n this._linked = !!linked;\n }\n static create(storage) {\n const id = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_2__.randomBytesHex)(16);\n const secret = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_2__.randomBytesHex)(32);\n return new WalletLinkSession(storage, id, secret).save();\n }\n static load(storage) {\n const id = storage.getItem(STORAGE_KEY_SESSION_ID);\n const linked = storage.getItem(STORAGE_KEY_SESSION_LINKED);\n const secret = storage.getItem(STORAGE_KEY_SESSION_SECRET);\n if (id && secret) {\n return new WalletLinkSession(storage, id, secret, linked === '1');\n }\n return null;\n }\n get linked() {\n return this._linked;\n }\n set linked(val) {\n this._linked = val;\n this.persistLinked();\n }\n save() {\n this.storage.setItem(STORAGE_KEY_SESSION_ID, this.id);\n this.storage.setItem(STORAGE_KEY_SESSION_SECRET, this.secret);\n this.persistLinked();\n return this;\n }\n persistLinked() {\n this.storage.setItem(STORAGE_KEY_SESSION_LINKED, this._linked ? '1' : '0');\n }\n}\n//# sourceMappingURL=WalletLinkSession.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS90eXBlL1dhbGxldExpbmtTZXNzaW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUM4QztBQUNHO0FBQ2M7QUFDL0Q7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQiwrREFBVSxDQUFDLDREQUFNLElBQUksR0FBRyxJQUFJLFFBQVE7QUFDdkQ7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLGtFQUFjO0FBQ2pDLHVCQUF1QixrRUFBYztBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3Qvc2lnbi93YWxsZXRsaW5rL3JlbGF5L3R5cGUvV2FsbGV0TGlua1Nlc3Npb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDE4LTIwMjMgQ29pbmJhc2UsIEluYy4gPGh0dHBzOi8vd3d3LmNvaW5iYXNlLmNvbS8+XG5pbXBvcnQgeyBzaGEyNTYgfSBmcm9tICdAbm9ibGUvaGFzaGVzL3NoYTI1Nic7XG5pbXBvcnQgeyBieXRlc1RvSGV4IH0gZnJvbSAnQG5vYmxlL2hhc2hlcy91dGlscyc7XG5pbXBvcnQgeyByYW5kb21CeXRlc0hleCB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvdHlwZS91dGlsLmpzJztcbmNvbnN0IFNUT1JBR0VfS0VZX1NFU1NJT05fSUQgPSAnc2Vzc2lvbjppZCc7XG5jb25zdCBTVE9SQUdFX0tFWV9TRVNTSU9OX1NFQ1JFVCA9ICdzZXNzaW9uOnNlY3JldCc7XG5jb25zdCBTVE9SQUdFX0tFWV9TRVNTSU9OX0xJTktFRCA9ICdzZXNzaW9uOmxpbmtlZCc7XG5leHBvcnQgY2xhc3MgV2FsbGV0TGlua1Nlc3Npb24ge1xuICAgIGNvbnN0cnVjdG9yKHN0b3JhZ2UsIGlkLCBzZWNyZXQsIGxpbmtlZCA9IGZhbHNlKSB7XG4gICAgICAgIHRoaXMuc3RvcmFnZSA9IHN0b3JhZ2U7XG4gICAgICAgIHRoaXMuaWQgPSBpZDtcbiAgICAgICAgdGhpcy5zZWNyZXQgPSBzZWNyZXQ7XG4gICAgICAgIHRoaXMua2V5ID0gYnl0ZXNUb0hleChzaGEyNTYoYCR7aWR9LCAke3NlY3JldH0gV2FsbGV0TGlua2ApKTtcbiAgICAgICAgdGhpcy5fbGlua2VkID0gISFsaW5rZWQ7XG4gICAgfVxuICAgIHN0YXRpYyBjcmVhdGUoc3RvcmFnZSkge1xuICAgICAgICBjb25zdCBpZCA9IHJhbmRvbUJ5dGVzSGV4KDE2KTtcbiAgICAgICAgY29uc3Qgc2VjcmV0ID0gcmFuZG9tQnl0ZXNIZXgoMzIpO1xuICAgICAgICByZXR1cm4gbmV3IFdhbGxldExpbmtTZXNzaW9uKHN0b3JhZ2UsIGlkLCBzZWNyZXQpLnNhdmUoKTtcbiAgICB9XG4gICAgc3RhdGljIGxvYWQoc3RvcmFnZSkge1xuICAgICAgICBjb25zdCBpZCA9IHN0b3JhZ2UuZ2V0SXRlbShTVE9SQUdFX0tFWV9TRVNTSU9OX0lEKTtcbiAgICAgICAgY29uc3QgbGlua2VkID0gc3RvcmFnZS5nZXRJdGVtKFNUT1JBR0VfS0VZX1NFU1NJT05fTElOS0VEKTtcbiAgICAgICAgY29uc3Qgc2VjcmV0ID0gc3RvcmFnZS5nZXRJdGVtKFNUT1JBR0VfS0VZX1NFU1NJT05fU0VDUkVUKTtcbiAgICAgICAgaWYgKGlkICYmIHNlY3JldCkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBXYWxsZXRMaW5rU2Vzc2lvbihzdG9yYWdlLCBpZCwgc2VjcmV0LCBsaW5rZWQgPT09ICcxJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGdldCBsaW5rZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9saW5rZWQ7XG4gICAgfVxuICAgIHNldCBsaW5rZWQodmFsKSB7XG4gICAgICAgIHRoaXMuX2xpbmtlZCA9IHZhbDtcbiAgICAgICAgdGhpcy5wZXJzaXN0TGlua2VkKCk7XG4gICAgfVxuICAgIHNhdmUoKSB7XG4gICAgICAgIHRoaXMuc3RvcmFnZS5zZXRJdGVtKFNUT1JBR0VfS0VZX1NFU1NJT05fSUQsIHRoaXMuaWQpO1xuICAgICAgICB0aGlzLnN0b3JhZ2Uuc2V0SXRlbShTVE9SQUdFX0tFWV9TRVNTSU9OX1NFQ1JFVCwgdGhpcy5zZWNyZXQpO1xuICAgICAgICB0aGlzLnBlcnNpc3RMaW5rZWQoKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHBlcnNpc3RMaW5rZWQoKSB7XG4gICAgICAgIHRoaXMuc3RvcmFnZS5zZXRJdGVtKFNUT1JBR0VfS0VZX1NFU1NJT05fTElOS0VELCB0aGlzLl9saW5rZWQgPyAnMScgOiAnMCcpO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVdhbGxldExpbmtTZXNzaW9uLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/WalletLinkSession.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/Web3Response.js": /*!*******************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/Web3Response.js ***! \*******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isErrorResponse: () => (/* binding */ isErrorResponse)\n/* harmony export */ });\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\nfunction isErrorResponse(response) {\n return response.errorMessage !== undefined;\n}\n//# sourceMappingURL=Web3Response.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS90eXBlL1dlYjNSZXNwb25zZS5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDTztBQUNQO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS90eXBlL1dlYjNSZXNwb25zZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMyBDb2luYmFzZSwgSW5jLiA8aHR0cHM6Ly93d3cuY29pbmJhc2UuY29tLz5cbmV4cG9ydCBmdW5jdGlvbiBpc0Vycm9yUmVzcG9uc2UocmVzcG9uc2UpIHtcbiAgICByZXR1cm4gcmVzcG9uc2UuZXJyb3JNZXNzYWdlICE9PSB1bmRlZmluZWQ7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1XZWIzUmVzcG9uc2UuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/type/Web3Response.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WLMobileRelayUI.js": /*!********************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WLMobileRelayUI.js ***! \********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WLMobileRelayUI: () => (/* binding */ WLMobileRelayUI)\n/* harmony export */ });\n/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../core/constants.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/constants.js\");\n/* harmony import */ var _components_RedirectDialog_RedirectDialog_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/RedirectDialog/RedirectDialog.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog.js\");\n/* harmony import */ var _components_util_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/util.js\");\n\n\n\nclass WLMobileRelayUI {\n constructor() {\n this.attached = false;\n this.redirectDialog = new _components_RedirectDialog_RedirectDialog_js__WEBPACK_IMPORTED_MODULE_0__.RedirectDialog();\n }\n attach() {\n if (this.attached) {\n throw new Error('Coinbase Wallet SDK UI is already attached');\n }\n this.redirectDialog.attach();\n this.attached = true;\n }\n redirectToCoinbaseWallet(walletLinkUrl) {\n const url = new URL(_core_constants_js__WEBPACK_IMPORTED_MODULE_1__.CBW_MOBILE_DEEPLINK_URL);\n url.searchParams.append('redirect_url', (0,_components_util_js__WEBPACK_IMPORTED_MODULE_2__.getLocation)().href);\n if (walletLinkUrl) {\n url.searchParams.append('wl_url', walletLinkUrl);\n }\n const anchorTag = document.createElement('a');\n anchorTag.target = 'cbw-opener';\n anchorTag.href = url.href;\n anchorTag.rel = 'noreferrer noopener';\n anchorTag.click();\n }\n openCoinbaseWalletDeeplink(walletLinkUrl) {\n // redirect to coinbase wallet immediately to avoid Safari/Chrome popup(deeplink) blocking\n this.redirectToCoinbaseWallet(walletLinkUrl);\n setTimeout(() => {\n this.redirectDialog.present({\n title: 'Redirecting to Coinbase Wallet...',\n buttonText: 'Open',\n onButtonClick: () => {\n this.redirectToCoinbaseWallet(walletLinkUrl);\n },\n });\n }, 99);\n }\n showConnecting(_options) {\n // it uses the return callback to clear the dialog\n return () => {\n this.redirectDialog.clear();\n };\n }\n}\n//# sourceMappingURL=WLMobileRelayUI.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9XTE1vYmlsZVJlbGF5VUkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF3RTtBQUNPO0FBQzVCO0FBQzVDO0FBQ1A7QUFDQTtBQUNBLGtDQUFrQyx3RkFBYztBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsdUVBQXVCO0FBQ25ELGdEQUFnRCxnRUFBVztBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvcmVsYXkvdWkvV0xNb2JpbGVSZWxheVVJLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENCV19NT0JJTEVfREVFUExJTktfVVJMIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgUmVkaXJlY3REaWFsb2cgfSBmcm9tICcuL2NvbXBvbmVudHMvUmVkaXJlY3REaWFsb2cvUmVkaXJlY3REaWFsb2cuanMnO1xuaW1wb3J0IHsgZ2V0TG9jYXRpb24gfSBmcm9tICcuL2NvbXBvbmVudHMvdXRpbC5qcyc7XG5leHBvcnQgY2xhc3MgV0xNb2JpbGVSZWxheVVJIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5hdHRhY2hlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlZGlyZWN0RGlhbG9nID0gbmV3IFJlZGlyZWN0RGlhbG9nKCk7XG4gICAgfVxuICAgIGF0dGFjaCgpIHtcbiAgICAgICAgaWYgKHRoaXMuYXR0YWNoZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ29pbmJhc2UgV2FsbGV0IFNESyBVSSBpcyBhbHJlYWR5IGF0dGFjaGVkJyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZWRpcmVjdERpYWxvZy5hdHRhY2goKTtcbiAgICAgICAgdGhpcy5hdHRhY2hlZCA9IHRydWU7XG4gICAgfVxuICAgIHJlZGlyZWN0VG9Db2luYmFzZVdhbGxldCh3YWxsZXRMaW5rVXJsKSB7XG4gICAgICAgIGNvbnN0IHVybCA9IG5ldyBVUkwoQ0JXX01PQklMRV9ERUVQTElOS19VUkwpO1xuICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgncmVkaXJlY3RfdXJsJywgZ2V0TG9jYXRpb24oKS5ocmVmKTtcbiAgICAgICAgaWYgKHdhbGxldExpbmtVcmwpIHtcbiAgICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKCd3bF91cmwnLCB3YWxsZXRMaW5rVXJsKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhbmNob3JUYWcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICAgIGFuY2hvclRhZy50YXJnZXQgPSAnY2J3LW9wZW5lcic7XG4gICAgICAgIGFuY2hvclRhZy5ocmVmID0gdXJsLmhyZWY7XG4gICAgICAgIGFuY2hvclRhZy5yZWwgPSAnbm9yZWZlcnJlciBub29wZW5lcic7XG4gICAgICAgIGFuY2hvclRhZy5jbGljaygpO1xuICAgIH1cbiAgICBvcGVuQ29pbmJhc2VXYWxsZXREZWVwbGluayh3YWxsZXRMaW5rVXJsKSB7XG4gICAgICAgIC8vIHJlZGlyZWN0IHRvIGNvaW5iYXNlIHdhbGxldCBpbW1lZGlhdGVseSB0byBhdm9pZCBTYWZhcmkvQ2hyb21lIHBvcHVwKGRlZXBsaW5rKSBibG9ja2luZ1xuICAgICAgICB0aGlzLnJlZGlyZWN0VG9Db2luYmFzZVdhbGxldCh3YWxsZXRMaW5rVXJsKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlZGlyZWN0RGlhbG9nLnByZXNlbnQoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiAnUmVkaXJlY3RpbmcgdG8gQ29pbmJhc2UgV2FsbGV0Li4uJyxcbiAgICAgICAgICAgICAgICBidXR0b25UZXh0OiAnT3BlbicsXG4gICAgICAgICAgICAgICAgb25CdXR0b25DbGljazogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZGlyZWN0VG9Db2luYmFzZVdhbGxldCh3YWxsZXRMaW5rVXJsKTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIDk5KTtcbiAgICB9XG4gICAgc2hvd0Nvbm5lY3RpbmcoX29wdGlvbnMpIHtcbiAgICAgICAgLy8gaXQgdXNlcyB0aGUgcmV0dXJuIGNhbGxiYWNrIHRvIGNsZWFyIHRoZSBkaWFsb2dcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVkaXJlY3REaWFsb2cuY2xlYXIoKTtcbiAgICAgICAgfTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1XTE1vYmlsZVJlbGF5VUkuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WLMobileRelayUI.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WalletLinkRelayUI.js": /*!**********************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WalletLinkRelayUI.js ***! \**********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RETRY_SVG_PATH: () => (/* binding */ RETRY_SVG_PATH),\n/* harmony export */ WalletLinkRelayUI: () => (/* binding */ WalletLinkRelayUI)\n/* harmony export */ });\n/* harmony import */ var _components_cssReset_cssReset_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/cssReset/cssReset.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset.js\");\n/* harmony import */ var _components_Snackbar_Snackbar_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/Snackbar/Snackbar.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar.js\");\n\n\nconst RETRY_SVG_PATH = 'M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z';\nclass WalletLinkRelayUI {\n constructor() {\n this.attached = false;\n this.snackbar = new _components_Snackbar_Snackbar_js__WEBPACK_IMPORTED_MODULE_0__.Snackbar();\n }\n attach() {\n if (this.attached) {\n throw new Error('Coinbase Wallet SDK UI is already attached');\n }\n const el = document.documentElement;\n const container = document.createElement('div');\n container.className = '-cbwsdk-css-reset';\n el.appendChild(container);\n this.snackbar.attach(container);\n this.attached = true;\n (0,_components_cssReset_cssReset_js__WEBPACK_IMPORTED_MODULE_1__.injectCssReset)();\n }\n showConnecting(options) {\n let snackbarProps;\n if (options.isUnlinkedErrorState) {\n snackbarProps = {\n autoExpand: true,\n message: 'Connection lost',\n menuItems: [\n {\n isRed: false,\n info: 'Reset connection',\n svgWidth: '10',\n svgHeight: '11',\n path: 'M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z',\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n onClick: options.onResetConnection,\n },\n ],\n };\n }\n else {\n snackbarProps = {\n message: 'Confirm on phone',\n menuItems: [\n {\n isRed: true,\n info: 'Cancel transaction',\n svgWidth: '11',\n svgHeight: '11',\n path: 'M10.3711 1.52346L9.21775 0.370117L5.37109 4.21022L1.52444 0.370117L0.371094 1.52346L4.2112 5.37012L0.371094 9.21677L1.52444 10.3701L5.37109 6.53001L9.21775 10.3701L10.3711 9.21677L6.53099 5.37012L10.3711 1.52346Z',\n defaultFillRule: 'inherit',\n defaultClipRule: 'inherit',\n onClick: options.onCancel,\n },\n {\n isRed: false,\n info: 'Reset connection',\n svgWidth: '10',\n svgHeight: '11',\n path: RETRY_SVG_PATH,\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n onClick: options.onResetConnection,\n },\n ],\n };\n }\n return this.snackbar.presentItem(snackbarProps);\n }\n}\n//# sourceMappingURL=WalletLinkRelayUI.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9XYWxsZXRMaW5rUmVsYXlVSS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQW1FO0FBQ047QUFDdEQ7QUFDQTtBQUNQO0FBQ0E7QUFDQSw0QkFBNEIsc0VBQVE7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsZ0ZBQWM7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvcmVsYXkvdWkvV2FsbGV0TGlua1JlbGF5VUkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0Q3NzUmVzZXQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3NzUmVzZXQvY3NzUmVzZXQuanMnO1xuaW1wb3J0IHsgU25hY2tiYXIgfSBmcm9tICcuL2NvbXBvbmVudHMvU25hY2tiYXIvU25hY2tiYXIuanMnO1xuZXhwb3J0IGNvbnN0IFJFVFJZX1NWR19QQVRIID0gJ001LjAwMDA4IDAuOTY4NzVDNi43MzEzMyAwLjk2ODc1IDguMjM3NTggMS45NDM3NSA5LjAwMDA4IDMuMzc1TDEwLjAwMDEgMi4zNzVWNS41SDkuNTMxMzNINy45Njg4M0g2Ljg3NTA4TDcuODA2MzMgNC41Njg3NUM3LjQxMjU4IDMuMzg3NSA2LjMxMjU4IDIuNTMxMjUgNS4wMDAwOCAyLjUzMTI1QzMuNzYyNTggMi41MzEyNSAyLjcwNjMzIDMuMjg3NSAyLjI1NjMzIDQuMzY4NzVMMC44MTI1NzYgMy43Njg3NUMxLjUwMDA4IDIuMTI1IDMuMTEyNTggMC45Njg3NSA1LjAwMDA4IDAuOTY4NzVaTTIuMTkzNzUgNi40MzEyNUMyLjU4NzUgNy42MTI1IDMuNjg3NSA4LjQ2ODc1IDUgOC40Njg3NUM2LjIzNzUgOC40Njg3NSA3LjI5Mzc1IDcuNzEyNSA3Ljc0Mzc1IDYuNjMxMjVMOS4xODc1IDcuMjMxMjVDOC41IDguODc1IDYuODg3NSAxMC4wMzEyIDUgMTAuMDMxMkMzLjI2ODc1IDEwLjAzMTIgMS43NjI1IDkuMDU2MjUgMSA3LjYyNUwwIDguNjI1VjUuNUgwLjQ2ODc1SDIuMDMxMjVIMy4xMjVMMi4xOTM3NSA2LjQzMTI1Wic7XG5leHBvcnQgY2xhc3MgV2FsbGV0TGlua1JlbGF5VUkge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmF0dGFjaGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc25hY2tiYXIgPSBuZXcgU25hY2tiYXIoKTtcbiAgICB9XG4gICAgYXR0YWNoKCkge1xuICAgICAgICBpZiAodGhpcy5hdHRhY2hlZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb2luYmFzZSBXYWxsZXQgU0RLIFVJIGlzIGFscmVhZHkgYXR0YWNoZWQnKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBlbCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgICAgICAgY29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGNvbnRhaW5lci5jbGFzc05hbWUgPSAnLWNid3Nkay1jc3MtcmVzZXQnO1xuICAgICAgICBlbC5hcHBlbmRDaGlsZChjb250YWluZXIpO1xuICAgICAgICB0aGlzLnNuYWNrYmFyLmF0dGFjaChjb250YWluZXIpO1xuICAgICAgICB0aGlzLmF0dGFjaGVkID0gdHJ1ZTtcbiAgICAgICAgaW5qZWN0Q3NzUmVzZXQoKTtcbiAgICB9XG4gICAgc2hvd0Nvbm5lY3Rpbmcob3B0aW9ucykge1xuICAgICAgICBsZXQgc25hY2tiYXJQcm9wcztcbiAgICAgICAgaWYgKG9wdGlvbnMuaXNVbmxpbmtlZEVycm9yU3RhdGUpIHtcbiAgICAgICAgICAgIHNuYWNrYmFyUHJvcHMgPSB7XG4gICAgICAgICAgICAgICAgYXV0b0V4cGFuZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiAnQ29ubmVjdGlvbiBsb3N0JyxcbiAgICAgICAgICAgICAgICBtZW51SXRlbXM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNSZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5mbzogJ1Jlc2V0IGNvbm5lY3Rpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3ZnV2lkdGg6ICcxMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmdIZWlnaHQ6ICcxMScsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiAnTTUuMDAwMDggMC45Njg3NUM2LjczMTMzIDAuOTY4NzUgOC4yMzc1OCAxLjk0Mzc1IDkuMDAwMDggMy4zNzVMMTAuMDAwMSAyLjM3NVY1LjVIOS41MzEzM0g3Ljk2ODgzSDYuODc1MDhMNy44MDYzMyA0LjU2ODc1QzcuNDEyNTggMy4zODc1IDYuMzEyNTggMi41MzEyNSA1LjAwMDA4IDIuNTMxMjVDMy43NjI1OCAyLjUzMTI1IDIuNzA2MzMgMy4yODc1IDIuMjU2MzMgNC4zNjg3NUwwLjgxMjU3NiAzLjc2ODc1QzEuNTAwMDggMi4xMjUgMy4xMTI1OCAwLjk2ODc1IDUuMDAwMDggMC45Njg3NVpNMi4xOTM3NSA2LjQzMTI1QzIuNTg3NSA3LjYxMjUgMy42ODc1IDguNDY4NzUgNSA4LjQ2ODc1QzYuMjM3NSA4LjQ2ODc1IDcuMjkzNzUgNy43MTI1IDcuNzQzNzUgNi42MzEyNUw5LjE4NzUgNy4yMzEyNUM4LjUgOC44NzUgNi44ODc1IDEwLjAzMTIgNSAxMC4wMzEyQzMuMjY4NzUgMTAuMDMxMiAxLjc2MjUgOS4wNTYyNSAxIDcuNjI1TDAgOC42MjVWNS41SDAuNDY4NzVIMi4wMzEyNUgzLjEyNUwyLjE5Mzc1IDYuNDMxMjVaJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRGaWxsUnVsZTogJ2V2ZW5vZGQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdENsaXBSdWxlOiAnZXZlbm9kZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiBvcHRpb25zLm9uUmVzZXRDb25uZWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgc25hY2tiYXJQcm9wcyA9IHtcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiAnQ29uZmlybSBvbiBwaG9uZScsXG4gICAgICAgICAgICAgICAgbWVudUl0ZW1zOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzUmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5mbzogJ0NhbmNlbCB0cmFuc2FjdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmdXaWR0aDogJzExJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN2Z0hlaWdodDogJzExJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGg6ICdNMTAuMzcxMSAxLjUyMzQ2TDkuMjE3NzUgMC4zNzAxMTdMNS4zNzEwOSA0LjIxMDIyTDEuNTI0NDQgMC4zNzAxMTdMMC4zNzEwOTQgMS41MjM0Nkw0LjIxMTIgNS4zNzAxMkwwLjM3MTA5NCA5LjIxNjc3TDEuNTI0NDQgMTAuMzcwMUw1LjM3MTA5IDYuNTMwMDFMOS4yMTc3NSAxMC4zNzAxTDEwLjM3MTEgOS4yMTY3N0w2LjUzMDk5IDUuMzcwMTJMMTAuMzcxMSAxLjUyMzQ2WicsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0RmlsbFJ1bGU6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRDbGlwUnVsZTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljazogb3B0aW9ucy5vbkNhbmNlbCxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNSZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5mbzogJ1Jlc2V0IGNvbm5lY3Rpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3ZnV2lkdGg6ICcxMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmdIZWlnaHQ6ICcxMScsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoOiBSRVRSWV9TVkdfUEFUSCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRGaWxsUnVsZTogJ2V2ZW5vZGQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdENsaXBSdWxlOiAnZXZlbm9kZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiBvcHRpb25zLm9uUmVzZXRDb25uZWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnNuYWNrYmFyLnByZXNlbnRJdGVtKHNuYWNrYmFyUHJvcHMpO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVdhbGxldExpbmtSZWxheVVJLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WalletLinkRelayUI.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog-css.js": /*!*************************************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog-css.js ***! \*************************************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((() => `.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;transition:opacity .25s;background-color:rgba(10,11,13,.5)}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop-hidden{opacity:0}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box{display:block;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);padding:20px;border-radius:8px;background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box p{display:block;font-weight:400;font-size:14px;line-height:20px;padding-bottom:12px;color:#5b636e}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box button{appearance:none;border:none;background:none;color:#0052ff;padding:0;text-decoration:none;display:block;font-weight:600;font-size:16px;line-height:24px}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark{background-color:#0a0b0d;color:#fff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark button{color:#0052ff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light{background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light button{color:#0052ff}`)());\n//# sourceMappingURL=RedirectDialog-css.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1JlZGlyZWN0RGlhbG9nL1JlZGlyZWN0RGlhbG9nLWNzcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsaUVBQWUsNkRBQTZELGVBQWUsTUFBTSxPQUFPLFFBQVEsU0FBUyx3QkFBd0IsbUNBQW1DLDREQUE0RCxVQUFVLGdEQUFnRCxjQUFjLGVBQWUsUUFBUSxTQUFTLGdDQUFnQyxhQUFhLGtCQUFrQixzQkFBc0IsY0FBYyxrREFBa0QsY0FBYyxnQkFBZ0IsZUFBZSxpQkFBaUIsb0JBQW9CLGNBQWMsdURBQXVELGdCQUFnQixZQUFZLGdCQUFnQixjQUFjLFVBQVUscUJBQXFCLGNBQWMsZ0JBQWdCLGVBQWUsaUJBQWlCLHFEQUFxRCx5QkFBeUIsV0FBVyw0REFBNEQsY0FBYyxzREFBc0Qsc0JBQXNCLGNBQWMsNkRBQTZELGNBQWMsSUFBSSxFQUFDO0FBQ3htQyIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1JlZGlyZWN0RGlhbG9nL1JlZGlyZWN0RGlhbG9nLWNzcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCAoKCkgPT4gYC4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1yZWRpcmVjdC1kaWFsb2ctYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXM7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDEwLDExLDEzLC41KX0uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstcmVkaXJlY3QtZGlhbG9nLWJhY2tkcm9wLWhpZGRlbntvcGFjaXR5OjB9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXJlZGlyZWN0LWRpYWxvZy1ib3h7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpmaXhlZDt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwgLTUwJSk7cGFkZGluZzoyMHB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjojMGEwYjBkfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1yZWRpcmVjdC1kaWFsb2ctYm94IHB7ZGlzcGxheTpibG9jaztmb250LXdlaWdodDo0MDA7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjBweDtwYWRkaW5nLWJvdHRvbToxMnB4O2NvbG9yOiM1YjYzNmV9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXJlZGlyZWN0LWRpYWxvZy1ib3ggYnV0dG9ue2FwcGVhcmFuY2U6bm9uZTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6IzAwNTJmZjtwYWRkaW5nOjA7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTpibG9jaztmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjRweH0uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstcmVkaXJlY3QtZGlhbG9nLWJveC5kYXJre2JhY2tncm91bmQtY29sb3I6IzBhMGIwZDtjb2xvcjojZmZmfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1yZWRpcmVjdC1kaWFsb2ctYm94LmRhcmsgYnV0dG9ue2NvbG9yOiMwMDUyZmZ9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXJlZGlyZWN0LWRpYWxvZy1ib3gubGlnaHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwYTBiMGR9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXJlZGlyZWN0LWRpYWxvZy1ib3gubGlnaHQgYnV0dG9ue2NvbG9yOiMwMDUyZmZ9YCkoKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVJlZGlyZWN0RGlhbG9nLWNzcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog-css.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog.js": /*!*********************************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog.js ***! \*********************************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RedirectDialog: () => (/* binding */ RedirectDialog)\n/* harmony export */ });\n/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! clsx */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/clsx/dist/clsx.m.js\");\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! preact */ \"(app-pages-browser)/./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var _cssReset_cssReset_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../cssReset/cssReset.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset.js\");\n/* harmony import */ var _Snackbar_Snackbar_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Snackbar/Snackbar.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar.js\");\n/* harmony import */ var _util_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/util.js\");\n/* harmony import */ var _RedirectDialog_css_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RedirectDialog-css.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog-css.js\");\n\n\n// biome-ignore lint/correctness/noUnusedImports: preact\n\n\n\n\n\nclass RedirectDialog {\n constructor() {\n this.root = null;\n this.darkMode = (0,_util_js__WEBPACK_IMPORTED_MODULE_2__.isDarkMode)();\n }\n attach() {\n const el = document.documentElement;\n this.root = document.createElement('div');\n this.root.className = '-cbwsdk-css-reset';\n el.appendChild(this.root);\n (0,_cssReset_cssReset_js__WEBPACK_IMPORTED_MODULE_3__.injectCssReset)();\n }\n present(props) {\n this.render(props);\n }\n clear() {\n this.render(null);\n }\n render(props) {\n if (!this.root)\n return;\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.render)(null, this.root);\n if (!props)\n return;\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.render)((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(RedirectDialogContent, Object.assign({}, props, { onDismiss: () => {\n this.clear();\n }, darkMode: this.darkMode })), this.root);\n }\n}\nconst RedirectDialogContent = ({ title, buttonText, darkMode, onButtonClick, onDismiss }) => {\n const theme = darkMode ? 'dark' : 'light';\n return ((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(_Snackbar_Snackbar_js__WEBPACK_IMPORTED_MODULE_4__.SnackbarContainer, { darkMode: darkMode },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: \"-cbwsdk-redirect-dialog\" },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"style\", null, _RedirectDialog_css_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"]),\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: \"-cbwsdk-redirect-dialog-backdrop\", onClick: onDismiss }),\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: (0,clsx__WEBPACK_IMPORTED_MODULE_0__.clsx)('-cbwsdk-redirect-dialog-box', theme) },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"p\", null, title),\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"button\", { onClick: onButtonClick }, buttonText)))));\n};\n//# sourceMappingURL=RedirectDialog.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1JlZGlyZWN0RGlhbG9nL1JlZGlyZWN0RGlhbG9nLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBNEI7QUFDSTtBQUNoQztBQUMyQjtBQUM4QjtBQUNHO0FBQ3BCO0FBQ0U7QUFDbkM7QUFDUDtBQUNBO0FBQ0Esd0JBQXdCLG9EQUFVO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEscUVBQWM7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLDhDQUFNO0FBQ2Q7QUFDQTtBQUNBLFFBQVEsOENBQU0sQ0FBQyx5Q0FBQyx3Q0FBd0MsV0FBVztBQUNuRTtBQUNBLGFBQWEsMkJBQTJCO0FBQ3hDO0FBQ0E7QUFDQSxpQ0FBaUMsdURBQXVEO0FBQ3hGO0FBQ0EsWUFBWSx5Q0FBQyxDQUFDLG9FQUFpQixJQUFJLG9CQUFvQjtBQUN2RCxRQUFRLHlDQUFDLFVBQVUsa0NBQWtDO0FBQ3JELFlBQVkseUNBQUMsZ0JBQWdCLDhEQUFHO0FBQ2hDLFlBQVkseUNBQUMsVUFBVSwrREFBK0Q7QUFDdEYsWUFBWSx5Q0FBQyxVQUFVLE9BQU8sMENBQUksd0NBQXdDO0FBQzFFLGdCQUFnQix5Q0FBQztBQUNqQixnQkFBZ0IseUNBQUMsYUFBYSx3QkFBd0I7QUFDdEQ7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1JlZGlyZWN0RGlhbG9nL1JlZGlyZWN0RGlhbG9nLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNsc3ggfSBmcm9tICdjbHN4JztcbmltcG9ydCB7IHJlbmRlciB9IGZyb20gJ3ByZWFjdCc7XG4vLyBiaW9tZS1pZ25vcmUgbGludC9jb3JyZWN0bmVzcy9ub1VudXNlZEltcG9ydHM6IHByZWFjdFxuaW1wb3J0IHsgaCB9IGZyb20gJ3ByZWFjdCc7XG5pbXBvcnQgeyBpbmplY3RDc3NSZXNldCB9IGZyb20gJy4uL2Nzc1Jlc2V0L2Nzc1Jlc2V0LmpzJztcbmltcG9ydCB7IFNuYWNrYmFyQ29udGFpbmVyIH0gZnJvbSAnLi4vU25hY2tiYXIvU25hY2tiYXIuanMnO1xuaW1wb3J0IHsgaXNEYXJrTW9kZSB9IGZyb20gJy4uL3V0aWwuanMnO1xuaW1wb3J0IGNzcyBmcm9tICcuL1JlZGlyZWN0RGlhbG9nLWNzcy5qcyc7XG5leHBvcnQgY2xhc3MgUmVkaXJlY3REaWFsb2cge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLnJvb3QgPSBudWxsO1xuICAgICAgICB0aGlzLmRhcmtNb2RlID0gaXNEYXJrTW9kZSgpO1xuICAgIH1cbiAgICBhdHRhY2goKSB7XG4gICAgICAgIGNvbnN0IGVsID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgICB0aGlzLnJvb3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgdGhpcy5yb290LmNsYXNzTmFtZSA9ICctY2J3c2RrLWNzcy1yZXNldCc7XG4gICAgICAgIGVsLmFwcGVuZENoaWxkKHRoaXMucm9vdCk7XG4gICAgICAgIGluamVjdENzc1Jlc2V0KCk7XG4gICAgfVxuICAgIHByZXNlbnQocHJvcHMpIHtcbiAgICAgICAgdGhpcy5yZW5kZXIocHJvcHMpO1xuICAgIH1cbiAgICBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5yZW5kZXIobnVsbCk7XG4gICAgfVxuICAgIHJlbmRlcihwcm9wcykge1xuICAgICAgICBpZiAoIXRoaXMucm9vdClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgcmVuZGVyKG51bGwsIHRoaXMucm9vdCk7XG4gICAgICAgIGlmICghcHJvcHMpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIHJlbmRlcihoKFJlZGlyZWN0RGlhbG9nQ29udGVudCwgT2JqZWN0LmFzc2lnbih7fSwgcHJvcHMsIHsgb25EaXNtaXNzOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgICAgICAgfSwgZGFya01vZGU6IHRoaXMuZGFya01vZGUgfSkpLCB0aGlzLnJvb3QpO1xuICAgIH1cbn1cbmNvbnN0IFJlZGlyZWN0RGlhbG9nQ29udGVudCA9ICh7IHRpdGxlLCBidXR0b25UZXh0LCBkYXJrTW9kZSwgb25CdXR0b25DbGljaywgb25EaXNtaXNzIH0pID0+IHtcbiAgICBjb25zdCB0aGVtZSA9IGRhcmtNb2RlID8gJ2RhcmsnIDogJ2xpZ2h0JztcbiAgICByZXR1cm4gKGgoU25hY2tiYXJDb250YWluZXIsIHsgZGFya01vZGU6IGRhcmtNb2RlIH0sXG4gICAgICAgIGgoXCJkaXZcIiwgeyBjbGFzczogXCItY2J3c2RrLXJlZGlyZWN0LWRpYWxvZ1wiIH0sXG4gICAgICAgICAgICBoKFwic3R5bGVcIiwgbnVsbCwgY3NzKSxcbiAgICAgICAgICAgIGgoXCJkaXZcIiwgeyBjbGFzczogXCItY2J3c2RrLXJlZGlyZWN0LWRpYWxvZy1iYWNrZHJvcFwiLCBvbkNsaWNrOiBvbkRpc21pc3MgfSksXG4gICAgICAgICAgICBoKFwiZGl2XCIsIHsgY2xhc3M6IGNsc3goJy1jYndzZGstcmVkaXJlY3QtZGlhbG9nLWJveCcsIHRoZW1lKSB9LFxuICAgICAgICAgICAgICAgIGgoXCJwXCIsIG51bGwsIHRpdGxlKSxcbiAgICAgICAgICAgICAgICBoKFwiYnV0dG9uXCIsIHsgb25DbGljazogb25CdXR0b25DbGljayB9LCBidXR0b25UZXh0KSkpKSk7XG59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UmVkaXJlY3REaWFsb2cuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar-css.js": /*!*************************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar-css.js ***! \*************************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((() => `.-cbwsdk-css-reset .-gear-container{margin-left:16px !important;margin-right:9px !important;display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:opacity .25s}.-cbwsdk-css-reset .-gear-container *{user-select:none}.-cbwsdk-css-reset .-gear-container svg{opacity:0;position:absolute}.-cbwsdk-css-reset .-gear-icon{height:12px;width:12px;z-index:10000}.-cbwsdk-css-reset .-cbwsdk-snackbar{align-items:flex-end;display:flex;flex-direction:column;position:fixed;right:0;top:0;z-index:2147483647}.-cbwsdk-css-reset .-cbwsdk-snackbar *{user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance{display:flex;flex-direction:column;margin:8px 16px 0 16px;overflow:visible;text-align:left;transform:translateX(0);transition:opacity .25s,transform .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header:hover .-gear-container svg{opacity:1}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header{display:flex;align-items:center;background:#fff;overflow:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-cblogo{margin:8px 8px 8px 8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-message{color:#000;font-size:13px;line-height:1.5;user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu{background:#fff;transition:opacity .25s ease-in-out,transform .25s linear,visibility 0s;visibility:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;opacity:0;flex-direction:column;padding-left:8px;padding-right:8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:last-child{margin-bottom:8px !important}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover{background:#f5f7f8;border-radius:6px;transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover span{color:#050f19;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover svg path{fill:#000;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item{visibility:inherit;height:35px;margin-top:8px;margin-bottom:0;display:flex;flex-direction:row;align-items:center;padding:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item *{visibility:inherit;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover{background:rgba(223,95,103,.2);transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover svg path{fill:#df5f67;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover span{color:#df5f67;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-info{color:#aaa;font-size:13px;margin:0 8px 0 32px;position:absolute}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-hidden{opacity:0;text-align:left;transform:translateX(25%);transition:opacity .5s linear}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-expanded .-cbwsdk-snackbar-instance-menu{opacity:1;display:flex;transform:translateY(8px);visibility:visible}`)());\n//# sourceMappingURL=Snackbar-css.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1NuYWNrYmFyL1NuYWNrYmFyLWNzcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsaUVBQWUsNENBQTRDLDRCQUE0Qiw0QkFBNEIsYUFBYSxtQkFBbUIsdUJBQXVCLFdBQVcsWUFBWSx3QkFBd0Isc0NBQXNDLGlCQUFpQix3Q0FBd0MsVUFBVSxrQkFBa0IsK0JBQStCLFlBQVksV0FBVyxjQUFjLHFDQUFxQyxxQkFBcUIsYUFBYSxzQkFBc0IsZUFBZSxRQUFRLE1BQU0sbUJBQW1CLHVDQUF1QyxpQkFBaUIsOENBQThDLGFBQWEsc0JBQXNCLHVCQUF1QixpQkFBaUIsZ0JBQWdCLHdCQUF3Qix1Q0FBdUMsZ0ZBQWdGLFVBQVUscURBQXFELGFBQWEsbUJBQW1CLGdCQUFnQixnQkFBZ0IseUJBQXlCLHNCQUFzQixrQkFBa0IsZUFBZSw0REFBNEQsdUJBQXVCLHVEQUF1RCxlQUFlLDZEQUE2RCxXQUFXLGVBQWUsZ0JBQWdCLGlCQUFpQixtREFBbUQsZ0JBQWdCLHdFQUF3RSxrQkFBa0IseUJBQXlCLHNCQUFzQixrQkFBa0IsVUFBVSxzQkFBc0IsaUJBQWlCLGtCQUFrQixtRUFBbUUsNkJBQTZCLDhEQUE4RCxtQkFBbUIsa0JBQWtCLDJCQUEyQixtRUFBbUUsY0FBYyxzQkFBc0IsdUVBQXVFLFVBQVUscUJBQXFCLHdEQUF3RCxtQkFBbUIsWUFBWSxlQUFlLGdCQUFnQixhQUFhLG1CQUFtQixtQkFBbUIsWUFBWSxlQUFlLDBEQUEwRCxtQkFBbUIsZUFBZSxxRUFBcUUsK0JBQStCLDJCQUEyQix1RUFBdUUsZUFBZSw4RUFBOEUsYUFBYSxxQkFBcUIsMEVBQTBFLGNBQWMsc0JBQXNCLDZEQUE2RCxXQUFXLGVBQWUsb0JBQW9CLGtCQUFrQixxREFBcUQsVUFBVSxnQkFBZ0IsMEJBQTBCLDhCQUE4Qix1RkFBdUYsVUFBVSxhQUFhLDBCQUEwQixtQkFBbUIsSUFBSSxFQUFDO0FBQ3hwRyIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1NuYWNrYmFyL1NuYWNrYmFyLWNzcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCAoKCkgPT4gYC4tY2J3c2RrLWNzcy1yZXNldCAuLWdlYXItY29udGFpbmVye21hcmdpbi1sZWZ0OjE2cHggIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6OXB4ICFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXN9Li1jYndzZGstY3NzLXJlc2V0IC4tZ2Vhci1jb250YWluZXIgKnt1c2VyLXNlbGVjdDpub25lfS4tY2J3c2RrLWNzcy1yZXNldCAuLWdlYXItY29udGFpbmVyIHN2Z3tvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGV9Li1jYndzZGstY3NzLXJlc2V0IC4tZ2Vhci1pY29ue2hlaWdodDoxMnB4O3dpZHRoOjEycHg7ei1pbmRleDoxMDAwMH0uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXJ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwb3NpdGlvbjpmaXhlZDtyaWdodDowO3RvcDowO3otaW5kZXg6MjE0NzQ4MzY0N30uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXIgKnt1c2VyLXNlbGVjdDpub25lfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbjo4cHggMTZweCAwIDE2cHg7b3ZlcmZsb3c6dmlzaWJsZTt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMsdHJhbnNmb3JtIC4yNXN9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLWhlYWRlcjpob3ZlciAuLWdlYXItY29udGFpbmVyIHN2Z3tvcGFjaXR5OjF9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQ6I2ZmZjtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOjhweDtjdXJzb3I6cG9pbnRlcn0uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtaGVhZGVyLWNibG9nb3ttYXJnaW46OHB4IDhweCA4cHggOHB4fS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1oZWFkZXIgKntjdXJzb3I6cG9pbnRlcn0uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtaGVhZGVyLW1lc3NhZ2V7Y29sb3I6IzAwMDtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxLjU7dXNlci1zZWxlY3Q6bm9uZX0uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtbWVudXtiYWNrZ3JvdW5kOiNmZmY7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgZWFzZS1pbi1vdXQsdHJhbnNmb3JtIC4yNXMgbGluZWFyLHZpc2liaWxpdHkgMHM7dmlzaWJpbGl0eTpoaWRkZW47Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOjhweDtvcGFjaXR5OjA7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmctbGVmdDo4cHg7cGFkZGluZy1yaWdodDo4cHh9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLW1lbnUtaXRlbTpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206OHB4ICFpbXBvcnRhbnR9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLW1lbnUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOiNmNWY3Zjg7Ym9yZGVyLXJhZGl1czo2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4yNXN9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLW1lbnUtaXRlbTpob3ZlciBzcGFue2NvbG9yOiMwNTBmMTk7dHJhbnNpdGlvbjpjb2xvciAuMjVzfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW06aG92ZXIgc3ZnIHBhdGh7ZmlsbDojMDAwO3RyYW5zaXRpb246ZmlsbCAuMjVzfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW17dmlzaWJpbGl0eTppbmhlcml0O2hlaWdodDozNXB4O21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246cm93O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjhweDtjdXJzb3I6cG9pbnRlcn0uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtbWVudS1pdGVtICp7dmlzaWJpbGl0eTppbmhlcml0O2N1cnNvcjpwb2ludGVyfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW0taXMtcmVkOmhvdmVye2JhY2tncm91bmQ6cmdiYSgyMjMsOTUsMTAzLC4yKTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjI1c30uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtbWVudS1pdGVtLWlzLXJlZDpob3ZlciAqe2N1cnNvcjpwb2ludGVyfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW0taXMtcmVkOmhvdmVyIHN2ZyBwYXRoe2ZpbGw6I2RmNWY2Nzt0cmFuc2l0aW9uOmZpbGwgLjI1c30uLWNid3Nkay1jc3MtcmVzZXQgLi1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtbWVudS1pdGVtLWlzLXJlZDpob3ZlciBzcGFue2NvbG9yOiNkZjVmNjc7dHJhbnNpdGlvbjpjb2xvciAuMjVzfS4tY2J3c2RrLWNzcy1yZXNldCAuLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW0taW5mb3tjb2xvcjojYWFhO2ZvbnQtc2l6ZToxM3B4O21hcmdpbjowIDhweCAwIDMycHg7cG9zaXRpb246YWJzb2x1dGV9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLWhpZGRlbntvcGFjaXR5OjA7dGV4dC1hbGlnbjpsZWZ0O3RyYW5zZm9ybTp0cmFuc2xhdGVYKDI1JSk7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBsaW5lYXJ9Li1jYndzZGstY3NzLXJlc2V0IC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLWV4cGFuZGVkIC4tY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLW1lbnV7b3BhY2l0eToxO2Rpc3BsYXk6ZmxleDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpO3Zpc2liaWxpdHk6dmlzaWJsZX1gKSgpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U25hY2tiYXItY3NzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar-css.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar.js": /*!*********************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar.js ***! \*********************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Snackbar: () => (/* binding */ Snackbar),\n/* harmony export */ SnackbarContainer: () => (/* binding */ SnackbarContainer),\n/* harmony export */ SnackbarInstance: () => (/* binding */ SnackbarInstance)\n/* harmony export */ });\n/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! clsx */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/clsx/dist/clsx.m.js\");\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! preact */ \"(app-pages-browser)/./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var preact_hooks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! preact/hooks */ \"(app-pages-browser)/./node_modules/preact/hooks/dist/hooks.module.js\");\n/* harmony import */ var _util_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/util.js\");\n/* harmony import */ var _Snackbar_css_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Snackbar-css.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar-css.js\");\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\n\n\n// biome-ignore lint/correctness/noUnusedImports: preact\n\n\n\n\nconst cblogo = `data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuNDkyIDEwLjQxOWE4LjkzIDguOTMgMCAwMTguOTMtOC45M2gxMS4xNjNhOC45MyA4LjkzIDAgMDE4LjkzIDguOTN2MTEuMTYzYTguOTMgOC45MyAwIDAxLTguOTMgOC45M0gxMC40MjJhOC45MyA4LjkzIDAgMDEtOC45My04LjkzVjEwLjQxOXoiIGZpbGw9IiMxNjUyRjAiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwLjQxOSAwSDIxLjU4QzI3LjMzNSAwIDMyIDQuNjY1IDMyIDEwLjQxOVYyMS41OEMzMiAyNy4zMzUgMjcuMzM1IDMyIDIxLjU4MSAzMkgxMC40MkM0LjY2NSAzMiAwIDI3LjMzNSAwIDIxLjU4MVYxMC40MkMwIDQuNjY1IDQuNjY1IDAgMTAuNDE5IDB6bTAgMS40ODhhOC45MyA4LjkzIDAgMDAtOC45MyA4LjkzdjExLjE2M2E4LjkzIDguOTMgMCAwMDguOTMgOC45M0gyMS41OGE4LjkzIDguOTMgMCAwMDguOTMtOC45M1YxMC40MmE4LjkzIDguOTMgMCAwMC04LjkzLTguOTNIMTAuNDJ6IiBmaWxsPSIjZmZmIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNS45OTggMjYuMDQ5Yy01LjU0OSAwLTEwLjA0Ny00LjQ5OC0xMC4wNDctMTAuMDQ3IDAtNS41NDggNC40OTgtMTAuMDQ2IDEwLjA0Ny0xMC4wNDYgNS41NDggMCAxMC4wNDYgNC40OTggMTAuMDQ2IDEwLjA0NiAwIDUuNTQ5LTQuNDk4IDEwLjA0Ny0xMC4wNDYgMTAuMDQ3eiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0xMi43NjIgMTQuMjU0YzAtLjgyMi42NjctMS40ODkgMS40ODktMS40ODloMy40OTdjLjgyMiAwIDEuNDg4LjY2NiAxLjQ4OCAxLjQ4OXYzLjQ5N2MwIC44MjItLjY2NiAxLjQ4OC0xLjQ4OCAxLjQ4OGgtMy40OTdhMS40ODggMS40ODggMCAwMS0xLjQ4OS0xLjQ4OHYtMy40OTh6IiBmaWxsPSIjMTY1MkYwIi8+PC9zdmc+`;\nconst gearIcon = `data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDYuNzV2LTEuNWwtMS43Mi0uNTdjLS4wOC0uMjctLjE5LS41Mi0uMzItLjc3bC44MS0xLjYyLTEuMDYtMS4wNi0xLjYyLjgxYy0uMjQtLjEzLS41LS4yNC0uNzctLjMyTDYuNzUgMGgtMS41bC0uNTcgMS43MmMtLjI3LjA4LS41My4xOS0uNzcuMzJsLTEuNjItLjgxLTEuMDYgMS4wNi44MSAxLjYyYy0uMTMuMjQtLjI0LjUtLjMyLjc3TDAgNS4yNXYxLjVsMS43Mi41N2MuMDguMjcuMTkuNTMuMzIuNzdsLS44MSAxLjYyIDEuMDYgMS4wNiAxLjYyLS44MWMuMjQuMTMuNS4yMy43Ny4zMkw1LjI1IDEyaDEuNWwuNTctMS43MmMuMjctLjA4LjUyLS4xOS43Ny0uMzJsMS42Mi44MSAxLjA2LTEuMDYtLjgxLTEuNjJjLjEzLS4yNC4yMy0uNS4zMi0uNzdMMTIgNi43NXpNNiA4LjVhMi41IDIuNSAwIDAxMC01IDIuNSAyLjUgMCAwMTAgNXoiIGZpbGw9IiMwNTBGMTkiLz48L3N2Zz4=`;\nclass Snackbar {\n constructor() {\n this.items = new Map();\n this.nextItemKey = 0;\n this.root = null;\n this.darkMode = (0,_util_js__WEBPACK_IMPORTED_MODULE_3__.isDarkMode)();\n }\n attach(el) {\n this.root = document.createElement('div');\n this.root.className = '-cbwsdk-snackbar-root';\n el.appendChild(this.root);\n this.render();\n }\n presentItem(itemProps) {\n const key = this.nextItemKey++;\n this.items.set(key, itemProps);\n this.render();\n return () => {\n this.items.delete(key);\n this.render();\n };\n }\n clear() {\n this.items.clear();\n this.render();\n }\n render() {\n if (!this.root) {\n return;\n }\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.render)((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", null,\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(SnackbarContainer, { darkMode: this.darkMode }, Array.from(this.items.entries()).map(([key, itemProps]) => ((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(SnackbarInstance, Object.assign({}, itemProps, { key: key })))))), this.root);\n }\n}\nconst SnackbarContainer = (props) => ((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: (0,clsx__WEBPACK_IMPORTED_MODULE_0__.clsx)('-cbwsdk-snackbar-container') },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"style\", null, _Snackbar_css_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"]),\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: \"-cbwsdk-snackbar\" }, props.children)));\nconst SnackbarInstance = ({ autoExpand, message, menuItems, }) => {\n const [hidden, setHidden] = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_2__.useState)(true);\n const [expanded, setExpanded] = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_2__.useState)(autoExpand !== null && autoExpand !== void 0 ? autoExpand : false);\n (0,preact_hooks__WEBPACK_IMPORTED_MODULE_2__.useEffect)(() => {\n const timers = [\n window.setTimeout(() => {\n setHidden(false);\n }, 1),\n window.setTimeout(() => {\n setExpanded(true);\n }, 10000),\n ];\n return () => {\n timers.forEach(window.clearTimeout);\n };\n });\n const toggleExpanded = () => {\n setExpanded(!expanded);\n };\n return ((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: (0,clsx__WEBPACK_IMPORTED_MODULE_0__.clsx)('-cbwsdk-snackbar-instance', hidden && '-cbwsdk-snackbar-instance-hidden', expanded && '-cbwsdk-snackbar-instance-expanded') },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: \"-cbwsdk-snackbar-instance-header\", onClick: toggleExpanded },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"img\", { src: cblogo, class: \"-cbwsdk-snackbar-instance-header-cblogo\" }),\n ' ',\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: \"-cbwsdk-snackbar-instance-header-message\" }, message),\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: \"-gear-container\" },\n !expanded && ((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"circle\", { cx: \"12\", cy: \"12\", r: \"12\", fill: \"#F5F7F8\" }))),\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"img\", { src: gearIcon, class: \"-gear-icon\", title: \"Expand\" }))),\n menuItems && menuItems.length > 0 && ((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: \"-cbwsdk-snackbar-instance-menu\" }, menuItems.map((action, i) => ((0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"div\", { class: (0,clsx__WEBPACK_IMPORTED_MODULE_0__.clsx)('-cbwsdk-snackbar-instance-menu-item', action.isRed && '-cbwsdk-snackbar-instance-menu-item-is-red'), onClick: action.onClick, key: i },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"svg\", { width: action.svgWidth, height: action.svgHeight, viewBox: \"0 0 10 11\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"path\", { \"fill-rule\": action.defaultFillRule, \"clip-rule\": action.defaultClipRule, d: action.path, fill: \"#AAAAAA\" })),\n (0,preact__WEBPACK_IMPORTED_MODULE_1__.h)(\"span\", { class: (0,clsx__WEBPACK_IMPORTED_MODULE_0__.clsx)('-cbwsdk-snackbar-instance-menu-item-info', action.isRed && '-cbwsdk-snackbar-instance-menu-item-info-is-red') }, action.info))))))));\n};\n//# sourceMappingURL=Snackbar.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1NuYWNrYmFyL1NuYWNrYmFyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7QUFDNEI7QUFDSTtBQUNoQztBQUMyQjtBQUN3QjtBQUNYO0FBQ0o7QUFDcEMsbUNBQW1DO0FBQ25DLHFDQUFxQztBQUM5QjtBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLG9EQUFVO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsOENBQU0sQ0FBQyx5Q0FBQztBQUNoQixZQUFZLHlDQUFDLHNCQUFzQix5QkFBeUIsOERBQThELHlDQUFDLG1DQUFtQyxlQUFlLFVBQVU7QUFDdkw7QUFDQTtBQUNPLHNDQUFzQyx5Q0FBQyxVQUFVLE9BQU8sMENBQUksZ0NBQWdDO0FBQ25HLElBQUkseUNBQUMsZ0JBQWdCLHdEQUFHO0FBQ3hCLElBQUkseUNBQUMsVUFBVSwyQkFBMkI7QUFDbkMsNEJBQTRCLGlDQUFpQztBQUNwRSxnQ0FBZ0Msc0RBQVE7QUFDeEMsb0NBQW9DLHNEQUFRO0FBQzVDLElBQUksdURBQVM7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxZQUFZLHlDQUFDLFVBQVUsT0FBTywwQ0FBSSwrSEFBK0g7QUFDakssUUFBUSx5Q0FBQyxVQUFVLG9FQUFvRTtBQUN2RixZQUFZLHlDQUFDLFVBQVUsK0RBQStEO0FBQ3RGO0FBQ0EsWUFBWSx5Q0FBQyxVQUFVLG1EQUFtRDtBQUMxRSxZQUFZLHlDQUFDLFVBQVUsMEJBQTBCO0FBQ2pELDhCQUE4Qix5Q0FBQyxVQUFVLG9HQUFvRztBQUM3SSxvQkFBb0IseUNBQUMsYUFBYSw4Q0FBOEM7QUFDaEYsZ0JBQWdCLHlDQUFDLFVBQVUscURBQXFEO0FBQ2hGLDhDQUE4Qyx5Q0FBQyxVQUFVLHlDQUF5QyxnQ0FBZ0MseUNBQUMsVUFBVSxPQUFPLDBDQUFJLHdJQUF3STtBQUNoUyxZQUFZLHlDQUFDLFVBQVUsMkhBQTJIO0FBQ2xKLGdCQUFnQix5Q0FBQyxXQUFXLDJHQUEyRztBQUN2SSxZQUFZLHlDQUFDLFdBQVcsT0FBTywwQ0FBSSxpSEFBaUg7QUFDcEo7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL1NuYWNrYmFyL1NuYWNrYmFyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIENvaW5iYXNlLCBJbmMuIDxodHRwczovL3d3dy5jb2luYmFzZS5jb20vPlxuaW1wb3J0IHsgY2xzeCB9IGZyb20gJ2Nsc3gnO1xuaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAncHJlYWN0Jztcbi8vIGJpb21lLWlnbm9yZSBsaW50L2NvcnJlY3RuZXNzL25vVW51c2VkSW1wb3J0czogcHJlYWN0XG5pbXBvcnQgeyBoIH0gZnJvbSAncHJlYWN0JztcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdwcmVhY3QvaG9va3MnO1xuaW1wb3J0IHsgaXNEYXJrTW9kZSB9IGZyb20gJy4uL3V0aWwuanMnO1xuaW1wb3J0IGNzcyBmcm9tICcuL1NuYWNrYmFyLWNzcy5qcyc7XG5jb25zdCBjYmxvZ28gPSBgZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTXpJaUlHaGxhV2RvZEQwaU16SWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrUEhCaGRHZ2daRDBpVFRFdU5Ea3lJREV3TGpReE9XRTRMamt6SURndU9UTWdNQ0F3TVRndU9UTXRPQzQ1TTJneE1TNHhOak5oT0M0NU15QTRMamt6SURBZ01ERTRMamt6SURndU9UTjJNVEV1TVRZellUZ3VPVE1nT0M0NU15QXdJREF4TFRndU9UTWdPQzQ1TTBneE1DNDBNakpoT0M0NU15QTRMamt6SURBZ01ERXRPQzQ1TXkwNExqa3pWakV3TGpReE9Yb2lJR1pwYkd3OUlpTXhOalV5UmpBaUx6NDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHTnNhWEF0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFd0xqUXhPU0F3U0RJeExqVTRRekkzTGpNek5TQXdJRE15SURRdU5qWTFJRE15SURFd0xqUXhPVll5TVM0MU9FTXpNaUF5Tnk0ek16VWdNamN1TXpNMUlETXlJREl4TGpVNE1TQXpNa2d4TUM0ME1rTTBMalkyTlNBek1pQXdJREkzTGpNek5TQXdJREl4TGpVNE1WWXhNQzQwTWtNd0lEUXVOalkxSURRdU5qWTFJREFnTVRBdU5ERTVJREI2YlRBZ01TNDBPRGhoT0M0NU15QTRMamt6SURBZ01EQXRPQzQ1TXlBNExqa3pkakV4TGpFMk0yRTRMamt6SURndU9UTWdNQ0F3TURndU9UTWdPQzQ1TTBneU1TNDFPR0U0TGpreklEZ3VPVE1nTUNBd01EZ3VPVE10T0M0NU0xWXhNQzQwTW1FNExqa3pJRGd1T1RNZ01DQXdNQzA0TGprekxUZ3VPVE5JTVRBdU5ESjZJaUJtYVd4c1BTSWpabVptSWk4K1BIQmhkR2dnWm1sc2JDMXlkV3hsUFNKbGRtVnViMlJrSWlCamJHbHdMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazB4TlM0NU9UZ2dNall1TURRNVl5MDFMalUwT1NBd0xURXdMakEwTnkwMExqUTVPQzB4TUM0d05EY3RNVEF1TURRM0lEQXROUzQxTkRnZ05DNDBPVGd0TVRBdU1EUTJJREV3TGpBME55MHhNQzR3TkRZZ05TNDFORGdnTUNBeE1DNHdORFlnTkM0ME9UZ2dNVEF1TURRMklERXdMakEwTmlBd0lEVXVOVFE1TFRRdU5EazRJREV3TGpBME55MHhNQzR3TkRZZ01UQXVNRFEzZWlJZ1ptbHNiRDBpSTJabVppSXZQanh3WVhSb0lHUTlJazB4TWk0M05qSWdNVFF1TWpVMFl6QXRMamd5TWk0Mk5qY3RNUzQwT0RrZ01TNDBPRGt0TVM0ME9EbG9NeTQwT1RkakxqZ3lNaUF3SURFdU5EZzRMalkyTmlBeExqUTRPQ0F4TGpRNE9YWXpMalE1TjJNd0lDNDRNakl0TGpZMk5pQXhMalE0T0MweExqUTRPQ0F4TGpRNE9HZ3RNeTQwT1RkaE1TNDBPRGdnTVM0ME9EZ2dNQ0F3TVMweExqUTRPUzB4TGpRNE9IWXRNeTQwT1RoNklpQm1hV3hzUFNJak1UWTFNa1l3SWk4K1BDOXpkbWMrYDtcbmNvbnN0IGdlYXJJY29uID0gYGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1USWlJR2hsYVdkb2REMGlNVElpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRURXlJRFl1TnpWMkxURXVOV3d0TVM0M01pMHVOVGRqTFM0d09DMHVNamN0TGpFNUxTNDFNaTB1TXpJdExqYzNiQzQ0TVMweExqWXlMVEV1TURZdE1TNHdOaTB4TGpZeUxqZ3hZeTB1TWpRdExqRXpMUzQxTFM0eU5DMHVOemN0TGpNeVREWXVOelVnTUdndE1TNDFiQzB1TlRjZ01TNDNNbU10TGpJM0xqQTRMUzQxTXk0eE9TMHVOemN1TXpKc0xURXVOakl0TGpneExURXVNRFlnTVM0d05pNDRNU0F4TGpZeVl5MHVNVE11TWpRdExqSTBMalV0TGpNeUxqYzNUREFnTlM0eU5YWXhMalZzTVM0M01pNDFOMk11TURndU1qY3VNVGt1TlRNdU16SXVOemRzTFM0NE1TQXhMall5SURFdU1EWWdNUzR3TmlBeExqWXlMUzQ0TVdNdU1qUXVNVE11TlM0eU15NDNOeTR6TWt3MUxqSTFJREV5YURFdU5Xd3VOVGN0TVM0M01tTXVNamN0TGpBNExqVXlMUzR4T1M0M055MHVNekpzTVM0Mk1pNDRNU0F4TGpBMkxURXVNRFl0TGpneExURXVOakpqTGpFekxTNHlOQzR5TXkwdU5TNHpNaTB1TnpkTU1USWdOaTQzTlhwTk5pQTRMalZoTWk0MUlESXVOU0F3SURBeE1DMDFJREl1TlNBeUxqVWdNQ0F3TVRBZ05Yb2lJR1pwYkd3OUlpTXdOVEJHTVRraUx6NDhMM04yWno0PWA7XG5leHBvcnQgY2xhc3MgU25hY2tiYXIge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLml0ZW1zID0gbmV3IE1hcCgpO1xuICAgICAgICB0aGlzLm5leHRJdGVtS2V5ID0gMDtcbiAgICAgICAgdGhpcy5yb290ID0gbnVsbDtcbiAgICAgICAgdGhpcy5kYXJrTW9kZSA9IGlzRGFya01vZGUoKTtcbiAgICB9XG4gICAgYXR0YWNoKGVsKSB7XG4gICAgICAgIHRoaXMucm9vdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICB0aGlzLnJvb3QuY2xhc3NOYW1lID0gJy1jYndzZGstc25hY2tiYXItcm9vdCc7XG4gICAgICAgIGVsLmFwcGVuZENoaWxkKHRoaXMucm9vdCk7XG4gICAgICAgIHRoaXMucmVuZGVyKCk7XG4gICAgfVxuICAgIHByZXNlbnRJdGVtKGl0ZW1Qcm9wcykge1xuICAgICAgICBjb25zdCBrZXkgPSB0aGlzLm5leHRJdGVtS2V5Kys7XG4gICAgICAgIHRoaXMuaXRlbXMuc2V0KGtleSwgaXRlbVByb3BzKTtcbiAgICAgICAgdGhpcy5yZW5kZXIoKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXRlbXMuZGVsZXRlKGtleSk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcigpO1xuICAgICAgICB9O1xuICAgIH1cbiAgICBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5pdGVtcy5jbGVhcigpO1xuICAgICAgICB0aGlzLnJlbmRlcigpO1xuICAgIH1cbiAgICByZW5kZXIoKSB7XG4gICAgICAgIGlmICghdGhpcy5yb290KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcmVuZGVyKGgoXCJkaXZcIiwgbnVsbCxcbiAgICAgICAgICAgIGgoU25hY2tiYXJDb250YWluZXIsIHsgZGFya01vZGU6IHRoaXMuZGFya01vZGUgfSwgQXJyYXkuZnJvbSh0aGlzLml0ZW1zLmVudHJpZXMoKSkubWFwKChba2V5LCBpdGVtUHJvcHNdKSA9PiAoaChTbmFja2Jhckluc3RhbmNlLCBPYmplY3QuYXNzaWduKHt9LCBpdGVtUHJvcHMsIHsga2V5OiBrZXkgfSkpKSkpKSwgdGhpcy5yb290KTtcbiAgICB9XG59XG5leHBvcnQgY29uc3QgU25hY2tiYXJDb250YWluZXIgPSAocHJvcHMpID0+IChoKFwiZGl2XCIsIHsgY2xhc3M6IGNsc3goJy1jYndzZGstc25hY2tiYXItY29udGFpbmVyJykgfSxcbiAgICBoKFwic3R5bGVcIiwgbnVsbCwgY3NzKSxcbiAgICBoKFwiZGl2XCIsIHsgY2xhc3M6IFwiLWNid3Nkay1zbmFja2JhclwiIH0sIHByb3BzLmNoaWxkcmVuKSkpO1xuZXhwb3J0IGNvbnN0IFNuYWNrYmFySW5zdGFuY2UgPSAoeyBhdXRvRXhwYW5kLCBtZXNzYWdlLCBtZW51SXRlbXMsIH0pID0+IHtcbiAgICBjb25zdCBbaGlkZGVuLCBzZXRIaWRkZW5dID0gdXNlU3RhdGUodHJ1ZSk7XG4gICAgY29uc3QgW2V4cGFuZGVkLCBzZXRFeHBhbmRlZF0gPSB1c2VTdGF0ZShhdXRvRXhwYW5kICE9PSBudWxsICYmIGF1dG9FeHBhbmQgIT09IHZvaWQgMCA/IGF1dG9FeHBhbmQgOiBmYWxzZSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgY29uc3QgdGltZXJzID0gW1xuICAgICAgICAgICAgd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldEhpZGRlbihmYWxzZSk7XG4gICAgICAgICAgICB9LCAxKSxcbiAgICAgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFeHBhbmRlZCh0cnVlKTtcbiAgICAgICAgICAgIH0sIDEwMDAwKSxcbiAgICAgICAgXTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIHRpbWVycy5mb3JFYWNoKHdpbmRvdy5jbGVhclRpbWVvdXQpO1xuICAgICAgICB9O1xuICAgIH0pO1xuICAgIGNvbnN0IHRvZ2dsZUV4cGFuZGVkID0gKCkgPT4ge1xuICAgICAgICBzZXRFeHBhbmRlZCghZXhwYW5kZWQpO1xuICAgIH07XG4gICAgcmV0dXJuIChoKFwiZGl2XCIsIHsgY2xhc3M6IGNsc3goJy1jYndzZGstc25hY2tiYXItaW5zdGFuY2UnLCBoaWRkZW4gJiYgJy1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtaGlkZGVuJywgZXhwYW5kZWQgJiYgJy1jYndzZGstc25hY2tiYXItaW5zdGFuY2UtZXhwYW5kZWQnKSB9LFxuICAgICAgICBoKFwiZGl2XCIsIHsgY2xhc3M6IFwiLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1oZWFkZXJcIiwgb25DbGljazogdG9nZ2xlRXhwYW5kZWQgfSxcbiAgICAgICAgICAgIGgoXCJpbWdcIiwgeyBzcmM6IGNibG9nbywgY2xhc3M6IFwiLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1oZWFkZXItY2Jsb2dvXCIgfSksXG4gICAgICAgICAgICAnICcsXG4gICAgICAgICAgICBoKFwiZGl2XCIsIHsgY2xhc3M6IFwiLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1oZWFkZXItbWVzc2FnZVwiIH0sIG1lc3NhZ2UpLFxuICAgICAgICAgICAgaChcImRpdlwiLCB7IGNsYXNzOiBcIi1nZWFyLWNvbnRhaW5lclwiIH0sXG4gICAgICAgICAgICAgICAgIWV4cGFuZGVkICYmIChoKFwic3ZnXCIsIHsgd2lkdGg6IFwiMjRcIiwgaGVpZ2h0OiBcIjI0XCIsIHZpZXdCb3g6IFwiMCAwIDI0IDI0XCIsIGZpbGw6IFwibm9uZVwiLCB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIH0sXG4gICAgICAgICAgICAgICAgICAgIGgoXCJjaXJjbGVcIiwgeyBjeDogXCIxMlwiLCBjeTogXCIxMlwiLCByOiBcIjEyXCIsIGZpbGw6IFwiI0Y1RjdGOFwiIH0pKSksXG4gICAgICAgICAgICAgICAgaChcImltZ1wiLCB7IHNyYzogZ2Vhckljb24sIGNsYXNzOiBcIi1nZWFyLWljb25cIiwgdGl0bGU6IFwiRXhwYW5kXCIgfSkpKSxcbiAgICAgICAgbWVudUl0ZW1zICYmIG1lbnVJdGVtcy5sZW5ndGggPiAwICYmIChoKFwiZGl2XCIsIHsgY2xhc3M6IFwiLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51XCIgfSwgbWVudUl0ZW1zLm1hcCgoYWN0aW9uLCBpKSA9PiAoaChcImRpdlwiLCB7IGNsYXNzOiBjbHN4KCctY2J3c2RrLXNuYWNrYmFyLWluc3RhbmNlLW1lbnUtaXRlbScsIGFjdGlvbi5pc1JlZCAmJiAnLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW0taXMtcmVkJyksIG9uQ2xpY2s6IGFjdGlvbi5vbkNsaWNrLCBrZXk6IGkgfSxcbiAgICAgICAgICAgIGgoXCJzdmdcIiwgeyB3aWR0aDogYWN0aW9uLnN2Z1dpZHRoLCBoZWlnaHQ6IGFjdGlvbi5zdmdIZWlnaHQsIHZpZXdCb3g6IFwiMCAwIDEwIDExXCIsIGZpbGw6IFwibm9uZVwiLCB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIH0sXG4gICAgICAgICAgICAgICAgaChcInBhdGhcIiwgeyBcImZpbGwtcnVsZVwiOiBhY3Rpb24uZGVmYXVsdEZpbGxSdWxlLCBcImNsaXAtcnVsZVwiOiBhY3Rpb24uZGVmYXVsdENsaXBSdWxlLCBkOiBhY3Rpb24ucGF0aCwgZmlsbDogXCIjQUFBQUFBXCIgfSkpLFxuICAgICAgICAgICAgaChcInNwYW5cIiwgeyBjbGFzczogY2xzeCgnLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW0taW5mbycsIGFjdGlvbi5pc1JlZCAmJiAnLWNid3Nkay1zbmFja2Jhci1pbnN0YW5jZS1tZW51LWl0ZW0taW5mby1pcy1yZWQnKSB9LCBhY3Rpb24uaW5mbykpKSkpKSkpO1xufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVNuYWNrYmFyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset-css.js": /*!*************************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset-css.js ***! \*************************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((() => `@namespace svg \"http://www.w3.org/2000/svg\";.-cbwsdk-css-reset,.-cbwsdk-css-reset *{animation:none;animation-delay:0;animation-direction:normal;animation-duration:0;animation-fill-mode:none;animation-iteration-count:1;animation-name:none;animation-play-state:running;animation-timing-function:ease;backface-visibility:visible;background:0;background-attachment:scroll;background-clip:border-box;background-color:rgba(0,0,0,0);background-image:none;background-origin:padding-box;background-position:0 0;background-position-x:0;background-position-y:0;background-repeat:repeat;background-size:auto auto;border:0;border-style:none;border-width:medium;border-color:inherit;border-bottom:0;border-bottom-color:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-style:none;border-bottom-width:medium;border-collapse:separate;border-image:none;border-left:0;border-left-color:inherit;border-left-style:none;border-left-width:medium;border-radius:0;border-right:0;border-right-color:inherit;border-right-style:none;border-right-width:medium;border-spacing:0;border-top:0;border-top-color:inherit;border-top-left-radius:0;border-top-right-radius:0;border-top-style:none;border-top-width:medium;box-shadow:none;box-sizing:border-box;caption-side:top;clear:none;clip:auto;color:inherit;columns:auto;column-count:auto;column-fill:balance;column-gap:normal;column-rule:medium none currentColor;column-rule-color:currentColor;column-rule-style:none;column-rule-width:none;column-span:1;column-width:auto;counter-increment:none;counter-reset:none;direction:ltr;empty-cells:show;float:none;font:normal;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Helvetica Neue\",Arial,sans-serif;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;height:auto;hyphens:none;letter-spacing:normal;line-height:normal;list-style:none;list-style-image:none;list-style-position:outside;list-style-type:disc;margin:0;margin-bottom:0;margin-left:0;margin-right:0;margin-top:0;opacity:1;orphans:0;outline:0;outline-color:invert;outline-style:none;outline-width:medium;overflow:visible;overflow-x:visible;overflow-y:visible;padding:0;padding-bottom:0;padding-left:0;padding-right:0;padding-top:0;page-break-after:auto;page-break-before:auto;page-break-inside:auto;perspective:none;perspective-origin:50% 50%;pointer-events:auto;position:static;quotes:\"\\\\201C\" \"\\\\201D\" \"\\\\2018\" \"\\\\2019\";tab-size:8;table-layout:auto;text-align:inherit;text-align-last:auto;text-decoration:none;text-decoration-color:inherit;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-shadow:none;text-transform:none;transform:none;transform-style:flat;transition:none;transition-delay:0s;transition-duration:0s;transition-property:none;transition-timing-function:ease;unicode-bidi:normal;vertical-align:baseline;visibility:visible;white-space:normal;widows:0;word-spacing:normal;z-index:auto}.-cbwsdk-css-reset strong{font-weight:bold}.-cbwsdk-css-reset *{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Helvetica Neue\",Arial,sans-serif;line-height:1}.-cbwsdk-css-reset [class*=container]{margin:0;padding:0}.-cbwsdk-css-reset style{display:none}`)());\n//# sourceMappingURL=cssReset-css.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL2Nzc1Jlc2V0L2Nzc1Jlc2V0LWNzcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsaUVBQWUsb0RBQW9ELHdDQUF3QyxlQUFlLGtCQUFrQiwyQkFBMkIscUJBQXFCLHlCQUF5Qiw0QkFBNEIsb0JBQW9CLDZCQUE2QiwrQkFBK0IsNEJBQTRCLGFBQWEsNkJBQTZCLDJCQUEyQiwrQkFBK0Isc0JBQXNCLDhCQUE4Qix3QkFBd0Isd0JBQXdCLHdCQUF3Qix5QkFBeUIsMEJBQTBCLFNBQVMsa0JBQWtCLG9CQUFvQixxQkFBcUIsZ0JBQWdCLDRCQUE0Qiw0QkFBNEIsNkJBQTZCLHlCQUF5QiwyQkFBMkIseUJBQXlCLGtCQUFrQixjQUFjLDBCQUEwQix1QkFBdUIseUJBQXlCLGdCQUFnQixlQUFlLDJCQUEyQix3QkFBd0IsMEJBQTBCLGlCQUFpQixhQUFhLHlCQUF5Qix5QkFBeUIsMEJBQTBCLHNCQUFzQix3QkFBd0IsZ0JBQWdCLHNCQUFzQixpQkFBaUIsV0FBVyxVQUFVLGNBQWMsYUFBYSxrQkFBa0Isb0JBQW9CLGtCQUFrQixxQ0FBcUMsK0JBQStCLHVCQUF1Qix1QkFBdUIsY0FBYyxrQkFBa0IsdUJBQXVCLG1CQUFtQixjQUFjLGlCQUFpQixXQUFXLFlBQVksMEZBQTBGLGlCQUFpQixrQkFBa0Isb0JBQW9CLG1CQUFtQixZQUFZLGFBQWEsc0JBQXNCLG1CQUFtQixnQkFBZ0Isc0JBQXNCLDRCQUE0QixxQkFBcUIsU0FBUyxnQkFBZ0IsY0FBYyxlQUFlLGFBQWEsVUFBVSxVQUFVLFVBQVUscUJBQXFCLG1CQUFtQixxQkFBcUIsaUJBQWlCLG1CQUFtQixtQkFBbUIsVUFBVSxpQkFBaUIsZUFBZSxnQkFBZ0IsY0FBYyxzQkFBc0IsdUJBQXVCLHVCQUF1QixpQkFBaUIsMkJBQTJCLG9CQUFvQixnQkFBZ0IsMkNBQTJDLFdBQVcsa0JBQWtCLG1CQUFtQixxQkFBcUIscUJBQXFCLDhCQUE4QiwwQkFBMEIsNEJBQTRCLGNBQWMsaUJBQWlCLG9CQUFvQixlQUFlLHFCQUFxQixnQkFBZ0Isb0JBQW9CLHVCQUF1Qix5QkFBeUIsZ0NBQWdDLG9CQUFvQix3QkFBd0IsbUJBQW1CLG1CQUFtQixTQUFTLG9CQUFvQixhQUFhLDBCQUEwQixpQkFBaUIscUJBQXFCLHNCQUFzQiwwRkFBMEYsY0FBYyxzQ0FBc0MsU0FBUyxVQUFVLHlCQUF5QixhQUFhLElBQUksRUFBQztBQUNycEciLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zaWduL3dhbGxldGxpbmsvcmVsYXkvdWkvY29tcG9uZW50cy9jc3NSZXNldC9jc3NSZXNldC1jc3MuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgKCgpID0+IGBAbmFtZXNwYWNlIHN2ZyBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI7Li1jYndzZGstY3NzLXJlc2V0LC4tY2J3c2RrLWNzcy1yZXNldCAqe2FuaW1hdGlvbjpub25lO2FuaW1hdGlvbi1kZWxheTowO2FuaW1hdGlvbi1kaXJlY3Rpb246bm9ybWFsO2FuaW1hdGlvbi1kdXJhdGlvbjowO2FuaW1hdGlvbi1maWxsLW1vZGU6bm9uZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OjE7YW5pbWF0aW9uLW5hbWU6bm9uZTthbmltYXRpb24tcGxheS1zdGF0ZTpydW5uaW5nO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZTtiYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGU7YmFja2dyb3VuZDowO2JhY2tncm91bmQtYXR0YWNobWVudDpzY3JvbGw7YmFja2dyb3VuZC1jbGlwOmJvcmRlci1ib3g7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApO2JhY2tncm91bmQtaW1hZ2U6bm9uZTtiYWNrZ3JvdW5kLW9yaWdpbjpwYWRkaW5nLWJveDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMDtiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6MDtiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6MDtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQ7YmFja2dyb3VuZC1zaXplOmF1dG8gYXV0bztib3JkZXI6MDtib3JkZXItc3R5bGU6bm9uZTtib3JkZXItd2lkdGg6bWVkaXVtO2JvcmRlci1jb2xvcjppbmhlcml0O2JvcmRlci1ib3R0b206MDtib3JkZXItYm90dG9tLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1zdHlsZTpub25lO2JvcmRlci1ib3R0b20td2lkdGg6bWVkaXVtO2JvcmRlci1jb2xsYXBzZTpzZXBhcmF0ZTtib3JkZXItaW1hZ2U6bm9uZTtib3JkZXItbGVmdDowO2JvcmRlci1sZWZ0LWNvbG9yOmluaGVyaXQ7Ym9yZGVyLWxlZnQtc3R5bGU6bm9uZTtib3JkZXItbGVmdC13aWR0aDptZWRpdW07Ym9yZGVyLXJhZGl1czowO2JvcmRlci1yaWdodDowO2JvcmRlci1yaWdodC1jb2xvcjppbmhlcml0O2JvcmRlci1yaWdodC1zdHlsZTpub25lO2JvcmRlci1yaWdodC13aWR0aDptZWRpdW07Ym9yZGVyLXNwYWNpbmc6MDtib3JkZXItdG9wOjA7Ym9yZGVyLXRvcC1jb2xvcjppbmhlcml0O2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JvcmRlci10b3Atc3R5bGU6bm9uZTtib3JkZXItdG9wLXdpZHRoOm1lZGl1bTtib3gtc2hhZG93Om5vbmU7Ym94LXNpemluZzpib3JkZXItYm94O2NhcHRpb24tc2lkZTp0b3A7Y2xlYXI6bm9uZTtjbGlwOmF1dG87Y29sb3I6aW5oZXJpdDtjb2x1bW5zOmF1dG87Y29sdW1uLWNvdW50OmF1dG87Y29sdW1uLWZpbGw6YmFsYW5jZTtjb2x1bW4tZ2FwOm5vcm1hbDtjb2x1bW4tcnVsZTptZWRpdW0gbm9uZSBjdXJyZW50Q29sb3I7Y29sdW1uLXJ1bGUtY29sb3I6Y3VycmVudENvbG9yO2NvbHVtbi1ydWxlLXN0eWxlOm5vbmU7Y29sdW1uLXJ1bGUtd2lkdGg6bm9uZTtjb2x1bW4tc3BhbjoxO2NvbHVtbi13aWR0aDphdXRvO2NvdW50ZXItaW5jcmVtZW50Om5vbmU7Y291bnRlci1yZXNldDpub25lO2RpcmVjdGlvbjpsdHI7ZW1wdHktY2VsbHM6c2hvdztmbG9hdDpub25lO2ZvbnQ6bm9ybWFsO2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6bWVkaXVtO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2hlaWdodDphdXRvO2h5cGhlbnM6bm9uZTtsZXR0ZXItc3BhY2luZzpub3JtYWw7bGluZS1oZWlnaHQ6bm9ybWFsO2xpc3Qtc3R5bGU6bm9uZTtsaXN0LXN0eWxlLWltYWdlOm5vbmU7bGlzdC1zdHlsZS1wb3NpdGlvbjpvdXRzaWRlO2xpc3Qtc3R5bGUtdHlwZTpkaXNjO21hcmdpbjowO21hcmdpbi1ib3R0b206MDttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDowO21hcmdpbi10b3A6MDtvcGFjaXR5OjE7b3JwaGFuczowO291dGxpbmU6MDtvdXRsaW5lLWNvbG9yOmludmVydDtvdXRsaW5lLXN0eWxlOm5vbmU7b3V0bGluZS13aWR0aDptZWRpdW07b3ZlcmZsb3c6dmlzaWJsZTtvdmVyZmxvdy14OnZpc2libGU7b3ZlcmZsb3cteTp2aXNpYmxlO3BhZGRpbmc6MDtwYWRkaW5nLWJvdHRvbTowO3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLXRvcDowO3BhZ2UtYnJlYWstYWZ0ZXI6YXV0bztwYWdlLWJyZWFrLWJlZm9yZTphdXRvO3BhZ2UtYnJlYWstaW5zaWRlOmF1dG87cGVyc3BlY3RpdmU6bm9uZTtwZXJzcGVjdGl2ZS1vcmlnaW46NTAlIDUwJTtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOnN0YXRpYztxdW90ZXM6XCJcXFxcMjAxQ1wiIFwiXFxcXDIwMURcIiBcIlxcXFwyMDE4XCIgXCJcXFxcMjAxOVwiO3RhYi1zaXplOjg7dGFibGUtbGF5b3V0OmF1dG87dGV4dC1hbGlnbjppbmhlcml0O3RleHQtYWxpZ24tbGFzdDphdXRvO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtZGVjb3JhdGlvbi1jb2xvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbi1saW5lOm5vbmU7dGV4dC1kZWNvcmF0aW9uLXN0eWxlOnNvbGlkO3RleHQtaW5kZW50OjA7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lO3RyYW5zZm9ybS1zdHlsZTpmbGF0O3RyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uLWRlbGF5OjBzO3RyYW5zaXRpb24tZHVyYXRpb246MHM7dHJhbnNpdGlvbi1wcm9wZXJ0eTpub25lO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2U7dW5pY29kZS1iaWRpOm5vcm1hbDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTt2aXNpYmlsaXR5OnZpc2libGU7d2hpdGUtc3BhY2U6bm9ybWFsO3dpZG93czowO3dvcmQtc3BhY2luZzpub3JtYWw7ei1pbmRleDphdXRvfS4tY2J3c2RrLWNzcy1yZXNldCBzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZH0uLWNid3Nkay1jc3MtcmVzZXQgKntib3gtc2l6aW5nOmJvcmRlci1ib3g7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFwiSGVsdmV0aWNhIE5ldWVcIixBcmlhbCxzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjF9Li1jYndzZGstY3NzLXJlc2V0IFtjbGFzcyo9Y29udGFpbmVyXXttYXJnaW46MDtwYWRkaW5nOjB9Li1jYndzZGstY3NzLXJlc2V0IHN0eWxle2Rpc3BsYXk6bm9uZX1gKSgpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y3NzUmVzZXQtY3NzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset-css.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset.js": /*!*********************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset.js ***! \*********************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ injectCssReset: () => (/* binding */ injectCssReset)\n/* harmony export */ });\n/* harmony import */ var _cssReset_css_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./cssReset-css.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset-css.js\");\n// Copyright (c) 2018-2023 Coinbase, Inc. <https://www.coinbase.com/>\n\nfunction injectCssReset() {\n const styleEl = document.createElement('style');\n styleEl.type = 'text/css';\n styleEl.appendChild(document.createTextNode(_cssReset_css_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]));\n document.documentElement.appendChild(styleEl);\n}\n//# sourceMappingURL=cssReset.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL2Nzc1Jlc2V0L2Nzc1Jlc2V0LmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDb0M7QUFDN0I7QUFDUDtBQUNBO0FBQ0EsZ0RBQWdELHdEQUFHO0FBQ25EO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL2Nzc1Jlc2V0L2Nzc1Jlc2V0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIENvaW5iYXNlLCBJbmMuIDxodHRwczovL3d3dy5jb2luYmFzZS5jb20vPlxuaW1wb3J0IGNzcyBmcm9tICcuL2Nzc1Jlc2V0LWNzcy5qcyc7XG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0Q3NzUmVzZXQoKSB7XG4gICAgY29uc3Qgc3R5bGVFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG4gICAgc3R5bGVFbC50eXBlID0gJ3RleHQvY3NzJztcbiAgICBzdHlsZUVsLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hcHBlbmRDaGlsZChzdHlsZUVsKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNzc1Jlc2V0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/cssReset/cssReset.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/util.js": /*!********************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/util.js ***! \********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createQrUrl: () => (/* binding */ createQrUrl),\n/* harmony export */ getLocation: () => (/* binding */ getLocation),\n/* harmony export */ isDarkMode: () => (/* binding */ isDarkMode),\n/* harmony export */ isMobileWeb: () => (/* binding */ isMobileWeb)\n/* harmony export */ });\nfunction createQrUrl(sessionId, sessionSecret, serverUrl, isParentConnection, version, chainId) {\n const sessionIdKey = isParentConnection ? 'parent-id' : 'id';\n const query = new URLSearchParams({\n [sessionIdKey]: sessionId,\n secret: sessionSecret,\n server: serverUrl,\n v: version,\n chainId: chainId.toString(),\n }).toString();\n const qrUrl = `${serverUrl}/#/link?${query}`;\n return qrUrl;\n}\nfunction isInIFrame() {\n try {\n return window.frameElement !== null;\n }\n catch (_) {\n return false;\n }\n}\nfunction getLocation() {\n try {\n if (isInIFrame() && window.top) {\n return window.top.location;\n }\n return window.location;\n }\n catch (_) {\n return window.location;\n }\n}\nfunction isMobileWeb() {\n var _a;\n return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test((_a = window === null || window === void 0 ? void 0 : window.navigator) === null || _a === void 0 ? void 0 : _a.userAgent);\n}\nfunction isDarkMode() {\n var _a, _b;\n return (_b = (_a = window === null || window === void 0 ? void 0 : window.matchMedia) === null || _a === void 0 ? void 0 : _a.call(window, '(prefers-color-scheme: dark)').matches) !== null && _b !== void 0 ? _b : false;\n}\n//# sourceMappingURL=util.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL3V0aWwuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wscUJBQXFCLFVBQVUsVUFBVSxNQUFNO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3NpZ24vd2FsbGV0bGluay9yZWxheS91aS9jb21wb25lbnRzL3V0aWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVFyVXJsKHNlc3Npb25JZCwgc2Vzc2lvblNlY3JldCwgc2VydmVyVXJsLCBpc1BhcmVudENvbm5lY3Rpb24sIHZlcnNpb24sIGNoYWluSWQpIHtcbiAgICBjb25zdCBzZXNzaW9uSWRLZXkgPSBpc1BhcmVudENvbm5lY3Rpb24gPyAncGFyZW50LWlkJyA6ICdpZCc7XG4gICAgY29uc3QgcXVlcnkgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHtcbiAgICAgICAgW3Nlc3Npb25JZEtleV06IHNlc3Npb25JZCxcbiAgICAgICAgc2VjcmV0OiBzZXNzaW9uU2VjcmV0LFxuICAgICAgICBzZXJ2ZXI6IHNlcnZlclVybCxcbiAgICAgICAgdjogdmVyc2lvbixcbiAgICAgICAgY2hhaW5JZDogY2hhaW5JZC50b1N0cmluZygpLFxuICAgIH0pLnRvU3RyaW5nKCk7XG4gICAgY29uc3QgcXJVcmwgPSBgJHtzZXJ2ZXJVcmx9LyMvbGluaz8ke3F1ZXJ5fWA7XG4gICAgcmV0dXJuIHFyVXJsO1xufVxuZnVuY3Rpb24gaXNJbklGcmFtZSgpIHtcbiAgICB0cnkge1xuICAgICAgICByZXR1cm4gd2luZG93LmZyYW1lRWxlbWVudCAhPT0gbnVsbDtcbiAgICB9XG4gICAgY2F0Y2ggKF8pIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBnZXRMb2NhdGlvbigpIHtcbiAgICB0cnkge1xuICAgICAgICBpZiAoaXNJbklGcmFtZSgpICYmIHdpbmRvdy50b3ApIHtcbiAgICAgICAgICAgIHJldHVybiB3aW5kb3cudG9wLmxvY2F0aW9uO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB3aW5kb3cubG9jYXRpb247XG4gICAgfVxuICAgIGNhdGNoIChfKSB7XG4gICAgICAgIHJldHVybiB3aW5kb3cubG9jYXRpb247XG4gICAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIGlzTW9iaWxlV2ViKCkge1xuICAgIHZhciBfYTtcbiAgICByZXR1cm4gL0FuZHJvaWR8d2ViT1N8aVBob25lfGlQYWR8aVBvZHxCbGFja0JlcnJ5fElFTW9iaWxlfE9wZXJhIE1pbmkvaS50ZXN0KChfYSA9IHdpbmRvdyA9PT0gbnVsbCB8fCB3aW5kb3cgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHdpbmRvdy5uYXZpZ2F0b3IpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS51c2VyQWdlbnQpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzRGFya01vZGUoKSB7XG4gICAgdmFyIF9hLCBfYjtcbiAgICByZXR1cm4gKF9iID0gKF9hID0gd2luZG93ID09PSBudWxsIHx8IHdpbmRvdyA9PT0gdm9pZCAwID8gdm9pZCAwIDogd2luZG93Lm1hdGNoTWVkaWEpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKHdpbmRvdywgJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknKS5tYXRjaGVzKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBmYWxzZTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWwuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/util.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/store.js": /*!*****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/store.js ***! \*****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ChainClients: () => (/* binding */ ChainClients)\n/* harmony export */ });\n/* harmony import */ var zustand_vanilla__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! zustand/vanilla */ \"(app-pages-browser)/./node_modules/zustand/esm/vanilla.mjs\");\n\nconst ChainClients = (0,zustand_vanilla__WEBPACK_IMPORTED_MODULE_0__.createStore)(() => ({}));\n//# sourceMappingURL=store.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3N0b3JlL2NoYWluLWNsaWVudHMvc3RvcmUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBOEM7QUFDdkMscUJBQXFCLDREQUFXLFVBQVU7QUFDakQiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC9zdG9yZS9jaGFpbi1jbGllbnRzL3N0b3JlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVN0b3JlIH0gZnJvbSAnenVzdGFuZC92YW5pbGxhJztcbmV4cG9ydCBjb25zdCBDaGFpbkNsaWVudHMgPSBjcmVhdGVTdG9yZSgoKSA9PiAoe30pKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0b3JlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/store.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/utils.js": /*!*****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/utils.js ***! \*****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createClients: () => (/* binding */ createClients),\n/* harmony export */ getBundlerClient: () => (/* binding */ getBundlerClient),\n/* harmony export */ getClient: () => (/* binding */ getClient)\n/* harmony export */ });\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/defineChain.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/clients/createPublicClient.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/clients/transports/http.js\");\n/* harmony import */ var viem_account_abstraction__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! viem/account-abstraction */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/clients/createBundlerClient.js\");\n/* harmony import */ var _store_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./store.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/store.js\");\n\n\n\nfunction createClients(chains) {\n chains.forEach((c) => {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n if (!c.rpcUrl) {\n return;\n }\n const viemchain = (0,viem__WEBPACK_IMPORTED_MODULE_0__.defineChain)({\n id: c.id,\n rpcUrls: {\n default: {\n http: [c.rpcUrl],\n },\n },\n name: (_b = (_a = c.nativeCurrency) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : '',\n nativeCurrency: {\n name: (_d = (_c = c.nativeCurrency) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : '',\n symbol: (_f = (_e = c.nativeCurrency) === null || _e === void 0 ? void 0 : _e.symbol) !== null && _f !== void 0 ? _f : '',\n decimals: (_h = (_g = c.nativeCurrency) === null || _g === void 0 ? void 0 : _g.decimal) !== null && _h !== void 0 ? _h : 18,\n },\n });\n const client = (0,viem__WEBPACK_IMPORTED_MODULE_1__.createPublicClient)({\n chain: viemchain,\n transport: (0,viem__WEBPACK_IMPORTED_MODULE_2__.http)(c.rpcUrl),\n });\n const bundlerClient = (0,viem_account_abstraction__WEBPACK_IMPORTED_MODULE_3__.createBundlerClient)({\n client,\n transport: (0,viem__WEBPACK_IMPORTED_MODULE_2__.http)(c.rpcUrl),\n });\n _store_js__WEBPACK_IMPORTED_MODULE_4__.ChainClients.setState({\n [c.id]: {\n client,\n bundlerClient,\n },\n });\n });\n}\nfunction getClient(chainId) {\n var _a;\n return (_a = _store_js__WEBPACK_IMPORTED_MODULE_4__.ChainClients.getState()[chainId]) === null || _a === void 0 ? void 0 : _a.client;\n}\nfunction getBundlerClient(chainId) {\n var _a;\n return (_a = _store_js__WEBPACK_IMPORTED_MODULE_4__.ChainClients.getState()[chainId]) === null || _a === void 0 ? void 0 : _a.bundlerClient;\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3N0b3JlL2NoYWluLWNsaWVudHMvdXRpbHMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBNkQ7QUFDRTtBQUNyQjtBQUNuQztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsaURBQVc7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNULHVCQUF1Qix3REFBa0I7QUFDekM7QUFDQSx1QkFBdUIsMENBQUk7QUFDM0IsU0FBUztBQUNULDhCQUE4Qiw2RUFBbUI7QUFDakQ7QUFDQSx1QkFBdUIsMENBQUk7QUFDM0IsU0FBUztBQUNULFFBQVEsbURBQVk7QUFDcEI7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0EsaUJBQWlCLG1EQUFZO0FBQzdCO0FBQ087QUFDUDtBQUNBLGlCQUFpQixtREFBWTtBQUM3QjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL2Rpc3Qvc3RvcmUvY2hhaW4tY2xpZW50cy91dGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGRlZmluZUNoYWluLCBodHRwIH0gZnJvbSAndmllbSc7XG5pbXBvcnQgeyBjcmVhdGVCdW5kbGVyQ2xpZW50IH0gZnJvbSAndmllbS9hY2NvdW50LWFic3RyYWN0aW9uJztcbmltcG9ydCB7IENoYWluQ2xpZW50cyB9IGZyb20gJy4vc3RvcmUuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNsaWVudHMoY2hhaW5zKSB7XG4gICAgY2hhaW5zLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYiwgX2MsIF9kLCBfZSwgX2YsIF9nLCBfaDtcbiAgICAgICAgaWYgKCFjLnJwY1VybCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHZpZW1jaGFpbiA9IGRlZmluZUNoYWluKHtcbiAgICAgICAgICAgIGlkOiBjLmlkLFxuICAgICAgICAgICAgcnBjVXJsczoge1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgaHR0cDogW2MucnBjVXJsXSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG5hbWU6IChfYiA9IChfYSA9IGMubmF0aXZlQ3VycmVuY3kpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5uYW1lKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiAnJyxcbiAgICAgICAgICAgIG5hdGl2ZUN1cnJlbmN5OiB7XG4gICAgICAgICAgICAgICAgbmFtZTogKF9kID0gKF9jID0gYy5uYXRpdmVDdXJyZW5jeSkgPT09IG51bGwgfHwgX2MgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9jLm5hbWUpICE9PSBudWxsICYmIF9kICE9PSB2b2lkIDAgPyBfZCA6ICcnLFxuICAgICAgICAgICAgICAgIHN5bWJvbDogKF9mID0gKF9lID0gYy5uYXRpdmVDdXJyZW5jeSkgPT09IG51bGwgfHwgX2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9lLnN5bWJvbCkgIT09IG51bGwgJiYgX2YgIT09IHZvaWQgMCA/IF9mIDogJycsXG4gICAgICAgICAgICAgICAgZGVjaW1hbHM6IChfaCA9IChfZyA9IGMubmF0aXZlQ3VycmVuY3kpID09PSBudWxsIHx8IF9nID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZy5kZWNpbWFsKSAhPT0gbnVsbCAmJiBfaCAhPT0gdm9pZCAwID8gX2ggOiAxOCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICAgICAgICAgICAgY2hhaW46IHZpZW1jaGFpbixcbiAgICAgICAgICAgIHRyYW5zcG9ydDogaHR0cChjLnJwY1VybCksXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBidW5kbGVyQ2xpZW50ID0gY3JlYXRlQnVuZGxlckNsaWVudCh7XG4gICAgICAgICAgICBjbGllbnQsXG4gICAgICAgICAgICB0cmFuc3BvcnQ6IGh0dHAoYy5ycGNVcmwpLFxuICAgICAgICB9KTtcbiAgICAgICAgQ2hhaW5DbGllbnRzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIFtjLmlkXToge1xuICAgICAgICAgICAgICAgIGNsaWVudCxcbiAgICAgICAgICAgICAgICBidW5kbGVyQ2xpZW50LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfSk7XG59XG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2xpZW50KGNoYWluSWQpIHtcbiAgICB2YXIgX2E7XG4gICAgcmV0dXJuIChfYSA9IENoYWluQ2xpZW50cy5nZXRTdGF0ZSgpW2NoYWluSWRdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2xpZW50O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldEJ1bmRsZXJDbGllbnQoY2hhaW5JZCkge1xuICAgIHZhciBfYTtcbiAgICByZXR1cm4gKF9hID0gQ2hhaW5DbGllbnRzLmdldFN0YXRlKClbY2hhaW5JZF0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5idW5kbGVyQ2xpZW50O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXRpbHMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/chain-clients/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/correlation-ids/store.js": /*!*******************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/store/correlation-ids/store.js ***! \*******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ correlationIds: () => (/* binding */ correlationIds)\n/* harmony export */ });\n/* harmony import */ var zustand_vanilla__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! zustand/vanilla */ \"(app-pages-browser)/./node_modules/zustand/esm/vanilla.mjs\");\n\nconst correlationIdsStore = (0,zustand_vanilla__WEBPACK_IMPORTED_MODULE_0__.createStore)(() => ({\n correlationIds: new Map(),\n}));\nconst correlationIds = {\n get: (key) => {\n const correlationId = correlationIdsStore.getState().correlationIds.get(key);\n return correlationId;\n },\n set: (key, correlationId) => {\n correlationIdsStore.setState((state) => {\n const newMap = new Map(state.correlationIds);\n newMap.set(key, correlationId);\n return { correlationIds: newMap };\n });\n },\n delete: (key) => {\n correlationIdsStore.setState((state) => {\n const newMap = new Map(state.correlationIds);\n newMap.delete(key);\n return { correlationIds: newMap };\n });\n },\n clear: () => {\n correlationIdsStore.setState({\n correlationIds: new Map(),\n });\n },\n};\n//# sourceMappingURL=store.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3N0b3JlL2NvcnJlbGF0aW9uLWlkcy9zdG9yZS5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE4QztBQUM5Qyw0QkFBNEIsNERBQVc7QUFDdkM7QUFDQSxDQUFDO0FBQ007QUFDUDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3N0b3JlL2NvcnJlbGF0aW9uLWlkcy9zdG9yZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVTdG9yZSB9IGZyb20gJ3p1c3RhbmQvdmFuaWxsYSc7XG5jb25zdCBjb3JyZWxhdGlvbklkc1N0b3JlID0gY3JlYXRlU3RvcmUoKCkgPT4gKHtcbiAgICBjb3JyZWxhdGlvbklkczogbmV3IE1hcCgpLFxufSkpO1xuZXhwb3J0IGNvbnN0IGNvcnJlbGF0aW9uSWRzID0ge1xuICAgIGdldDogKGtleSkgPT4ge1xuICAgICAgICBjb25zdCBjb3JyZWxhdGlvbklkID0gY29ycmVsYXRpb25JZHNTdG9yZS5nZXRTdGF0ZSgpLmNvcnJlbGF0aW9uSWRzLmdldChrZXkpO1xuICAgICAgICByZXR1cm4gY29ycmVsYXRpb25JZDtcbiAgICB9LFxuICAgIHNldDogKGtleSwgY29ycmVsYXRpb25JZCkgPT4ge1xuICAgICAgICBjb3JyZWxhdGlvbklkc1N0b3JlLnNldFN0YXRlKChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmV3TWFwID0gbmV3IE1hcChzdGF0ZS5jb3JyZWxhdGlvbklkcyk7XG4gICAgICAgICAgICBuZXdNYXAuc2V0KGtleSwgY29ycmVsYXRpb25JZCk7XG4gICAgICAgICAgICByZXR1cm4geyBjb3JyZWxhdGlvbklkczogbmV3TWFwIH07XG4gICAgICAgIH0pO1xuICAgIH0sXG4gICAgZGVsZXRlOiAoa2V5KSA9PiB7XG4gICAgICAgIGNvcnJlbGF0aW9uSWRzU3RvcmUuc2V0U3RhdGUoKHN0YXRlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBuZXdNYXAgPSBuZXcgTWFwKHN0YXRlLmNvcnJlbGF0aW9uSWRzKTtcbiAgICAgICAgICAgIG5ld01hcC5kZWxldGUoa2V5KTtcbiAgICAgICAgICAgIHJldHVybiB7IGNvcnJlbGF0aW9uSWRzOiBuZXdNYXAgfTtcbiAgICAgICAgfSk7XG4gICAgfSxcbiAgICBjbGVhcjogKCkgPT4ge1xuICAgICAgICBjb3JyZWxhdGlvbklkc1N0b3JlLnNldFN0YXRlKHtcbiAgICAgICAgICAgIGNvcnJlbGF0aW9uSWRzOiBuZXcgTWFwKCksXG4gICAgICAgIH0pO1xuICAgIH0sXG59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3RvcmUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/correlation-ids/store.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js": /*!***************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/store/store.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ account: () => (/* binding */ account),\n/* harmony export */ chains: () => (/* binding */ chains),\n/* harmony export */ config: () => (/* binding */ config),\n/* harmony export */ keys: () => (/* binding */ keys),\n/* harmony export */ sdkstore: () => (/* binding */ sdkstore),\n/* harmony export */ spendPermissions: () => (/* binding */ spendPermissions),\n/* harmony export */ store: () => (/* binding */ store),\n/* harmony export */ subAccounts: () => (/* binding */ subAccounts),\n/* harmony export */ subAccountsConfig: () => (/* binding */ subAccountsConfig)\n/* harmony export */ });\n/* harmony import */ var zustand_middleware__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! zustand/middleware */ \"(app-pages-browser)/./node_modules/zustand/esm/middleware.mjs\");\n/* harmony import */ var zustand_vanilla__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! zustand/vanilla */ \"(app-pages-browser)/./node_modules/zustand/esm/vanilla.mjs\");\n/* harmony import */ var _sdk_info_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../sdk-info.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js\");\n\n\n\nconst createChainSlice = () => {\n return {\n chains: [],\n };\n};\nconst createKeysSlice = () => {\n return {\n keys: {},\n };\n};\nconst createAccountSlice = () => {\n return {\n account: {},\n };\n};\nconst createSubAccountSlice = () => {\n return {\n subAccount: undefined,\n };\n};\nconst createSubAccountConfigSlice = () => {\n return {\n subAccountConfig: {},\n };\n};\nconst createSpendPermissionsSlice = () => {\n return {\n spendPermissions: [],\n };\n};\nconst createConfigSlice = () => {\n return {\n config: {\n version: _sdk_info_js__WEBPACK_IMPORTED_MODULE_0__.VERSION,\n },\n };\n};\nconst sdkstore = (0,zustand_vanilla__WEBPACK_IMPORTED_MODULE_1__.createStore)((0,zustand_middleware__WEBPACK_IMPORTED_MODULE_2__.persist)((...args) => (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, createChainSlice(...args)), createKeysSlice(...args)), createAccountSlice(...args)), createSubAccountSlice(...args)), createSpendPermissionsSlice(...args)), createConfigSlice(...args)), createSubAccountConfigSlice(...args))), {\n name: 'cbwsdk.store',\n storage: (0,zustand_middleware__WEBPACK_IMPORTED_MODULE_2__.createJSONStorage)(() => localStorage),\n partialize: (state) => {\n // Explicitly select only the data properties we want to persist\n // (not the methods)\n return {\n chains: state.chains,\n keys: state.keys,\n account: state.account,\n subAccount: state.subAccount,\n spendPermissions: state.spendPermissions,\n config: state.config,\n };\n },\n}));\n// Non-persisted subaccount configuration\nconst subAccountsConfig = {\n get: () => sdkstore.getState().subAccountConfig,\n set: (subAccountConfig) => {\n sdkstore.setState((state) => ({\n subAccountConfig: Object.assign(Object.assign({}, state.subAccountConfig), subAccountConfig),\n }));\n },\n clear: () => {\n sdkstore.setState({\n subAccountConfig: {},\n });\n },\n};\nconst subAccounts = {\n get: () => sdkstore.getState().subAccount,\n set: (subAccount) => {\n sdkstore.setState((state) => ({\n subAccount: state.subAccount\n ? Object.assign(Object.assign({}, state.subAccount), subAccount) : Object.assign({ address: subAccount.address }, subAccount),\n }));\n },\n clear: () => {\n sdkstore.setState({\n subAccount: undefined,\n });\n },\n};\nconst spendPermissions = {\n get: () => sdkstore.getState().spendPermissions,\n set: (spendPermissions) => {\n sdkstore.setState({ spendPermissions });\n },\n clear: () => {\n sdkstore.setState({\n spendPermissions: [],\n });\n },\n};\nconst account = {\n get: () => sdkstore.getState().account,\n set: (account) => {\n sdkstore.setState((state) => ({\n account: Object.assign(Object.assign({}, state.account), account),\n }));\n },\n clear: () => {\n sdkstore.setState({\n account: {},\n });\n },\n};\nconst chains = {\n get: () => sdkstore.getState().chains,\n set: (chains) => {\n sdkstore.setState({ chains });\n },\n clear: () => {\n sdkstore.setState({\n chains: [],\n });\n },\n};\nconst keys = {\n get: (key) => sdkstore.getState().keys[key],\n set: (key, value) => {\n sdkstore.setState((state) => ({ keys: Object.assign(Object.assign({}, state.keys), { [key]: value }) }));\n },\n clear: () => {\n sdkstore.setState({\n keys: {},\n });\n },\n};\nconst config = {\n get: () => sdkstore.getState().config,\n set: (config) => {\n sdkstore.setState((state) => ({ config: Object.assign(Object.assign({}, state.config), config) }));\n },\n};\nconst actions = {\n subAccounts,\n subAccountsConfig,\n spendPermissions,\n account,\n chains,\n keys,\n config,\n};\nconst store = Object.assign(Object.assign({}, sdkstore), actions);\n//# sourceMappingURL=store.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3N0b3JlL3N0b3JlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFnRTtBQUNsQjtBQUNMO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixpREFBTztBQUM1QixTQUFTO0FBQ1Q7QUFDQTtBQUNPLGlCQUFpQiw0REFBVyxDQUFDLDJEQUFPLG1IQUFtSDtBQUM5SjtBQUNBLGFBQWEscUVBQWlCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsQ0FBQztBQUNEO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSw0REFBNEQ7QUFDNUQsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELG1EQUFtRCw2QkFBNkI7QUFDaEksU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ087QUFDUDtBQUNBO0FBQ0EsNEJBQTRCLGtCQUFrQjtBQUM5QyxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsbURBQW1EO0FBQ25ELFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBLHVCQUF1QjtBQUN2QixTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ087QUFDUDtBQUNBO0FBQ0EsNEJBQTRCLFFBQVE7QUFDcEMsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0E7QUFDQSx3Q0FBd0Msb0NBQW9DLGlCQUFpQixjQUFjLEdBQUc7QUFDOUcsS0FBSztBQUNMO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEIsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNPO0FBQ1A7QUFDQTtBQUNBLHdDQUF3QyxzQ0FBc0MsMEJBQTBCO0FBQ3hHLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDRDQUE0QztBQUNuRCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3N0b3JlL3N0b3JlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUpTT05TdG9yYWdlLCBwZXJzaXN0IH0gZnJvbSAnenVzdGFuZC9taWRkbGV3YXJlJztcbmltcG9ydCB7IGNyZWF0ZVN0b3JlIH0gZnJvbSAnenVzdGFuZC92YW5pbGxhJztcbmltcG9ydCB7IFZFUlNJT04gfSBmcm9tICcuLi9zZGstaW5mby5qcyc7XG5jb25zdCBjcmVhdGVDaGFpblNsaWNlID0gKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAgIGNoYWluczogW10sXG4gICAgfTtcbn07XG5jb25zdCBjcmVhdGVLZXlzU2xpY2UgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAga2V5czoge30sXG4gICAgfTtcbn07XG5jb25zdCBjcmVhdGVBY2NvdW50U2xpY2UgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYWNjb3VudDoge30sXG4gICAgfTtcbn07XG5jb25zdCBjcmVhdGVTdWJBY2NvdW50U2xpY2UgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgc3ViQWNjb3VudDogdW5kZWZpbmVkLFxuICAgIH07XG59O1xuY29uc3QgY3JlYXRlU3ViQWNjb3VudENvbmZpZ1NsaWNlID0gKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAgIHN1YkFjY291bnRDb25maWc6IHt9LFxuICAgIH07XG59O1xuY29uc3QgY3JlYXRlU3BlbmRQZXJtaXNzaW9uc1NsaWNlID0gKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAgIHNwZW5kUGVybWlzc2lvbnM6IFtdLFxuICAgIH07XG59O1xuY29uc3QgY3JlYXRlQ29uZmlnU2xpY2UgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgICB2ZXJzaW9uOiBWRVJTSU9OLFxuICAgICAgICB9LFxuICAgIH07XG59O1xuZXhwb3J0IGNvbnN0IHNka3N0b3JlID0gY3JlYXRlU3RvcmUocGVyc2lzdCgoLi4uYXJncykgPT4gKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGNyZWF0ZUNoYWluU2xpY2UoLi4uYXJncykpLCBjcmVhdGVLZXlzU2xpY2UoLi4uYXJncykpLCBjcmVhdGVBY2NvdW50U2xpY2UoLi4uYXJncykpLCBjcmVhdGVTdWJBY2NvdW50U2xpY2UoLi4uYXJncykpLCBjcmVhdGVTcGVuZFBlcm1pc3Npb25zU2xpY2UoLi4uYXJncykpLCBjcmVhdGVDb25maWdTbGljZSguLi5hcmdzKSksIGNyZWF0ZVN1YkFjY291bnRDb25maWdTbGljZSguLi5hcmdzKSkpLCB7XG4gICAgbmFtZTogJ2Nid3Nkay5zdG9yZScsXG4gICAgc3RvcmFnZTogY3JlYXRlSlNPTlN0b3JhZ2UoKCkgPT4gbG9jYWxTdG9yYWdlKSxcbiAgICBwYXJ0aWFsaXplOiAoc3RhdGUpID0+IHtcbiAgICAgICAgLy8gRXhwbGljaXRseSBzZWxlY3Qgb25seSB0aGUgZGF0YSBwcm9wZXJ0aWVzIHdlIHdhbnQgdG8gcGVyc2lzdFxuICAgICAgICAvLyAobm90IHRoZSBtZXRob2RzKVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY2hhaW5zOiBzdGF0ZS5jaGFpbnMsXG4gICAgICAgICAgICBrZXlzOiBzdGF0ZS5rZXlzLFxuICAgICAgICAgICAgYWNjb3VudDogc3RhdGUuYWNjb3VudCxcbiAgICAgICAgICAgIHN1YkFjY291bnQ6IHN0YXRlLnN1YkFjY291bnQsXG4gICAgICAgICAgICBzcGVuZFBlcm1pc3Npb25zOiBzdGF0ZS5zcGVuZFBlcm1pc3Npb25zLFxuICAgICAgICAgICAgY29uZmlnOiBzdGF0ZS5jb25maWcsXG4gICAgICAgIH07XG4gICAgfSxcbn0pKTtcbi8vIE5vbi1wZXJzaXN0ZWQgc3ViYWNjb3VudCBjb25maWd1cmF0aW9uXG5leHBvcnQgY29uc3Qgc3ViQWNjb3VudHNDb25maWcgPSB7XG4gICAgZ2V0OiAoKSA9PiBzZGtzdG9yZS5nZXRTdGF0ZSgpLnN1YkFjY291bnRDb25maWcsXG4gICAgc2V0OiAoc3ViQWNjb3VudENvbmZpZykgPT4ge1xuICAgICAgICBzZGtzdG9yZS5zZXRTdGF0ZSgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICBzdWJBY2NvdW50Q29uZmlnOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLnN1YkFjY291bnRDb25maWcpLCBzdWJBY2NvdW50Q29uZmlnKSxcbiAgICAgICAgfSkpO1xuICAgIH0sXG4gICAgY2xlYXI6ICgpID0+IHtcbiAgICAgICAgc2Rrc3RvcmUuc2V0U3RhdGUoe1xuICAgICAgICAgICAgc3ViQWNjb3VudENvbmZpZzoge30sXG4gICAgICAgIH0pO1xuICAgIH0sXG59O1xuZXhwb3J0IGNvbnN0IHN1YkFjY291bnRzID0ge1xuICAgIGdldDogKCkgPT4gc2Rrc3RvcmUuZ2V0U3RhdGUoKS5zdWJBY2NvdW50LFxuICAgIHNldDogKHN1YkFjY291bnQpID0+IHtcbiAgICAgICAgc2Rrc3RvcmUuc2V0U3RhdGUoKHN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgc3ViQWNjb3VudDogc3RhdGUuc3ViQWNjb3VudFxuICAgICAgICAgICAgICAgID8gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBzdGF0ZS5zdWJBY2NvdW50KSwgc3ViQWNjb3VudCkgOiBPYmplY3QuYXNzaWduKHsgYWRkcmVzczogc3ViQWNjb3VudC5hZGRyZXNzIH0sIHN1YkFjY291bnQpLFxuICAgICAgICB9KSk7XG4gICAgfSxcbiAgICBjbGVhcjogKCkgPT4ge1xuICAgICAgICBzZGtzdG9yZS5zZXRTdGF0ZSh7XG4gICAgICAgICAgICBzdWJBY2NvdW50OiB1bmRlZmluZWQsXG4gICAgICAgIH0pO1xuICAgIH0sXG59O1xuZXhwb3J0IGNvbnN0IHNwZW5kUGVybWlzc2lvbnMgPSB7XG4gICAgZ2V0OiAoKSA9PiBzZGtzdG9yZS5nZXRTdGF0ZSgpLnNwZW5kUGVybWlzc2lvbnMsXG4gICAgc2V0OiAoc3BlbmRQZXJtaXNzaW9ucykgPT4ge1xuICAgICAgICBzZGtzdG9yZS5zZXRTdGF0ZSh7IHNwZW5kUGVybWlzc2lvbnMgfSk7XG4gICAgfSxcbiAgICBjbGVhcjogKCkgPT4ge1xuICAgICAgICBzZGtzdG9yZS5zZXRTdGF0ZSh7XG4gICAgICAgICAgICBzcGVuZFBlcm1pc3Npb25zOiBbXSxcbiAgICAgICAgfSk7XG4gICAgfSxcbn07XG5leHBvcnQgY29uc3QgYWNjb3VudCA9IHtcbiAgICBnZXQ6ICgpID0+IHNka3N0b3JlLmdldFN0YXRlKCkuYWNjb3VudCxcbiAgICBzZXQ6IChhY2NvdW50KSA9PiB7XG4gICAgICAgIHNka3N0b3JlLnNldFN0YXRlKChzdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgIGFjY291bnQ6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgc3RhdGUuYWNjb3VudCksIGFjY291bnQpLFxuICAgICAgICB9KSk7XG4gICAgfSxcbiAgICBjbGVhcjogKCkgPT4ge1xuICAgICAgICBzZGtzdG9yZS5zZXRTdGF0ZSh7XG4gICAgICAgICAgICBhY2NvdW50OiB7fSxcbiAgICAgICAgfSk7XG4gICAgfSxcbn07XG5leHBvcnQgY29uc3QgY2hhaW5zID0ge1xuICAgIGdldDogKCkgPT4gc2Rrc3RvcmUuZ2V0U3RhdGUoKS5jaGFpbnMsXG4gICAgc2V0OiAoY2hhaW5zKSA9PiB7XG4gICAgICAgIHNka3N0b3JlLnNldFN0YXRlKHsgY2hhaW5zIH0pO1xuICAgIH0sXG4gICAgY2xlYXI6ICgpID0+IHtcbiAgICAgICAgc2Rrc3RvcmUuc2V0U3RhdGUoe1xuICAgICAgICAgICAgY2hhaW5zOiBbXSxcbiAgICAgICAgfSk7XG4gICAgfSxcbn07XG5leHBvcnQgY29uc3Qga2V5cyA9IHtcbiAgICBnZXQ6IChrZXkpID0+IHNka3N0b3JlLmdldFN0YXRlKCkua2V5c1trZXldLFxuICAgIHNldDogKGtleSwgdmFsdWUpID0+IHtcbiAgICAgICAgc2Rrc3RvcmUuc2V0U3RhdGUoKHN0YXRlKSA9PiAoeyBrZXlzOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLmtleXMpLCB7IFtrZXldOiB2YWx1ZSB9KSB9KSk7XG4gICAgfSxcbiAgICBjbGVhcjogKCkgPT4ge1xuICAgICAgICBzZGtzdG9yZS5zZXRTdGF0ZSh7XG4gICAgICAgICAgICBrZXlzOiB7fSxcbiAgICAgICAgfSk7XG4gICAgfSxcbn07XG5leHBvcnQgY29uc3QgY29uZmlnID0ge1xuICAgIGdldDogKCkgPT4gc2Rrc3RvcmUuZ2V0U3RhdGUoKS5jb25maWcsXG4gICAgc2V0OiAoY29uZmlnKSA9PiB7XG4gICAgICAgIHNka3N0b3JlLnNldFN0YXRlKChzdGF0ZSkgPT4gKHsgY29uZmlnOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLmNvbmZpZyksIGNvbmZpZykgfSkpO1xuICAgIH0sXG59O1xuY29uc3QgYWN0aW9ucyA9IHtcbiAgICBzdWJBY2NvdW50cyxcbiAgICBzdWJBY2NvdW50c0NvbmZpZyxcbiAgICBzcGVuZFBlcm1pc3Npb25zLFxuICAgIGFjY291bnQsXG4gICAgY2hhaW5zLFxuICAgIGtleXMsXG4gICAgY29uZmlnLFxufTtcbmV4cG9ydCBjb25zdCBzdG9yZSA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgc2Rrc3RvcmUpLCBhY3Rpb25zKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0b3JlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/store/store.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js": /*!***********************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertArrayPresence: () => (/* binding */ assertArrayPresence),\n/* harmony export */ assertPresence: () => (/* binding */ assertPresence)\n/* harmony export */ });\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n\nfunction assertPresence(value, error, message) {\n if (value === null || value === undefined) {\n throw (error !== null && error !== void 0 ? error : _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams({\n message: message !== null && message !== void 0 ? message : 'value must be present',\n data: value,\n }));\n }\n}\nfunction assertArrayPresence(value, message) {\n if (!Array.isArray(value)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.invalidParams({\n message: message !== null && message !== void 0 ? message : 'value must be an array',\n data: value,\n });\n }\n}\n//# sourceMappingURL=assertPresence.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvYXNzZXJ0UHJlc2VuY2UuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXlEO0FBQ2xEO0FBQ1A7QUFDQSw0REFBNEQsaUVBQWM7QUFDMUU7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ087QUFDUDtBQUNBLGNBQWMsaUVBQWM7QUFDNUI7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC91dGlsL2Fzc2VydFByZXNlbmNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0YW5kYXJkRXJyb3JzIH0gZnJvbSAnLi4vY29yZS9lcnJvci9lcnJvcnMuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFByZXNlbmNlKHZhbHVlLCBlcnJvciwgbWVzc2FnZSkge1xuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IChlcnJvciAhPT0gbnVsbCAmJiBlcnJvciAhPT0gdm9pZCAwID8gZXJyb3IgOiBzdGFuZGFyZEVycm9ycy5ycGMuaW52YWxpZFBhcmFtcyh7XG4gICAgICAgICAgICBtZXNzYWdlOiBtZXNzYWdlICE9PSBudWxsICYmIG1lc3NhZ2UgIT09IHZvaWQgMCA/IG1lc3NhZ2UgOiAndmFsdWUgbXVzdCBiZSBwcmVzZW50JyxcbiAgICAgICAgICAgIGRhdGE6IHZhbHVlLFxuICAgICAgICB9KSk7XG4gICAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydEFycmF5UHJlc2VuY2UodmFsdWUsIG1lc3NhZ2UpIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKHtcbiAgICAgICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UgIT09IG51bGwgJiYgbWVzc2FnZSAhPT0gdm9pZCAwID8gbWVzc2FnZSA6ICd2YWx1ZSBtdXN0IGJlIGFuIGFycmF5JyxcbiAgICAgICAgICAgIGRhdGE6IHZhbHVlLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hc3NlcnRQcmVzZW5jZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertPresence.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertSubAccount.js": /*!*************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/assertSubAccount.js ***! \*************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertSubAccount: () => (/* binding */ assertSubAccount)\n/* harmony export */ });\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/isHex.js\");\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n\n\nfunction assertSubAccount(info) {\n if (typeof info !== 'object' || info === null) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('sub account info is not an object');\n }\n if (!('address' in info)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('sub account is invalid');\n }\n if ('address' in info && typeof info.address === 'string' && !(0,viem__WEBPACK_IMPORTED_MODULE_1__.isAddress)(info.address)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('sub account address is invalid');\n }\n if ('factory' in info && typeof info.factory === 'string' && !(0,viem__WEBPACK_IMPORTED_MODULE_1__.isAddress)(info.factory)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('sub account factory address is invalid');\n }\n if ('factoryData' in info && typeof info.factoryData === 'string' && !(0,viem__WEBPACK_IMPORTED_MODULE_2__.isHex)(info.factoryData)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_0__.standardErrors.rpc.internal('sub account factory data is invalid');\n }\n}\n//# sourceMappingURL=assertSubAccount.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvYXNzZXJ0U3ViQWNjb3VudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQXdDO0FBQ2lCO0FBQ2xEO0FBQ1A7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0Esa0VBQWtFLCtDQUFTO0FBQzNFLGNBQWMsaUVBQWM7QUFDNUI7QUFDQSxrRUFBa0UsK0NBQVM7QUFDM0UsY0FBYyxpRUFBYztBQUM1QjtBQUNBLDBFQUEwRSwyQ0FBSztBQUMvRSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvYXNzZXJ0U3ViQWNjb3VudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0FkZHJlc3MsIGlzSGV4IH0gZnJvbSAndmllbSc7XG5pbXBvcnQgeyBzdGFuZGFyZEVycm9ycyB9IGZyb20gJy4uL2NvcmUvZXJyb3IvZXJyb3JzLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRTdWJBY2NvdW50KGluZm8pIHtcbiAgICBpZiAodHlwZW9mIGluZm8gIT09ICdvYmplY3QnIHx8IGluZm8gPT09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludGVybmFsKCdzdWIgYWNjb3VudCBpbmZvIGlzIG5vdCBhbiBvYmplY3QnKTtcbiAgICB9XG4gICAgaWYgKCEoJ2FkZHJlc3MnIGluIGluZm8pKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnRlcm5hbCgnc3ViIGFjY291bnQgaXMgaW52YWxpZCcpO1xuICAgIH1cbiAgICBpZiAoJ2FkZHJlc3MnIGluIGluZm8gJiYgdHlwZW9mIGluZm8uYWRkcmVzcyA9PT0gJ3N0cmluZycgJiYgIWlzQWRkcmVzcyhpbmZvLmFkZHJlc3MpKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnRlcm5hbCgnc3ViIGFjY291bnQgYWRkcmVzcyBpcyBpbnZhbGlkJyk7XG4gICAgfVxuICAgIGlmICgnZmFjdG9yeScgaW4gaW5mbyAmJiB0eXBlb2YgaW5mby5mYWN0b3J5ID09PSAnc3RyaW5nJyAmJiAhaXNBZGRyZXNzKGluZm8uZmFjdG9yeSkpIHtcbiAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludGVybmFsKCdzdWIgYWNjb3VudCBmYWN0b3J5IGFkZHJlc3MgaXMgaW52YWxpZCcpO1xuICAgIH1cbiAgICBpZiAoJ2ZhY3RvcnlEYXRhJyBpbiBpbmZvICYmIHR5cGVvZiBpbmZvLmZhY3RvcnlEYXRhID09PSAnc3RyaW5nJyAmJiAhaXNIZXgoaW5mby5mYWN0b3J5RGF0YSkpIHtcbiAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludGVybmFsKCdzdWIgYWNjb3VudCBmYWN0b3J5IGRhdGEgaXMgaW52YWxpZCcpO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWFzc2VydFN1YkFjY291bnQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/assertSubAccount.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/checkCrossOriginOpenerPolicy.js": /*!*************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/checkCrossOriginOpenerPolicy.js ***! \*************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ checkCrossOriginOpenerPolicy: () => (/* binding */ checkCrossOriginOpenerPolicy),\n/* harmony export */ getCrossOriginOpenerPolicy: () => (/* binding */ getCrossOriginOpenerPolicy)\n/* harmony export */ });\nconst COOP_ERROR_MESSAGE = `Coinbase Wallet SDK requires the Cross-Origin-Opener-Policy header to not be set to 'same-origin'. This is to ensure that the SDK can communicate with the Coinbase Smart Wallet app.\n\nPlease see https://www.smartwallet.dev/guides/tips/popup-tips#cross-origin-opener-policy for more information.`;\n/**\n * Creates a checker for the Cross-Origin-Opener-Policy (COOP).\n *\n * @returns An object with methods to get and check the Cross-Origin-Opener-Policy.\n *\n * @method getCrossOriginOpenerPolicy\n * Retrieves current Cross-Origin-Opener-Policy.\n * @throws Will throw an error if the policy has not been checked yet.\n *\n * @method checkCrossOriginOpenerPolicy\n * Checks the Cross-Origin-Opener-Policy of the current environment.\n * If in a non-browser environment, sets the policy to 'non-browser-env'.\n * If in a browser environment, fetches the policy from the current origin.\n * Logs an error if the policy is 'same-origin'.\n */\nconst createCoopChecker = () => {\n let crossOriginOpenerPolicy;\n return {\n getCrossOriginOpenerPolicy: () => {\n if (crossOriginOpenerPolicy === undefined) {\n return 'undefined';\n }\n return crossOriginOpenerPolicy;\n },\n checkCrossOriginOpenerPolicy: async () => {\n if (typeof window === 'undefined') {\n // Non-browser environment\n crossOriginOpenerPolicy = 'non-browser-env';\n return;\n }\n try {\n const url = `${window.location.origin}${window.location.pathname}`;\n const response = await fetch(url, {\n method: 'HEAD',\n });\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n const result = response.headers.get('Cross-Origin-Opener-Policy');\n crossOriginOpenerPolicy = result !== null && result !== void 0 ? result : 'null';\n if (crossOriginOpenerPolicy === 'same-origin') {\n console.error(COOP_ERROR_MESSAGE);\n }\n }\n catch (error) {\n console.error('Error checking Cross-Origin-Opener-Policy:', error.message);\n crossOriginOpenerPolicy = 'error';\n }\n },\n };\n};\nconst { checkCrossOriginOpenerPolicy, getCrossOriginOpenerPolicy } = createCoopChecker();\n//# sourceMappingURL=checkCrossOriginOpenerPolicy.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvY2hlY2tDcm9zc09yaWdpbk9wZW5lclBvbGljeS5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQix1QkFBdUIsRUFBRSx5QkFBeUI7QUFDakY7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBLDJEQUEyRCxnQkFBZ0I7QUFDM0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ08sUUFBUSwyREFBMkQ7QUFDMUUiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC91dGlsL2NoZWNrQ3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3kuanMiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgQ09PUF9FUlJPUl9NRVNTQUdFID0gYENvaW5iYXNlIFdhbGxldCBTREsgcmVxdWlyZXMgdGhlIENyb3NzLU9yaWdpbi1PcGVuZXItUG9saWN5IGhlYWRlciB0byBub3QgYmUgc2V0IHRvICdzYW1lLW9yaWdpbicuIFRoaXMgaXMgdG8gZW5zdXJlIHRoYXQgdGhlIFNESyBjYW4gY29tbXVuaWNhdGUgd2l0aCB0aGUgQ29pbmJhc2UgU21hcnQgV2FsbGV0IGFwcC5cblxuUGxlYXNlIHNlZSBodHRwczovL3d3dy5zbWFydHdhbGxldC5kZXYvZ3VpZGVzL3RpcHMvcG9wdXAtdGlwcyNjcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5gO1xuLyoqXG4gKiBDcmVhdGVzIGEgY2hlY2tlciBmb3IgdGhlIENyb3NzLU9yaWdpbi1PcGVuZXItUG9saWN5IChDT09QKS5cbiAqXG4gKiBAcmV0dXJucyBBbiBvYmplY3Qgd2l0aCBtZXRob2RzIHRvIGdldCBhbmQgY2hlY2sgdGhlIENyb3NzLU9yaWdpbi1PcGVuZXItUG9saWN5LlxuICpcbiAqIEBtZXRob2QgZ2V0Q3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3lcbiAqIFJldHJpZXZlcyBjdXJyZW50IENyb3NzLU9yaWdpbi1PcGVuZXItUG9saWN5LlxuICogQHRocm93cyBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBwb2xpY3kgaGFzIG5vdCBiZWVuIGNoZWNrZWQgeWV0LlxuICpcbiAqIEBtZXRob2QgY2hlY2tDcm9zc09yaWdpbk9wZW5lclBvbGljeVxuICogQ2hlY2tzIHRoZSBDcm9zcy1PcmlnaW4tT3BlbmVyLVBvbGljeSBvZiB0aGUgY3VycmVudCBlbnZpcm9ubWVudC5cbiAqIElmIGluIGEgbm9uLWJyb3dzZXIgZW52aXJvbm1lbnQsIHNldHMgdGhlIHBvbGljeSB0byAnbm9uLWJyb3dzZXItZW52Jy5cbiAqIElmIGluIGEgYnJvd3NlciBlbnZpcm9ubWVudCwgZmV0Y2hlcyB0aGUgcG9saWN5IGZyb20gdGhlIGN1cnJlbnQgb3JpZ2luLlxuICogTG9ncyBhbiBlcnJvciBpZiB0aGUgcG9saWN5IGlzICdzYW1lLW9yaWdpbicuXG4gKi9cbmNvbnN0IGNyZWF0ZUNvb3BDaGVja2VyID0gKCkgPT4ge1xuICAgIGxldCBjcm9zc09yaWdpbk9wZW5lclBvbGljeTtcbiAgICByZXR1cm4ge1xuICAgICAgICBnZXRDcm9zc09yaWdpbk9wZW5lclBvbGljeTogKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNyb3NzT3JpZ2luT3BlbmVyUG9saWN5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3VuZGVmaW5lZCc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gY3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3k7XG4gICAgICAgIH0sXG4gICAgICAgIGNoZWNrQ3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3k6IGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIC8vIE5vbi1icm93c2VyIGVudmlyb25tZW50XG4gICAgICAgICAgICAgICAgY3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3kgPSAnbm9uLWJyb3dzZXItZW52JztcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9IGAke3dpbmRvdy5sb2NhdGlvbi5vcmlnaW59JHt3aW5kb3cubG9jYXRpb24ucGF0aG5hbWV9YDtcbiAgICAgICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHVybCwge1xuICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICdIRUFEJyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCBlcnJvciEgc3RhdHVzOiAke3Jlc3BvbnNlLnN0YXR1c31gKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gcmVzcG9uc2UuaGVhZGVycy5nZXQoJ0Nyb3NzLU9yaWdpbi1PcGVuZXItUG9saWN5Jyk7XG4gICAgICAgICAgICAgICAgY3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3kgPSByZXN1bHQgIT09IG51bGwgJiYgcmVzdWx0ICE9PSB2b2lkIDAgPyByZXN1bHQgOiAnbnVsbCc7XG4gICAgICAgICAgICAgICAgaWYgKGNyb3NzT3JpZ2luT3BlbmVyUG9saWN5ID09PSAnc2FtZS1vcmlnaW4nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoQ09PUF9FUlJPUl9NRVNTQUdFKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBjaGVja2luZyBDcm9zcy1PcmlnaW4tT3BlbmVyLVBvbGljeTonLCBlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICBjcm9zc09yaWdpbk9wZW5lclBvbGljeSA9ICdlcnJvcic7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgfTtcbn07XG5leHBvcnQgY29uc3QgeyBjaGVja0Nyb3NzT3JpZ2luT3BlbmVyUG9saWN5LCBnZXRDcm9zc09yaWdpbk9wZW5lclBvbGljeSB9ID0gY3JlYXRlQ29vcENoZWNrZXIoKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNoZWNrQ3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3kuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/checkCrossOriginOpenerPolicy.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/cipher.js": /*!***************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/cipher.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decrypt: () => (/* binding */ decrypt),\n/* harmony export */ decryptContent: () => (/* binding */ decryptContent),\n/* harmony export */ deriveSharedSecret: () => (/* binding */ deriveSharedSecret),\n/* harmony export */ encrypt: () => (/* binding */ encrypt),\n/* harmony export */ encryptContent: () => (/* binding */ encryptContent),\n/* harmony export */ exportKeyToHexString: () => (/* binding */ exportKeyToHexString),\n/* harmony export */ generateKeyPair: () => (/* binding */ generateKeyPair),\n/* harmony export */ importKeyFromHexString: () => (/* binding */ importKeyFromHexString)\n/* harmony export */ });\n/* harmony import */ var _core_type_util_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/type/util.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/type/util.js\");\n\nasync function generateKeyPair() {\n return crypto.subtle.generateKey({\n name: 'ECDH',\n namedCurve: 'P-256',\n }, true, ['deriveKey']);\n}\nasync function deriveSharedSecret(ownPrivateKey, peerPublicKey) {\n return crypto.subtle.deriveKey({\n name: 'ECDH',\n public: peerPublicKey,\n }, ownPrivateKey, {\n name: 'AES-GCM',\n length: 256,\n }, false, ['encrypt', 'decrypt']);\n}\nasync function encrypt(sharedSecret, plainText) {\n const iv = crypto.getRandomValues(new Uint8Array(12));\n const cipherText = await crypto.subtle.encrypt({\n name: 'AES-GCM',\n iv,\n }, sharedSecret, new TextEncoder().encode(plainText));\n return { iv, cipherText };\n}\nasync function decrypt(sharedSecret, { iv, cipherText }) {\n const plainText = await crypto.subtle.decrypt({\n name: 'AES-GCM',\n iv,\n }, sharedSecret, cipherText);\n return new TextDecoder().decode(plainText);\n}\nfunction getFormat(keyType) {\n switch (keyType) {\n case 'public':\n return 'spki';\n case 'private':\n return 'pkcs8';\n }\n}\nasync function exportKeyToHexString(type, key) {\n const format = getFormat(type);\n const exported = await crypto.subtle.exportKey(format, key);\n return (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_0__.uint8ArrayToHex)(new Uint8Array(exported));\n}\nasync function importKeyFromHexString(type, hexString) {\n const format = getFormat(type);\n const arrayBuffer = (0,_core_type_util_js__WEBPACK_IMPORTED_MODULE_0__.hexStringToUint8Array)(hexString).buffer;\n return await crypto.subtle.importKey(format, new Uint8Array(arrayBuffer), {\n name: 'ECDH',\n namedCurve: 'P-256',\n }, true, type === 'private' ? ['deriveKey'] : []);\n}\nasync function encryptContent(content, sharedSecret) {\n const serialized = JSON.stringify(content, (_, value) => {\n if (!(value instanceof Error))\n return value;\n const error = value;\n return Object.assign(Object.assign({}, (error.code ? { code: error.code } : {})), { message: error.message });\n });\n return encrypt(sharedSecret, serialized);\n}\nasync function decryptContent(encryptedData, sharedSecret) {\n return JSON.parse(await decrypt(sharedSecret, encryptedData));\n}\n//# sourceMappingURL=cipher.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvY2lwaGVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUE4RTtBQUN2RTtBQUNQO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLGFBQWE7QUFDYjtBQUNPLHVDQUF1QyxnQkFBZ0I7QUFDOUQ7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0EsV0FBVyxtRUFBZTtBQUMxQjtBQUNPO0FBQ1A7QUFDQSx3QkFBd0IseUVBQXFCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2Q0FBNkMsa0JBQWtCLG1CQUFtQixJQUFJLE1BQU0sd0JBQXdCO0FBQ3BILEtBQUs7QUFDTDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC91dGlsL2NpcGhlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBoZXhTdHJpbmdUb1VpbnQ4QXJyYXksIHVpbnQ4QXJyYXlUb0hleCB9IGZyb20gJy4uL2NvcmUvdHlwZS91dGlsLmpzJztcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZUtleVBhaXIoKSB7XG4gICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe1xuICAgICAgICBuYW1lOiAnRUNESCcsXG4gICAgICAgIG5hbWVkQ3VydmU6ICdQLTI1NicsXG4gICAgfSwgdHJ1ZSwgWydkZXJpdmVLZXknXSk7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVyaXZlU2hhcmVkU2VjcmV0KG93blByaXZhdGVLZXksIHBlZXJQdWJsaWNLZXkpIHtcbiAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kZXJpdmVLZXkoe1xuICAgICAgICBuYW1lOiAnRUNESCcsXG4gICAgICAgIHB1YmxpYzogcGVlclB1YmxpY0tleSxcbiAgICB9LCBvd25Qcml2YXRlS2V5LCB7XG4gICAgICAgIG5hbWU6ICdBRVMtR0NNJyxcbiAgICAgICAgbGVuZ3RoOiAyNTYsXG4gICAgfSwgZmFsc2UsIFsnZW5jcnlwdCcsICdkZWNyeXB0J10pO1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVuY3J5cHQoc2hhcmVkU2VjcmV0LCBwbGFpblRleHQpIHtcbiAgICBjb25zdCBpdiA9IGNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQ4QXJyYXkoMTIpKTtcbiAgICBjb25zdCBjaXBoZXJUZXh0ID0gYXdhaXQgY3J5cHRvLnN1YnRsZS5lbmNyeXB0KHtcbiAgICAgICAgbmFtZTogJ0FFUy1HQ00nLFxuICAgICAgICBpdixcbiAgICB9LCBzaGFyZWRTZWNyZXQsIG5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShwbGFpblRleHQpKTtcbiAgICByZXR1cm4geyBpdiwgY2lwaGVyVGV4dCB9O1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlY3J5cHQoc2hhcmVkU2VjcmV0LCB7IGl2LCBjaXBoZXJUZXh0IH0pIHtcbiAgICBjb25zdCBwbGFpblRleHQgPSBhd2FpdCBjcnlwdG8uc3VidGxlLmRlY3J5cHQoe1xuICAgICAgICBuYW1lOiAnQUVTLUdDTScsXG4gICAgICAgIGl2LFxuICAgIH0sIHNoYXJlZFNlY3JldCwgY2lwaGVyVGV4dCk7XG4gICAgcmV0dXJuIG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShwbGFpblRleHQpO1xufVxuZnVuY3Rpb24gZ2V0Rm9ybWF0KGtleVR5cGUpIHtcbiAgICBzd2l0Y2ggKGtleVR5cGUpIHtcbiAgICAgICAgY2FzZSAncHVibGljJzpcbiAgICAgICAgICAgIHJldHVybiAnc3BraSc7XG4gICAgICAgIGNhc2UgJ3ByaXZhdGUnOlxuICAgICAgICAgICAgcmV0dXJuICdwa2NzOCc7XG4gICAgfVxufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4cG9ydEtleVRvSGV4U3RyaW5nKHR5cGUsIGtleSkge1xuICAgIGNvbnN0IGZvcm1hdCA9IGdldEZvcm1hdCh0eXBlKTtcbiAgICBjb25zdCBleHBvcnRlZCA9IGF3YWl0IGNyeXB0by5zdWJ0bGUuZXhwb3J0S2V5KGZvcm1hdCwga2V5KTtcbiAgICByZXR1cm4gdWludDhBcnJheVRvSGV4KG5ldyBVaW50OEFycmF5KGV4cG9ydGVkKSk7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW1wb3J0S2V5RnJvbUhleFN0cmluZyh0eXBlLCBoZXhTdHJpbmcpIHtcbiAgICBjb25zdCBmb3JtYXQgPSBnZXRGb3JtYXQodHlwZSk7XG4gICAgY29uc3QgYXJyYXlCdWZmZXIgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoaGV4U3RyaW5nKS5idWZmZXI7XG4gICAgcmV0dXJuIGF3YWl0IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KGZvcm1hdCwgbmV3IFVpbnQ4QXJyYXkoYXJyYXlCdWZmZXIpLCB7XG4gICAgICAgIG5hbWU6ICdFQ0RIJyxcbiAgICAgICAgbmFtZWRDdXJ2ZTogJ1AtMjU2JyxcbiAgICB9LCB0cnVlLCB0eXBlID09PSAncHJpdmF0ZScgPyBbJ2Rlcml2ZUtleSddIDogW10pO1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVuY3J5cHRDb250ZW50KGNvbnRlbnQsIHNoYXJlZFNlY3JldCkge1xuICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSBKU09OLnN0cmluZ2lmeShjb250ZW50LCAoXywgdmFsdWUpID0+IHtcbiAgICAgICAgaWYgKCEodmFsdWUgaW5zdGFuY2VvZiBFcnJvcikpXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGNvbnN0IGVycm9yID0gdmFsdWU7XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIChlcnJvci5jb2RlID8geyBjb2RlOiBlcnJvci5jb2RlIH0gOiB7fSkpLCB7IG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGVuY3J5cHQoc2hhcmVkU2VjcmV0LCBzZXJpYWxpemVkKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWNyeXB0Q29udGVudChlbmNyeXB0ZWREYXRhLCBzaGFyZWRTZWNyZXQpIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShhd2FpdCBkZWNyeXB0KHNoYXJlZFNlY3JldCwgZW5jcnlwdGVkRGF0YSkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2lwaGVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/cipher.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/encoding.js": /*!*****************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/encoding.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ arrayBufferToBase64Url: () => (/* binding */ arrayBufferToBase64Url),\n/* harmony export */ asn1EncodeSignature: () => (/* binding */ asn1EncodeSignature),\n/* harmony export */ base64ToBase64Url: () => (/* binding */ base64ToBase64Url),\n/* harmony export */ convertCredentialToJSON: () => (/* binding */ convertCredentialToJSON)\n/* harmony export */ });\n/* harmony import */ var ox__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ox */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Signature.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/trim.js\");\n/* harmony import */ var viem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! viem */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\nfunction base64ToBase64Url(base64) {\n return base64.replaceAll('+', '-').replaceAll('/', '_').replace(/=+$/, '');\n}\nfunction arrayBufferToBase64Url(buffer) {\n // First convert to regular base64\n const base64String = btoa(String.fromCharCode(...new Uint8Array(buffer)));\n // Then convert to base64url\n return base64ToBase64Url(base64String);\n}\nfunction convertCredentialToJSON({ webauthn, signature, id, }) {\n const signatureRaw = ox__WEBPACK_IMPORTED_MODULE_0__.fromHex(signature);\n return {\n id,\n rawId: arrayBufferToBase64Url((0,viem__WEBPACK_IMPORTED_MODULE_1__.stringToBytes)(id)),\n response: {\n authenticatorData: arrayBufferToBase64Url((0,viem__WEBPACK_IMPORTED_MODULE_1__.hexToBytes)(webauthn.authenticatorData)),\n clientDataJSON: arrayBufferToBase64Url((0,viem__WEBPACK_IMPORTED_MODULE_1__.stringToBytes)(webauthn.clientDataJSON)),\n signature: arrayBufferToBase64Url(asn1EncodeSignature(signatureRaw.r, signatureRaw.s)),\n },\n type: JSON.parse(webauthn.clientDataJSON).type,\n };\n}\nfunction asn1EncodeSignature(r, s) {\n // Convert r and s to byte arrays and remove any leading zeros\n const rBytes = (0,viem__WEBPACK_IMPORTED_MODULE_1__.hexToBytes)((0,viem__WEBPACK_IMPORTED_MODULE_2__.trim)((0,viem__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(r)));\n const sBytes = (0,viem__WEBPACK_IMPORTED_MODULE_1__.hexToBytes)((0,viem__WEBPACK_IMPORTED_MODULE_2__.trim)((0,viem__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(s)));\n // Calculate lengths\n const rLength = rBytes.length;\n const sLength = sBytes.length;\n const totalLength = rLength + sLength + 4; // 4 additional bytes for type and length fields\n // Create the signature buffer\n const signature = new Uint8Array(totalLength + 2); // +2 for sequence header\n // Sequence header\n signature[0] = 0x30; // ASN.1 sequence tag\n signature[1] = totalLength;\n // Encode r value\n signature[2] = 0x02; // ASN.1 integer tag\n signature[3] = rLength;\n signature.set(rBytes, 4);\n // Encode s value\n signature[rLength + 4] = 0x02; // ASN.1 integer tag\n signature[rLength + 5] = sLength;\n signature.set(sBytes, rLength + 6);\n return signature;\n}\n//# sourceMappingURL=encoding.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvZW5jb2RpbmcuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBK0I7QUFDcUM7QUFDN0Q7QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUNBQW1DLDBCQUEwQjtBQUNwRSx5QkFBeUIsdUNBQWlCO0FBQzFDO0FBQ0E7QUFDQSxzQ0FBc0MsbURBQWE7QUFDbkQ7QUFDQSxzREFBc0QsZ0RBQVU7QUFDaEUsbURBQW1ELG1EQUFhO0FBQ2hFO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQSxtQkFBbUIsZ0RBQVUsQ0FBQywwQ0FBSSxDQUFDLGlEQUFXO0FBQzlDLG1CQUFtQixnREFBVSxDQUFDLDBDQUFJLENBQUMsaURBQVc7QUFDOUM7QUFDQTtBQUNBO0FBQ0EsK0NBQStDO0FBQy9DO0FBQ0EsdURBQXVEO0FBQ3ZEO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC91dGlsL2VuY29kaW5nLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294JztcbmltcG9ydCB7IGhleFRvQnl0ZXMsIG51bWJlclRvSGV4LCBzdHJpbmdUb0J5dGVzLCB0cmltIH0gZnJvbSAndmllbSc7XG5leHBvcnQgZnVuY3Rpb24gYmFzZTY0VG9CYXNlNjRVcmwoYmFzZTY0KSB7XG4gICAgcmV0dXJuIGJhc2U2NC5yZXBsYWNlQWxsKCcrJywgJy0nKS5yZXBsYWNlQWxsKCcvJywgJ18nKS5yZXBsYWNlKC89KyQvLCAnJyk7XG59XG5leHBvcnQgZnVuY3Rpb24gYXJyYXlCdWZmZXJUb0Jhc2U2NFVybChidWZmZXIpIHtcbiAgICAvLyBGaXJzdCBjb252ZXJ0IHRvIHJlZ3VsYXIgYmFzZTY0XG4gICAgY29uc3QgYmFzZTY0U3RyaW5nID0gYnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLm5ldyBVaW50OEFycmF5KGJ1ZmZlcikpKTtcbiAgICAvLyBUaGVuIGNvbnZlcnQgdG8gYmFzZTY0dXJsXG4gICAgcmV0dXJuIGJhc2U2NFRvQmFzZTY0VXJsKGJhc2U2NFN0cmluZyk7XG59XG5leHBvcnQgZnVuY3Rpb24gY29udmVydENyZWRlbnRpYWxUb0pTT04oeyB3ZWJhdXRobiwgc2lnbmF0dXJlLCBpZCwgfSkge1xuICAgIGNvbnN0IHNpZ25hdHVyZVJhdyA9IFNpZ25hdHVyZS5mcm9tSGV4KHNpZ25hdHVyZSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaWQsXG4gICAgICAgIHJhd0lkOiBhcnJheUJ1ZmZlclRvQmFzZTY0VXJsKHN0cmluZ1RvQnl0ZXMoaWQpKSxcbiAgICAgICAgcmVzcG9uc2U6IHtcbiAgICAgICAgICAgIGF1dGhlbnRpY2F0b3JEYXRhOiBhcnJheUJ1ZmZlclRvQmFzZTY0VXJsKGhleFRvQnl0ZXMod2ViYXV0aG4uYXV0aGVudGljYXRvckRhdGEpKSxcbiAgICAgICAgICAgIGNsaWVudERhdGFKU09OOiBhcnJheUJ1ZmZlclRvQmFzZTY0VXJsKHN0cmluZ1RvQnl0ZXMod2ViYXV0aG4uY2xpZW50RGF0YUpTT04pKSxcbiAgICAgICAgICAgIHNpZ25hdHVyZTogYXJyYXlCdWZmZXJUb0Jhc2U2NFVybChhc24xRW5jb2RlU2lnbmF0dXJlKHNpZ25hdHVyZVJhdy5yLCBzaWduYXR1cmVSYXcucykpLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBKU09OLnBhcnNlKHdlYmF1dGhuLmNsaWVudERhdGFKU09OKS50eXBlLFxuICAgIH07XG59XG5leHBvcnQgZnVuY3Rpb24gYXNuMUVuY29kZVNpZ25hdHVyZShyLCBzKSB7XG4gICAgLy8gQ29udmVydCByIGFuZCBzIHRvIGJ5dGUgYXJyYXlzIGFuZCByZW1vdmUgYW55IGxlYWRpbmcgemVyb3NcbiAgICBjb25zdCByQnl0ZXMgPSBoZXhUb0J5dGVzKHRyaW0obnVtYmVyVG9IZXgocikpKTtcbiAgICBjb25zdCBzQnl0ZXMgPSBoZXhUb0J5dGVzKHRyaW0obnVtYmVyVG9IZXgocykpKTtcbiAgICAvLyBDYWxjdWxhdGUgbGVuZ3Roc1xuICAgIGNvbnN0IHJMZW5ndGggPSByQnl0ZXMubGVuZ3RoO1xuICAgIGNvbnN0IHNMZW5ndGggPSBzQnl0ZXMubGVuZ3RoO1xuICAgIGNvbnN0IHRvdGFsTGVuZ3RoID0gckxlbmd0aCArIHNMZW5ndGggKyA0OyAvLyA0IGFkZGl0aW9uYWwgYnl0ZXMgZm9yIHR5cGUgYW5kIGxlbmd0aCBmaWVsZHNcbiAgICAvLyBDcmVhdGUgdGhlIHNpZ25hdHVyZSBidWZmZXJcbiAgICBjb25zdCBzaWduYXR1cmUgPSBuZXcgVWludDhBcnJheSh0b3RhbExlbmd0aCArIDIpOyAvLyArMiBmb3Igc2VxdWVuY2UgaGVhZGVyXG4gICAgLy8gU2VxdWVuY2UgaGVhZGVyXG4gICAgc2lnbmF0dXJlWzBdID0gMHgzMDsgLy8gQVNOLjEgc2VxdWVuY2UgdGFnXG4gICAgc2lnbmF0dXJlWzFdID0gdG90YWxMZW5ndGg7XG4gICAgLy8gRW5jb2RlIHIgdmFsdWVcbiAgICBzaWduYXR1cmVbMl0gPSAweDAyOyAvLyBBU04uMSBpbnRlZ2VyIHRhZ1xuICAgIHNpZ25hdHVyZVszXSA9IHJMZW5ndGg7XG4gICAgc2lnbmF0dXJlLnNldChyQnl0ZXMsIDQpO1xuICAgIC8vIEVuY29kZSBzIHZhbHVlXG4gICAgc2lnbmF0dXJlW3JMZW5ndGggKyA0XSA9IDB4MDI7IC8vIEFTTi4xIGludGVnZXIgdGFnXG4gICAgc2lnbmF0dXJlW3JMZW5ndGggKyA1XSA9IHNMZW5ndGg7XG4gICAgc2lnbmF0dXJlLnNldChzQnl0ZXMsIHJMZW5ndGggKyA2KTtcbiAgICByZXR1cm4gc2lnbmF0dXJlO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZW5jb2RpbmcuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/encoding.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/get.js": /*!************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/get.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ get: () => (/* binding */ get)\n/* harmony export */ });\nfunction get(obj, path) {\n if (typeof obj !== 'object' || obj === null)\n return undefined;\n return path\n .split(/[.[\\]]+/)\n .filter(Boolean)\n .reduce((value, key) => {\n if (typeof value === 'object' && value !== null) {\n return value[key];\n }\n return undefined;\n }, obj);\n}\n//# sourceMappingURL=get.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvZ2V0LmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC91dGlsL2dldC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZ2V0KG9iaiwgcGF0aCkge1xuICAgIGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0JyB8fCBvYmogPT09IG51bGwpXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIHBhdGhcbiAgICAgICAgLnNwbGl0KC9bLltcXF1dKy8pXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgLnJlZHVjZSgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlW2tleV07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9LCBvYmopO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/get.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/provider.js": /*!*****************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/provider.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ checkErrorForInvalidRequestArgs: () => (/* binding */ checkErrorForInvalidRequestArgs),\n/* harmony export */ fetchRPCRequest: () => (/* binding */ fetchRPCRequest),\n/* harmony export */ getCoinbaseInjectedProvider: () => (/* binding */ getCoinbaseInjectedProvider)\n/* harmony export */ });\n/* harmony import */ var _sdk_info_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../sdk-info.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js\");\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n\n\nasync function fetchRPCRequest(request, rpcUrl) {\n const requestBody = Object.assign(Object.assign({}, request), { jsonrpc: '2.0', id: crypto.randomUUID() });\n const res = await window.fetch(rpcUrl, {\n method: 'POST',\n body: JSON.stringify(requestBody),\n mode: 'cors',\n headers: {\n 'Content-Type': 'application/json',\n 'X-Cbw-Sdk-Version': _sdk_info_js__WEBPACK_IMPORTED_MODULE_0__.VERSION,\n 'X-Cbw-Sdk-Platform': _sdk_info_js__WEBPACK_IMPORTED_MODULE_0__.NAME,\n },\n });\n const { result, error } = await res.json();\n if (error)\n throw error;\n return result;\n}\nfunction getCoinbaseInjectedLegacyProvider() {\n const window = globalThis;\n return window.coinbaseWalletExtension;\n}\nfunction getInjectedEthereum() {\n var _a, _b;\n try {\n const window = globalThis;\n return (_a = window.ethereum) !== null && _a !== void 0 ? _a : (_b = window.top) === null || _b === void 0 ? void 0 : _b.ethereum;\n }\n catch (_c) {\n return undefined;\n }\n}\nfunction getCoinbaseInjectedProvider({ metadata, preference, }) {\n var _a, _b;\n const { appName, appLogoUrl, appChainIds } = metadata;\n if (preference.options !== 'smartWalletOnly') {\n const extension = getCoinbaseInjectedLegacyProvider();\n if (extension) {\n (_a = extension.setAppInfo) === null || _a === void 0 ? void 0 : _a.call(extension, appName, appLogoUrl, appChainIds, preference);\n return extension;\n }\n }\n const ethereum = getInjectedEthereum();\n if (ethereum === null || ethereum === void 0 ? void 0 : ethereum.isCoinbaseBrowser) {\n (_b = ethereum.setAppInfo) === null || _b === void 0 ? void 0 : _b.call(ethereum, appName, appLogoUrl, appChainIds, preference);\n return ethereum;\n }\n return undefined;\n}\n/**\n * Validates the arguments for an invalid request and returns an error if any validation fails.\n * Valid request args are defined here: https://eips.ethereum.org/EIPS/eip-1193#request\n * @param args The request arguments to validate.\n * @returns An error object if the arguments are invalid, otherwise undefined.\n */\nfunction checkErrorForInvalidRequestArgs(args) {\n if (!args || typeof args !== 'object' || Array.isArray(args)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams({\n message: 'Expected a single, non-array, object argument.',\n data: args,\n });\n }\n const { method, params } = args;\n if (typeof method !== 'string' || method.length === 0) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams({\n message: \"'args.method' must be a non-empty string.\",\n data: args,\n });\n }\n if (params !== undefined &&\n !Array.isArray(params) &&\n (typeof params !== 'object' || params === null)) {\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.rpc.invalidParams({\n message: \"'args.params' must be an object or array if provided.\",\n data: args,\n });\n }\n switch (method) {\n case 'eth_sign':\n case 'eth_signTypedData_v2':\n case 'eth_subscribe':\n case 'eth_unsubscribe':\n throw _core_error_errors_js__WEBPACK_IMPORTED_MODULE_1__.standardErrors.provider.unsupportedMethod();\n }\n}\n//# sourceMappingURL=provider.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvcHJvdmlkZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBK0M7QUFDVTtBQUNsRDtBQUNQLHNEQUFzRCxjQUFjLHlDQUF5QztBQUM3RztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMsaURBQU87QUFDeEMsa0NBQWtDLDhDQUFJO0FBQ3RDLFNBQVM7QUFDVCxLQUFLO0FBQ0wsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sdUNBQXVDLHVCQUF1QjtBQUNyRTtBQUNBLFlBQVksbUNBQW1DO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0EsY0FBYyxpRUFBYztBQUM1QjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsWUFBWSxpQkFBaUI7QUFDN0I7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLGlFQUFjO0FBQzVCO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGlFQUFjO0FBQ2hDO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvcHJvdmlkZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTkFNRSwgVkVSU0lPTiB9IGZyb20gJy4uL3Nkay1pbmZvLmpzJztcbmltcG9ydCB7IHN0YW5kYXJkRXJyb3JzIH0gZnJvbSAnLi4vY29yZS9lcnJvci9lcnJvcnMuanMnO1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoUlBDUmVxdWVzdChyZXF1ZXN0LCBycGNVcmwpIHtcbiAgICBjb25zdCByZXF1ZXN0Qm9keSA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgcmVxdWVzdCksIHsganNvbnJwYzogJzIuMCcsIGlkOiBjcnlwdG8ucmFuZG9tVVVJRCgpIH0pO1xuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHdpbmRvdy5mZXRjaChycGNVcmwsIHtcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHJlcXVlc3RCb2R5KSxcbiAgICAgICAgbW9kZTogJ2NvcnMnLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtQ2J3LVNkay1WZXJzaW9uJzogVkVSU0lPTixcbiAgICAgICAgICAgICdYLUNidy1TZGstUGxhdGZvcm0nOiBOQU1FLFxuICAgICAgICB9LFxuICAgIH0pO1xuICAgIGNvbnN0IHsgcmVzdWx0LCBlcnJvciB9ID0gYXdhaXQgcmVzLmpzb24oKTtcbiAgICBpZiAoZXJyb3IpXG4gICAgICAgIHRocm93IGVycm9yO1xuICAgIHJldHVybiByZXN1bHQ7XG59XG5mdW5jdGlvbiBnZXRDb2luYmFzZUluamVjdGVkTGVnYWN5UHJvdmlkZXIoKSB7XG4gICAgY29uc3Qgd2luZG93ID0gZ2xvYmFsVGhpcztcbiAgICByZXR1cm4gd2luZG93LmNvaW5iYXNlV2FsbGV0RXh0ZW5zaW9uO1xufVxuZnVuY3Rpb24gZ2V0SW5qZWN0ZWRFdGhlcmV1bSgpIHtcbiAgICB2YXIgX2EsIF9iO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHdpbmRvdyA9IGdsb2JhbFRoaXM7XG4gICAgICAgIHJldHVybiAoX2EgPSB3aW5kb3cuZXRoZXJldW0pICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IChfYiA9IHdpbmRvdy50b3ApID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5ldGhlcmV1bTtcbiAgICB9XG4gICAgY2F0Y2ggKF9jKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIGdldENvaW5iYXNlSW5qZWN0ZWRQcm92aWRlcih7IG1ldGFkYXRhLCBwcmVmZXJlbmNlLCB9KSB7XG4gICAgdmFyIF9hLCBfYjtcbiAgICBjb25zdCB7IGFwcE5hbWUsIGFwcExvZ29VcmwsIGFwcENoYWluSWRzIH0gPSBtZXRhZGF0YTtcbiAgICBpZiAocHJlZmVyZW5jZS5vcHRpb25zICE9PSAnc21hcnRXYWxsZXRPbmx5Jykge1xuICAgICAgICBjb25zdCBleHRlbnNpb24gPSBnZXRDb2luYmFzZUluamVjdGVkTGVnYWN5UHJvdmlkZXIoKTtcbiAgICAgICAgaWYgKGV4dGVuc2lvbikge1xuICAgICAgICAgICAgKF9hID0gZXh0ZW5zaW9uLnNldEFwcEluZm8pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKGV4dGVuc2lvbiwgYXBwTmFtZSwgYXBwTG9nb1VybCwgYXBwQ2hhaW5JZHMsIHByZWZlcmVuY2UpO1xuICAgICAgICAgICAgcmV0dXJuIGV4dGVuc2lvbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBldGhlcmV1bSA9IGdldEluamVjdGVkRXRoZXJldW0oKTtcbiAgICBpZiAoZXRoZXJldW0gPT09IG51bGwgfHwgZXRoZXJldW0gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGV0aGVyZXVtLmlzQ29pbmJhc2VCcm93c2VyKSB7XG4gICAgICAgIChfYiA9IGV0aGVyZXVtLnNldEFwcEluZm8pID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKGV0aGVyZXVtLCBhcHBOYW1lLCBhcHBMb2dvVXJsLCBhcHBDaGFpbklkcywgcHJlZmVyZW5jZSk7XG4gICAgICAgIHJldHVybiBldGhlcmV1bTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbi8qKlxuICogVmFsaWRhdGVzIHRoZSBhcmd1bWVudHMgZm9yIGFuIGludmFsaWQgcmVxdWVzdCBhbmQgcmV0dXJucyBhbiBlcnJvciBpZiBhbnkgdmFsaWRhdGlvbiBmYWlscy5cbiAqIFZhbGlkIHJlcXVlc3QgYXJncyBhcmUgZGVmaW5lZCBoZXJlOiBodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTExOTMjcmVxdWVzdFxuICogQHBhcmFtIGFyZ3MgVGhlIHJlcXVlc3QgYXJndW1lbnRzIHRvIHZhbGlkYXRlLlxuICogQHJldHVybnMgQW4gZXJyb3Igb2JqZWN0IGlmIHRoZSBhcmd1bWVudHMgYXJlIGludmFsaWQsIG90aGVyd2lzZSB1bmRlZmluZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0Vycm9yRm9ySW52YWxpZFJlcXVlc3RBcmdzKGFyZ3MpIHtcbiAgICBpZiAoIWFyZ3MgfHwgdHlwZW9mIGFyZ3MgIT09ICdvYmplY3QnIHx8IEFycmF5LmlzQXJyYXkoYXJncykpIHtcbiAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoe1xuICAgICAgICAgICAgbWVzc2FnZTogJ0V4cGVjdGVkIGEgc2luZ2xlLCBub24tYXJyYXksIG9iamVjdCBhcmd1bWVudC4nLFxuICAgICAgICAgICAgZGF0YTogYXJncyxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IHsgbWV0aG9kLCBwYXJhbXMgfSA9IGFyZ3M7XG4gICAgaWYgKHR5cGVvZiBtZXRob2QgIT09ICdzdHJpbmcnIHx8IG1ldGhvZC5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhyb3cgc3RhbmRhcmRFcnJvcnMucnBjLmludmFsaWRQYXJhbXMoe1xuICAgICAgICAgICAgbWVzc2FnZTogXCInYXJncy5tZXRob2QnIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nLlwiLFxuICAgICAgICAgICAgZGF0YTogYXJncyxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChwYXJhbXMgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAhQXJyYXkuaXNBcnJheShwYXJhbXMpICYmXG4gICAgICAgICh0eXBlb2YgcGFyYW1zICE9PSAnb2JqZWN0JyB8fCBwYXJhbXMgPT09IG51bGwpKSB7XG4gICAgICAgIHRocm93IHN0YW5kYXJkRXJyb3JzLnJwYy5pbnZhbGlkUGFyYW1zKHtcbiAgICAgICAgICAgIG1lc3NhZ2U6IFwiJ2FyZ3MucGFyYW1zJyBtdXN0IGJlIGFuIG9iamVjdCBvciBhcnJheSBpZiBwcm92aWRlZC5cIixcbiAgICAgICAgICAgIGRhdGE6IGFyZ3MsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBzd2l0Y2ggKG1ldGhvZCkge1xuICAgICAgICBjYXNlICdldGhfc2lnbic6XG4gICAgICAgIGNhc2UgJ2V0aF9zaWduVHlwZWREYXRhX3YyJzpcbiAgICAgICAgY2FzZSAnZXRoX3N1YnNjcmliZSc6XG4gICAgICAgIGNhc2UgJ2V0aF91bnN1YnNjcmliZSc6XG4gICAgICAgICAgICB0aHJvdyBzdGFuZGFyZEVycm9ycy5wcm92aWRlci51bnN1cHBvcnRlZE1ldGhvZCgpO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXByb3ZpZGVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/provider.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/validatePreferences.js": /*!****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/validatePreferences.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ validatePreferences: () => (/* binding */ validatePreferences),\n/* harmony export */ validateSubAccount: () => (/* binding */ validateSubAccount)\n/* harmony export */ });\n/**\n * Validates user supplied preferences. Throws if keys are not valid.\n * @param preference\n */\nfunction validatePreferences(preference) {\n if (!preference) {\n return;\n }\n if (!['all', 'smartWalletOnly', 'eoaOnly'].includes(preference.options)) {\n throw new Error(`Invalid options: ${preference.options}`);\n }\n if (preference.attribution) {\n if (preference.attribution.auto !== undefined &&\n preference.attribution.dataSuffix !== undefined) {\n throw new Error(`Attribution cannot contain both auto and dataSuffix properties`);\n }\n }\n if (preference.telemetry) {\n if (typeof preference.telemetry !== 'boolean') {\n throw new Error(`Telemetry must be a boolean`);\n }\n }\n}\n/**\n * Validates user supplied toSubAccountSigner function. Throws if keys are not valid.\n * @param toAccount\n */\nfunction validateSubAccount(toAccount) {\n if (typeof toAccount !== 'function') {\n throw new Error(`toAccount is not a function`);\n }\n}\n//# sourceMappingURL=validatePreferences.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvdmFsaWRhdGVQcmVmZXJlbmNlcy5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QyxtQkFBbUI7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvdmFsaWRhdGVQcmVmZXJlbmNlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhbGlkYXRlcyB1c2VyIHN1cHBsaWVkIHByZWZlcmVuY2VzLiBUaHJvd3MgaWYga2V5cyBhcmUgbm90IHZhbGlkLlxuICogQHBhcmFtIHByZWZlcmVuY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlUHJlZmVyZW5jZXMocHJlZmVyZW5jZSkge1xuICAgIGlmICghcHJlZmVyZW5jZSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghWydhbGwnLCAnc21hcnRXYWxsZXRPbmx5JywgJ2VvYU9ubHknXS5pbmNsdWRlcyhwcmVmZXJlbmNlLm9wdGlvbnMpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBvcHRpb25zOiAke3ByZWZlcmVuY2Uub3B0aW9uc31gKTtcbiAgICB9XG4gICAgaWYgKHByZWZlcmVuY2UuYXR0cmlidXRpb24pIHtcbiAgICAgICAgaWYgKHByZWZlcmVuY2UuYXR0cmlidXRpb24uYXV0byAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICBwcmVmZXJlbmNlLmF0dHJpYnV0aW9uLmRhdGFTdWZmaXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdHRyaWJ1dGlvbiBjYW5ub3QgY29udGFpbiBib3RoIGF1dG8gYW5kIGRhdGFTdWZmaXggcHJvcGVydGllc2ApO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChwcmVmZXJlbmNlLnRlbGVtZXRyeSkge1xuICAgICAgICBpZiAodHlwZW9mIHByZWZlcmVuY2UudGVsZW1ldHJ5ICE9PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVGVsZW1ldHJ5IG11c3QgYmUgYSBib29sZWFuYCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIFZhbGlkYXRlcyB1c2VyIHN1cHBsaWVkIHRvU3ViQWNjb3VudFNpZ25lciBmdW5jdGlvbi4gVGhyb3dzIGlmIGtleXMgYXJlIG5vdCB2YWxpZC5cbiAqIEBwYXJhbSB0b0FjY291bnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU3ViQWNjb3VudCh0b0FjY291bnQpIHtcbiAgICBpZiAodHlwZW9mIHRvQWNjb3VudCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHRvQWNjb3VudCBpcyBub3QgYSBmdW5jdGlvbmApO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXZhbGlkYXRlUHJlZmVyZW5jZXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/validatePreferences.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/web.js": /*!************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/util/web.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ closePopup: () => (/* binding */ closePopup),\n/* harmony export */ initSnackbar: () => (/* binding */ initSnackbar),\n/* harmony export */ openPopup: () => (/* binding */ openPopup)\n/* harmony export */ });\n/* harmony import */ var _core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/error/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/error/errors.js\");\n/* harmony import */ var _core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/telemetry/events/snackbar.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/core/telemetry/events/snackbar.js\");\n/* harmony import */ var _sign_walletlink_relay_ui_WalletLinkRelayUI_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../sign/walletlink/relay/ui/WalletLinkRelayUI.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/WalletLinkRelayUI.js\");\n/* harmony import */ var _sign_walletlink_relay_ui_components_Snackbar_Snackbar_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../sign/walletlink/relay/ui/components/Snackbar/Snackbar.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar.js\");\n/* harmony import */ var _sdk_info_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../sdk-info.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/sdk-info.js\");\n/* harmony import */ var _checkCrossOriginOpenerPolicy_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./checkCrossOriginOpenerPolicy.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/checkCrossOriginOpenerPolicy.js\");\n\n\n\n\n\n\nconst POPUP_WIDTH = 420;\nconst POPUP_HEIGHT = 700;\nconst RETRY_BUTTON = {\n isRed: false,\n info: 'Retry',\n svgWidth: '10',\n svgHeight: '11',\n path: _sign_walletlink_relay_ui_WalletLinkRelayUI_js__WEBPACK_IMPORTED_MODULE_0__.RETRY_SVG_PATH,\n defaultFillRule: 'evenodd',\n defaultClipRule: 'evenodd',\n};\nconst POPUP_BLOCKED_MESSAGE = 'Popup was blocked. Try again.';\nlet snackbar = null;\nfunction openPopup(url) {\n const left = (window.innerWidth - POPUP_WIDTH) / 2 + window.screenX;\n const top = (window.innerHeight - POPUP_HEIGHT) / 2 + window.screenY;\n appendAppInfoQueryParams(url);\n function tryOpenPopup() {\n const popupId = `wallet_${crypto.randomUUID()}`;\n const popup = window.open(url, popupId, `width=${POPUP_WIDTH}, height=${POPUP_HEIGHT}, left=${left}, top=${top}`);\n popup === null || popup === void 0 ? void 0 : popup.focus();\n if (!popup) {\n return null;\n }\n return popup;\n }\n let popup = tryOpenPopup();\n // If the popup was blocked, show a snackbar with a retry button\n if (!popup) {\n const sb = initSnackbar();\n return new Promise((resolve, reject) => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_1__.logSnackbarShown)({ snackbarContext: 'popup_blocked' });\n sb.presentItem({\n autoExpand: true,\n message: POPUP_BLOCKED_MESSAGE,\n menuItems: [\n Object.assign(Object.assign({}, RETRY_BUTTON), { onClick: () => {\n (0,_core_telemetry_events_snackbar_js__WEBPACK_IMPORTED_MODULE_1__.logSnackbarActionClicked)({\n snackbarContext: 'popup_blocked',\n snackbarAction: 'confirm',\n });\n popup = tryOpenPopup();\n if (popup) {\n resolve(popup);\n }\n else {\n reject(_core_error_errors_js__WEBPACK_IMPORTED_MODULE_2__.standardErrors.rpc.internal('Popup window was blocked'));\n }\n sb.clear();\n } }),\n ],\n });\n });\n }\n return Promise.resolve(popup);\n}\nfunction closePopup(popup) {\n if (popup && !popup.closed) {\n popup.close();\n }\n}\nfunction appendAppInfoQueryParams(url) {\n const params = {\n sdkName: _sdk_info_js__WEBPACK_IMPORTED_MODULE_3__.NAME,\n sdkVersion: _sdk_info_js__WEBPACK_IMPORTED_MODULE_3__.VERSION,\n origin: window.location.origin,\n coop: (0,_checkCrossOriginOpenerPolicy_js__WEBPACK_IMPORTED_MODULE_4__.getCrossOriginOpenerPolicy)(),\n };\n for (const [key, value] of Object.entries(params)) {\n if (!url.searchParams.has(key)) {\n url.searchParams.append(key, value.toString());\n }\n }\n}\nfunction initSnackbar() {\n if (!snackbar) {\n const root = document.createElement('div');\n root.className = '-cbwsdk-css-reset';\n document.body.appendChild(root);\n snackbar = new _sign_walletlink_relay_ui_components_Snackbar_Snackbar_js__WEBPACK_IMPORTED_MODULE_5__.Snackbar();\n snackbar.attach(root);\n }\n return snackbar;\n}\n//# sourceMappingURL=web.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvd2ViLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUF5RDtBQUN5QztBQUNoQjtBQUNLO0FBQ3hDO0FBQ2dDO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVSwwRkFBYztBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxvQkFBb0I7QUFDdEQseURBQXlELFlBQVksV0FBVyxhQUFhLFNBQVMsS0FBSyxRQUFRLElBQUk7QUFDdkg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksb0ZBQWdCLEdBQUcsa0NBQWtDO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtELG1CQUFtQjtBQUNyRSw0QkFBNEIsNEZBQXdCO0FBQ3BEO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QyxpRUFBYztBQUNyRDtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQiw4Q0FBSTtBQUNyQixvQkFBb0IsaURBQU87QUFDM0I7QUFDQSxjQUFjLDRGQUEwQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsK0ZBQVE7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3V0aWwvd2ViLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0YW5kYXJkRXJyb3JzIH0gZnJvbSAnLi4vY29yZS9lcnJvci9lcnJvcnMuanMnO1xuaW1wb3J0IHsgbG9nU25hY2tiYXJBY3Rpb25DbGlja2VkLCBsb2dTbmFja2JhclNob3duIH0gZnJvbSAnLi4vY29yZS90ZWxlbWV0cnkvZXZlbnRzL3NuYWNrYmFyLmpzJztcbmltcG9ydCB7IFJFVFJZX1NWR19QQVRIIH0gZnJvbSAnLi4vc2lnbi93YWxsZXRsaW5rL3JlbGF5L3VpL1dhbGxldExpbmtSZWxheVVJLmpzJztcbmltcG9ydCB7IFNuYWNrYmFyIH0gZnJvbSAnLi4vc2lnbi93YWxsZXRsaW5rL3JlbGF5L3VpL2NvbXBvbmVudHMvU25hY2tiYXIvU25hY2tiYXIuanMnO1xuaW1wb3J0IHsgTkFNRSwgVkVSU0lPTiB9IGZyb20gJy4uL3Nkay1pbmZvLmpzJztcbmltcG9ydCB7IGdldENyb3NzT3JpZ2luT3BlbmVyUG9saWN5IH0gZnJvbSAnLi9jaGVja0Nyb3NzT3JpZ2luT3BlbmVyUG9saWN5LmpzJztcbmNvbnN0IFBPUFVQX1dJRFRIID0gNDIwO1xuY29uc3QgUE9QVVBfSEVJR0hUID0gNzAwO1xuY29uc3QgUkVUUllfQlVUVE9OID0ge1xuICAgIGlzUmVkOiBmYWxzZSxcbiAgICBpbmZvOiAnUmV0cnknLFxuICAgIHN2Z1dpZHRoOiAnMTAnLFxuICAgIHN2Z0hlaWdodDogJzExJyxcbiAgICBwYXRoOiBSRVRSWV9TVkdfUEFUSCxcbiAgICBkZWZhdWx0RmlsbFJ1bGU6ICdldmVub2RkJyxcbiAgICBkZWZhdWx0Q2xpcFJ1bGU6ICdldmVub2RkJyxcbn07XG5jb25zdCBQT1BVUF9CTE9DS0VEX01FU1NBR0UgPSAnUG9wdXAgd2FzIGJsb2NrZWQuIFRyeSBhZ2Fpbi4nO1xubGV0IHNuYWNrYmFyID0gbnVsbDtcbmV4cG9ydCBmdW5jdGlvbiBvcGVuUG9wdXAodXJsKSB7XG4gICAgY29uc3QgbGVmdCA9ICh3aW5kb3cuaW5uZXJXaWR0aCAtIFBPUFVQX1dJRFRIKSAvIDIgKyB3aW5kb3cuc2NyZWVuWDtcbiAgICBjb25zdCB0b3AgPSAod2luZG93LmlubmVySGVpZ2h0IC0gUE9QVVBfSEVJR0hUKSAvIDIgKyB3aW5kb3cuc2NyZWVuWTtcbiAgICBhcHBlbmRBcHBJbmZvUXVlcnlQYXJhbXModXJsKTtcbiAgICBmdW5jdGlvbiB0cnlPcGVuUG9wdXAoKSB7XG4gICAgICAgIGNvbnN0IHBvcHVwSWQgPSBgd2FsbGV0XyR7Y3J5cHRvLnJhbmRvbVVVSUQoKX1gO1xuICAgICAgICBjb25zdCBwb3B1cCA9IHdpbmRvdy5vcGVuKHVybCwgcG9wdXBJZCwgYHdpZHRoPSR7UE9QVVBfV0lEVEh9LCBoZWlnaHQ9JHtQT1BVUF9IRUlHSFR9LCBsZWZ0PSR7bGVmdH0sIHRvcD0ke3RvcH1gKTtcbiAgICAgICAgcG9wdXAgPT09IG51bGwgfHwgcG9wdXAgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHBvcHVwLmZvY3VzKCk7XG4gICAgICAgIGlmICghcG9wdXApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwb3B1cDtcbiAgICB9XG4gICAgbGV0IHBvcHVwID0gdHJ5T3BlblBvcHVwKCk7XG4gICAgLy8gSWYgdGhlIHBvcHVwIHdhcyBibG9ja2VkLCBzaG93IGEgc25hY2tiYXIgd2l0aCBhIHJldHJ5IGJ1dHRvblxuICAgIGlmICghcG9wdXApIHtcbiAgICAgICAgY29uc3Qgc2IgPSBpbml0U25hY2tiYXIoKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIGxvZ1NuYWNrYmFyU2hvd24oeyBzbmFja2JhckNvbnRleHQ6ICdwb3B1cF9ibG9ja2VkJyB9KTtcbiAgICAgICAgICAgIHNiLnByZXNlbnRJdGVtKHtcbiAgICAgICAgICAgICAgICBhdXRvRXhwYW5kOiB0cnVlLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IFBPUFVQX0JMT0NLRURfTUVTU0FHRSxcbiAgICAgICAgICAgICAgICBtZW51SXRlbXM6IFtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBSRVRSWV9CVVRUT04pLCB7IG9uQ2xpY2s6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dTbmFja2JhckFjdGlvbkNsaWNrZWQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbmFja2JhckNvbnRleHQ6ICdwb3B1cF9ibG9ja2VkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc25hY2tiYXJBY3Rpb246ICdjb25maXJtJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3B1cCA9IHRyeU9wZW5Qb3B1cCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwb3B1cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHBvcHVwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChzdGFuZGFyZEVycm9ycy5ycGMuaW50ZXJuYWwoJ1BvcHVwIHdpbmRvdyB3YXMgYmxvY2tlZCcpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2IuY2xlYXIoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gfSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShwb3B1cCk7XG59XG5leHBvcnQgZnVuY3Rpb24gY2xvc2VQb3B1cChwb3B1cCkge1xuICAgIGlmIChwb3B1cCAmJiAhcG9wdXAuY2xvc2VkKSB7XG4gICAgICAgIHBvcHVwLmNsb3NlKCk7XG4gICAgfVxufVxuZnVuY3Rpb24gYXBwZW5kQXBwSW5mb1F1ZXJ5UGFyYW1zKHVybCkge1xuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgICAgc2RrTmFtZTogTkFNRSxcbiAgICAgICAgc2RrVmVyc2lvbjogVkVSU0lPTixcbiAgICAgICAgb3JpZ2luOiB3aW5kb3cubG9jYXRpb24ub3JpZ2luLFxuICAgICAgICBjb29wOiBnZXRDcm9zc09yaWdpbk9wZW5lclBvbGljeSgpLFxuICAgIH07XG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocGFyYW1zKSkge1xuICAgICAgICBpZiAoIXVybC5zZWFyY2hQYXJhbXMuaGFzKGtleSkpIHtcbiAgICAgICAgICAgIHVybC5zZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgdmFsdWUudG9TdHJpbmcoKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5leHBvcnQgZnVuY3Rpb24gaW5pdFNuYWNrYmFyKCkge1xuICAgIGlmICghc25hY2tiYXIpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICByb290LmNsYXNzTmFtZSA9ICctY2J3c2RrLWNzcy1yZXNldCc7XG4gICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocm9vdCk7XG4gICAgICAgIHNuYWNrYmFyID0gbmV3IFNuYWNrYmFyKCk7XG4gICAgICAgIHNuYWNrYmFyLmF0dGFjaChyb290KTtcbiAgICB9XG4gICAgcmV0dXJuIHNuYWNrYmFyO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9d2ViLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/util/web.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/abi.cjs": /*!**********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/abi.cjs ***! \**********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval(__webpack_require__.ts("/* provided dependency */ var Buffer = __webpack_require__(/*! buffer */ \"(app-pages-browser)/./node_modules/buffer/index.js\")[\"Buffer\"];\n// Extracted from https://github.com/ethereumjs/ethereumjs-abi and stripped out irrelevant code\n// Original code licensed under the MIT License - Copyright (c) 2015 Alex Beregszaszi\n\n/* eslint-disable */\n//prettier-ignore\nconst util = __webpack_require__(/*! ./util.cjs */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/util.cjs\")\n\n// Convert from short to canonical names\n// FIXME: optimise or make this nicer?\nfunction elementaryName (name) {\n if (name.startsWith('int[')) {\n return 'int256' + name.slice(3)\n } else if (name === 'int') {\n return 'int256'\n } else if (name.startsWith('uint[')) {\n return 'uint256' + name.slice(4)\n } else if (name === 'uint') {\n return 'uint256'\n } else if (name.startsWith('fixed[')) {\n return 'fixed128x128' + name.slice(5)\n } else if (name === 'fixed') {\n return 'fixed128x128'\n } else if (name.startsWith('ufixed[')) {\n return 'ufixed128x128' + name.slice(6)\n } else if (name === 'ufixed') {\n return 'ufixed128x128'\n }\n return name\n}\n\n// Parse N from type<N>\nfunction parseTypeN (type) {\n return Number.parseInt(/^\\D+(\\d+)$/.exec(type)[1], 10)\n}\n\n// Parse N,M from type<N>x<M>\nfunction parseTypeNxM (type) {\n var tmp = /^\\D+(\\d+)x(\\d+)$/.exec(type)\n return [ Number.parseInt(tmp[1], 10), Number.parseInt(tmp[2], 10) ]\n}\n\n// Parse N in type[<N>] where \"type\" can itself be an array type.\nfunction parseTypeArray (type) {\n var tmp = type.match(/(.*)\\[(.*?)\\]$/)\n if (tmp) {\n return tmp[2] === '' ? 'dynamic' : Number.parseInt(tmp[2], 10)\n }\n return null\n}\n\nfunction parseNumber (arg) {\n var type = typeof arg\n if (type === 'string' || type === 'number') {\n return BigInt(arg)\n } else if (type === 'bigint') {\n return arg\n } else {\n throw new Error('Argument is not a number')\n }\n}\n\n// Encodes a single item (can be dynamic array)\n// @returns: Buffer\nfunction encodeSingle (type, arg) {\n var size, num, ret, i\n\n if (type === 'address') {\n return encodeSingle('uint160', parseNumber(arg))\n } else if (type === 'bool') {\n return encodeSingle('uint8', arg ? 1 : 0)\n } else if (type === 'string') {\n return encodeSingle('bytes', new Buffer(arg, 'utf8'))\n } else if (isArray(type)) {\n // this part handles fixed-length ([2]) and variable length ([]) arrays\n // NOTE: we catch here all calls to arrays, that simplifies the rest\n if (typeof arg.length === 'undefined') {\n throw new Error('Not an array?')\n }\n size = parseTypeArray(type)\n if (size !== 'dynamic' && size !== 0 && arg.length > size) {\n throw new Error('Elements exceed array size: ' + size)\n }\n ret = []\n type = type.slice(0, type.lastIndexOf('['))\n if (typeof arg === 'string') {\n arg = JSON.parse(arg)\n }\n for (i in arg) {\n ret.push(encodeSingle(type, arg[i]))\n }\n if (size === 'dynamic') {\n var length = encodeSingle('uint256', arg.length)\n ret.unshift(length)\n }\n return Buffer.concat(ret)\n } else if (type === 'bytes') {\n arg = new Buffer(arg)\n\n ret = Buffer.concat([ encodeSingle('uint256', arg.length), arg ])\n\n if ((arg.length % 32) !== 0) {\n ret = Buffer.concat([ ret, util.zeros(32 - (arg.length % 32)) ])\n }\n\n return ret\n } else if (type.startsWith('bytes')) {\n size = parseTypeN(type)\n if (size < 1 || size > 32) {\n throw new Error('Invalid bytes<N> width: ' + size)\n }\n\n return util.setLengthRight(arg, 32)\n } else if (type.startsWith('uint')) {\n size = parseTypeN(type)\n if ((size % 8) || (size < 8) || (size > 256)) {\n throw new Error('Invalid uint<N> width: ' + size)\n }\n\n num = parseNumber(arg)\n const bitLength = util.bitLengthFromBigInt(num)\n if (bitLength > size) {\n throw new Error('Supplied uint exceeds width: ' + size + ' vs ' + bitLength)\n }\n\n if (num < 0) {\n throw new Error('Supplied uint is negative')\n }\n\n return util.bufferBEFromBigInt(num, 32);\n } else if (type.startsWith('int')) {\n size = parseTypeN(type)\n if ((size % 8) || (size < 8) || (size > 256)) {\n throw new Error('Invalid int<N> width: ' + size)\n }\n\n num = parseNumber(arg)\n const bitLength = util.bitLengthFromBigInt(num)\n if (bitLength > size) {\n throw new Error('Supplied int exceeds width: ' + size + ' vs ' + bitLength)\n }\n\n const twos = util.twosFromBigInt(num, 256);\n\n return util.bufferBEFromBigInt(twos, 32);\n } else if (type.startsWith('ufixed')) {\n size = parseTypeNxM(type)\n\n num = parseNumber(arg)\n\n if (num < 0) {\n throw new Error('Supplied ufixed is negative')\n }\n\n return encodeSingle('uint256', num * BigInt(2) ** BigInt(size[1]))\n } else if (type.startsWith('fixed')) {\n size = parseTypeNxM(type)\n\n return encodeSingle('int256', parseNumber(arg) * BigInt(2) ** BigInt(size[1]))\n }\n\n throw new Error('Unsupported or invalid type: ' + type)\n}\n\n// Is a type dynamic?\nfunction isDynamic (type) {\n // FIXME: handle all types? I don't think anything is missing now\n return (type === 'string') || (type === 'bytes') || (parseTypeArray(type) === 'dynamic')\n}\n\n// Is a type an array?\nfunction isArray (type) {\n return type.lastIndexOf(']') === type.length - 1\n}\n\n// Encode a method/event with arguments\n// @types an array of string type names\n// @args an array of the appropriate values\nfunction rawEncode (types, values) {\n var output = []\n var data = []\n\n var headLength = 32 * types.length\n\n for (var i in types) {\n var type = elementaryName(types[i])\n var value = values[i]\n var cur = encodeSingle(type, value)\n\n // Use the head/tail method for storing dynamic data\n if (isDynamic(type)) {\n output.push(encodeSingle('uint256', headLength))\n data.push(cur)\n headLength += cur.length\n } else {\n output.push(cur)\n }\n }\n\n return Buffer.concat(output.concat(data))\n}\n\nfunction solidityPack (types, values) {\n if (types.length !== values.length) {\n throw new Error('Number of types are not matching the values')\n }\n\n var size, num\n var ret = []\n\n for (var i = 0; i < types.length; i++) {\n var type = elementaryName(types[i])\n var value = values[i]\n\n if (type === 'bytes') {\n ret.push(value)\n } else if (type === 'string') {\n ret.push(new Buffer(value, 'utf8'))\n } else if (type === 'bool') {\n ret.push(new Buffer(value ? '01' : '00', 'hex'))\n } else if (type === 'address') {\n ret.push(util.setLength(value, 20))\n } else if (type.startsWith('bytes')) {\n size = parseTypeN(type)\n if (size < 1 || size > 32) {\n throw new Error('Invalid bytes<N> width: ' + size)\n }\n\n ret.push(util.setLengthRight(value, size))\n } else if (type.startsWith('uint')) {\n size = parseTypeN(type)\n if ((size % 8) || (size < 8) || (size > 256)) {\n throw new Error('Invalid uint<N> width: ' + size)\n }\n\n num = parseNumber(value)\n const bitLength = util.bitLengthFromBigInt(num)\n if (bitLength > size) {\n throw new Error('Supplied uint exceeds width: ' + size + ' vs ' + bitLength)\n }\n\n ret.push(util.bufferBEFromBigInt(num, size / 8))\n } else if (type.startsWith('int')) {\n size = parseTypeN(type)\n if ((size % 8) || (size < 8) || (size > 256)) {\n throw new Error('Invalid int<N> width: ' + size)\n }\n\n num = parseNumber(value)\n const bitLength = util.bitLengthFromBigInt(num)\n if (bitLength > size) {\n throw new Error('Supplied int exceeds width: ' + size + ' vs ' + bitLength)\n }\n\n const twos = util.twosFromBigInt(num, size);\n ret.push(util.bufferBEFromBigInt(twos, size / 8))\n } else {\n // FIXME: support all other types\n throw new Error('Unsupported or invalid type: ' + type)\n }\n }\n\n return Buffer.concat(ret)\n}\n\nfunction soliditySHA3 (types, values) {\n return util.keccak(solidityPack(types, values))\n}\n\nmodule.exports = {\n rawEncode,\n solidityPack,\n soliditySHA3\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3ZlbmRvci1qcy9ldGgtZWlwNzEyLXV0aWwvYWJpLmNqcyIsIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsYUFBYSxtQkFBTyxDQUFDLG1IQUFZOztBQUVqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLElBQUk7QUFDSixxQ0FBcUMsTUFBTTtBQUMzQyxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxNQUFNO0FBQ2pCLElBQUk7QUFDSixjQUFjLE1BQU07O0FBRXBCLFVBQVUsTUFBTTs7QUFFaEI7QUFDQSxZQUFZLE1BQU07QUFDbEI7O0FBRUE7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBLElBQUk7QUFDSjs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxJQUFJO0FBQ0o7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBOztBQUVBLFNBQVMsTUFBTTtBQUNmOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsa0JBQWtCLGtCQUFrQjtBQUNwQztBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNO0FBQ04sbUJBQW1CLE1BQU07QUFDekIsTUFBTTtBQUNOLG1CQUFtQixNQUFNO0FBQ3pCLE1BQU07QUFDTjtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxTQUFTLE1BQU07QUFDZjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3ZlbmRvci1qcy9ldGgtZWlwNzEyLXV0aWwvYWJpLmNqcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBFeHRyYWN0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vZXRoZXJldW1qcy9ldGhlcmV1bWpzLWFiaSBhbmQgc3RyaXBwZWQgb3V0IGlycmVsZXZhbnQgY29kZVxuLy8gT3JpZ2luYWwgY29kZSBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgLSBDb3B5cmlnaHQgKGMpIDIwMTUgQWxleCBCZXJlZ3N6YXN6aVxuXG4vKiBlc2xpbnQtZGlzYWJsZSAqL1xuLy9wcmV0dGllci1pZ25vcmVcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuL3V0aWwuY2pzJylcblxuLy8gQ29udmVydCBmcm9tIHNob3J0IHRvIGNhbm9uaWNhbCBuYW1lc1xuLy8gRklYTUU6IG9wdGltaXNlIG9yIG1ha2UgdGhpcyBuaWNlcj9cbmZ1bmN0aW9uIGVsZW1lbnRhcnlOYW1lIChuYW1lKSB7XG4gIGlmIChuYW1lLnN0YXJ0c1dpdGgoJ2ludFsnKSkge1xuICAgIHJldHVybiAnaW50MjU2JyArIG5hbWUuc2xpY2UoMylcbiAgfSBlbHNlIGlmIChuYW1lID09PSAnaW50Jykge1xuICAgIHJldHVybiAnaW50MjU2J1xuICB9IGVsc2UgaWYgKG5hbWUuc3RhcnRzV2l0aCgndWludFsnKSkge1xuICAgIHJldHVybiAndWludDI1NicgKyBuYW1lLnNsaWNlKDQpXG4gIH0gZWxzZSBpZiAobmFtZSA9PT0gJ3VpbnQnKSB7XG4gICAgcmV0dXJuICd1aW50MjU2J1xuICB9IGVsc2UgaWYgKG5hbWUuc3RhcnRzV2l0aCgnZml4ZWRbJykpIHtcbiAgICByZXR1cm4gJ2ZpeGVkMTI4eDEyOCcgKyBuYW1lLnNsaWNlKDUpXG4gIH0gZWxzZSBpZiAobmFtZSA9PT0gJ2ZpeGVkJykge1xuICAgIHJldHVybiAnZml4ZWQxMjh4MTI4J1xuICB9IGVsc2UgaWYgKG5hbWUuc3RhcnRzV2l0aCgndWZpeGVkWycpKSB7XG4gICAgcmV0dXJuICd1Zml4ZWQxMjh4MTI4JyArIG5hbWUuc2xpY2UoNilcbiAgfSBlbHNlIGlmIChuYW1lID09PSAndWZpeGVkJykge1xuICAgIHJldHVybiAndWZpeGVkMTI4eDEyOCdcbiAgfVxuICByZXR1cm4gbmFtZVxufVxuXG4vLyBQYXJzZSBOIGZyb20gdHlwZTxOPlxuZnVuY3Rpb24gcGFyc2VUeXBlTiAodHlwZSkge1xuICByZXR1cm4gTnVtYmVyLnBhcnNlSW50KC9eXFxEKyhcXGQrKSQvLmV4ZWModHlwZSlbMV0sIDEwKVxufVxuXG4vLyBQYXJzZSBOLE0gZnJvbSB0eXBlPE4+eDxNPlxuZnVuY3Rpb24gcGFyc2VUeXBlTnhNICh0eXBlKSB7XG4gIHZhciB0bXAgPSAvXlxcRCsoXFxkKyl4KFxcZCspJC8uZXhlYyh0eXBlKVxuICByZXR1cm4gWyBOdW1iZXIucGFyc2VJbnQodG1wWzFdLCAxMCksIE51bWJlci5wYXJzZUludCh0bXBbMl0sIDEwKSBdXG59XG5cbi8vIFBhcnNlIE4gaW4gdHlwZVs8Tj5dIHdoZXJlIFwidHlwZVwiIGNhbiBpdHNlbGYgYmUgYW4gYXJyYXkgdHlwZS5cbmZ1bmN0aW9uIHBhcnNlVHlwZUFycmF5ICh0eXBlKSB7XG4gIHZhciB0bXAgPSB0eXBlLm1hdGNoKC8oLiopXFxbKC4qPylcXF0kLylcbiAgaWYgKHRtcCkge1xuICAgIHJldHVybiB0bXBbMl0gPT09ICcnID8gJ2R5bmFtaWMnIDogTnVtYmVyLnBhcnNlSW50KHRtcFsyXSwgMTApXG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZnVuY3Rpb24gcGFyc2VOdW1iZXIgKGFyZykge1xuICB2YXIgdHlwZSA9IHR5cGVvZiBhcmdcbiAgaWYgKHR5cGUgPT09ICdzdHJpbmcnIHx8IHR5cGUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIEJpZ0ludChhcmcpXG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2JpZ2ludCcpIHtcbiAgICByZXR1cm4gYXJnXG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdBcmd1bWVudCBpcyBub3QgYSBudW1iZXInKVxuICB9XG59XG5cbi8vIEVuY29kZXMgYSBzaW5nbGUgaXRlbSAoY2FuIGJlIGR5bmFtaWMgYXJyYXkpXG4vLyBAcmV0dXJuczogQnVmZmVyXG5mdW5jdGlvbiBlbmNvZGVTaW5nbGUgKHR5cGUsIGFyZykge1xuICB2YXIgc2l6ZSwgbnVtLCByZXQsIGlcblxuICBpZiAodHlwZSA9PT0gJ2FkZHJlc3MnKSB7XG4gICAgcmV0dXJuIGVuY29kZVNpbmdsZSgndWludDE2MCcsIHBhcnNlTnVtYmVyKGFyZykpXG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2Jvb2wnKSB7XG4gICAgcmV0dXJuIGVuY29kZVNpbmdsZSgndWludDgnLCBhcmcgPyAxIDogMClcbiAgfSBlbHNlIGlmICh0eXBlID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBlbmNvZGVTaW5nbGUoJ2J5dGVzJywgbmV3IEJ1ZmZlcihhcmcsICd1dGY4JykpXG4gIH0gZWxzZSBpZiAoaXNBcnJheSh0eXBlKSkge1xuICAgIC8vIHRoaXMgcGFydCBoYW5kbGVzIGZpeGVkLWxlbmd0aCAoWzJdKSBhbmQgdmFyaWFibGUgbGVuZ3RoIChbXSkgYXJyYXlzXG4gICAgLy8gTk9URTogd2UgY2F0Y2ggaGVyZSBhbGwgY2FsbHMgdG8gYXJyYXlzLCB0aGF0IHNpbXBsaWZpZXMgdGhlIHJlc3RcbiAgICBpZiAodHlwZW9mIGFyZy5sZW5ndGggPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBhbiBhcnJheT8nKVxuICAgIH1cbiAgICBzaXplID0gcGFyc2VUeXBlQXJyYXkodHlwZSlcbiAgICBpZiAoc2l6ZSAhPT0gJ2R5bmFtaWMnICYmIHNpemUgIT09IDAgJiYgYXJnLmxlbmd0aCA+IHNpemUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWxlbWVudHMgZXhjZWVkIGFycmF5IHNpemU6ICcgKyBzaXplKVxuICAgIH1cbiAgICByZXQgPSBbXVxuICAgIHR5cGUgPSB0eXBlLnNsaWNlKDAsIHR5cGUubGFzdEluZGV4T2YoJ1snKSlcbiAgICBpZiAodHlwZW9mIGFyZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGFyZyA9IEpTT04ucGFyc2UoYXJnKVxuICAgIH1cbiAgICBmb3IgKGkgaW4gYXJnKSB7XG4gICAgICByZXQucHVzaChlbmNvZGVTaW5nbGUodHlwZSwgYXJnW2ldKSlcbiAgICB9XG4gICAgaWYgKHNpemUgPT09ICdkeW5hbWljJykge1xuICAgICAgdmFyIGxlbmd0aCA9IGVuY29kZVNpbmdsZSgndWludDI1NicsIGFyZy5sZW5ndGgpXG4gICAgICByZXQudW5zaGlmdChsZW5ndGgpXG4gICAgfVxuICAgIHJldHVybiBCdWZmZXIuY29uY2F0KHJldClcbiAgfSBlbHNlIGlmICh0eXBlID09PSAnYnl0ZXMnKSB7XG4gICAgYXJnID0gbmV3IEJ1ZmZlcihhcmcpXG5cbiAgICByZXQgPSBCdWZmZXIuY29uY2F0KFsgZW5jb2RlU2luZ2xlKCd1aW50MjU2JywgYXJnLmxlbmd0aCksIGFyZyBdKVxuXG4gICAgaWYgKChhcmcubGVuZ3RoICUgMzIpICE9PSAwKSB7XG4gICAgICByZXQgPSBCdWZmZXIuY29uY2F0KFsgcmV0LCB1dGlsLnplcm9zKDMyIC0gKGFyZy5sZW5ndGggJSAzMikpIF0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHJldFxuICB9IGVsc2UgaWYgKHR5cGUuc3RhcnRzV2l0aCgnYnl0ZXMnKSkge1xuICAgIHNpemUgPSBwYXJzZVR5cGVOKHR5cGUpXG4gICAgaWYgKHNpemUgPCAxIHx8IHNpemUgPiAzMikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGJ5dGVzPE4+IHdpZHRoOiAnICsgc2l6ZSlcbiAgICB9XG5cbiAgICByZXR1cm4gdXRpbC5zZXRMZW5ndGhSaWdodChhcmcsIDMyKVxuICB9IGVsc2UgaWYgKHR5cGUuc3RhcnRzV2l0aCgndWludCcpKSB7XG4gICAgc2l6ZSA9IHBhcnNlVHlwZU4odHlwZSlcbiAgICBpZiAoKHNpemUgJSA4KSB8fCAoc2l6ZSA8IDgpIHx8IChzaXplID4gMjU2KSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHVpbnQ8Tj4gd2lkdGg6ICcgKyBzaXplKVxuICAgIH1cblxuICAgIG51bSA9IHBhcnNlTnVtYmVyKGFyZylcbiAgICBjb25zdCBiaXRMZW5ndGggPSB1dGlsLmJpdExlbmd0aEZyb21CaWdJbnQobnVtKVxuICAgIGlmIChiaXRMZW5ndGggPiBzaXplKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1N1cHBsaWVkIHVpbnQgZXhjZWVkcyB3aWR0aDogJyArIHNpemUgKyAnIHZzICcgKyBiaXRMZW5ndGgpXG4gICAgfVxuXG4gICAgaWYgKG51bSA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU3VwcGxpZWQgdWludCBpcyBuZWdhdGl2ZScpXG4gICAgfVxuXG4gICAgcmV0dXJuIHV0aWwuYnVmZmVyQkVGcm9tQmlnSW50KG51bSwgMzIpO1xuICB9IGVsc2UgaWYgKHR5cGUuc3RhcnRzV2l0aCgnaW50JykpIHtcbiAgICBzaXplID0gcGFyc2VUeXBlTih0eXBlKVxuICAgIGlmICgoc2l6ZSAlIDgpIHx8IChzaXplIDwgOCkgfHwgKHNpemUgPiAyNTYpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgaW50PE4+IHdpZHRoOiAnICsgc2l6ZSlcbiAgICB9XG5cbiAgICBudW0gPSBwYXJzZU51bWJlcihhcmcpXG4gICAgY29uc3QgYml0TGVuZ3RoID0gdXRpbC5iaXRMZW5ndGhGcm9tQmlnSW50KG51bSlcbiAgICBpZiAoYml0TGVuZ3RoID4gc2l6ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdTdXBwbGllZCBpbnQgZXhjZWVkcyB3aWR0aDogJyArIHNpemUgKyAnIHZzICcgKyBiaXRMZW5ndGgpXG4gICAgfVxuXG4gICAgY29uc3QgdHdvcyA9IHV0aWwudHdvc0Zyb21CaWdJbnQobnVtLCAyNTYpO1xuXG4gICAgcmV0dXJuIHV0aWwuYnVmZmVyQkVGcm9tQmlnSW50KHR3b3MsIDMyKTtcbiAgfSBlbHNlIGlmICh0eXBlLnN0YXJ0c1dpdGgoJ3VmaXhlZCcpKSB7XG4gICAgc2l6ZSA9IHBhcnNlVHlwZU54TSh0eXBlKVxuXG4gICAgbnVtID0gcGFyc2VOdW1iZXIoYXJnKVxuXG4gICAgaWYgKG51bSA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU3VwcGxpZWQgdWZpeGVkIGlzIG5lZ2F0aXZlJylcbiAgICB9XG5cbiAgICByZXR1cm4gZW5jb2RlU2luZ2xlKCd1aW50MjU2JywgbnVtICogQmlnSW50KDIpICoqIEJpZ0ludChzaXplWzFdKSlcbiAgfSBlbHNlIGlmICh0eXBlLnN0YXJ0c1dpdGgoJ2ZpeGVkJykpIHtcbiAgICBzaXplID0gcGFyc2VUeXBlTnhNKHR5cGUpXG5cbiAgICByZXR1cm4gZW5jb2RlU2luZ2xlKCdpbnQyNTYnLCBwYXJzZU51bWJlcihhcmcpICogQmlnSW50KDIpICoqIEJpZ0ludChzaXplWzFdKSlcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgb3IgaW52YWxpZCB0eXBlOiAnICsgdHlwZSlcbn1cblxuLy8gSXMgYSB0eXBlIGR5bmFtaWM/XG5mdW5jdGlvbiBpc0R5bmFtaWMgKHR5cGUpIHtcbiAgLy8gRklYTUU6IGhhbmRsZSBhbGwgdHlwZXM/IEkgZG9uJ3QgdGhpbmsgYW55dGhpbmcgaXMgbWlzc2luZyBub3dcbiAgcmV0dXJuICh0eXBlID09PSAnc3RyaW5nJykgfHwgKHR5cGUgPT09ICdieXRlcycpIHx8IChwYXJzZVR5cGVBcnJheSh0eXBlKSA9PT0gJ2R5bmFtaWMnKVxufVxuXG4vLyBJcyBhIHR5cGUgYW4gYXJyYXk/XG5mdW5jdGlvbiBpc0FycmF5ICh0eXBlKSB7XG4gIHJldHVybiB0eXBlLmxhc3RJbmRleE9mKCddJykgPT09IHR5cGUubGVuZ3RoIC0gMVxufVxuXG4vLyBFbmNvZGUgYSBtZXRob2QvZXZlbnQgd2l0aCBhcmd1bWVudHNcbi8vIEB0eXBlcyBhbiBhcnJheSBvZiBzdHJpbmcgdHlwZSBuYW1lc1xuLy8gQGFyZ3MgIGFuIGFycmF5IG9mIHRoZSBhcHByb3ByaWF0ZSB2YWx1ZXNcbmZ1bmN0aW9uIHJhd0VuY29kZSAodHlwZXMsIHZhbHVlcykge1xuICB2YXIgb3V0cHV0ID0gW11cbiAgdmFyIGRhdGEgPSBbXVxuXG4gIHZhciBoZWFkTGVuZ3RoID0gMzIgKiB0eXBlcy5sZW5ndGhcblxuICBmb3IgKHZhciBpIGluIHR5cGVzKSB7XG4gICAgdmFyIHR5cGUgPSBlbGVtZW50YXJ5TmFtZSh0eXBlc1tpXSlcbiAgICB2YXIgdmFsdWUgPSB2YWx1ZXNbaV1cbiAgICB2YXIgY3VyID0gZW5jb2RlU2luZ2xlKHR5cGUsIHZhbHVlKVxuXG4gICAgLy8gVXNlIHRoZSBoZWFkL3RhaWwgbWV0aG9kIGZvciBzdG9yaW5nIGR5bmFtaWMgZGF0YVxuICAgIGlmIChpc0R5bmFtaWModHlwZSkpIHtcbiAgICAgIG91dHB1dC5wdXNoKGVuY29kZVNpbmdsZSgndWludDI1NicsIGhlYWRMZW5ndGgpKVxuICAgICAgZGF0YS5wdXNoKGN1cilcbiAgICAgIGhlYWRMZW5ndGggKz0gY3VyLmxlbmd0aFxuICAgIH0gZWxzZSB7XG4gICAgICBvdXRwdXQucHVzaChjdXIpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIEJ1ZmZlci5jb25jYXQob3V0cHV0LmNvbmNhdChkYXRhKSlcbn1cblxuZnVuY3Rpb24gc29saWRpdHlQYWNrICh0eXBlcywgdmFsdWVzKSB7XG4gIGlmICh0eXBlcy5sZW5ndGggIT09IHZhbHVlcy5sZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ051bWJlciBvZiB0eXBlcyBhcmUgbm90IG1hdGNoaW5nIHRoZSB2YWx1ZXMnKVxuICB9XG5cbiAgdmFyIHNpemUsIG51bVxuICB2YXIgcmV0ID0gW11cblxuICBmb3IgKHZhciBpID0gMDsgaSA8IHR5cGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIHR5cGUgPSBlbGVtZW50YXJ5TmFtZSh0eXBlc1tpXSlcbiAgICB2YXIgdmFsdWUgPSB2YWx1ZXNbaV1cblxuICAgIGlmICh0eXBlID09PSAnYnl0ZXMnKSB7XG4gICAgICByZXQucHVzaCh2YWx1ZSlcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXQucHVzaChuZXcgQnVmZmVyKHZhbHVlLCAndXRmOCcpKVxuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2Jvb2wnKSB7XG4gICAgICByZXQucHVzaChuZXcgQnVmZmVyKHZhbHVlID8gJzAxJyA6ICcwMCcsICdoZXgnKSlcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdhZGRyZXNzJykge1xuICAgICAgcmV0LnB1c2godXRpbC5zZXRMZW5ndGgodmFsdWUsIDIwKSlcbiAgICB9IGVsc2UgaWYgKHR5cGUuc3RhcnRzV2l0aCgnYnl0ZXMnKSkge1xuICAgICAgc2l6ZSA9IHBhcnNlVHlwZU4odHlwZSlcbiAgICAgIGlmIChzaXplIDwgMSB8fCBzaXplID4gMzIpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGJ5dGVzPE4+IHdpZHRoOiAnICsgc2l6ZSlcbiAgICAgIH1cblxuICAgICAgcmV0LnB1c2godXRpbC5zZXRMZW5ndGhSaWdodCh2YWx1ZSwgc2l6ZSkpXG4gICAgfSBlbHNlIGlmICh0eXBlLnN0YXJ0c1dpdGgoJ3VpbnQnKSkge1xuICAgICAgc2l6ZSA9IHBhcnNlVHlwZU4odHlwZSlcbiAgICAgIGlmICgoc2l6ZSAlIDgpIHx8IChzaXplIDwgOCkgfHwgKHNpemUgPiAyNTYpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB1aW50PE4+IHdpZHRoOiAnICsgc2l6ZSlcbiAgICAgIH1cblxuICAgICAgbnVtID0gcGFyc2VOdW1iZXIodmFsdWUpXG4gICAgICBjb25zdCBiaXRMZW5ndGggPSB1dGlsLmJpdExlbmd0aEZyb21CaWdJbnQobnVtKVxuICAgICAgaWYgKGJpdExlbmd0aCA+IHNpemUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdTdXBwbGllZCB1aW50IGV4Y2VlZHMgd2lkdGg6ICcgKyBzaXplICsgJyB2cyAnICsgYml0TGVuZ3RoKVxuICAgICAgfVxuXG4gICAgICByZXQucHVzaCh1dGlsLmJ1ZmZlckJFRnJvbUJpZ0ludChudW0sIHNpemUgLyA4KSlcbiAgICB9IGVsc2UgaWYgKHR5cGUuc3RhcnRzV2l0aCgnaW50JykpIHtcbiAgICAgIHNpemUgPSBwYXJzZVR5cGVOKHR5cGUpXG4gICAgICBpZiAoKHNpemUgJSA4KSB8fCAoc2l6ZSA8IDgpIHx8IChzaXplID4gMjU2KSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgaW50PE4+IHdpZHRoOiAnICsgc2l6ZSlcbiAgICAgIH1cblxuICAgICAgbnVtID0gcGFyc2VOdW1iZXIodmFsdWUpXG4gICAgICBjb25zdCBiaXRMZW5ndGggPSB1dGlsLmJpdExlbmd0aEZyb21CaWdJbnQobnVtKVxuICAgICAgaWYgKGJpdExlbmd0aCA+IHNpemUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdTdXBwbGllZCBpbnQgZXhjZWVkcyB3aWR0aDogJyArIHNpemUgKyAnIHZzICcgKyBiaXRMZW5ndGgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHR3b3MgPSB1dGlsLnR3b3NGcm9tQmlnSW50KG51bSwgc2l6ZSk7XG4gICAgICByZXQucHVzaCh1dGlsLmJ1ZmZlckJFRnJvbUJpZ0ludCh0d29zLCBzaXplIC8gOCkpXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEZJWE1FOiBzdXBwb3J0IGFsbCBvdGhlciB0eXBlc1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBvciBpbnZhbGlkIHR5cGU6ICcgKyB0eXBlKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBCdWZmZXIuY29uY2F0KHJldClcbn1cblxuZnVuY3Rpb24gc29saWRpdHlTSEEzICh0eXBlcywgdmFsdWVzKSB7XG4gIHJldHVybiB1dGlsLmtlY2Nhayhzb2xpZGl0eVBhY2sodHlwZXMsIHZhbHVlcykpXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICByYXdFbmNvZGUsXG4gIHNvbGlkaXR5UGFjayxcbiAgc29saWRpdHlTSEEzXG59XG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/abi.cjs\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/index.cjs": /*!************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/index.cjs ***! \************************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval(__webpack_require__.ts("/* provided dependency */ var Buffer = __webpack_require__(/*! buffer */ \"(app-pages-browser)/./node_modules/buffer/index.js\")[\"Buffer\"];\n/* eslint-disable */\n//prettier-ignore\n\nconst util = __webpack_require__(/*! ./util.cjs */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/util.cjs\")\nconst abi = __webpack_require__(/*! ./abi.cjs */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/abi.cjs\")\n\nconst TYPED_MESSAGE_SCHEMA = {\n type: 'object',\n properties: {\n types: {\n type: 'object',\n additionalProperties: {\n type: 'array',\n items: {\n type: 'object',\n properties: {\n name: {type: 'string'},\n type: {type: 'string'},\n },\n required: ['name', 'type'],\n },\n },\n },\n primaryType: {type: 'string'},\n domain: {type: 'object'},\n message: {type: 'object'},\n },\n required: ['types', 'primaryType', 'domain', 'message'],\n}\n\n/**\n * A collection of utility functions used for signing typed data\n */\nconst TypedDataUtils = {\n /**\n * Encodes an object by encoding and concatenating each of its members\n *\n * @param {string} primaryType - Root type\n * @param {Object} data - Object to encode\n * @param {Object} types - Type definitions\n * @returns {string} - Encoded representation of an object\n */\n encodeData (primaryType, data, types, useV4 = true) {\n const encodedTypes = ['bytes32']\n const encodedValues = [this.hashType(primaryType, types)]\n\n if(useV4) {\n const encodeField = (name, type, value) => {\n if (types[type] !== undefined) {\n return ['bytes32', value == null ?\n '0x0000000000000000000000000000000000000000000000000000000000000000' :\n util.keccak(this.encodeData(type, value, types, useV4))]\n }\n\n if(value === undefined)\n throw new Error(`missing value for field ${name} of type ${type}`)\n\n if (type === 'bytes') {\n return ['bytes32', util.keccak(value)]\n }\n\n if (type === 'string') {\n // convert string to buffer - prevents ethUtil from interpreting strings like '0xabcd' as hex\n if (typeof value === 'string') {\n value = Buffer.from(value, 'utf8')\n }\n return ['bytes32', util.keccak(value)]\n }\n\n if (type.lastIndexOf(']') === type.length - 1) {\n const parsedType = type.slice(0, type.lastIndexOf('['))\n const typeValuePairs = value.map(item =>\n encodeField(name, parsedType, item))\n return ['bytes32', util.keccak(abi.rawEncode(\n typeValuePairs.map(([type]) => type),\n typeValuePairs.map(([, value]) => value),\n ))]\n }\n\n return [type, value]\n }\n\n for (const field of types[primaryType]) {\n const [type, value] = encodeField(field.name, field.type, data[field.name])\n encodedTypes.push(type)\n encodedValues.push(value)\n }\n } else {\n for (const field of types[primaryType]) {\n let value = data[field.name]\n if (value !== undefined) {\n if (field.type === 'bytes') {\n encodedTypes.push('bytes32')\n value = util.keccak(value)\n encodedValues.push(value)\n } else if (field.type === 'string') {\n encodedTypes.push('bytes32')\n // convert string to buffer - prevents ethUtil from interpreting strings like '0xabcd' as hex\n if (typeof value === 'string') {\n value = Buffer.from(value, 'utf8')\n }\n value = util.keccak(value)\n encodedValues.push(value)\n } else if (types[field.type] !== undefined) {\n encodedTypes.push('bytes32')\n value = util.keccak(this.encodeData(field.type, value, types, useV4))\n encodedValues.push(value)\n } else if (field.type.lastIndexOf(']') === field.type.length - 1) {\n throw new Error('Arrays currently unimplemented in encodeData')\n } else {\n encodedTypes.push(field.type)\n encodedValues.push(value)\n }\n }\n }\n }\n\n return abi.rawEncode(encodedTypes, encodedValues)\n },\n\n /**\n * Encodes the type of an object by encoding a comma delimited list of its members\n *\n * @param {string} primaryType - Root type to encode\n * @param {Object} types - Type definitions\n * @returns {string} - Encoded representation of the type of an object\n */\n encodeType (primaryType, types) {\n let result = ''\n let deps = this.findTypeDependencies(primaryType, types).filter(dep => dep !== primaryType)\n deps = [primaryType].concat(deps.sort())\n for (const type of deps) {\n const children = types[type]\n if (!children) {\n throw new Error('No type definition specified: ' + type)\n }\n result += type + '(' + types[type].map(({ name, type }) => type + ' ' + name).join(',') + ')'\n }\n return result\n },\n\n /**\n * Finds all types within a type definition object\n *\n * @param {string} primaryType - Root type\n * @param {Object} types - Type definitions\n * @param {Array} results - current set of accumulated types\n * @returns {Array} - Set of all types found in the type definition\n */\n findTypeDependencies (primaryType, types, results = []) {\n primaryType = primaryType.match(/^\\w*/)[0]\n if (results.includes(primaryType) || types[primaryType] === undefined) { return results }\n results.push(primaryType)\n for (const field of types[primaryType]) {\n for (const dep of this.findTypeDependencies(field.type, types, results)) {\n !results.includes(dep) && results.push(dep)\n }\n }\n return results\n },\n\n /**\n * Hashes an object\n *\n * @param {string} primaryType - Root type\n * @param {Object} data - Object to hash\n * @param {Object} types - Type definitions\n * @returns {Buffer} - Hash of an object\n */\n hashStruct (primaryType, data, types, useV4 = true) {\n return util.keccak(this.encodeData(primaryType, data, types, useV4))\n },\n\n /**\n * Hashes the type of an object\n *\n * @param {string} primaryType - Root type to hash\n * @param {Object} types - Type definitions\n * @returns {string} - Hash of an object\n */\n hashType (primaryType, types) {\n return util.keccak(this.encodeType(primaryType, types))\n },\n\n /**\n * Removes properties from a message object that are not defined per EIP-712\n *\n * @param {Object} data - typed message object\n * @returns {Object} - typed message object with only allowed fields\n */\n sanitizeData (data) {\n const sanitizedData = {}\n for (const key in TYPED_MESSAGE_SCHEMA.properties) {\n data[key] && (sanitizedData[key] = data[key])\n }\n if (sanitizedData.types) {\n sanitizedData.types = Object.assign({ EIP712Domain: [] }, sanitizedData.types)\n }\n return sanitizedData\n },\n\n /**\n * Returns the hash of a typed message as per EIP-712 for signing\n *\n * @param {Object} typedData - Types message data to sign\n * @returns {string} - sha3 hash for signing\n */\n hash (typedData, useV4 = true) {\n const sanitizedData = this.sanitizeData(typedData)\n const parts = [Buffer.from('1901', 'hex')]\n parts.push(this.hashStruct('EIP712Domain', sanitizedData.domain, sanitizedData.types, useV4))\n if (sanitizedData.primaryType !== 'EIP712Domain') {\n parts.push(this.hashStruct(sanitizedData.primaryType, sanitizedData.message, sanitizedData.types, useV4))\n }\n return util.keccak(Buffer.concat(parts))\n },\n}\n\nmodule.exports = {\n TYPED_MESSAGE_SCHEMA,\n TypedDataUtils,\n\n hashForSignTypedDataLegacy: function (msgParams) {\n return typedSignatureHashLegacy(msgParams.data)\n },\n\n hashForSignTypedData_v3: function (msgParams) {\n return TypedDataUtils.hash(msgParams.data, false)\n },\n\n hashForSignTypedData_v4: function (msgParams) {\n return TypedDataUtils.hash(msgParams.data)\n },\n}\n\n/**\n * @param typedData - Array of data along with types, as per EIP712.\n * @returns Buffer\n */\nfunction typedSignatureHashLegacy(typedData) {\n const error = new Error('Expect argument to be non-empty array')\n if (typeof typedData !== 'object' || !typedData.length) throw error\n\n const data = typedData.map(function (e) {\n return e.type === 'bytes' ? util.toBuffer(e.value) : e.value\n })\n const types = typedData.map(function (e) { return e.type })\n const schema = typedData.map(function (e) {\n if (!e.name) throw error\n return e.type + ' ' + e.name\n })\n\n return abi.soliditySHA3(\n ['bytes32', 'bytes32'],\n [\n abi.soliditySHA3(new Array(typedData.length).fill('string'), schema),\n abi.soliditySHA3(types, data)\n ]\n )\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3ZlbmRvci1qcy9ldGgtZWlwNzEyLXV0aWwvaW5kZXguY2pzIiwibWFwcGluZ3MiOiI7QUFBQTtBQUNBOztBQUVBLGFBQWEsbUJBQU8sQ0FBQyxtSEFBWTtBQUNqQyxZQUFZLG1CQUFPLENBQUMsaUhBQVc7O0FBRS9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLGVBQWU7QUFDbEMsbUJBQW1CLGVBQWU7QUFDbEMsV0FBVztBQUNYO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUCxLQUFLO0FBQ0wsa0JBQWtCLGVBQWU7QUFDakMsYUFBYSxlQUFlO0FBQzVCLGNBQWMsZUFBZTtBQUM3QixHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsUUFBUTtBQUNyQixhQUFhLFFBQVE7QUFDckIsYUFBYSxRQUFRO0FBQ3JCLGVBQWUsUUFBUTtBQUN2QjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHFEQUFxRCxNQUFNLFVBQVUsS0FBSzs7QUFFMUU7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixNQUFNO0FBQzFCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWTtBQUNaO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixNQUFNO0FBQzVCO0FBQ0E7QUFDQTtBQUNBLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQSxZQUFZO0FBQ1o7QUFDQSxZQUFZO0FBQ1o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQSxhQUFhLFFBQVE7QUFDckIsYUFBYSxRQUFRO0FBQ3JCLGVBQWUsUUFBUTtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCxZQUFZO0FBQzVEO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBLGFBQWEsUUFBUTtBQUNyQixhQUFhLFFBQVE7QUFDckIsYUFBYSxPQUFPO0FBQ3BCLGVBQWUsT0FBTztBQUN0QjtBQUNBO0FBQ0E7QUFDQSw2RUFBNkU7QUFDN0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBLGFBQWEsUUFBUTtBQUNyQixhQUFhLFFBQVE7QUFDckIsYUFBYSxRQUFRO0FBQ3JCLGVBQWUsUUFBUTtBQUN2QjtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBLGFBQWEsUUFBUTtBQUNyQixhQUFhLFFBQVE7QUFDckIsZUFBZSxRQUFRO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0EsYUFBYSxRQUFRO0FBQ3JCLGVBQWUsUUFBUTtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QyxrQkFBa0I7QUFDOUQ7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0EsYUFBYSxRQUFRO0FBQ3JCLGVBQWUsUUFBUTtBQUN2QjtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsTUFBTTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixNQUFNO0FBQzdCLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNILDZDQUE2QyxlQUFlO0FBQzVEO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3ZlbmRvci1qcy9ldGgtZWlwNzEyLXV0aWwvaW5kZXguY2pzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG4vL3ByZXR0aWVyLWlnbm9yZVxuXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi91dGlsLmNqcycpXG5jb25zdCBhYmkgPSByZXF1aXJlKCcuL2FiaS5janMnKVxuXG5jb25zdCBUWVBFRF9NRVNTQUdFX1NDSEVNQSA9IHtcbiAgdHlwZTogJ29iamVjdCcsXG4gIHByb3BlcnRpZXM6IHtcbiAgICB0eXBlczoge1xuICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICBhZGRpdGlvbmFsUHJvcGVydGllczoge1xuICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICBpdGVtczoge1xuICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIG5hbWU6IHt0eXBlOiAnc3RyaW5nJ30sXG4gICAgICAgICAgICB0eXBlOiB7dHlwZTogJ3N0cmluZyd9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVxdWlyZWQ6IFsnbmFtZScsICd0eXBlJ10sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcHJpbWFyeVR5cGU6IHt0eXBlOiAnc3RyaW5nJ30sXG4gICAgZG9tYWluOiB7dHlwZTogJ29iamVjdCd9LFxuICAgIG1lc3NhZ2U6IHt0eXBlOiAnb2JqZWN0J30sXG4gIH0sXG4gIHJlcXVpcmVkOiBbJ3R5cGVzJywgJ3ByaW1hcnlUeXBlJywgJ2RvbWFpbicsICdtZXNzYWdlJ10sXG59XG5cbi8qKlxuICogQSBjb2xsZWN0aW9uIG9mIHV0aWxpdHkgZnVuY3Rpb25zIHVzZWQgZm9yIHNpZ25pbmcgdHlwZWQgZGF0YVxuICovXG5jb25zdCBUeXBlZERhdGFVdGlscyA9IHtcbiAgLyoqXG4gICAqIEVuY29kZXMgYW4gb2JqZWN0IGJ5IGVuY29kaW5nIGFuZCBjb25jYXRlbmF0aW5nIGVhY2ggb2YgaXRzIG1lbWJlcnNcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHByaW1hcnlUeXBlIC0gUm9vdCB0eXBlXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBkYXRhIC0gT2JqZWN0IHRvIGVuY29kZVxuICAgKiBAcGFyYW0ge09iamVjdH0gdHlwZXMgLSBUeXBlIGRlZmluaXRpb25zXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IC0gRW5jb2RlZCByZXByZXNlbnRhdGlvbiBvZiBhbiBvYmplY3RcbiAgICovXG4gIGVuY29kZURhdGEgKHByaW1hcnlUeXBlLCBkYXRhLCB0eXBlcywgdXNlVjQgPSB0cnVlKSB7XG4gICAgY29uc3QgZW5jb2RlZFR5cGVzID0gWydieXRlczMyJ11cbiAgICBjb25zdCBlbmNvZGVkVmFsdWVzID0gW3RoaXMuaGFzaFR5cGUocHJpbWFyeVR5cGUsIHR5cGVzKV1cblxuICAgIGlmKHVzZVY0KSB7XG4gICAgICBjb25zdCBlbmNvZGVGaWVsZCA9IChuYW1lLCB0eXBlLCB2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodHlwZXNbdHlwZV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiBbJ2J5dGVzMzInLCB2YWx1ZSA9PSBudWxsID9cbiAgICAgICAgICAgICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnIDpcbiAgICAgICAgICAgIHV0aWwua2VjY2FrKHRoaXMuZW5jb2RlRGF0YSh0eXBlLCB2YWx1ZSwgdHlwZXMsIHVzZVY0KSldXG4gICAgICAgIH1cblxuICAgICAgICBpZih2YWx1ZSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgbWlzc2luZyB2YWx1ZSBmb3IgZmllbGQgJHtuYW1lfSBvZiB0eXBlICR7dHlwZX1gKVxuXG4gICAgICAgIGlmICh0eXBlID09PSAnYnl0ZXMnKSB7XG4gICAgICAgICAgcmV0dXJuIFsnYnl0ZXMzMicsIHV0aWwua2VjY2FrKHZhbHVlKV1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIC8vIGNvbnZlcnQgc3RyaW5nIHRvIGJ1ZmZlciAtIHByZXZlbnRzIGV0aFV0aWwgZnJvbSBpbnRlcnByZXRpbmcgc3RyaW5ncyBsaWtlICcweGFiY2QnIGFzIGhleFxuICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IEJ1ZmZlci5mcm9tKHZhbHVlLCAndXRmOCcpXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBbJ2J5dGVzMzInLCB1dGlsLmtlY2Nhayh2YWx1ZSldXG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZS5sYXN0SW5kZXhPZignXScpID09PSB0eXBlLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICBjb25zdCBwYXJzZWRUeXBlID0gdHlwZS5zbGljZSgwLCB0eXBlLmxhc3RJbmRleE9mKCdbJykpXG4gICAgICAgICAgY29uc3QgdHlwZVZhbHVlUGFpcnMgPSB2YWx1ZS5tYXAoaXRlbSA9PlxuICAgICAgICAgICAgZW5jb2RlRmllbGQobmFtZSwgcGFyc2VkVHlwZSwgaXRlbSkpXG4gICAgICAgICAgcmV0dXJuIFsnYnl0ZXMzMicsIHV0aWwua2VjY2FrKGFiaS5yYXdFbmNvZGUoXG4gICAgICAgICAgICB0eXBlVmFsdWVQYWlycy5tYXAoKFt0eXBlXSkgPT4gdHlwZSksXG4gICAgICAgICAgICB0eXBlVmFsdWVQYWlycy5tYXAoKFssIHZhbHVlXSkgPT4gdmFsdWUpLFxuICAgICAgICAgICkpXVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFt0eXBlLCB2YWx1ZV1cbiAgICAgIH1cblxuICAgICAgZm9yIChjb25zdCBmaWVsZCBvZiB0eXBlc1twcmltYXJ5VHlwZV0pIHtcbiAgICAgICAgY29uc3QgW3R5cGUsIHZhbHVlXSA9IGVuY29kZUZpZWxkKGZpZWxkLm5hbWUsIGZpZWxkLnR5cGUsIGRhdGFbZmllbGQubmFtZV0pXG4gICAgICAgIGVuY29kZWRUeXBlcy5wdXNoKHR5cGUpXG4gICAgICAgIGVuY29kZWRWYWx1ZXMucHVzaCh2YWx1ZSlcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZm9yIChjb25zdCBmaWVsZCBvZiB0eXBlc1twcmltYXJ5VHlwZV0pIHtcbiAgICAgICAgbGV0IHZhbHVlID0gZGF0YVtmaWVsZC5uYW1lXVxuICAgICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGlmIChmaWVsZC50eXBlID09PSAnYnl0ZXMnKSB7XG4gICAgICAgICAgICBlbmNvZGVkVHlwZXMucHVzaCgnYnl0ZXMzMicpXG4gICAgICAgICAgICB2YWx1ZSA9IHV0aWwua2VjY2FrKHZhbHVlKVxuICAgICAgICAgICAgZW5jb2RlZFZhbHVlcy5wdXNoKHZhbHVlKVxuICAgICAgICAgIH0gZWxzZSBpZiAoZmllbGQudHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIGVuY29kZWRUeXBlcy5wdXNoKCdieXRlczMyJylcbiAgICAgICAgICAgIC8vIGNvbnZlcnQgc3RyaW5nIHRvIGJ1ZmZlciAtIHByZXZlbnRzIGV0aFV0aWwgZnJvbSBpbnRlcnByZXRpbmcgc3RyaW5ncyBsaWtlICcweGFiY2QnIGFzIGhleFxuICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgdmFsdWUgPSBCdWZmZXIuZnJvbSh2YWx1ZSwgJ3V0ZjgnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFsdWUgPSB1dGlsLmtlY2Nhayh2YWx1ZSlcbiAgICAgICAgICAgIGVuY29kZWRWYWx1ZXMucHVzaCh2YWx1ZSlcbiAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVzW2ZpZWxkLnR5cGVdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGVuY29kZWRUeXBlcy5wdXNoKCdieXRlczMyJylcbiAgICAgICAgICAgIHZhbHVlID0gdXRpbC5rZWNjYWsodGhpcy5lbmNvZGVEYXRhKGZpZWxkLnR5cGUsIHZhbHVlLCB0eXBlcywgdXNlVjQpKVxuICAgICAgICAgICAgZW5jb2RlZFZhbHVlcy5wdXNoKHZhbHVlKVxuICAgICAgICAgIH0gZWxzZSBpZiAoZmllbGQudHlwZS5sYXN0SW5kZXhPZignXScpID09PSBmaWVsZC50eXBlLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQXJyYXlzIGN1cnJlbnRseSB1bmltcGxlbWVudGVkIGluIGVuY29kZURhdGEnKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBlbmNvZGVkVHlwZXMucHVzaChmaWVsZC50eXBlKVxuICAgICAgICAgICAgZW5jb2RlZFZhbHVlcy5wdXNoKHZhbHVlKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBhYmkucmF3RW5jb2RlKGVuY29kZWRUeXBlcywgZW5jb2RlZFZhbHVlcylcbiAgfSxcblxuICAvKipcbiAgICogRW5jb2RlcyB0aGUgdHlwZSBvZiBhbiBvYmplY3QgYnkgZW5jb2RpbmcgYSBjb21tYSBkZWxpbWl0ZWQgbGlzdCBvZiBpdHMgbWVtYmVyc1xuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcHJpbWFyeVR5cGUgLSBSb290IHR5cGUgdG8gZW5jb2RlXG4gICAqIEBwYXJhbSB7T2JqZWN0fSB0eXBlcyAtIFR5cGUgZGVmaW5pdGlvbnNcbiAgICogQHJldHVybnMge3N0cmluZ30gLSBFbmNvZGVkIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB0eXBlIG9mIGFuIG9iamVjdFxuICAgKi9cbiAgZW5jb2RlVHlwZSAocHJpbWFyeVR5cGUsIHR5cGVzKSB7XG4gICAgbGV0IHJlc3VsdCA9ICcnXG4gICAgbGV0IGRlcHMgPSB0aGlzLmZpbmRUeXBlRGVwZW5kZW5jaWVzKHByaW1hcnlUeXBlLCB0eXBlcykuZmlsdGVyKGRlcCA9PiBkZXAgIT09IHByaW1hcnlUeXBlKVxuICAgIGRlcHMgPSBbcHJpbWFyeVR5cGVdLmNvbmNhdChkZXBzLnNvcnQoKSlcbiAgICBmb3IgKGNvbnN0IHR5cGUgb2YgZGVwcykge1xuICAgICAgY29uc3QgY2hpbGRyZW4gPSB0eXBlc1t0eXBlXVxuICAgICAgaWYgKCFjaGlsZHJlbikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHR5cGUgZGVmaW5pdGlvbiBzcGVjaWZpZWQ6ICcgKyB0eXBlKVxuICAgICAgfVxuICAgICAgcmVzdWx0ICs9IHR5cGUgKyAnKCcgKyB0eXBlc1t0eXBlXS5tYXAoKHsgbmFtZSwgdHlwZSB9KSA9PiB0eXBlICsgJyAnICsgbmFtZSkuam9pbignLCcpICsgJyknXG4gICAgfVxuICAgIHJldHVybiByZXN1bHRcbiAgfSxcblxuICAvKipcbiAgICogRmluZHMgYWxsIHR5cGVzIHdpdGhpbiBhIHR5cGUgZGVmaW5pdGlvbiBvYmplY3RcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHByaW1hcnlUeXBlIC0gUm9vdCB0eXBlXG4gICAqIEBwYXJhbSB7T2JqZWN0fSB0eXBlcyAtIFR5cGUgZGVmaW5pdGlvbnNcbiAgICogQHBhcmFtIHtBcnJheX0gcmVzdWx0cyAtIGN1cnJlbnQgc2V0IG9mIGFjY3VtdWxhdGVkIHR5cGVzXG4gICAqIEByZXR1cm5zIHtBcnJheX0gLSBTZXQgb2YgYWxsIHR5cGVzIGZvdW5kIGluIHRoZSB0eXBlIGRlZmluaXRpb25cbiAgICovXG4gIGZpbmRUeXBlRGVwZW5kZW5jaWVzIChwcmltYXJ5VHlwZSwgdHlwZXMsIHJlc3VsdHMgPSBbXSkge1xuICAgIHByaW1hcnlUeXBlID0gcHJpbWFyeVR5cGUubWF0Y2goL15cXHcqLylbMF1cbiAgICBpZiAocmVzdWx0cy5pbmNsdWRlcyhwcmltYXJ5VHlwZSkgfHwgdHlwZXNbcHJpbWFyeVR5cGVdID09PSB1bmRlZmluZWQpIHsgcmV0dXJuIHJlc3VsdHMgfVxuICAgIHJlc3VsdHMucHVzaChwcmltYXJ5VHlwZSlcbiAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIHR5cGVzW3ByaW1hcnlUeXBlXSkge1xuICAgICAgZm9yIChjb25zdCBkZXAgb2YgdGhpcy5maW5kVHlwZURlcGVuZGVuY2llcyhmaWVsZC50eXBlLCB0eXBlcywgcmVzdWx0cykpIHtcbiAgICAgICAgIXJlc3VsdHMuaW5jbHVkZXMoZGVwKSAmJiByZXN1bHRzLnB1c2goZGVwKVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0c1xuICB9LFxuXG4gIC8qKlxuICAgKiBIYXNoZXMgYW4gb2JqZWN0XG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwcmltYXJ5VHlwZSAtIFJvb3QgdHlwZVxuICAgKiBAcGFyYW0ge09iamVjdH0gZGF0YSAtIE9iamVjdCB0byBoYXNoXG4gICAqIEBwYXJhbSB7T2JqZWN0fSB0eXBlcyAtIFR5cGUgZGVmaW5pdGlvbnNcbiAgICogQHJldHVybnMge0J1ZmZlcn0gLSBIYXNoIG9mIGFuIG9iamVjdFxuICAgKi9cbiAgaGFzaFN0cnVjdCAocHJpbWFyeVR5cGUsIGRhdGEsIHR5cGVzLCB1c2VWNCA9IHRydWUpIHtcbiAgICByZXR1cm4gdXRpbC5rZWNjYWsodGhpcy5lbmNvZGVEYXRhKHByaW1hcnlUeXBlLCBkYXRhLCB0eXBlcywgdXNlVjQpKVxuICB9LFxuXG4gIC8qKlxuICAgKiBIYXNoZXMgdGhlIHR5cGUgb2YgYW4gb2JqZWN0XG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwcmltYXJ5VHlwZSAtIFJvb3QgdHlwZSB0byBoYXNoXG4gICAqIEBwYXJhbSB7T2JqZWN0fSB0eXBlcyAtIFR5cGUgZGVmaW5pdGlvbnNcbiAgICogQHJldHVybnMge3N0cmluZ30gLSBIYXNoIG9mIGFuIG9iamVjdFxuICAgKi9cbiAgaGFzaFR5cGUgKHByaW1hcnlUeXBlLCB0eXBlcykge1xuICAgIHJldHVybiB1dGlsLmtlY2Nhayh0aGlzLmVuY29kZVR5cGUocHJpbWFyeVR5cGUsIHR5cGVzKSlcbiAgfSxcblxuICAvKipcbiAgICogUmVtb3ZlcyBwcm9wZXJ0aWVzIGZyb20gYSBtZXNzYWdlIG9iamVjdCB0aGF0IGFyZSBub3QgZGVmaW5lZCBwZXIgRUlQLTcxMlxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gZGF0YSAtIHR5cGVkIG1lc3NhZ2Ugb2JqZWN0XG4gICAqIEByZXR1cm5zIHtPYmplY3R9IC0gdHlwZWQgbWVzc2FnZSBvYmplY3Qgd2l0aCBvbmx5IGFsbG93ZWQgZmllbGRzXG4gICAqL1xuICBzYW5pdGl6ZURhdGEgKGRhdGEpIHtcbiAgICBjb25zdCBzYW5pdGl6ZWREYXRhID0ge31cbiAgICBmb3IgKGNvbnN0IGtleSBpbiBUWVBFRF9NRVNTQUdFX1NDSEVNQS5wcm9wZXJ0aWVzKSB7XG4gICAgICBkYXRhW2tleV0gJiYgKHNhbml0aXplZERhdGFba2V5XSA9IGRhdGFba2V5XSlcbiAgICB9XG4gICAgaWYgKHNhbml0aXplZERhdGEudHlwZXMpIHtcbiAgICAgIHNhbml0aXplZERhdGEudHlwZXMgPSBPYmplY3QuYXNzaWduKHsgRUlQNzEyRG9tYWluOiBbXSB9LCBzYW5pdGl6ZWREYXRhLnR5cGVzKVxuICAgIH1cbiAgICByZXR1cm4gc2FuaXRpemVkRGF0YVxuICB9LFxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBoYXNoIG9mIGEgdHlwZWQgbWVzc2FnZSBhcyBwZXIgRUlQLTcxMiBmb3Igc2lnbmluZ1xuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gdHlwZWREYXRhIC0gVHlwZXMgbWVzc2FnZSBkYXRhIHRvIHNpZ25cbiAgICogQHJldHVybnMge3N0cmluZ30gLSBzaGEzIGhhc2ggZm9yIHNpZ25pbmdcbiAgICovXG4gIGhhc2ggKHR5cGVkRGF0YSwgdXNlVjQgPSB0cnVlKSB7XG4gICAgY29uc3Qgc2FuaXRpemVkRGF0YSA9IHRoaXMuc2FuaXRpemVEYXRhKHR5cGVkRGF0YSlcbiAgICBjb25zdCBwYXJ0cyA9IFtCdWZmZXIuZnJvbSgnMTkwMScsICdoZXgnKV1cbiAgICBwYXJ0cy5wdXNoKHRoaXMuaGFzaFN0cnVjdCgnRUlQNzEyRG9tYWluJywgc2FuaXRpemVkRGF0YS5kb21haW4sIHNhbml0aXplZERhdGEudHlwZXMsIHVzZVY0KSlcbiAgICBpZiAoc2FuaXRpemVkRGF0YS5wcmltYXJ5VHlwZSAhPT0gJ0VJUDcxMkRvbWFpbicpIHtcbiAgICAgIHBhcnRzLnB1c2godGhpcy5oYXNoU3RydWN0KHNhbml0aXplZERhdGEucHJpbWFyeVR5cGUsIHNhbml0aXplZERhdGEubWVzc2FnZSwgc2FuaXRpemVkRGF0YS50eXBlcywgdXNlVjQpKVxuICAgIH1cbiAgICByZXR1cm4gdXRpbC5rZWNjYWsoQnVmZmVyLmNvbmNhdChwYXJ0cykpXG4gIH0sXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBUWVBFRF9NRVNTQUdFX1NDSEVNQSxcbiAgVHlwZWREYXRhVXRpbHMsXG5cbiAgaGFzaEZvclNpZ25UeXBlZERhdGFMZWdhY3k6IGZ1bmN0aW9uIChtc2dQYXJhbXMpIHtcbiAgICByZXR1cm4gdHlwZWRTaWduYXR1cmVIYXNoTGVnYWN5KG1zZ1BhcmFtcy5kYXRhKVxuICB9LFxuXG4gIGhhc2hGb3JTaWduVHlwZWREYXRhX3YzOiBmdW5jdGlvbiAobXNnUGFyYW1zKSB7XG4gICAgcmV0dXJuIFR5cGVkRGF0YVV0aWxzLmhhc2gobXNnUGFyYW1zLmRhdGEsIGZhbHNlKVxuICB9LFxuXG4gIGhhc2hGb3JTaWduVHlwZWREYXRhX3Y0OiBmdW5jdGlvbiAobXNnUGFyYW1zKSB7XG4gICAgcmV0dXJuIFR5cGVkRGF0YVV0aWxzLmhhc2gobXNnUGFyYW1zLmRhdGEpXG4gIH0sXG59XG5cbi8qKlxuICogQHBhcmFtIHR5cGVkRGF0YSAtIEFycmF5IG9mIGRhdGEgYWxvbmcgd2l0aCB0eXBlcywgYXMgcGVyIEVJUDcxMi5cbiAqIEByZXR1cm5zIEJ1ZmZlclxuICovXG5mdW5jdGlvbiB0eXBlZFNpZ25hdHVyZUhhc2hMZWdhY3kodHlwZWREYXRhKSB7XG4gIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKCdFeHBlY3QgYXJndW1lbnQgdG8gYmUgbm9uLWVtcHR5IGFycmF5JylcbiAgaWYgKHR5cGVvZiB0eXBlZERhdGEgIT09ICdvYmplY3QnIHx8ICF0eXBlZERhdGEubGVuZ3RoKSB0aHJvdyBlcnJvclxuXG4gIGNvbnN0IGRhdGEgPSB0eXBlZERhdGEubWFwKGZ1bmN0aW9uIChlKSB7XG4gICAgcmV0dXJuIGUudHlwZSA9PT0gJ2J5dGVzJyA/IHV0aWwudG9CdWZmZXIoZS52YWx1ZSkgOiBlLnZhbHVlXG4gIH0pXG4gIGNvbnN0IHR5cGVzID0gdHlwZWREYXRhLm1hcChmdW5jdGlvbiAoZSkgeyByZXR1cm4gZS50eXBlIH0pXG4gIGNvbnN0IHNjaGVtYSA9IHR5cGVkRGF0YS5tYXAoZnVuY3Rpb24gKGUpIHtcbiAgICBpZiAoIWUubmFtZSkgdGhyb3cgZXJyb3JcbiAgICByZXR1cm4gZS50eXBlICsgJyAnICsgZS5uYW1lXG4gIH0pXG5cbiAgcmV0dXJuIGFiaS5zb2xpZGl0eVNIQTMoXG4gICAgWydieXRlczMyJywgJ2J5dGVzMzInXSxcbiAgICBbXG4gICAgICBhYmkuc29saWRpdHlTSEEzKG5ldyBBcnJheSh0eXBlZERhdGEubGVuZ3RoKS5maWxsKCdzdHJpbmcnKSwgc2NoZW1hKSxcbiAgICAgIGFiaS5zb2xpZGl0eVNIQTModHlwZXMsIGRhdGEpXG4gICAgXVxuICApXG59Il0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/index.cjs\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/util.cjs": /*!***********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/util.cjs ***! \***********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval(__webpack_require__.ts("/* provided dependency */ var Buffer = __webpack_require__(/*! buffer */ \"(app-pages-browser)/./node_modules/buffer/index.js\")[\"Buffer\"];\n// Extracted from https://github.com/ethereumjs/ethereumjs-util and stripped out irrelevant code\n// Original code licensed under the Mozilla Public License Version 2.0\n\n/* eslint-disable */\n//prettier-ignore\nconst { keccak_256 } = __webpack_require__(/*! @noble/hashes/sha3 */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/sha3.js\")\n\n/**\n * Returns a buffer filled with 0s\n * @method zeros\n * @param {Number} bytes the number of bytes the buffer should be\n * @return {Buffer}\n */\nfunction zeros (bytes) {\n return Buffer.allocUnsafe(bytes).fill(0)\n}\n\n\n/**\n * Converts a `Number` into a hex `String` (https://github.com/ethjs/ethjs-util/blob/master/src/index.js)\n * @param {Number} i\n * @return {String}\n */\nfunction intToHex(i) {\n const hex = i.toString(16); // eslint-disable-line\n\n return `0x${hex}`;\n}\n\n/**\n * Converts an `Number` to a `Buffer` (https://github.com/ethjs/ethjs-util/blob/master/src/index.js)\n * @param {Number} i\n * @return {Buffer}\n */\nfunction intToBuffer(i) {\n const hex = intToHex(i);\n\n return new Buffer(padToEven(hex.slice(2)), 'hex');\n}\n\nfunction bitLengthFromBigInt (num) {\n return num.toString(2).length\n}\n\nfunction bufferBEFromBigInt(num, length) {\n let hex = num.toString(16);\n // Ensure the hex string length is even\n if (hex.length % 2 !== 0) hex = '0' + hex;\n // Convert hex string to a byte array\n const byteArray = hex.match(/.{1,2}/g).map(byte => parseInt(byte, 16));\n // Ensure the byte array is of the specified length\n while (byteArray.length < length) {\n byteArray.unshift(0); // Prepend with zeroes if shorter than required length\n }\n\n return Buffer.from(byteArray);\n}\n\nfunction twosFromBigInt(value, width) {\n const isNegative = value < 0n;\n let result;\n if (isNegative) {\n // Prepare a mask for the specified width to perform NOT operation\n const mask = (1n << BigInt(width)) - 1n;\n // Invert bits (using NOT) and add one\n result = (~value & mask) + 1n;\n } else {\n result = value;\n }\n // Ensure the result fits in the specified width\n result &= (1n << BigInt(width)) - 1n;\n\n return result;\n}\n\n/**\n * Left Pads an `Array` or `Buffer` with leading zeros till it has `length` bytes.\n * Or it truncates the beginning if it exceeds.\n * @method setLength\n * @param {Buffer|Array} msg the value to pad\n * @param {Number} length the number of bytes the output should be\n * @param {Boolean} [right=false] whether to start padding form the left or right\n * @return {Buffer|Array}\n */\nfunction setLength (msg, length, right) {\n const buf = zeros(length)\n msg = toBuffer(msg)\n if (right) {\n if (msg.length < length) {\n msg.copy(buf)\n return buf\n }\n return msg.slice(0, length)\n } else {\n if (msg.length < length) {\n msg.copy(buf, length - msg.length)\n return buf\n }\n return msg.slice(-length)\n }\n}\n\n/**\n * Right Pads an `Array` or `Buffer` with leading zeros till it has `length` bytes.\n * Or it truncates the beginning if it exceeds.\n * @param {Buffer|Array} msg the value to pad\n * @param {Number} length the number of bytes the output should be\n * @return {Buffer|Array}\n */\nfunction setLengthRight (msg, length) {\n return setLength(msg, length, true)\n}\n\n/**\n * Attempts to turn a value into a `Buffer`. As input it supports `Buffer`, `String`, `Number`, null/undefined, `BIgInt` and other objects with a `toArray()` method.\n * @param {*} v the value\n */\nfunction toBuffer (v) {\n if (!Buffer.isBuffer(v)) {\n if (Array.isArray(v)) {\n v = Buffer.from(v)\n } else if (typeof v === 'string') {\n if (isHexString(v)) {\n v = Buffer.from(padToEven(stripHexPrefix(v)), 'hex')\n } else {\n v = Buffer.from(v)\n }\n } else if (typeof v === 'number') {\n v = intToBuffer(v)\n } else if (v === null || v === undefined) {\n v = Buffer.allocUnsafe(0)\n } else if (typeof v === 'bigint') {\n v = bufferBEFromBigInt(v)\n } else if (v.toArray) {\n // TODO: bigint should be handled above, may remove this duplicate\n // converts a BigInt to a Buffer\n v = Buffer.from(v.toArray())\n } else {\n throw new Error('invalid type')\n }\n }\n return v\n}\n\n/**\n * Converts a `Buffer` into a hex `String`\n * @param {Buffer} buf\n * @return {String}\n */\nfunction bufferToHex (buf) {\n buf = toBuffer(buf)\n return '0x' + buf.toString('hex')\n}\n\n/**\n * Creates Keccak hash of the input\n * @param {Buffer|Array|String|Number} a the input data\n * @param {Number} [bits=256] the Keccak width\n * @return {Buffer}\n */\nfunction keccak (a, bits) {\n a = toBuffer(a)\n if (!bits) bits = 256\n if (bits !== 256) {\n throw new Error('unsupported')\n }\n return Buffer.from(keccak_256(new Uint8Array(a)))\n}\n\nfunction padToEven (str) {\n return str.length % 2 ? '0' + str : str\n}\n\nfunction isHexString (str) {\n return typeof str === 'string' && str.match(/^0x[0-9A-Fa-f]*$/)\n}\n\nfunction stripHexPrefix (str) {\n if (typeof str === 'string' && str.startsWith('0x')) {\n return str.slice(2)\n }\n return str\n}\n\nmodule.exports = {\n zeros,\n setLength,\n setLengthRight,\n isHexString,\n stripHexPrefix,\n toBuffer,\n bufferToHex,\n keccak,\n bitLengthFromBigInt,\n bufferBEFromBigInt,\n twosFromBigInt\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9kaXN0L3ZlbmRvci1qcy9ldGgtZWlwNzEyLXV0aWwvdXRpbC5janMiLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFFBQVEsYUFBYSxFQUFFLG1CQUFPLENBQUMsc0hBQW9COztBQUVuRDtBQUNBO0FBQ0E7QUFDQSxXQUFXLFFBQVE7QUFDbkIsWUFBWTtBQUNaO0FBQ0E7QUFDQSxTQUFTLE1BQU07QUFDZjs7O0FBR0E7QUFDQTtBQUNBLFdBQVcsUUFBUTtBQUNuQixZQUFZO0FBQ1o7QUFDQTtBQUNBLDhCQUE4Qjs7QUFFOUIsY0FBYyxJQUFJO0FBQ2xCOztBQUVBO0FBQ0E7QUFDQSxXQUFXLFFBQVE7QUFDbkIsWUFBWTtBQUNaO0FBQ0E7QUFDQTs7QUFFQSxhQUFhLE1BQU07QUFDbkI7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMsSUFBSTtBQUNyQztBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCOztBQUVBLFNBQVMsTUFBTTtBQUNmOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsY0FBYztBQUN6QixXQUFXLFFBQVE7QUFDbkIsV0FBVyxTQUFTO0FBQ3BCLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLGNBQWM7QUFDekIsV0FBVyxRQUFRO0FBQ25CLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsV0FBVyxHQUFHO0FBQ2Q7QUFDQTtBQUNBLE9BQU8sTUFBTTtBQUNiO0FBQ0EsVUFBVSxNQUFNO0FBQ2hCLE1BQU07QUFDTjtBQUNBLFlBQVksTUFBTTtBQUNsQixRQUFRO0FBQ1IsWUFBWSxNQUFNO0FBQ2xCO0FBQ0EsTUFBTTtBQUNOO0FBQ0EsTUFBTTtBQUNOLFVBQVUsTUFBTTtBQUNoQixNQUFNO0FBQ047QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBLFVBQVUsTUFBTTtBQUNoQixNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsV0FBVyxRQUFRO0FBQ25CLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxXQUFXLDRCQUE0QjtBQUN2QyxXQUFXLFFBQVE7QUFDbkIsWUFBWTtBQUNaO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUyxNQUFNO0FBQ2Y7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvZGlzdC92ZW5kb3ItanMvZXRoLWVpcDcxMi11dGlsL3V0aWwuY2pzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEV4dHJhY3RlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9ldGhlcmV1bWpzL2V0aGVyZXVtanMtdXRpbCBhbmQgc3RyaXBwZWQgb3V0IGlycmVsZXZhbnQgY29kZVxuLy8gT3JpZ2luYWwgY29kZSBsaWNlbnNlZCB1bmRlciB0aGUgTW96aWxsYSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIuMFxuXG4vKiBlc2xpbnQtZGlzYWJsZSAqL1xuLy9wcmV0dGllci1pZ25vcmVcbmNvbnN0IHsga2VjY2FrXzI1NiB9ID0gcmVxdWlyZSgnQG5vYmxlL2hhc2hlcy9zaGEzJylcblxuLyoqXG4gKiBSZXR1cm5zIGEgYnVmZmVyIGZpbGxlZCB3aXRoIDBzXG4gKiBAbWV0aG9kIHplcm9zXG4gKiBAcGFyYW0ge051bWJlcn0gYnl0ZXMgIHRoZSBudW1iZXIgb2YgYnl0ZXMgdGhlIGJ1ZmZlciBzaG91bGQgYmVcbiAqIEByZXR1cm4ge0J1ZmZlcn1cbiAqL1xuZnVuY3Rpb24gemVyb3MgKGJ5dGVzKSB7XG4gIHJldHVybiBCdWZmZXIuYWxsb2NVbnNhZmUoYnl0ZXMpLmZpbGwoMClcbn1cblxuXG4vKipcbiAqIENvbnZlcnRzIGEgYE51bWJlcmAgaW50byBhIGhleCBgU3RyaW5nYCAoaHR0cHM6Ly9naXRodWIuY29tL2V0aGpzL2V0aGpzLXV0aWwvYmxvYi9tYXN0ZXIvc3JjL2luZGV4LmpzKVxuICogQHBhcmFtIHtOdW1iZXJ9IGlcbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqL1xuZnVuY3Rpb24gaW50VG9IZXgoaSkge1xuICBjb25zdCBoZXggPSBpLnRvU3RyaW5nKDE2KTsgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuXG4gIHJldHVybiBgMHgke2hleH1gO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIGBOdW1iZXJgIHRvIGEgYEJ1ZmZlcmAgKGh0dHBzOi8vZ2l0aHViLmNvbS9ldGhqcy9ldGhqcy11dGlsL2Jsb2IvbWFzdGVyL3NyYy9pbmRleC5qcylcbiAqIEBwYXJhbSB7TnVtYmVyfSBpXG4gKiBAcmV0dXJuIHtCdWZmZXJ9XG4gKi9cbmZ1bmN0aW9uIGludFRvQnVmZmVyKGkpIHtcbiAgY29uc3QgaGV4ID0gaW50VG9IZXgoaSk7XG5cbiAgcmV0dXJuIG5ldyBCdWZmZXIocGFkVG9FdmVuKGhleC5zbGljZSgyKSksICdoZXgnKTtcbn1cblxuZnVuY3Rpb24gYml0TGVuZ3RoRnJvbUJpZ0ludCAobnVtKSB7XG4gIHJldHVybiBudW0udG9TdHJpbmcoMikubGVuZ3RoXG59XG5cbmZ1bmN0aW9uIGJ1ZmZlckJFRnJvbUJpZ0ludChudW0sIGxlbmd0aCkge1xuICBsZXQgaGV4ID0gbnVtLnRvU3RyaW5nKDE2KTtcbiAgLy8gRW5zdXJlIHRoZSBoZXggc3RyaW5nIGxlbmd0aCBpcyBldmVuXG4gIGlmIChoZXgubGVuZ3RoICUgMiAhPT0gMCkgaGV4ID0gJzAnICsgaGV4O1xuICAvLyBDb252ZXJ0IGhleCBzdHJpbmcgdG8gYSBieXRlIGFycmF5XG4gIGNvbnN0IGJ5dGVBcnJheSA9IGhleC5tYXRjaCgvLnsxLDJ9L2cpLm1hcChieXRlID0+IHBhcnNlSW50KGJ5dGUsIDE2KSk7XG4gIC8vIEVuc3VyZSB0aGUgYnl0ZSBhcnJheSBpcyBvZiB0aGUgc3BlY2lmaWVkIGxlbmd0aFxuICB3aGlsZSAoYnl0ZUFycmF5Lmxlbmd0aCA8IGxlbmd0aCkge1xuICAgIGJ5dGVBcnJheS51bnNoaWZ0KDApOyAvLyBQcmVwZW5kIHdpdGggemVyb2VzIGlmIHNob3J0ZXIgdGhhbiByZXF1aXJlZCBsZW5ndGhcbiAgfVxuXG4gIHJldHVybiBCdWZmZXIuZnJvbShieXRlQXJyYXkpO1xufVxuXG5mdW5jdGlvbiB0d29zRnJvbUJpZ0ludCh2YWx1ZSwgd2lkdGgpIHtcbiAgY29uc3QgaXNOZWdhdGl2ZSA9IHZhbHVlIDwgMG47XG4gIGxldCByZXN1bHQ7XG4gIGlmIChpc05lZ2F0aXZlKSB7XG4gICAgLy8gUHJlcGFyZSBhIG1hc2sgZm9yIHRoZSBzcGVjaWZpZWQgd2lkdGggdG8gcGVyZm9ybSBOT1Qgb3BlcmF0aW9uXG4gICAgY29uc3QgbWFzayA9ICgxbiA8PCBCaWdJbnQod2lkdGgpKSAtIDFuO1xuICAgIC8vIEludmVydCBiaXRzICh1c2luZyBOT1QpIGFuZCBhZGQgb25lXG4gICAgcmVzdWx0ID0gKH52YWx1ZSAmIG1hc2spICsgMW47XG4gIH0gZWxzZSB7XG4gICAgcmVzdWx0ID0gdmFsdWU7XG4gIH1cbiAgLy8gRW5zdXJlIHRoZSByZXN1bHQgZml0cyBpbiB0aGUgc3BlY2lmaWVkIHdpZHRoXG4gIHJlc3VsdCAmPSAoMW4gPDwgQmlnSW50KHdpZHRoKSkgLSAxbjtcblxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIExlZnQgUGFkcyBhbiBgQXJyYXlgIG9yIGBCdWZmZXJgIHdpdGggbGVhZGluZyB6ZXJvcyB0aWxsIGl0IGhhcyBgbGVuZ3RoYCBieXRlcy5cbiAqIE9yIGl0IHRydW5jYXRlcyB0aGUgYmVnaW5uaW5nIGlmIGl0IGV4Y2VlZHMuXG4gKiBAbWV0aG9kIHNldExlbmd0aFxuICogQHBhcmFtIHtCdWZmZXJ8QXJyYXl9IG1zZyB0aGUgdmFsdWUgdG8gcGFkXG4gKiBAcGFyYW0ge051bWJlcn0gbGVuZ3RoIHRoZSBudW1iZXIgb2YgYnl0ZXMgdGhlIG91dHB1dCBzaG91bGQgYmVcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gW3JpZ2h0PWZhbHNlXSB3aGV0aGVyIHRvIHN0YXJ0IHBhZGRpbmcgZm9ybSB0aGUgbGVmdCBvciByaWdodFxuICogQHJldHVybiB7QnVmZmVyfEFycmF5fVxuICovXG5mdW5jdGlvbiBzZXRMZW5ndGggKG1zZywgbGVuZ3RoLCByaWdodCkge1xuICBjb25zdCBidWYgPSB6ZXJvcyhsZW5ndGgpXG4gIG1zZyA9IHRvQnVmZmVyKG1zZylcbiAgaWYgKHJpZ2h0KSB7XG4gICAgaWYgKG1zZy5sZW5ndGggPCBsZW5ndGgpIHtcbiAgICAgIG1zZy5jb3B5KGJ1ZilcbiAgICAgIHJldHVybiBidWZcbiAgICB9XG4gICAgcmV0dXJuIG1zZy5zbGljZSgwLCBsZW5ndGgpXG4gIH0gZWxzZSB7XG4gICAgaWYgKG1zZy5sZW5ndGggPCBsZW5ndGgpIHtcbiAgICAgIG1zZy5jb3B5KGJ1ZiwgbGVuZ3RoIC0gbXNnLmxlbmd0aClcbiAgICAgIHJldHVybiBidWZcbiAgICB9XG4gICAgcmV0dXJuIG1zZy5zbGljZSgtbGVuZ3RoKVxuICB9XG59XG5cbi8qKlxuICogUmlnaHQgUGFkcyBhbiBgQXJyYXlgIG9yIGBCdWZmZXJgIHdpdGggbGVhZGluZyB6ZXJvcyB0aWxsIGl0IGhhcyBgbGVuZ3RoYCBieXRlcy5cbiAqIE9yIGl0IHRydW5jYXRlcyB0aGUgYmVnaW5uaW5nIGlmIGl0IGV4Y2VlZHMuXG4gKiBAcGFyYW0ge0J1ZmZlcnxBcnJheX0gbXNnIHRoZSB2YWx1ZSB0byBwYWRcbiAqIEBwYXJhbSB7TnVtYmVyfSBsZW5ndGggdGhlIG51bWJlciBvZiBieXRlcyB0aGUgb3V0cHV0IHNob3VsZCBiZVxuICogQHJldHVybiB7QnVmZmVyfEFycmF5fVxuICovXG5mdW5jdGlvbiBzZXRMZW5ndGhSaWdodCAobXNnLCBsZW5ndGgpIHtcbiAgcmV0dXJuIHNldExlbmd0aChtc2csIGxlbmd0aCwgdHJ1ZSlcbn1cblxuLyoqXG4gKiBBdHRlbXB0cyB0byB0dXJuIGEgdmFsdWUgaW50byBhIGBCdWZmZXJgLiBBcyBpbnB1dCBpdCBzdXBwb3J0cyBgQnVmZmVyYCwgYFN0cmluZ2AsIGBOdW1iZXJgLCBudWxsL3VuZGVmaW5lZCwgYEJJZ0ludGAgYW5kIG90aGVyIG9iamVjdHMgd2l0aCBhIGB0b0FycmF5KClgIG1ldGhvZC5cbiAqIEBwYXJhbSB7Kn0gdiB0aGUgdmFsdWVcbiAqL1xuZnVuY3Rpb24gdG9CdWZmZXIgKHYpIHtcbiAgaWYgKCFCdWZmZXIuaXNCdWZmZXIodikpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2KSkge1xuICAgICAgdiA9IEJ1ZmZlci5mcm9tKHYpXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdiA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmIChpc0hleFN0cmluZyh2KSkge1xuICAgICAgICB2ID0gQnVmZmVyLmZyb20ocGFkVG9FdmVuKHN0cmlwSGV4UHJlZml4KHYpKSwgJ2hleCcpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2ID0gQnVmZmVyLmZyb20odilcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB2ID09PSAnbnVtYmVyJykge1xuICAgICAgdiA9IGludFRvQnVmZmVyKHYpXG4gICAgfSBlbHNlIGlmICh2ID09PSBudWxsIHx8IHYgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdiA9IEJ1ZmZlci5hbGxvY1Vuc2FmZSgwKVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIHYgPT09ICdiaWdpbnQnKSB7XG4gICAgICB2ID0gYnVmZmVyQkVGcm9tQmlnSW50KHYpXG4gICAgfSBlbHNlIGlmICh2LnRvQXJyYXkpIHtcbiAgICAgIC8vIFRPRE86IGJpZ2ludCBzaG91bGQgYmUgaGFuZGxlZCBhYm92ZSwgbWF5IHJlbW92ZSB0aGlzIGR1cGxpY2F0ZVxuICAgICAgLy8gY29udmVydHMgYSBCaWdJbnQgdG8gYSBCdWZmZXJcbiAgICAgIHYgPSBCdWZmZXIuZnJvbSh2LnRvQXJyYXkoKSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHR5cGUnKVxuICAgIH1cbiAgfVxuICByZXR1cm4gdlxufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgYEJ1ZmZlcmAgaW50byBhIGhleCBgU3RyaW5nYFxuICogQHBhcmFtIHtCdWZmZXJ9IGJ1ZlxuICogQHJldHVybiB7U3RyaW5nfVxuICovXG5mdW5jdGlvbiBidWZmZXJUb0hleCAoYnVmKSB7XG4gIGJ1ZiA9IHRvQnVmZmVyKGJ1ZilcbiAgcmV0dXJuICcweCcgKyBidWYudG9TdHJpbmcoJ2hleCcpXG59XG5cbi8qKlxuICogQ3JlYXRlcyBLZWNjYWsgaGFzaCBvZiB0aGUgaW5wdXRcbiAqIEBwYXJhbSB7QnVmZmVyfEFycmF5fFN0cmluZ3xOdW1iZXJ9IGEgdGhlIGlucHV0IGRhdGFcbiAqIEBwYXJhbSB7TnVtYmVyfSBbYml0cz0yNTZdIHRoZSBLZWNjYWsgd2lkdGhcbiAqIEByZXR1cm4ge0J1ZmZlcn1cbiAqL1xuZnVuY3Rpb24ga2VjY2FrIChhLCBiaXRzKSB7XG4gIGEgPSB0b0J1ZmZlcihhKVxuICBpZiAoIWJpdHMpIGJpdHMgPSAyNTZcbiAgaWYgKGJpdHMgIT09IDI1Nikge1xuICAgIHRocm93IG5ldyBFcnJvcigndW5zdXBwb3J0ZWQnKVxuICB9XG4gIHJldHVybiBCdWZmZXIuZnJvbShrZWNjYWtfMjU2KG5ldyBVaW50OEFycmF5KGEpKSlcbn1cblxuZnVuY3Rpb24gcGFkVG9FdmVuIChzdHIpIHtcbiAgcmV0dXJuIHN0ci5sZW5ndGggJSAyID8gJzAnICsgc3RyIDogc3RyXG59XG5cbmZ1bmN0aW9uIGlzSGV4U3RyaW5nIChzdHIpIHtcbiAgcmV0dXJuIHR5cGVvZiBzdHIgPT09ICdzdHJpbmcnICYmIHN0ci5tYXRjaCgvXjB4WzAtOUEtRmEtZl0qJC8pXG59XG5cbmZ1bmN0aW9uIHN0cmlwSGV4UHJlZml4IChzdHIpIHtcbiAgaWYgKHR5cGVvZiBzdHIgPT09ICdzdHJpbmcnICYmIHN0ci5zdGFydHNXaXRoKCcweCcpKSB7XG4gICAgcmV0dXJuIHN0ci5zbGljZSgyKVxuICB9XG4gIHJldHVybiBzdHJcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHplcm9zLFxuICBzZXRMZW5ndGgsXG4gIHNldExlbmd0aFJpZ2h0LFxuICBpc0hleFN0cmluZyxcbiAgc3RyaXBIZXhQcmVmaXgsXG4gIHRvQnVmZmVyLFxuICBidWZmZXJUb0hleCxcbiAga2VjY2FrLFxuICBiaXRMZW5ndGhGcm9tQmlnSW50LFxuICBidWZmZXJCRUZyb21CaWdJbnQsXG4gIHR3b3NGcm9tQmlnSW50XG59XG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/dist/vendor-js/eth-eip712-util/util.cjs\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_assert.js": /*!*********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_assert.js ***! \*********************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.output = exports.exists = exports.hash = exports.bytes = exports.bool = exports.number = exports.isBytes = void 0;\nfunction number(n) {\n if (!Number.isSafeInteger(n) || n < 0)\n throw new Error(`positive integer expected, not ${n}`);\n}\nexports.number = number;\nfunction bool(b) {\n if (typeof b !== 'boolean')\n throw new Error(`boolean expected, not ${b}`);\n}\nexports.bool = bool;\n// copied from utils\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nexports.isBytes = isBytes;\nfunction bytes(b, ...lengths) {\n if (!isBytes(b))\n throw new Error('Uint8Array expected');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new Error(`Uint8Array expected of length ${lengths}, not of length=${b.length}`);\n}\nexports.bytes = bytes;\nfunction hash(h) {\n if (typeof h !== 'function' || typeof h.create !== 'function')\n throw new Error('Hash should be wrapped by utils.wrapConstructor');\n number(h.outputLen);\n number(h.blockLen);\n}\nexports.hash = hash;\nfunction exists(instance, checkFinished = true) {\n if (instance.destroyed)\n throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished)\n throw new Error('Hash#digest() has already been called');\n}\nexports.exists = exists;\nfunction output(out, instance) {\n bytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error(`digestInto() expects output buffer of length at least ${min}`);\n }\n}\nexports.output = output;\nconst assert = { number, bool, bytes, hash, exists, output };\nexports[\"default\"] = assert;\n//# sourceMappingURL=_assert.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9fYXNzZXJ0LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2IsOENBQTZDLEVBQUUsYUFBYSxFQUFDO0FBQzdELGNBQWMsR0FBRyxjQUFjLEdBQUcsWUFBWSxHQUFHLGFBQWEsR0FBRyxZQUFZLEdBQUcsY0FBYyxHQUFHLGVBQWU7QUFDaEg7QUFDQTtBQUNBLDBEQUEwRCxFQUFFO0FBQzVEO0FBQ0EsY0FBYztBQUNkO0FBQ0E7QUFDQSxpREFBaUQsRUFBRTtBQUNuRDtBQUNBLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlELFFBQVEsa0JBQWtCLFNBQVM7QUFDNUY7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWTtBQUNaO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlGQUFpRixJQUFJO0FBQ3JGO0FBQ0E7QUFDQSxjQUFjO0FBQ2QsaUJBQWlCO0FBQ2pCLGtCQUFlO0FBQ2YiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvX2Fzc2VydC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMub3V0cHV0ID0gZXhwb3J0cy5leGlzdHMgPSBleHBvcnRzLmhhc2ggPSBleHBvcnRzLmJ5dGVzID0gZXhwb3J0cy5ib29sID0gZXhwb3J0cy5udW1iZXIgPSBleHBvcnRzLmlzQnl0ZXMgPSB2b2lkIDA7XG5mdW5jdGlvbiBudW1iZXIobikge1xuICAgIGlmICghTnVtYmVyLmlzU2FmZUludGVnZXIobikgfHwgbiA8IDApXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgcG9zaXRpdmUgaW50ZWdlciBleHBlY3RlZCwgbm90ICR7bn1gKTtcbn1cbmV4cG9ydHMubnVtYmVyID0gbnVtYmVyO1xuZnVuY3Rpb24gYm9vbChiKSB7XG4gICAgaWYgKHR5cGVvZiBiICE9PSAnYm9vbGVhbicpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgYm9vbGVhbiBleHBlY3RlZCwgbm90ICR7Yn1gKTtcbn1cbmV4cG9ydHMuYm9vbCA9IGJvb2w7XG4vLyBjb3BpZWQgZnJvbSB1dGlsc1xuZnVuY3Rpb24gaXNCeXRlcyhhKSB7XG4gICAgcmV0dXJuIChhIGluc3RhbmNlb2YgVWludDhBcnJheSB8fFxuICAgICAgICAoYSAhPSBudWxsICYmIHR5cGVvZiBhID09PSAnb2JqZWN0JyAmJiBhLmNvbnN0cnVjdG9yLm5hbWUgPT09ICdVaW50OEFycmF5JykpO1xufVxuZXhwb3J0cy5pc0J5dGVzID0gaXNCeXRlcztcbmZ1bmN0aW9uIGJ5dGVzKGIsIC4uLmxlbmd0aHMpIHtcbiAgICBpZiAoIWlzQnl0ZXMoYikpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVWludDhBcnJheSBleHBlY3RlZCcpO1xuICAgIGlmIChsZW5ndGhzLmxlbmd0aCA+IDAgJiYgIWxlbmd0aHMuaW5jbHVkZXMoYi5sZW5ndGgpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVpbnQ4QXJyYXkgZXhwZWN0ZWQgb2YgbGVuZ3RoICR7bGVuZ3Roc30sIG5vdCBvZiBsZW5ndGg9JHtiLmxlbmd0aH1gKTtcbn1cbmV4cG9ydHMuYnl0ZXMgPSBieXRlcztcbmZ1bmN0aW9uIGhhc2goaCkge1xuICAgIGlmICh0eXBlb2YgaCAhPT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgaC5jcmVhdGUgIT09ICdmdW5jdGlvbicpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSGFzaCBzaG91bGQgYmUgd3JhcHBlZCBieSB1dGlscy53cmFwQ29uc3RydWN0b3InKTtcbiAgICBudW1iZXIoaC5vdXRwdXRMZW4pO1xuICAgIG51bWJlcihoLmJsb2NrTGVuKTtcbn1cbmV4cG9ydHMuaGFzaCA9IGhhc2g7XG5mdW5jdGlvbiBleGlzdHMoaW5zdGFuY2UsIGNoZWNrRmluaXNoZWQgPSB0cnVlKSB7XG4gICAgaWYgKGluc3RhbmNlLmRlc3Ryb3llZClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdIYXNoIGluc3RhbmNlIGhhcyBiZWVuIGRlc3Ryb3llZCcpO1xuICAgIGlmIChjaGVja0ZpbmlzaGVkICYmIGluc3RhbmNlLmZpbmlzaGVkKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0hhc2gjZGlnZXN0KCkgaGFzIGFscmVhZHkgYmVlbiBjYWxsZWQnKTtcbn1cbmV4cG9ydHMuZXhpc3RzID0gZXhpc3RzO1xuZnVuY3Rpb24gb3V0cHV0KG91dCwgaW5zdGFuY2UpIHtcbiAgICBieXRlcyhvdXQpO1xuICAgIGNvbnN0IG1pbiA9IGluc3RhbmNlLm91dHB1dExlbjtcbiAgICBpZiAob3V0Lmxlbmd0aCA8IG1pbikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGRpZ2VzdEludG8oKSBleHBlY3RzIG91dHB1dCBidWZmZXIgb2YgbGVuZ3RoIGF0IGxlYXN0ICR7bWlufWApO1xuICAgIH1cbn1cbmV4cG9ydHMub3V0cHV0ID0gb3V0cHV0O1xuY29uc3QgYXNzZXJ0ID0geyBudW1iZXIsIGJvb2wsIGJ5dGVzLCBoYXNoLCBleGlzdHMsIG91dHB1dCB9O1xuZXhwb3J0cy5kZWZhdWx0ID0gYXNzZXJ0O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9X2Fzc2VydC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_assert.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_u64.js": /*!******************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_u64.js ***! \******************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.add5L = exports.add5H = exports.add4H = exports.add4L = exports.add3H = exports.add3L = exports.add = exports.rotlBL = exports.rotlBH = exports.rotlSL = exports.rotlSH = exports.rotr32L = exports.rotr32H = exports.rotrBL = exports.rotrBH = exports.rotrSL = exports.rotrSH = exports.shrSL = exports.shrSH = exports.toBig = exports.split = exports.fromBig = void 0;\nconst U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);\nconst _32n = /* @__PURE__ */ BigInt(32);\n// We are not using BigUint64Array, because they are extremely slow as per 2022\nfunction fromBig(n, le = false) {\n if (le)\n return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) };\n return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };\n}\nexports.fromBig = fromBig;\nfunction split(lst, le = false) {\n let Ah = new Uint32Array(lst.length);\n let Al = new Uint32Array(lst.length);\n for (let i = 0; i < lst.length; i++) {\n const { h, l } = fromBig(lst[i], le);\n [Ah[i], Al[i]] = [h, l];\n }\n return [Ah, Al];\n}\nexports.split = split;\nconst toBig = (h, l) => (BigInt(h >>> 0) << _32n) | BigInt(l >>> 0);\nexports.toBig = toBig;\n// for Shift in [0, 32)\nconst shrSH = (h, _l, s) => h >>> s;\nexports.shrSH = shrSH;\nconst shrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\nexports.shrSL = shrSL;\n// Right rotate for Shift in [1, 32)\nconst rotrSH = (h, l, s) => (h >>> s) | (l << (32 - s));\nexports.rotrSH = rotrSH;\nconst rotrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\nexports.rotrSL = rotrSL;\n// Right rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotrBH = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32));\nexports.rotrBH = rotrBH;\nconst rotrBL = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s));\nexports.rotrBL = rotrBL;\n// Right rotate for shift===32 (just swaps l&h)\nconst rotr32H = (_h, l) => l;\nexports.rotr32H = rotr32H;\nconst rotr32L = (h, _l) => h;\nexports.rotr32L = rotr32L;\n// Left rotate for Shift in [1, 32)\nconst rotlSH = (h, l, s) => (h << s) | (l >>> (32 - s));\nexports.rotlSH = rotlSH;\nconst rotlSL = (h, l, s) => (l << s) | (h >>> (32 - s));\nexports.rotlSL = rotlSL;\n// Left rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotlBH = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s));\nexports.rotlBH = rotlBH;\nconst rotlBL = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s));\nexports.rotlBL = rotlBL;\n// JS uses 32-bit signed integers for bitwise operations which means we cannot\n// simple take carry out of low bit sum by shift, we need to use division.\nfunction add(Ah, Al, Bh, Bl) {\n const l = (Al >>> 0) + (Bl >>> 0);\n return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 };\n}\nexports.add = add;\n// Addition with more than 2 elements\nconst add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);\nexports.add3L = add3L;\nconst add3H = (low, Ah, Bh, Ch) => (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0;\nexports.add3H = add3H;\nconst add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);\nexports.add4L = add4L;\nconst add4H = (low, Ah, Bh, Ch, Dh) => (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0;\nexports.add4H = add4H;\nconst add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);\nexports.add5L = add5L;\nconst add5H = (low, Ah, Bh, Ch, Dh, Eh) => (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0;\nexports.add5H = add5H;\n// prettier-ignore\nconst u64 = {\n fromBig, split, toBig,\n shrSH, shrSL,\n rotrSH, rotrSL, rotrBH, rotrBL,\n rotr32H, rotr32L,\n rotlSH, rotlSL, rotlBH, rotlBL,\n add, add3L, add3H, add4L, add4H, add5H, add5L,\n};\nexports[\"default\"] = u64;\n//# sourceMappingURL=_u64.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9fdTY0LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2IsOENBQTZDLEVBQUUsYUFBYSxFQUFDO0FBQzdELGFBQWEsR0FBRyxhQUFhLEdBQUcsYUFBYSxHQUFHLGFBQWEsR0FBRyxhQUFhLEdBQUcsYUFBYSxHQUFHLFdBQVcsR0FBRyxjQUFjLEdBQUcsY0FBYyxHQUFHLGNBQWMsR0FBRyxjQUFjLEdBQUcsZUFBZSxHQUFHLGVBQWUsR0FBRyxjQUFjLEdBQUcsY0FBYyxHQUFHLGNBQWMsR0FBRyxjQUFjLEdBQUcsYUFBYSxHQUFHLGFBQWEsR0FBRyxhQUFhLEdBQUcsYUFBYSxHQUFHLGVBQWU7QUFDelc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQixhQUFhO0FBQ2I7QUFDQSxlQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGdCQUFnQjtBQUNwQyxnQkFBZ0IsT0FBTztBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFlO0FBQ2YiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvX3U2NC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuYWRkNUwgPSBleHBvcnRzLmFkZDVIID0gZXhwb3J0cy5hZGQ0SCA9IGV4cG9ydHMuYWRkNEwgPSBleHBvcnRzLmFkZDNIID0gZXhwb3J0cy5hZGQzTCA9IGV4cG9ydHMuYWRkID0gZXhwb3J0cy5yb3RsQkwgPSBleHBvcnRzLnJvdGxCSCA9IGV4cG9ydHMucm90bFNMID0gZXhwb3J0cy5yb3RsU0ggPSBleHBvcnRzLnJvdHIzMkwgPSBleHBvcnRzLnJvdHIzMkggPSBleHBvcnRzLnJvdHJCTCA9IGV4cG9ydHMucm90ckJIID0gZXhwb3J0cy5yb3RyU0wgPSBleHBvcnRzLnJvdHJTSCA9IGV4cG9ydHMuc2hyU0wgPSBleHBvcnRzLnNoclNIID0gZXhwb3J0cy50b0JpZyA9IGV4cG9ydHMuc3BsaXQgPSBleHBvcnRzLmZyb21CaWcgPSB2b2lkIDA7XG5jb25zdCBVMzJfTUFTSzY0ID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCgyICoqIDMyIC0gMSk7XG5jb25zdCBfMzJuID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCgzMik7XG4vLyBXZSBhcmUgbm90IHVzaW5nIEJpZ1VpbnQ2NEFycmF5LCBiZWNhdXNlIHRoZXkgYXJlIGV4dHJlbWVseSBzbG93IGFzIHBlciAyMDIyXG5mdW5jdGlvbiBmcm9tQmlnKG4sIGxlID0gZmFsc2UpIHtcbiAgICBpZiAobGUpXG4gICAgICAgIHJldHVybiB7IGg6IE51bWJlcihuICYgVTMyX01BU0s2NCksIGw6IE51bWJlcigobiA+PiBfMzJuKSAmIFUzMl9NQVNLNjQpIH07XG4gICAgcmV0dXJuIHsgaDogTnVtYmVyKChuID4+IF8zMm4pICYgVTMyX01BU0s2NCkgfCAwLCBsOiBOdW1iZXIobiAmIFUzMl9NQVNLNjQpIHwgMCB9O1xufVxuZXhwb3J0cy5mcm9tQmlnID0gZnJvbUJpZztcbmZ1bmN0aW9uIHNwbGl0KGxzdCwgbGUgPSBmYWxzZSkge1xuICAgIGxldCBBaCA9IG5ldyBVaW50MzJBcnJheShsc3QubGVuZ3RoKTtcbiAgICBsZXQgQWwgPSBuZXcgVWludDMyQXJyYXkobHN0Lmxlbmd0aCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsc3QubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgeyBoLCBsIH0gPSBmcm9tQmlnKGxzdFtpXSwgbGUpO1xuICAgICAgICBbQWhbaV0sIEFsW2ldXSA9IFtoLCBsXTtcbiAgICB9XG4gICAgcmV0dXJuIFtBaCwgQWxdO1xufVxuZXhwb3J0cy5zcGxpdCA9IHNwbGl0O1xuY29uc3QgdG9CaWcgPSAoaCwgbCkgPT4gKEJpZ0ludChoID4+PiAwKSA8PCBfMzJuKSB8IEJpZ0ludChsID4+PiAwKTtcbmV4cG9ydHMudG9CaWcgPSB0b0JpZztcbi8vIGZvciBTaGlmdCBpbiBbMCwgMzIpXG5jb25zdCBzaHJTSCA9IChoLCBfbCwgcykgPT4gaCA+Pj4gcztcbmV4cG9ydHMuc2hyU0ggPSBzaHJTSDtcbmNvbnN0IHNoclNMID0gKGgsIGwsIHMpID0+IChoIDw8ICgzMiAtIHMpKSB8IChsID4+PiBzKTtcbmV4cG9ydHMuc2hyU0wgPSBzaHJTTDtcbi8vIFJpZ2h0IHJvdGF0ZSBmb3IgU2hpZnQgaW4gWzEsIDMyKVxuY29uc3Qgcm90clNIID0gKGgsIGwsIHMpID0+IChoID4+PiBzKSB8IChsIDw8ICgzMiAtIHMpKTtcbmV4cG9ydHMucm90clNIID0gcm90clNIO1xuY29uc3Qgcm90clNMID0gKGgsIGwsIHMpID0+IChoIDw8ICgzMiAtIHMpKSB8IChsID4+PiBzKTtcbmV4cG9ydHMucm90clNMID0gcm90clNMO1xuLy8gUmlnaHQgcm90YXRlIGZvciBTaGlmdCBpbiAoMzIsIDY0KSwgTk9URTogMzIgaXMgc3BlY2lhbCBjYXNlLlxuY29uc3Qgcm90ckJIID0gKGgsIGwsIHMpID0+IChoIDw8ICg2NCAtIHMpKSB8IChsID4+PiAocyAtIDMyKSk7XG5leHBvcnRzLnJvdHJCSCA9IHJvdHJCSDtcbmNvbnN0IHJvdHJCTCA9IChoLCBsLCBzKSA9PiAoaCA+Pj4gKHMgLSAzMikpIHwgKGwgPDwgKDY0IC0gcykpO1xuZXhwb3J0cy5yb3RyQkwgPSByb3RyQkw7XG4vLyBSaWdodCByb3RhdGUgZm9yIHNoaWZ0PT09MzIgKGp1c3Qgc3dhcHMgbCZoKVxuY29uc3Qgcm90cjMySCA9IChfaCwgbCkgPT4gbDtcbmV4cG9ydHMucm90cjMySCA9IHJvdHIzMkg7XG5jb25zdCByb3RyMzJMID0gKGgsIF9sKSA9PiBoO1xuZXhwb3J0cy5yb3RyMzJMID0gcm90cjMyTDtcbi8vIExlZnQgcm90YXRlIGZvciBTaGlmdCBpbiBbMSwgMzIpXG5jb25zdCByb3RsU0ggPSAoaCwgbCwgcykgPT4gKGggPDwgcykgfCAobCA+Pj4gKDMyIC0gcykpO1xuZXhwb3J0cy5yb3RsU0ggPSByb3RsU0g7XG5jb25zdCByb3RsU0wgPSAoaCwgbCwgcykgPT4gKGwgPDwgcykgfCAoaCA+Pj4gKDMyIC0gcykpO1xuZXhwb3J0cy5yb3RsU0wgPSByb3RsU0w7XG4vLyBMZWZ0IHJvdGF0ZSBmb3IgU2hpZnQgaW4gKDMyLCA2NCksIE5PVEU6IDMyIGlzIHNwZWNpYWwgY2FzZS5cbmNvbnN0IHJvdGxCSCA9IChoLCBsLCBzKSA9PiAobCA8PCAocyAtIDMyKSkgfCAoaCA+Pj4gKDY0IC0gcykpO1xuZXhwb3J0cy5yb3RsQkggPSByb3RsQkg7XG5jb25zdCByb3RsQkwgPSAoaCwgbCwgcykgPT4gKGggPDwgKHMgLSAzMikpIHwgKGwgPj4+ICg2NCAtIHMpKTtcbmV4cG9ydHMucm90bEJMID0gcm90bEJMO1xuLy8gSlMgdXNlcyAzMi1iaXQgc2lnbmVkIGludGVnZXJzIGZvciBiaXR3aXNlIG9wZXJhdGlvbnMgd2hpY2ggbWVhbnMgd2UgY2Fubm90XG4vLyBzaW1wbGUgdGFrZSBjYXJyeSBvdXQgb2YgbG93IGJpdCBzdW0gYnkgc2hpZnQsIHdlIG5lZWQgdG8gdXNlIGRpdmlzaW9uLlxuZnVuY3Rpb24gYWRkKEFoLCBBbCwgQmgsIEJsKSB7XG4gICAgY29uc3QgbCA9IChBbCA+Pj4gMCkgKyAoQmwgPj4+IDApO1xuICAgIHJldHVybiB7IGg6IChBaCArIEJoICsgKChsIC8gMiAqKiAzMikgfCAwKSkgfCAwLCBsOiBsIHwgMCB9O1xufVxuZXhwb3J0cy5hZGQgPSBhZGQ7XG4vLyBBZGRpdGlvbiB3aXRoIG1vcmUgdGhhbiAyIGVsZW1lbnRzXG5jb25zdCBhZGQzTCA9IChBbCwgQmwsIENsKSA9PiAoQWwgPj4+IDApICsgKEJsID4+PiAwKSArIChDbCA+Pj4gMCk7XG5leHBvcnRzLmFkZDNMID0gYWRkM0w7XG5jb25zdCBhZGQzSCA9IChsb3csIEFoLCBCaCwgQ2gpID0+IChBaCArIEJoICsgQ2ggKyAoKGxvdyAvIDIgKiogMzIpIHwgMCkpIHwgMDtcbmV4cG9ydHMuYWRkM0ggPSBhZGQzSDtcbmNvbnN0IGFkZDRMID0gKEFsLCBCbCwgQ2wsIERsKSA9PiAoQWwgPj4+IDApICsgKEJsID4+PiAwKSArIChDbCA+Pj4gMCkgKyAoRGwgPj4+IDApO1xuZXhwb3J0cy5hZGQ0TCA9IGFkZDRMO1xuY29uc3QgYWRkNEggPSAobG93LCBBaCwgQmgsIENoLCBEaCkgPT4gKEFoICsgQmggKyBDaCArIERoICsgKChsb3cgLyAyICoqIDMyKSB8IDApKSB8IDA7XG5leHBvcnRzLmFkZDRIID0gYWRkNEg7XG5jb25zdCBhZGQ1TCA9IChBbCwgQmwsIENsLCBEbCwgRWwpID0+IChBbCA+Pj4gMCkgKyAoQmwgPj4+IDApICsgKENsID4+PiAwKSArIChEbCA+Pj4gMCkgKyAoRWwgPj4+IDApO1xuZXhwb3J0cy5hZGQ1TCA9IGFkZDVMO1xuY29uc3QgYWRkNUggPSAobG93LCBBaCwgQmgsIENoLCBEaCwgRWgpID0+IChBaCArIEJoICsgQ2ggKyBEaCArIEVoICsgKChsb3cgLyAyICoqIDMyKSB8IDApKSB8IDA7XG5leHBvcnRzLmFkZDVIID0gYWRkNUg7XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IHU2NCA9IHtcbiAgICBmcm9tQmlnLCBzcGxpdCwgdG9CaWcsXG4gICAgc2hyU0gsIHNoclNMLFxuICAgIHJvdHJTSCwgcm90clNMLCByb3RyQkgsIHJvdHJCTCxcbiAgICByb3RyMzJILCByb3RyMzJMLFxuICAgIHJvdGxTSCwgcm90bFNMLCByb3RsQkgsIHJvdGxCTCxcbiAgICBhZGQsIGFkZDNMLCBhZGQzSCwgYWRkNEwsIGFkZDRILCBhZGQ1SCwgYWRkNUwsXG59O1xuZXhwb3J0cy5kZWZhdWx0ID0gdTY0O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9X3U2NC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_u64.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/crypto.js": /*!********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/crypto.js ***! \********************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.crypto = void 0;\nexports.crypto = typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n//# sourceMappingURL=crypto.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9jcnlwdG8uanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFDYiw4Q0FBNkMsRUFBRSxhQUFhLEVBQUM7QUFDN0QsY0FBYztBQUNkLGNBQWM7QUFDZCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9jcnlwdG8uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmNyeXB0byA9IHZvaWQgMDtcbmV4cG9ydHMuY3J5cHRvID0gdHlwZW9mIGdsb2JhbFRoaXMgPT09ICdvYmplY3QnICYmICdjcnlwdG8nIGluIGdsb2JhbFRoaXMgPyBnbG9iYWxUaGlzLmNyeXB0byA6IHVuZGVmaW5lZDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyeXB0by5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/crypto.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_assert.js": /*!*************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_assert.js ***! \*************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ bool: () => (/* binding */ bool),\n/* harmony export */ bytes: () => (/* binding */ bytes),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ exists: () => (/* binding */ exists),\n/* harmony export */ hash: () => (/* binding */ hash),\n/* harmony export */ isBytes: () => (/* binding */ isBytes),\n/* harmony export */ number: () => (/* binding */ number),\n/* harmony export */ output: () => (/* binding */ output)\n/* harmony export */ });\nfunction number(n) {\n if (!Number.isSafeInteger(n) || n < 0)\n throw new Error(`positive integer expected, not ${n}`);\n}\nfunction bool(b) {\n if (typeof b !== 'boolean')\n throw new Error(`boolean expected, not ${b}`);\n}\n// copied from utils\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nfunction bytes(b, ...lengths) {\n if (!isBytes(b))\n throw new Error('Uint8Array expected');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new Error(`Uint8Array expected of length ${lengths}, not of length=${b.length}`);\n}\nfunction hash(h) {\n if (typeof h !== 'function' || typeof h.create !== 'function')\n throw new Error('Hash should be wrapped by utils.wrapConstructor');\n number(h.outputLen);\n number(h.blockLen);\n}\nfunction exists(instance, checkFinished = true) {\n if (instance.destroyed)\n throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished)\n throw new Error('Hash#digest() has already been called');\n}\nfunction output(out, instance) {\n bytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error(`digestInto() expects output buffer of length at least ${min}`);\n }\n}\n\nconst assert = { number, bool, bytes, hash, exists, output };\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (assert);\n//# sourceMappingURL=_assert.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vX2Fzc2VydC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQSwwREFBMEQsRUFBRTtBQUM1RDtBQUNBO0FBQ0E7QUFDQSxpREFBaUQsRUFBRTtBQUNuRDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlEQUF5RCxRQUFRLGtCQUFrQixTQUFTO0FBQzVGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpRkFBaUYsSUFBSTtBQUNyRjtBQUNBO0FBQ3FEO0FBQ3JELGlCQUFpQjtBQUNqQixpRUFBZSxNQUFNLEVBQUM7QUFDdEIiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL19hc3NlcnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gbnVtYmVyKG4pIHtcbiAgICBpZiAoIU51bWJlci5pc1NhZmVJbnRlZ2VyKG4pIHx8IG4gPCAwKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHBvc2l0aXZlIGludGVnZXIgZXhwZWN0ZWQsIG5vdCAke259YCk7XG59XG5mdW5jdGlvbiBib29sKGIpIHtcbiAgICBpZiAodHlwZW9mIGIgIT09ICdib29sZWFuJylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBib29sZWFuIGV4cGVjdGVkLCBub3QgJHtifWApO1xufVxuLy8gY29waWVkIGZyb20gdXRpbHNcbmV4cG9ydCBmdW5jdGlvbiBpc0J5dGVzKGEpIHtcbiAgICByZXR1cm4gKGEgaW5zdGFuY2VvZiBVaW50OEFycmF5IHx8XG4gICAgICAgIChhICE9IG51bGwgJiYgdHlwZW9mIGEgPT09ICdvYmplY3QnICYmIGEuY29uc3RydWN0b3IubmFtZSA9PT0gJ1VpbnQ4QXJyYXknKSk7XG59XG5mdW5jdGlvbiBieXRlcyhiLCAuLi5sZW5ndGhzKSB7XG4gICAgaWYgKCFpc0J5dGVzKGIpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VpbnQ4QXJyYXkgZXhwZWN0ZWQnKTtcbiAgICBpZiAobGVuZ3Rocy5sZW5ndGggPiAwICYmICFsZW5ndGhzLmluY2x1ZGVzKGIubGVuZ3RoKSlcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVaW50OEFycmF5IGV4cGVjdGVkIG9mIGxlbmd0aCAke2xlbmd0aHN9LCBub3Qgb2YgbGVuZ3RoPSR7Yi5sZW5ndGh9YCk7XG59XG5mdW5jdGlvbiBoYXNoKGgpIHtcbiAgICBpZiAodHlwZW9mIGggIT09ICdmdW5jdGlvbicgfHwgdHlwZW9mIGguY3JlYXRlICE9PSAnZnVuY3Rpb24nKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0hhc2ggc2hvdWxkIGJlIHdyYXBwZWQgYnkgdXRpbHMud3JhcENvbnN0cnVjdG9yJyk7XG4gICAgbnVtYmVyKGgub3V0cHV0TGVuKTtcbiAgICBudW1iZXIoaC5ibG9ja0xlbik7XG59XG5mdW5jdGlvbiBleGlzdHMoaW5zdGFuY2UsIGNoZWNrRmluaXNoZWQgPSB0cnVlKSB7XG4gICAgaWYgKGluc3RhbmNlLmRlc3Ryb3llZClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdIYXNoIGluc3RhbmNlIGhhcyBiZWVuIGRlc3Ryb3llZCcpO1xuICAgIGlmIChjaGVja0ZpbmlzaGVkICYmIGluc3RhbmNlLmZpbmlzaGVkKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0hhc2gjZGlnZXN0KCkgaGFzIGFscmVhZHkgYmVlbiBjYWxsZWQnKTtcbn1cbmZ1bmN0aW9uIG91dHB1dChvdXQsIGluc3RhbmNlKSB7XG4gICAgYnl0ZXMob3V0KTtcbiAgICBjb25zdCBtaW4gPSBpbnN0YW5jZS5vdXRwdXRMZW47XG4gICAgaWYgKG91dC5sZW5ndGggPCBtaW4pIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBkaWdlc3RJbnRvKCkgZXhwZWN0cyBvdXRwdXQgYnVmZmVyIG9mIGxlbmd0aCBhdCBsZWFzdCAke21pbn1gKTtcbiAgICB9XG59XG5leHBvcnQgeyBudW1iZXIsIGJvb2wsIGJ5dGVzLCBoYXNoLCBleGlzdHMsIG91dHB1dCB9O1xuY29uc3QgYXNzZXJ0ID0geyBudW1iZXIsIGJvb2wsIGJ5dGVzLCBoYXNoLCBleGlzdHMsIG91dHB1dCB9O1xuZXhwb3J0IGRlZmF1bHQgYXNzZXJ0O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9X2Fzc2VydC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_assert.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_md.js": /*!*********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_md.js ***! \*********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Chi: () => (/* binding */ Chi),\n/* harmony export */ HashMD: () => (/* binding */ HashMD),\n/* harmony export */ Maj: () => (/* binding */ Maj)\n/* harmony export */ });\n/* harmony import */ var _assert_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_assert.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_assert.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/utils.js\");\n\n\n// Polyfill for Safari 14\nfunction setBigUint64(view, byteOffset, value, isLE) {\n if (typeof view.setBigUint64 === 'function')\n return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\n// Choice: a ? b : c\nconst Chi = (a, b, c) => (a & b) ^ (~a & c);\n// Majority function, true if any two inpust is true\nconst Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c);\n/**\n * Merkle-Damgard hash construction base class.\n * Could be used to create MD5, RIPEMD, SHA1, SHA2.\n */\nclass HashMD extends _utils_js__WEBPACK_IMPORTED_MODULE_0__.Hash {\n constructor(blockLen, outputLen, padOffset, isLE) {\n super();\n this.blockLen = blockLen;\n this.outputLen = outputLen;\n this.padOffset = padOffset;\n this.isLE = isLE;\n this.finished = false;\n this.length = 0;\n this.pos = 0;\n this.destroyed = false;\n this.buffer = new Uint8Array(blockLen);\n this.view = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.createView)(this.buffer);\n }\n update(data) {\n (0,_assert_js__WEBPACK_IMPORTED_MODULE_1__.exists)(this);\n const { view, buffer, blockLen } = this;\n data = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.toBytes)(data);\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input, cast it to view and process\n if (take === blockLen) {\n const dataView = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.createView)(data);\n for (; blockLen <= len - pos; pos += blockLen)\n this.process(dataView, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(view, 0);\n this.pos = 0;\n }\n }\n this.length += data.length;\n this.roundClean();\n return this;\n }\n digestInto(out) {\n (0,_assert_js__WEBPACK_IMPORTED_MODULE_1__.exists)(this);\n (0,_assert_js__WEBPACK_IMPORTED_MODULE_1__.output)(out, this);\n this.finished = true;\n // Padding\n // We can avoid allocation of buffer for padding completely if it\n // was previously not allocated here. But it won't change performance.\n const { buffer, view, blockLen, isLE } = this;\n let { pos } = this;\n // append the bit '1' to the message\n buffer[pos++] = 0b10000000;\n this.buffer.subarray(pos).fill(0);\n // we have less than padOffset left in buffer, so we cannot put length in\n // current block, need process it and pad again\n if (this.padOffset > blockLen - pos) {\n this.process(view, 0);\n pos = 0;\n }\n // Pad until full block byte with zeros\n for (let i = pos; i < blockLen; i++)\n buffer[i] = 0;\n // Note: sha512 requires length to be 128bit integer, but length in JS will overflow before that\n // You need to write around 2 exabytes (u64_max / 8 / (1024**6)) for this to happen.\n // So we just write lowest 64 bits of that value.\n setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE);\n this.process(view, 0);\n const oview = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.createView)(out);\n const len = this.outputLen;\n // NOTE: we do division by 4 later, which should be fused in single op with modulo by JIT\n if (len % 4)\n throw new Error('_sha2: outputLen should be aligned to 32bit');\n const outLen = len / 4;\n const state = this.get();\n if (outLen > state.length)\n throw new Error('_sha2: outputLen bigger than state');\n for (let i = 0; i < outLen; i++)\n oview.setUint32(4 * i, state[i], isLE);\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n _cloneInto(to) {\n to || (to = new this.constructor());\n to.set(...this.get());\n const { blockLen, buffer, length, finished, destroyed, pos } = this;\n to.length = length;\n to.pos = pos;\n to.finished = finished;\n to.destroyed = destroyed;\n if (length % blockLen)\n to.buffer.set(buffer);\n return to;\n }\n}\n//# sourceMappingURL=_md.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vX21kLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQThDO0FBQ1M7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ08scUJBQXFCLDJDQUFJO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IscURBQVU7QUFDOUI7QUFDQTtBQUNBLFFBQVEsa0RBQU07QUFDZCxnQkFBZ0IseUJBQXlCO0FBQ3pDLGVBQWUsa0RBQU87QUFDdEI7QUFDQSwwQkFBMEIsVUFBVTtBQUNwQztBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMscURBQVU7QUFDM0MsdUJBQXVCLHVCQUF1QjtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsa0RBQU07QUFDZCxRQUFRLGtEQUFNO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsK0JBQStCO0FBQy9DLGNBQWMsTUFBTTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixjQUFjO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixxREFBVTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFlBQVk7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLG9CQUFvQjtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLHFEQUFxRDtBQUNyRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vX21kLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4aXN0cywgb3V0cHV0IH0gZnJvbSAnLi9fYXNzZXJ0LmpzJztcbmltcG9ydCB7IEhhc2gsIGNyZWF0ZVZpZXcsIHRvQnl0ZXMgfSBmcm9tICcuL3V0aWxzLmpzJztcbi8vIFBvbHlmaWxsIGZvciBTYWZhcmkgMTRcbmZ1bmN0aW9uIHNldEJpZ1VpbnQ2NCh2aWV3LCBieXRlT2Zmc2V0LCB2YWx1ZSwgaXNMRSkge1xuICAgIGlmICh0eXBlb2Ygdmlldy5zZXRCaWdVaW50NjQgPT09ICdmdW5jdGlvbicpXG4gICAgICAgIHJldHVybiB2aWV3LnNldEJpZ1VpbnQ2NChieXRlT2Zmc2V0LCB2YWx1ZSwgaXNMRSk7XG4gICAgY29uc3QgXzMybiA9IEJpZ0ludCgzMik7XG4gICAgY29uc3QgX3UzMl9tYXggPSBCaWdJbnQoMHhmZmZmZmZmZik7XG4gICAgY29uc3Qgd2ggPSBOdW1iZXIoKHZhbHVlID4+IF8zMm4pICYgX3UzMl9tYXgpO1xuICAgIGNvbnN0IHdsID0gTnVtYmVyKHZhbHVlICYgX3UzMl9tYXgpO1xuICAgIGNvbnN0IGggPSBpc0xFID8gNCA6IDA7XG4gICAgY29uc3QgbCA9IGlzTEUgPyAwIDogNDtcbiAgICB2aWV3LnNldFVpbnQzMihieXRlT2Zmc2V0ICsgaCwgd2gsIGlzTEUpO1xuICAgIHZpZXcuc2V0VWludDMyKGJ5dGVPZmZzZXQgKyBsLCB3bCwgaXNMRSk7XG59XG4vLyBDaG9pY2U6IGEgPyBiIDogY1xuZXhwb3J0IGNvbnN0IENoaSA9IChhLCBiLCBjKSA9PiAoYSAmIGIpIF4gKH5hICYgYyk7XG4vLyBNYWpvcml0eSBmdW5jdGlvbiwgdHJ1ZSBpZiBhbnkgdHdvIGlucHVzdCBpcyB0cnVlXG5leHBvcnQgY29uc3QgTWFqID0gKGEsIGIsIGMpID0+IChhICYgYikgXiAoYSAmIGMpIF4gKGIgJiBjKTtcbi8qKlxuICogTWVya2xlLURhbWdhcmQgaGFzaCBjb25zdHJ1Y3Rpb24gYmFzZSBjbGFzcy5cbiAqIENvdWxkIGJlIHVzZWQgdG8gY3JlYXRlIE1ENSwgUklQRU1ELCBTSEExLCBTSEEyLlxuICovXG5leHBvcnQgY2xhc3MgSGFzaE1EIGV4dGVuZHMgSGFzaCB7XG4gICAgY29uc3RydWN0b3IoYmxvY2tMZW4sIG91dHB1dExlbiwgcGFkT2Zmc2V0LCBpc0xFKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuYmxvY2tMZW4gPSBibG9ja0xlbjtcbiAgICAgICAgdGhpcy5vdXRwdXRMZW4gPSBvdXRwdXRMZW47XG4gICAgICAgIHRoaXMucGFkT2Zmc2V0ID0gcGFkT2Zmc2V0O1xuICAgICAgICB0aGlzLmlzTEUgPSBpc0xFO1xuICAgICAgICB0aGlzLmZpbmlzaGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMubGVuZ3RoID0gMDtcbiAgICAgICAgdGhpcy5wb3MgPSAwO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KGJsb2NrTGVuKTtcbiAgICAgICAgdGhpcy52aWV3ID0gY3JlYXRlVmlldyh0aGlzLmJ1ZmZlcik7XG4gICAgfVxuICAgIHVwZGF0ZShkYXRhKSB7XG4gICAgICAgIGV4aXN0cyh0aGlzKTtcbiAgICAgICAgY29uc3QgeyB2aWV3LCBidWZmZXIsIGJsb2NrTGVuIH0gPSB0aGlzO1xuICAgICAgICBkYXRhID0gdG9CeXRlcyhkYXRhKTtcbiAgICAgICAgY29uc3QgbGVuID0gZGF0YS5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IHBvcyA9IDA7IHBvcyA8IGxlbjspIHtcbiAgICAgICAgICAgIGNvbnN0IHRha2UgPSBNYXRoLm1pbihibG9ja0xlbiAtIHRoaXMucG9zLCBsZW4gLSBwb3MpO1xuICAgICAgICAgICAgLy8gRmFzdCBwYXRoOiB3ZSBoYXZlIGF0IGxlYXN0IG9uZSBibG9jayBpbiBpbnB1dCwgY2FzdCBpdCB0byB2aWV3IGFuZCBwcm9jZXNzXG4gICAgICAgICAgICBpZiAodGFrZSA9PT0gYmxvY2tMZW4pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRhVmlldyA9IGNyZWF0ZVZpZXcoZGF0YSk7XG4gICAgICAgICAgICAgICAgZm9yICg7IGJsb2NrTGVuIDw9IGxlbiAtIHBvczsgcG9zICs9IGJsb2NrTGVuKVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3MoZGF0YVZpZXcsIHBvcyk7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBidWZmZXIuc2V0KGRhdGEuc3ViYXJyYXkocG9zLCBwb3MgKyB0YWtlKSwgdGhpcy5wb3MpO1xuICAgICAgICAgICAgdGhpcy5wb3MgKz0gdGFrZTtcbiAgICAgICAgICAgIHBvcyArPSB0YWtlO1xuICAgICAgICAgICAgaWYgKHRoaXMucG9zID09PSBibG9ja0xlbikge1xuICAgICAgICAgICAgICAgIHRoaXMucHJvY2Vzcyh2aWV3LCAwKTtcbiAgICAgICAgICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sZW5ndGggKz0gZGF0YS5sZW5ndGg7XG4gICAgICAgIHRoaXMucm91bmRDbGVhbigpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgZGlnZXN0SW50byhvdXQpIHtcbiAgICAgICAgZXhpc3RzKHRoaXMpO1xuICAgICAgICBvdXRwdXQob3V0LCB0aGlzKTtcbiAgICAgICAgdGhpcy5maW5pc2hlZCA9IHRydWU7XG4gICAgICAgIC8vIFBhZGRpbmdcbiAgICAgICAgLy8gV2UgY2FuIGF2b2lkIGFsbG9jYXRpb24gb2YgYnVmZmVyIGZvciBwYWRkaW5nIGNvbXBsZXRlbHkgaWYgaXRcbiAgICAgICAgLy8gd2FzIHByZXZpb3VzbHkgbm90IGFsbG9jYXRlZCBoZXJlLiBCdXQgaXQgd29uJ3QgY2hhbmdlIHBlcmZvcm1hbmNlLlxuICAgICAgICBjb25zdCB7IGJ1ZmZlciwgdmlldywgYmxvY2tMZW4sIGlzTEUgfSA9IHRoaXM7XG4gICAgICAgIGxldCB7IHBvcyB9ID0gdGhpcztcbiAgICAgICAgLy8gYXBwZW5kIHRoZSBiaXQgJzEnIHRvIHRoZSBtZXNzYWdlXG4gICAgICAgIGJ1ZmZlcltwb3MrK10gPSAwYjEwMDAwMDAwO1xuICAgICAgICB0aGlzLmJ1ZmZlci5zdWJhcnJheShwb3MpLmZpbGwoMCk7XG4gICAgICAgIC8vIHdlIGhhdmUgbGVzcyB0aGFuIHBhZE9mZnNldCBsZWZ0IGluIGJ1ZmZlciwgc28gd2UgY2Fubm90IHB1dCBsZW5ndGggaW5cbiAgICAgICAgLy8gY3VycmVudCBibG9jaywgbmVlZCBwcm9jZXNzIGl0IGFuZCBwYWQgYWdhaW5cbiAgICAgICAgaWYgKHRoaXMucGFkT2Zmc2V0ID4gYmxvY2tMZW4gLSBwb3MpIHtcbiAgICAgICAgICAgIHRoaXMucHJvY2Vzcyh2aWV3LCAwKTtcbiAgICAgICAgICAgIHBvcyA9IDA7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUGFkIHVudGlsIGZ1bGwgYmxvY2sgYnl0ZSB3aXRoIHplcm9zXG4gICAgICAgIGZvciAobGV0IGkgPSBwb3M7IGkgPCBibG9ja0xlbjsgaSsrKVxuICAgICAgICAgICAgYnVmZmVyW2ldID0gMDtcbiAgICAgICAgLy8gTm90ZTogc2hhNTEyIHJlcXVpcmVzIGxlbmd0aCB0byBiZSAxMjhiaXQgaW50ZWdlciwgYnV0IGxlbmd0aCBpbiBKUyB3aWxsIG92ZXJmbG93IGJlZm9yZSB0aGF0XG4gICAgICAgIC8vIFlvdSBuZWVkIHRvIHdyaXRlIGFyb3VuZCAyIGV4YWJ5dGVzICh1NjRfbWF4IC8gOCAvICgxMDI0Kio2KSkgZm9yIHRoaXMgdG8gaGFwcGVuLlxuICAgICAgICAvLyBTbyB3ZSBqdXN0IHdyaXRlIGxvd2VzdCA2NCBiaXRzIG9mIHRoYXQgdmFsdWUuXG4gICAgICAgIHNldEJpZ1VpbnQ2NCh2aWV3LCBibG9ja0xlbiAtIDgsIEJpZ0ludCh0aGlzLmxlbmd0aCAqIDgpLCBpc0xFKTtcbiAgICAgICAgdGhpcy5wcm9jZXNzKHZpZXcsIDApO1xuICAgICAgICBjb25zdCBvdmlldyA9IGNyZWF0ZVZpZXcob3V0KTtcbiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5vdXRwdXRMZW47XG4gICAgICAgIC8vIE5PVEU6IHdlIGRvIGRpdmlzaW9uIGJ5IDQgbGF0ZXIsIHdoaWNoIHNob3VsZCBiZSBmdXNlZCBpbiBzaW5nbGUgb3Agd2l0aCBtb2R1bG8gYnkgSklUXG4gICAgICAgIGlmIChsZW4gJSA0KVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdfc2hhMjogb3V0cHV0TGVuIHNob3VsZCBiZSBhbGlnbmVkIHRvIDMyYml0Jyk7XG4gICAgICAgIGNvbnN0IG91dExlbiA9IGxlbiAvIDQ7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5nZXQoKTtcbiAgICAgICAgaWYgKG91dExlbiA+IHN0YXRlLmxlbmd0aClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignX3NoYTI6IG91dHB1dExlbiBiaWdnZXIgdGhhbiBzdGF0ZScpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG91dExlbjsgaSsrKVxuICAgICAgICAgICAgb3ZpZXcuc2V0VWludDMyKDQgKiBpLCBzdGF0ZVtpXSwgaXNMRSk7XG4gICAgfVxuICAgIGRpZ2VzdCgpIHtcbiAgICAgICAgY29uc3QgeyBidWZmZXIsIG91dHB1dExlbiB9ID0gdGhpcztcbiAgICAgICAgdGhpcy5kaWdlc3RJbnRvKGJ1ZmZlcik7XG4gICAgICAgIGNvbnN0IHJlcyA9IGJ1ZmZlci5zbGljZSgwLCBvdXRwdXRMZW4pO1xuICAgICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG4gICAgX2Nsb25lSW50byh0bykge1xuICAgICAgICB0byB8fCAodG8gPSBuZXcgdGhpcy5jb25zdHJ1Y3RvcigpKTtcbiAgICAgICAgdG8uc2V0KC4uLnRoaXMuZ2V0KCkpO1xuICAgICAgICBjb25zdCB7IGJsb2NrTGVuLCBidWZmZXIsIGxlbmd0aCwgZmluaXNoZWQsIGRlc3Ryb3llZCwgcG9zIH0gPSB0aGlzO1xuICAgICAgICB0by5sZW5ndGggPSBsZW5ndGg7XG4gICAgICAgIHRvLnBvcyA9IHBvcztcbiAgICAgICAgdG8uZmluaXNoZWQgPSBmaW5pc2hlZDtcbiAgICAgICAgdG8uZGVzdHJveWVkID0gZGVzdHJveWVkO1xuICAgICAgICBpZiAobGVuZ3RoICUgYmxvY2tMZW4pXG4gICAgICAgICAgICB0by5idWZmZXIuc2V0KGJ1ZmZlcik7XG4gICAgICAgIHJldHVybiB0bztcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1fbWQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_md.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/crypto.js": /*!************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/crypto.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ crypto: () => (/* binding */ crypto)\n/* harmony export */ });\nconst crypto = typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n//# sourceMappingURL=crypto.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vY3J5cHRvLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBTztBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL2VzbS9jcnlwdG8uanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGNyeXB0byA9IHR5cGVvZiBnbG9iYWxUaGlzID09PSAnb2JqZWN0JyAmJiAnY3J5cHRvJyBpbiBnbG9iYWxUaGlzID8gZ2xvYmFsVGhpcy5jcnlwdG8gOiB1bmRlZmluZWQ7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jcnlwdG8uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/crypto.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/sha256.js": /*!************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/sha256.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ sha224: () => (/* binding */ sha224),\n/* harmony export */ sha256: () => (/* binding */ sha256)\n/* harmony export */ });\n/* harmony import */ var _md_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_md.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_md.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/utils.js\");\n\n\n// SHA2-256 need to try 2^128 hashes to execute birthday attack.\n// BTC network is doing 2^67 hashes/sec as per early 2023.\n// Round constants:\n// first 32 bits of the fractional parts of the cube roots of the first 64 primes 2..311)\n// prettier-ignore\nconst SHA256_K = /* @__PURE__ */ new Uint32Array([\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n]);\n// Initial state:\n// first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19\n// prettier-ignore\nconst SHA256_IV = /* @__PURE__ */ new Uint32Array([\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n]);\n// Temporary buffer, not used to store anything between runs\n// Named this way because it matches specification.\nconst SHA256_W = /* @__PURE__ */ new Uint32Array(64);\nclass SHA256 extends _md_js__WEBPACK_IMPORTED_MODULE_0__.HashMD {\n constructor() {\n super(64, 32, 8, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n this.A = SHA256_IV[0] | 0;\n this.B = SHA256_IV[1] | 0;\n this.C = SHA256_IV[2] | 0;\n this.D = SHA256_IV[3] | 0;\n this.E = SHA256_IV[4] | 0;\n this.F = SHA256_IV[5] | 0;\n this.G = SHA256_IV[6] | 0;\n this.H = SHA256_IV[7] | 0;\n }\n get() {\n const { A, B, C, D, E, F, G, H } = this;\n return [A, B, C, D, E, F, G, H];\n }\n // prettier-ignore\n set(A, B, C, D, E, F, G, H) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n this.F = F | 0;\n this.G = G | 0;\n this.H = H | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 48 words w[16..63] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4)\n SHA256_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 64; i++) {\n const W15 = SHA256_W[i - 15];\n const W2 = SHA256_W[i - 2];\n const s0 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W15, 7) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W15, 18) ^ (W15 >>> 3);\n const s1 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W2, 17) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W2, 19) ^ (W2 >>> 10);\n SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0;\n }\n // Compression function main loop, 64 rounds\n let { A, B, C, D, E, F, G, H } = this;\n for (let i = 0; i < 64; i++) {\n const sigma1 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(E, 6) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(E, 11) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(E, 25);\n const T1 = (H + sigma1 + (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Chi)(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const sigma0 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(A, 2) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(A, 13) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(A, 22);\n const T2 = (sigma0 + (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Maj)(A, B, C)) | 0;\n H = G;\n G = F;\n F = E;\n E = (D + T1) | 0;\n D = C;\n C = B;\n B = A;\n A = (T1 + T2) | 0;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n F = (F + this.F) | 0;\n G = (G + this.G) | 0;\n H = (H + this.H) | 0;\n this.set(A, B, C, D, E, F, G, H);\n }\n roundClean() {\n SHA256_W.fill(0);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0, 0, 0, 0);\n this.buffer.fill(0);\n }\n}\n// Constants from https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf\nclass SHA224 extends SHA256 {\n constructor() {\n super();\n this.A = 0xc1059ed8 | 0;\n this.B = 0x367cd507 | 0;\n this.C = 0x3070dd17 | 0;\n this.D = 0xf70e5939 | 0;\n this.E = 0xffc00b31 | 0;\n this.F = 0x68581511 | 0;\n this.G = 0x64f98fa7 | 0;\n this.H = 0xbefa4fa4 | 0;\n this.outputLen = 28;\n }\n}\n/**\n * SHA2-256 hash function\n * @param message - data that would be hashed\n */\nconst sha256 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.wrapConstructor)(() => new SHA256());\nconst sha224 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.wrapConstructor)(() => new SHA224());\n//# sourceMappingURL=sha256.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vc2hhMjU2LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBNEM7QUFDTztBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsMENBQU07QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQix5QkFBeUI7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFFBQVE7QUFDaEM7QUFDQSx5QkFBeUIsUUFBUTtBQUNqQztBQUNBO0FBQ0EsdUJBQXVCLCtDQUFJLFdBQVcsK0NBQUk7QUFDMUMsdUJBQXVCLCtDQUFJLFdBQVcsK0NBQUk7QUFDMUM7QUFDQTtBQUNBO0FBQ0EsY0FBYyx5QkFBeUI7QUFDdkMsd0JBQXdCLFFBQVE7QUFDaEMsMkJBQTJCLCtDQUFJLFNBQVMsK0NBQUksVUFBVSwrQ0FBSTtBQUMxRCxxQ0FBcUMsMkNBQUc7QUFDeEMsMkJBQTJCLCtDQUFJLFNBQVMsK0NBQUksVUFBVSwrQ0FBSTtBQUMxRCxpQ0FBaUMsMkNBQUc7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLCtCQUErQiwwREFBZTtBQUM5QywrQkFBK0IsMERBQWU7QUFDckQiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3NoYTI1Ni5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXNoTUQsIENoaSwgTWFqIH0gZnJvbSAnLi9fbWQuanMnO1xuaW1wb3J0IHsgcm90ciwgd3JhcENvbnN0cnVjdG9yIH0gZnJvbSAnLi91dGlscy5qcyc7XG4vLyBTSEEyLTI1NiBuZWVkIHRvIHRyeSAyXjEyOCBoYXNoZXMgdG8gZXhlY3V0ZSBiaXJ0aGRheSBhdHRhY2suXG4vLyBCVEMgbmV0d29yayBpcyBkb2luZyAyXjY3IGhhc2hlcy9zZWMgYXMgcGVyIGVhcmx5IDIwMjMuXG4vLyBSb3VuZCBjb25zdGFudHM6XG4vLyBmaXJzdCAzMiBiaXRzIG9mIHRoZSBmcmFjdGlvbmFsIHBhcnRzIG9mIHRoZSBjdWJlIHJvb3RzIG9mIHRoZSBmaXJzdCA2NCBwcmltZXMgMi4uMzExKVxuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBTSEEyNTZfSyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoW1xuICAgIDB4NDI4YTJmOTgsIDB4NzEzNzQ0OTEsIDB4YjVjMGZiY2YsIDB4ZTliNWRiYTUsIDB4Mzk1NmMyNWIsIDB4NTlmMTExZjEsIDB4OTIzZjgyYTQsIDB4YWIxYzVlZDUsXG4gICAgMHhkODA3YWE5OCwgMHgxMjgzNWIwMSwgMHgyNDMxODViZSwgMHg1NTBjN2RjMywgMHg3MmJlNWQ3NCwgMHg4MGRlYjFmZSwgMHg5YmRjMDZhNywgMHhjMTliZjE3NCxcbiAgICAweGU0OWI2OWMxLCAweGVmYmU0Nzg2LCAweDBmYzE5ZGM2LCAweDI0MGNhMWNjLCAweDJkZTkyYzZmLCAweDRhNzQ4NGFhLCAweDVjYjBhOWRjLCAweDc2Zjk4OGRhLFxuICAgIDB4OTgzZTUxNTIsIDB4YTgzMWM2NmQsIDB4YjAwMzI3YzgsIDB4YmY1OTdmYzcsIDB4YzZlMDBiZjMsIDB4ZDVhNzkxNDcsIDB4MDZjYTYzNTEsIDB4MTQyOTI5NjcsXG4gICAgMHgyN2I3MGE4NSwgMHgyZTFiMjEzOCwgMHg0ZDJjNmRmYywgMHg1MzM4MGQxMywgMHg2NTBhNzM1NCwgMHg3NjZhMGFiYiwgMHg4MWMyYzkyZSwgMHg5MjcyMmM4NSxcbiAgICAweGEyYmZlOGExLCAweGE4MWE2NjRiLCAweGMyNGI4YjcwLCAweGM3NmM1MWEzLCAweGQxOTJlODE5LCAweGQ2OTkwNjI0LCAweGY0MGUzNTg1LCAweDEwNmFhMDcwLFxuICAgIDB4MTlhNGMxMTYsIDB4MWUzNzZjMDgsIDB4Mjc0ODc3NGMsIDB4MzRiMGJjYjUsIDB4MzkxYzBjYjMsIDB4NGVkOGFhNGEsIDB4NWI5Y2NhNGYsIDB4NjgyZTZmZjMsXG4gICAgMHg3NDhmODJlZSwgMHg3OGE1NjM2ZiwgMHg4NGM4NzgxNCwgMHg4Y2M3MDIwOCwgMHg5MGJlZmZmYSwgMHhhNDUwNmNlYiwgMHhiZWY5YTNmNywgMHhjNjcxNzhmMlxuXSk7XG4vLyBJbml0aWFsIHN0YXRlOlxuLy8gZmlyc3QgMzIgYml0cyBvZiB0aGUgZnJhY3Rpb25hbCBwYXJ0cyBvZiB0aGUgc3F1YXJlIHJvb3RzIG9mIHRoZSBmaXJzdCA4IHByaW1lcyAyLi4xOVxuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBTSEEyNTZfSVYgPSAvKiBAX19QVVJFX18gKi8gbmV3IFVpbnQzMkFycmF5KFtcbiAgICAweDZhMDllNjY3LCAweGJiNjdhZTg1LCAweDNjNmVmMzcyLCAweGE1NGZmNTNhLCAweDUxMGU1MjdmLCAweDliMDU2ODhjLCAweDFmODNkOWFiLCAweDViZTBjZDE5XG5dKTtcbi8vIFRlbXBvcmFyeSBidWZmZXIsIG5vdCB1c2VkIHRvIHN0b3JlIGFueXRoaW5nIGJldHdlZW4gcnVuc1xuLy8gTmFtZWQgdGhpcyB3YXkgYmVjYXVzZSBpdCBtYXRjaGVzIHNwZWNpZmljYXRpb24uXG5jb25zdCBTSEEyNTZfVyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoNjQpO1xuY2xhc3MgU0hBMjU2IGV4dGVuZHMgSGFzaE1EIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoNjQsIDMyLCA4LCBmYWxzZSk7XG4gICAgICAgIC8vIFdlIGNhbm5vdCB1c2UgYXJyYXkgaGVyZSBzaW5jZSBhcnJheSBhbGxvd3MgaW5kZXhpbmcgYnkgdmFyaWFibGVcbiAgICAgICAgLy8gd2hpY2ggbWVhbnMgb3B0aW1pemVyL2NvbXBpbGVyIGNhbm5vdCB1c2UgcmVnaXN0ZXJzLlxuICAgICAgICB0aGlzLkEgPSBTSEEyNTZfSVZbMF0gfCAwO1xuICAgICAgICB0aGlzLkIgPSBTSEEyNTZfSVZbMV0gfCAwO1xuICAgICAgICB0aGlzLkMgPSBTSEEyNTZfSVZbMl0gfCAwO1xuICAgICAgICB0aGlzLkQgPSBTSEEyNTZfSVZbM10gfCAwO1xuICAgICAgICB0aGlzLkUgPSBTSEEyNTZfSVZbNF0gfCAwO1xuICAgICAgICB0aGlzLkYgPSBTSEEyNTZfSVZbNV0gfCAwO1xuICAgICAgICB0aGlzLkcgPSBTSEEyNTZfSVZbNl0gfCAwO1xuICAgICAgICB0aGlzLkggPSBTSEEyNTZfSVZbN10gfCAwO1xuICAgIH1cbiAgICBnZXQoKSB7XG4gICAgICAgIGNvbnN0IHsgQSwgQiwgQywgRCwgRSwgRiwgRywgSCB9ID0gdGhpcztcbiAgICAgICAgcmV0dXJuIFtBLCBCLCBDLCBELCBFLCBGLCBHLCBIXTtcbiAgICB9XG4gICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgc2V0KEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgpIHtcbiAgICAgICAgdGhpcy5BID0gQSB8IDA7XG4gICAgICAgIHRoaXMuQiA9IEIgfCAwO1xuICAgICAgICB0aGlzLkMgPSBDIHwgMDtcbiAgICAgICAgdGhpcy5EID0gRCB8IDA7XG4gICAgICAgIHRoaXMuRSA9IEUgfCAwO1xuICAgICAgICB0aGlzLkYgPSBGIHwgMDtcbiAgICAgICAgdGhpcy5HID0gRyB8IDA7XG4gICAgICAgIHRoaXMuSCA9IEggfCAwO1xuICAgIH1cbiAgICBwcm9jZXNzKHZpZXcsIG9mZnNldCkge1xuICAgICAgICAvLyBFeHRlbmQgdGhlIGZpcnN0IDE2IHdvcmRzIGludG8gdGhlIHJlbWFpbmluZyA0OCB3b3JkcyB3WzE2Li42M10gb2YgdGhlIG1lc3NhZ2Ugc2NoZWR1bGUgYXJyYXlcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxNjsgaSsrLCBvZmZzZXQgKz0gNClcbiAgICAgICAgICAgIFNIQTI1Nl9XW2ldID0gdmlldy5nZXRVaW50MzIob2Zmc2V0LCBmYWxzZSk7XG4gICAgICAgIGZvciAobGV0IGkgPSAxNjsgaSA8IDY0OyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IFcxNSA9IFNIQTI1Nl9XW2kgLSAxNV07XG4gICAgICAgICAgICBjb25zdCBXMiA9IFNIQTI1Nl9XW2kgLSAyXTtcbiAgICAgICAgICAgIGNvbnN0IHMwID0gcm90cihXMTUsIDcpIF4gcm90cihXMTUsIDE4KSBeIChXMTUgPj4+IDMpO1xuICAgICAgICAgICAgY29uc3QgczEgPSByb3RyKFcyLCAxNykgXiByb3RyKFcyLCAxOSkgXiAoVzIgPj4+IDEwKTtcbiAgICAgICAgICAgIFNIQTI1Nl9XW2ldID0gKHMxICsgU0hBMjU2X1dbaSAtIDddICsgczAgKyBTSEEyNTZfV1tpIC0gMTZdKSB8IDA7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQ29tcHJlc3Npb24gZnVuY3Rpb24gbWFpbiBsb29wLCA2NCByb3VuZHNcbiAgICAgICAgbGV0IHsgQSwgQiwgQywgRCwgRSwgRiwgRywgSCB9ID0gdGhpcztcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCA2NDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBzaWdtYTEgPSByb3RyKEUsIDYpIF4gcm90cihFLCAxMSkgXiByb3RyKEUsIDI1KTtcbiAgICAgICAgICAgIGNvbnN0IFQxID0gKEggKyBzaWdtYTEgKyBDaGkoRSwgRiwgRykgKyBTSEEyNTZfS1tpXSArIFNIQTI1Nl9XW2ldKSB8IDA7XG4gICAgICAgICAgICBjb25zdCBzaWdtYTAgPSByb3RyKEEsIDIpIF4gcm90cihBLCAxMykgXiByb3RyKEEsIDIyKTtcbiAgICAgICAgICAgIGNvbnN0IFQyID0gKHNpZ21hMCArIE1haihBLCBCLCBDKSkgfCAwO1xuICAgICAgICAgICAgSCA9IEc7XG4gICAgICAgICAgICBHID0gRjtcbiAgICAgICAgICAgIEYgPSBFO1xuICAgICAgICAgICAgRSA9IChEICsgVDEpIHwgMDtcbiAgICAgICAgICAgIEQgPSBDO1xuICAgICAgICAgICAgQyA9IEI7XG4gICAgICAgICAgICBCID0gQTtcbiAgICAgICAgICAgIEEgPSAoVDEgKyBUMikgfCAwO1xuICAgICAgICB9XG4gICAgICAgIC8vIEFkZCB0aGUgY29tcHJlc3NlZCBjaHVuayB0byB0aGUgY3VycmVudCBoYXNoIHZhbHVlXG4gICAgICAgIEEgPSAoQSArIHRoaXMuQSkgfCAwO1xuICAgICAgICBCID0gKEIgKyB0aGlzLkIpIHwgMDtcbiAgICAgICAgQyA9IChDICsgdGhpcy5DKSB8IDA7XG4gICAgICAgIEQgPSAoRCArIHRoaXMuRCkgfCAwO1xuICAgICAgICBFID0gKEUgKyB0aGlzLkUpIHwgMDtcbiAgICAgICAgRiA9IChGICsgdGhpcy5GKSB8IDA7XG4gICAgICAgIEcgPSAoRyArIHRoaXMuRykgfCAwO1xuICAgICAgICBIID0gKEggKyB0aGlzLkgpIHwgMDtcbiAgICAgICAgdGhpcy5zZXQoQSwgQiwgQywgRCwgRSwgRiwgRywgSCk7XG4gICAgfVxuICAgIHJvdW5kQ2xlYW4oKSB7XG4gICAgICAgIFNIQTI1Nl9XLmZpbGwoMCk7XG4gICAgfVxuICAgIGRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc2V0KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApO1xuICAgICAgICB0aGlzLmJ1ZmZlci5maWxsKDApO1xuICAgIH1cbn1cbi8vIENvbnN0YW50cyBmcm9tIGh0dHBzOi8vbnZscHVicy5uaXN0Lmdvdi9uaXN0cHVicy9GSVBTL05JU1QuRklQUy4xODAtNC5wZGZcbmNsYXNzIFNIQTIyNCBleHRlbmRzIFNIQTI1NiB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuQSA9IDB4YzEwNTllZDggfCAwO1xuICAgICAgICB0aGlzLkIgPSAweDM2N2NkNTA3IHwgMDtcbiAgICAgICAgdGhpcy5DID0gMHgzMDcwZGQxNyB8IDA7XG4gICAgICAgIHRoaXMuRCA9IDB4ZjcwZTU5MzkgfCAwO1xuICAgICAgICB0aGlzLkUgPSAweGZmYzAwYjMxIHwgMDtcbiAgICAgICAgdGhpcy5GID0gMHg2ODU4MTUxMSB8IDA7XG4gICAgICAgIHRoaXMuRyA9IDB4NjRmOThmYTcgfCAwO1xuICAgICAgICB0aGlzLkggPSAweGJlZmE0ZmE0IHwgMDtcbiAgICAgICAgdGhpcy5vdXRwdXRMZW4gPSAyODtcbiAgICB9XG59XG4vKipcbiAqIFNIQTItMjU2IGhhc2ggZnVuY3Rpb25cbiAqIEBwYXJhbSBtZXNzYWdlIC0gZGF0YSB0aGF0IHdvdWxkIGJlIGhhc2hlZFxuICovXG5leHBvcnQgY29uc3Qgc2hhMjU2ID0gLyogQF9fUFVSRV9fICovIHdyYXBDb25zdHJ1Y3RvcigoKSA9PiBuZXcgU0hBMjU2KCkpO1xuZXhwb3J0IGNvbnN0IHNoYTIyNCA9IC8qIEBfX1BVUkVfXyAqLyB3cmFwQ29uc3RydWN0b3IoKCkgPT4gbmV3IFNIQTIyNCgpKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNoYTI1Ni5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/sha256.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/utils.js": /*!***********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/utils.js ***! \***********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Hash: () => (/* binding */ Hash),\n/* harmony export */ asyncLoop: () => (/* binding */ asyncLoop),\n/* harmony export */ byteSwap: () => (/* binding */ byteSwap),\n/* harmony export */ byteSwap32: () => (/* binding */ byteSwap32),\n/* harmony export */ byteSwapIfBE: () => (/* binding */ byteSwapIfBE),\n/* harmony export */ bytesToHex: () => (/* binding */ bytesToHex),\n/* harmony export */ checkOpts: () => (/* binding */ checkOpts),\n/* harmony export */ concatBytes: () => (/* binding */ concatBytes),\n/* harmony export */ createView: () => (/* binding */ createView),\n/* harmony export */ hexToBytes: () => (/* binding */ hexToBytes),\n/* harmony export */ isBytes: () => (/* binding */ isBytes),\n/* harmony export */ isLE: () => (/* binding */ isLE),\n/* harmony export */ nextTick: () => (/* binding */ nextTick),\n/* harmony export */ randomBytes: () => (/* binding */ randomBytes),\n/* harmony export */ rotl: () => (/* binding */ rotl),\n/* harmony export */ rotr: () => (/* binding */ rotr),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ u32: () => (/* binding */ u32),\n/* harmony export */ u8: () => (/* binding */ u8),\n/* harmony export */ utf8ToBytes: () => (/* binding */ utf8ToBytes),\n/* harmony export */ wrapConstructor: () => (/* binding */ wrapConstructor),\n/* harmony export */ wrapConstructorWithOpts: () => (/* binding */ wrapConstructorWithOpts),\n/* harmony export */ wrapXOFConstructorWithOpts: () => (/* binding */ wrapXOFConstructorWithOpts)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @noble/hashes/crypto */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/crypto.js\");\n/* harmony import */ var _assert_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_assert.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/_assert.js\");\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.\n// node.js versions earlier than v19 don't declare it in global scope.\n// For node.js, package.json#exports field mapping rewrites import\n// from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated (2025-04-30), we can just drop the import.\n\n\n// export { isBytes } from './_assert.js';\n// We can't reuse isBytes from _assert, because somehow this causes huge perf issues\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\n// Cast array to different type\nconst u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);\nconst u32 = (arr) => new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\n// Cast array to view\nconst createView = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\n// The rotate right (circular right shift) operation for uint32\nconst rotr = (word, shift) => (word << (32 - shift)) | (word >>> shift);\n// The rotate left (circular left shift) operation for uint32\nconst rotl = (word, shift) => (word << shift) | ((word >>> (32 - shift)) >>> 0);\nconst isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;\n// The byte swap operation for uint32\nconst byteSwap = (word) => ((word << 24) & 0xff000000) |\n ((word << 8) & 0xff0000) |\n ((word >>> 8) & 0xff00) |\n ((word >>> 24) & 0xff);\n// Conditionally byte swap if on a big-endian platform\nconst byteSwapIfBE = isLE ? (n) => n : (n) => byteSwap(n);\n// In place byte swap for Uint32Array\nfunction byteSwap32(arr) {\n for (let i = 0; i < arr.length; i++) {\n arr[i] = byteSwap(arr[i]);\n }\n}\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n (0,_assert_js__WEBPACK_IMPORTED_MODULE_0__.bytes)(bytes);\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };\nfunction asciiToBase16(char) {\n if (char >= asciis._0 && char <= asciis._9)\n return char - asciis._0;\n if (char >= asciis._A && char <= asciis._F)\n return char - (asciis._A - 10);\n if (char >= asciis._a && char <= asciis._f)\n return char - (asciis._a - 10);\n return;\n}\n/**\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('padded hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2;\n }\n return array;\n}\n// There is no setImmediate in browser and setTimeout is slow.\n// call of async fn will return Promise, which will be fullfiled only on\n// next scheduler queue processing step and this is exactly what we need.\nconst nextTick = async () => { };\n// Returns control to thread each 'tick' ms to avoid blocking\nasync function asyncLoop(iters, tick, cb) {\n let ts = Date.now();\n for (let i = 0; i < iters; i++) {\n cb(i);\n // Date.now() is not monotonic, so in case if clock goes backwards we return return control too\n const diff = Date.now() - ts;\n if (diff >= 0 && diff < tick)\n continue;\n await nextTick();\n ts += diff;\n }\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n/**\n * Normalizes (non-hex) string or Uint8Array to Uint8Array.\n * Warning: when Uint8Array is passed, it would NOT get copied.\n * Keep in mind for future mutable operations.\n */\nfunction toBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n (0,_assert_js__WEBPACK_IMPORTED_MODULE_0__.bytes)(data);\n return data;\n}\n/**\n * Copies several Uint8Arrays into one.\n */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n (0,_assert_js__WEBPACK_IMPORTED_MODULE_0__.bytes)(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n// For runtime check if class implements interface\nclass Hash {\n // Safe version that clones internal state\n clone() {\n return this._cloneInto();\n }\n}\nconst toStr = {}.toString;\nfunction checkOpts(defaults, opts) {\n if (opts !== undefined && toStr.call(opts) !== '[object Object]')\n throw new Error('Options should be object or undefined');\n const merged = Object.assign(defaults, opts);\n return merged;\n}\nfunction wrapConstructor(hashCons) {\n const hashC = (msg) => hashCons().update(toBytes(msg)).digest();\n const tmp = hashCons();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashCons();\n return hashC;\n}\nfunction wrapConstructorWithOpts(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nfunction wrapXOFConstructorWithOpts(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\n/**\n * Secure PRNG. Uses `crypto.getRandomValues`, which defers to OS.\n */\nfunction randomBytes(bytesLength = 32) {\n if (_noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_1__.crypto && typeof _noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_1__.crypto.getRandomValues === 'function') {\n return _noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_1__.crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vdXRpbHMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQzhDO0FBQ0M7QUFDL0MsWUFBWSxVQUFVO0FBQ3RCO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ0E7QUFDUDtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ087QUFDQTtBQUNQO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDTztBQUNQLG9CQUFvQixnQkFBZ0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsYUFBYTtBQUN4RDtBQUNBO0FBQ0E7QUFDTztBQUNQLElBQUksaURBQU07QUFDVjtBQUNBO0FBQ0Esb0JBQW9CLGtCQUFrQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsU0FBUztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ0Esb0JBQW9CLFdBQVc7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLDREQUE0RCxXQUFXO0FBQ3ZFLDBEQUEwRDtBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSxJQUFJLGlEQUFNO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQSxvQkFBb0IsbUJBQW1CO0FBQ3ZDO0FBQ0EsUUFBUSxpREFBTTtBQUNkO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixtQkFBbUI7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0I7QUFDVDtBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxRQUFRLHdEQUFNLFdBQVcsd0RBQU07QUFDL0IsZUFBZSx3REFBTTtBQUNyQjtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vdXRpbHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyohIG5vYmxlLWhhc2hlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuLy8gV2UgdXNlIFdlYkNyeXB0byBha2EgZ2xvYmFsVGhpcy5jcnlwdG8sIHdoaWNoIGV4aXN0cyBpbiBicm93c2VycyBhbmQgbm9kZS5qcyAxNisuXG4vLyBub2RlLmpzIHZlcnNpb25zIGVhcmxpZXIgdGhhbiB2MTkgZG9uJ3QgZGVjbGFyZSBpdCBpbiBnbG9iYWwgc2NvcGUuXG4vLyBGb3Igbm9kZS5qcywgcGFja2FnZS5qc29uI2V4cG9ydHMgZmllbGQgbWFwcGluZyByZXdyaXRlcyBpbXBvcnRcbi8vIGZyb20gYGNyeXB0b2AgdG8gYGNyeXB0b05vZGVgLCB3aGljaCBpbXBvcnRzIG5hdGl2ZSBtb2R1bGUuXG4vLyBNYWtlcyB0aGUgdXRpbHMgdW4taW1wb3J0YWJsZSBpbiBicm93c2VycyB3aXRob3V0IGEgYnVuZGxlci5cbi8vIE9uY2Ugbm9kZS5qcyAxOCBpcyBkZXByZWNhdGVkICgyMDI1LTA0LTMwKSwgd2UgY2FuIGp1c3QgZHJvcCB0aGUgaW1wb3J0LlxuaW1wb3J0IHsgY3J5cHRvIH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9jcnlwdG8nO1xuaW1wb3J0IHsgYnl0ZXMgYXMgYWJ5dGVzIH0gZnJvbSAnLi9fYXNzZXJ0LmpzJztcbi8vIGV4cG9ydCB7IGlzQnl0ZXMgfSBmcm9tICcuL19hc3NlcnQuanMnO1xuLy8gV2UgY2FuJ3QgcmV1c2UgaXNCeXRlcyBmcm9tIF9hc3NlcnQsIGJlY2F1c2Ugc29tZWhvdyB0aGlzIGNhdXNlcyBodWdlIHBlcmYgaXNzdWVzXG5leHBvcnQgZnVuY3Rpb24gaXNCeXRlcyhhKSB7XG4gICAgcmV0dXJuIChhIGluc3RhbmNlb2YgVWludDhBcnJheSB8fFxuICAgICAgICAoYSAhPSBudWxsICYmIHR5cGVvZiBhID09PSAnb2JqZWN0JyAmJiBhLmNvbnN0cnVjdG9yLm5hbWUgPT09ICdVaW50OEFycmF5JykpO1xufVxuLy8gQ2FzdCBhcnJheSB0byBkaWZmZXJlbnQgdHlwZVxuZXhwb3J0IGNvbnN0IHU4ID0gKGFycikgPT4gbmV3IFVpbnQ4QXJyYXkoYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIGFyci5ieXRlTGVuZ3RoKTtcbmV4cG9ydCBjb25zdCB1MzIgPSAoYXJyKSA9PiBuZXcgVWludDMyQXJyYXkoYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIE1hdGguZmxvb3IoYXJyLmJ5dGVMZW5ndGggLyA0KSk7XG4vLyBDYXN0IGFycmF5IHRvIHZpZXdcbmV4cG9ydCBjb25zdCBjcmVhdGVWaWV3ID0gKGFycikgPT4gbmV3IERhdGFWaWV3KGFyci5idWZmZXIsIGFyci5ieXRlT2Zmc2V0LCBhcnIuYnl0ZUxlbmd0aCk7XG4vLyBUaGUgcm90YXRlIHJpZ2h0IChjaXJjdWxhciByaWdodCBzaGlmdCkgb3BlcmF0aW9uIGZvciB1aW50MzJcbmV4cG9ydCBjb25zdCByb3RyID0gKHdvcmQsIHNoaWZ0KSA9PiAod29yZCA8PCAoMzIgLSBzaGlmdCkpIHwgKHdvcmQgPj4+IHNoaWZ0KTtcbi8vIFRoZSByb3RhdGUgbGVmdCAoY2lyY3VsYXIgbGVmdCBzaGlmdCkgb3BlcmF0aW9uIGZvciB1aW50MzJcbmV4cG9ydCBjb25zdCByb3RsID0gKHdvcmQsIHNoaWZ0KSA9PiAod29yZCA8PCBzaGlmdCkgfCAoKHdvcmQgPj4+ICgzMiAtIHNoaWZ0KSkgPj4+IDApO1xuZXhwb3J0IGNvbnN0IGlzTEUgPSBuZXcgVWludDhBcnJheShuZXcgVWludDMyQXJyYXkoWzB4MTEyMjMzNDRdKS5idWZmZXIpWzBdID09PSAweDQ0O1xuLy8gVGhlIGJ5dGUgc3dhcCBvcGVyYXRpb24gZm9yIHVpbnQzMlxuZXhwb3J0IGNvbnN0IGJ5dGVTd2FwID0gKHdvcmQpID0+ICgod29yZCA8PCAyNCkgJiAweGZmMDAwMDAwKSB8XG4gICAgKCh3b3JkIDw8IDgpICYgMHhmZjAwMDApIHxcbiAgICAoKHdvcmQgPj4+IDgpICYgMHhmZjAwKSB8XG4gICAgKCh3b3JkID4+PiAyNCkgJiAweGZmKTtcbi8vIENvbmRpdGlvbmFsbHkgYnl0ZSBzd2FwIGlmIG9uIGEgYmlnLWVuZGlhbiBwbGF0Zm9ybVxuZXhwb3J0IGNvbnN0IGJ5dGVTd2FwSWZCRSA9IGlzTEUgPyAobikgPT4gbiA6IChuKSA9PiBieXRlU3dhcChuKTtcbi8vIEluIHBsYWNlIGJ5dGUgc3dhcCBmb3IgVWludDMyQXJyYXlcbmV4cG9ydCBmdW5jdGlvbiBieXRlU3dhcDMyKGFycikge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGFycltpXSA9IGJ5dGVTd2FwKGFycltpXSk7XG4gICAgfVxufVxuLy8gQXJyYXkgd2hlcmUgaW5kZXggMHhmMCAoMjQwKSBpcyBtYXBwZWQgdG8gc3RyaW5nICdmMCdcbmNvbnN0IGhleGVzID0gLyogQF9fUFVSRV9fICovIEFycmF5LmZyb20oeyBsZW5ndGg6IDI1NiB9LCAoXywgaSkgPT4gaS50b1N0cmluZygxNikucGFkU3RhcnQoMiwgJzAnKSk7XG4vKipcbiAqIEBleGFtcGxlIGJ5dGVzVG9IZXgoVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSkpIC8vICdjYWZlMDEyMydcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9IZXgoYnl0ZXMpIHtcbiAgICBhYnl0ZXMoYnl0ZXMpO1xuICAgIC8vIHByZS1jYWNoaW5nIGltcHJvdmVzIHRoZSBzcGVlZCA2eFxuICAgIGxldCBoZXggPSAnJztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGJ5dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGhleCArPSBoZXhlc1tieXRlc1tpXV07XG4gICAgfVxuICAgIHJldHVybiBoZXg7XG59XG4vLyBXZSB1c2Ugb3B0aW1pemVkIHRlY2huaXF1ZSB0byBjb252ZXJ0IGhleCBzdHJpbmcgdG8gYnl0ZSBhcnJheVxuY29uc3QgYXNjaWlzID0geyBfMDogNDgsIF85OiA1NywgX0E6IDY1LCBfRjogNzAsIF9hOiA5NywgX2Y6IDEwMiB9O1xuZnVuY3Rpb24gYXNjaWlUb0Jhc2UxNihjaGFyKSB7XG4gICAgaWYgKGNoYXIgPj0gYXNjaWlzLl8wICYmIGNoYXIgPD0gYXNjaWlzLl85KVxuICAgICAgICByZXR1cm4gY2hhciAtIGFzY2lpcy5fMDtcbiAgICBpZiAoY2hhciA+PSBhc2NpaXMuX0EgJiYgY2hhciA8PSBhc2NpaXMuX0YpXG4gICAgICAgIHJldHVybiBjaGFyIC0gKGFzY2lpcy5fQSAtIDEwKTtcbiAgICBpZiAoY2hhciA+PSBhc2NpaXMuX2EgJiYgY2hhciA8PSBhc2NpaXMuX2YpXG4gICAgICAgIHJldHVybiBjaGFyIC0gKGFzY2lpcy5fYSAtIDEwKTtcbiAgICByZXR1cm47XG59XG4vKipcbiAqIEBleGFtcGxlIGhleFRvQnl0ZXMoJ2NhZmUwMTIzJykgLy8gVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhleFRvQnl0ZXMoaGV4KSB7XG4gICAgaWYgKHR5cGVvZiBoZXggIT09ICdzdHJpbmcnKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2hleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCAnICsgdHlwZW9mIGhleCk7XG4gICAgY29uc3QgaGwgPSBoZXgubGVuZ3RoO1xuICAgIGNvbnN0IGFsID0gaGwgLyAyO1xuICAgIGlmIChobCAlIDIpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcigncGFkZGVkIGhleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCB1bnBhZGRlZCBoZXggb2YgbGVuZ3RoICcgKyBobCk7XG4gICAgY29uc3QgYXJyYXkgPSBuZXcgVWludDhBcnJheShhbCk7XG4gICAgZm9yIChsZXQgYWkgPSAwLCBoaSA9IDA7IGFpIDwgYWw7IGFpKyssIGhpICs9IDIpIHtcbiAgICAgICAgY29uc3QgbjEgPSBhc2NpaVRvQmFzZTE2KGhleC5jaGFyQ29kZUF0KGhpKSk7XG4gICAgICAgIGNvbnN0IG4yID0gYXNjaWlUb0Jhc2UxNihoZXguY2hhckNvZGVBdChoaSArIDEpKTtcbiAgICAgICAgaWYgKG4xID09PSB1bmRlZmluZWQgfHwgbjIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uc3QgY2hhciA9IGhleFtoaV0gKyBoZXhbaGkgKyAxXTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaGV4IHN0cmluZyBleHBlY3RlZCwgZ290IG5vbi1oZXggY2hhcmFjdGVyIFwiJyArIGNoYXIgKyAnXCIgYXQgaW5kZXggJyArIGhpKTtcbiAgICAgICAgfVxuICAgICAgICBhcnJheVthaV0gPSBuMSAqIDE2ICsgbjI7XG4gICAgfVxuICAgIHJldHVybiBhcnJheTtcbn1cbi8vIFRoZXJlIGlzIG5vIHNldEltbWVkaWF0ZSBpbiBicm93c2VyIGFuZCBzZXRUaW1lb3V0IGlzIHNsb3cuXG4vLyBjYWxsIG9mIGFzeW5jIGZuIHdpbGwgcmV0dXJuIFByb21pc2UsIHdoaWNoIHdpbGwgYmUgZnVsbGZpbGVkIG9ubHkgb25cbi8vIG5leHQgc2NoZWR1bGVyIHF1ZXVlIHByb2Nlc3Npbmcgc3RlcCBhbmQgdGhpcyBpcyBleGFjdGx5IHdoYXQgd2UgbmVlZC5cbmV4cG9ydCBjb25zdCBuZXh0VGljayA9IGFzeW5jICgpID0+IHsgfTtcbi8vIFJldHVybnMgY29udHJvbCB0byB0aHJlYWQgZWFjaCAndGljaycgbXMgdG8gYXZvaWQgYmxvY2tpbmdcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc3luY0xvb3AoaXRlcnMsIHRpY2ssIGNiKSB7XG4gICAgbGV0IHRzID0gRGF0ZS5ub3coKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZXJzOyBpKyspIHtcbiAgICAgICAgY2IoaSk7XG4gICAgICAgIC8vIERhdGUubm93KCkgaXMgbm90IG1vbm90b25pYywgc28gaW4gY2FzZSBpZiBjbG9jayBnb2VzIGJhY2t3YXJkcyB3ZSByZXR1cm4gcmV0dXJuIGNvbnRyb2wgdG9vXG4gICAgICAgIGNvbnN0IGRpZmYgPSBEYXRlLm5vdygpIC0gdHM7XG4gICAgICAgIGlmIChkaWZmID49IDAgJiYgZGlmZiA8IHRpY2spXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgYXdhaXQgbmV4dFRpY2soKTtcbiAgICAgICAgdHMgKz0gZGlmZjtcbiAgICB9XG59XG4vKipcbiAqIEBleGFtcGxlIHV0ZjhUb0J5dGVzKCdhYmMnKSAvLyBuZXcgVWludDhBcnJheShbOTcsIDk4LCA5OV0pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1dGY4VG9CeXRlcyhzdHIpIHtcbiAgICBpZiAodHlwZW9mIHN0ciAhPT0gJ3N0cmluZycpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgdXRmOFRvQnl0ZXMgZXhwZWN0ZWQgc3RyaW5nLCBnb3QgJHt0eXBlb2Ygc3RyfWApO1xuICAgIHJldHVybiBuZXcgVWludDhBcnJheShuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoc3RyKSk7IC8vIGh0dHBzOi8vYnVnemlsLmxhLzE2ODE4MDlcbn1cbi8qKlxuICogTm9ybWFsaXplcyAobm9uLWhleCkgc3RyaW5nIG9yIFVpbnQ4QXJyYXkgdG8gVWludDhBcnJheS5cbiAqIFdhcm5pbmc6IHdoZW4gVWludDhBcnJheSBpcyBwYXNzZWQsIGl0IHdvdWxkIE5PVCBnZXQgY29waWVkLlxuICogS2VlcCBpbiBtaW5kIGZvciBmdXR1cmUgbXV0YWJsZSBvcGVyYXRpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9CeXRlcyhkYXRhKSB7XG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJylcbiAgICAgICAgZGF0YSA9IHV0ZjhUb0J5dGVzKGRhdGEpO1xuICAgIGFieXRlcyhkYXRhKTtcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8qKlxuICogQ29waWVzIHNldmVyYWwgVWludDhBcnJheXMgaW50byBvbmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25jYXRCeXRlcyguLi5hcnJheXMpIHtcbiAgICBsZXQgc3VtID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhID0gYXJyYXlzW2ldO1xuICAgICAgICBhYnl0ZXMoYSk7XG4gICAgICAgIHN1bSArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgY29uc3QgcmVzID0gbmV3IFVpbnQ4QXJyYXkoc3VtKTtcbiAgICBmb3IgKGxldCBpID0gMCwgcGFkID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhID0gYXJyYXlzW2ldO1xuICAgICAgICByZXMuc2V0KGEsIHBhZCk7XG4gICAgICAgIHBhZCArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbi8vIEZvciBydW50aW1lIGNoZWNrIGlmIGNsYXNzIGltcGxlbWVudHMgaW50ZXJmYWNlXG5leHBvcnQgY2xhc3MgSGFzaCB7XG4gICAgLy8gU2FmZSB2ZXJzaW9uIHRoYXQgY2xvbmVzIGludGVybmFsIHN0YXRlXG4gICAgY2xvbmUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jbG9uZUludG8oKTtcbiAgICB9XG59XG5jb25zdCB0b1N0ciA9IHt9LnRvU3RyaW5nO1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrT3B0cyhkZWZhdWx0cywgb3B0cykge1xuICAgIGlmIChvcHRzICE9PSB1bmRlZmluZWQgJiYgdG9TdHIuY2FsbChvcHRzKSAhPT0gJ1tvYmplY3QgT2JqZWN0XScpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignT3B0aW9ucyBzaG91bGQgYmUgb2JqZWN0IG9yIHVuZGVmaW5lZCcpO1xuICAgIGNvbnN0IG1lcmdlZCA9IE9iamVjdC5hc3NpZ24oZGVmYXVsdHMsIG9wdHMpO1xuICAgIHJldHVybiBtZXJnZWQ7XG59XG5leHBvcnQgZnVuY3Rpb24gd3JhcENvbnN0cnVjdG9yKGhhc2hDb25zKSB7XG4gICAgY29uc3QgaGFzaEMgPSAobXNnKSA9PiBoYXNoQ29ucygpLnVwZGF0ZSh0b0J5dGVzKG1zZykpLmRpZ2VzdCgpO1xuICAgIGNvbnN0IHRtcCA9IGhhc2hDb25zKCk7XG4gICAgaGFzaEMub3V0cHV0TGVuID0gdG1wLm91dHB1dExlbjtcbiAgICBoYXNoQy5ibG9ja0xlbiA9IHRtcC5ibG9ja0xlbjtcbiAgICBoYXNoQy5jcmVhdGUgPSAoKSA9PiBoYXNoQ29ucygpO1xuICAgIHJldHVybiBoYXNoQztcbn1cbmV4cG9ydCBmdW5jdGlvbiB3cmFwQ29uc3RydWN0b3JXaXRoT3B0cyhoYXNoQ29ucykge1xuICAgIGNvbnN0IGhhc2hDID0gKG1zZywgb3B0cykgPT4gaGFzaENvbnMob3B0cykudXBkYXRlKHRvQnl0ZXMobXNnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgdG1wID0gaGFzaENvbnMoe30pO1xuICAgIGhhc2hDLm91dHB1dExlbiA9IHRtcC5vdXRwdXRMZW47XG4gICAgaGFzaEMuYmxvY2tMZW4gPSB0bXAuYmxvY2tMZW47XG4gICAgaGFzaEMuY3JlYXRlID0gKG9wdHMpID0+IGhhc2hDb25zKG9wdHMpO1xuICAgIHJldHVybiBoYXNoQztcbn1cbmV4cG9ydCBmdW5jdGlvbiB3cmFwWE9GQ29uc3RydWN0b3JXaXRoT3B0cyhoYXNoQ29ucykge1xuICAgIGNvbnN0IGhhc2hDID0gKG1zZywgb3B0cykgPT4gaGFzaENvbnMob3B0cykudXBkYXRlKHRvQnl0ZXMobXNnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgdG1wID0gaGFzaENvbnMoe30pO1xuICAgIGhhc2hDLm91dHB1dExlbiA9IHRtcC5vdXRwdXRMZW47XG4gICAgaGFzaEMuYmxvY2tMZW4gPSB0bXAuYmxvY2tMZW47XG4gICAgaGFzaEMuY3JlYXRlID0gKG9wdHMpID0+IGhhc2hDb25zKG9wdHMpO1xuICAgIHJldHVybiBoYXNoQztcbn1cbi8qKlxuICogU2VjdXJlIFBSTkcuIFVzZXMgYGNyeXB0by5nZXRSYW5kb21WYWx1ZXNgLCB3aGljaCBkZWZlcnMgdG8gT1MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYW5kb21CeXRlcyhieXRlc0xlbmd0aCA9IDMyKSB7XG4gICAgaWYgKGNyeXB0byAmJiB0eXBlb2YgY3J5cHRvLmdldFJhbmRvbVZhbHVlcyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXR1cm4gY3J5cHRvLmdldFJhbmRvbVZhbHVlcyhuZXcgVWludDhBcnJheShieXRlc0xlbmd0aCkpO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2NyeXB0by5nZXRSYW5kb21WYWx1ZXMgbXVzdCBiZSBkZWZpbmVkJyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD11dGlscy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/esm/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/sha3.js": /*!******************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/sha3.js ***! \******************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.shake256 = exports.shake128 = exports.keccak_512 = exports.keccak_384 = exports.keccak_256 = exports.keccak_224 = exports.sha3_512 = exports.sha3_384 = exports.sha3_256 = exports.sha3_224 = exports.Keccak = exports.keccakP = void 0;\nconst _assert_js_1 = __webpack_require__(/*! ./_assert.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_assert.js\");\nconst _u64_js_1 = __webpack_require__(/*! ./_u64.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_u64.js\");\nconst utils_js_1 = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/utils.js\");\n// SHA3 (keccak) is based on a new design: basically, the internal state is bigger than output size.\n// It's called a sponge function.\n// Various per round constants calculations\nconst SHA3_PI = [];\nconst SHA3_ROTL = [];\nconst _SHA3_IOTA = [];\nconst _0n = /* @__PURE__ */ BigInt(0);\nconst _1n = /* @__PURE__ */ BigInt(1);\nconst _2n = /* @__PURE__ */ BigInt(2);\nconst _7n = /* @__PURE__ */ BigInt(7);\nconst _256n = /* @__PURE__ */ BigInt(256);\nconst _0x71n = /* @__PURE__ */ BigInt(0x71);\nfor (let round = 0, R = _1n, x = 1, y = 0; round < 24; round++) {\n // Pi\n [x, y] = [y, (2 * x + 3 * y) % 5];\n SHA3_PI.push(2 * (5 * y + x));\n // Rotational\n SHA3_ROTL.push((((round + 1) * (round + 2)) / 2) % 64);\n // Iota\n let t = _0n;\n for (let j = 0; j < 7; j++) {\n R = ((R << _1n) ^ ((R >> _7n) * _0x71n)) % _256n;\n if (R & _2n)\n t ^= _1n << ((_1n << /* @__PURE__ */ BigInt(j)) - _1n);\n }\n _SHA3_IOTA.push(t);\n}\nconst [SHA3_IOTA_H, SHA3_IOTA_L] = /* @__PURE__ */ (0, _u64_js_1.split)(_SHA3_IOTA, true);\n// Left rotation (without 0, 32, 64)\nconst rotlH = (h, l, s) => (s > 32 ? (0, _u64_js_1.rotlBH)(h, l, s) : (0, _u64_js_1.rotlSH)(h, l, s));\nconst rotlL = (h, l, s) => (s > 32 ? (0, _u64_js_1.rotlBL)(h, l, s) : (0, _u64_js_1.rotlSL)(h, l, s));\n// Same as keccakf1600, but allows to skip some rounds\nfunction keccakP(s, rounds = 24) {\n const B = new Uint32Array(5 * 2);\n // NOTE: all indices are x2 since we store state as u32 instead of u64 (bigints to slow in js)\n for (let round = 24 - rounds; round < 24; round++) {\n // Theta θ\n for (let x = 0; x < 10; x++)\n B[x] = s[x] ^ s[x + 10] ^ s[x + 20] ^ s[x + 30] ^ s[x + 40];\n for (let x = 0; x < 10; x += 2) {\n const idx1 = (x + 8) % 10;\n const idx0 = (x + 2) % 10;\n const B0 = B[idx0];\n const B1 = B[idx0 + 1];\n const Th = rotlH(B0, B1, 1) ^ B[idx1];\n const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];\n for (let y = 0; y < 50; y += 10) {\n s[x + y] ^= Th;\n s[x + y + 1] ^= Tl;\n }\n }\n // Rho (ρ) and Pi (π)\n let curH = s[2];\n let curL = s[3];\n for (let t = 0; t < 24; t++) {\n const shift = SHA3_ROTL[t];\n const Th = rotlH(curH, curL, shift);\n const Tl = rotlL(curH, curL, shift);\n const PI = SHA3_PI[t];\n curH = s[PI];\n curL = s[PI + 1];\n s[PI] = Th;\n s[PI + 1] = Tl;\n }\n // Chi (χ)\n for (let y = 0; y < 50; y += 10) {\n for (let x = 0; x < 10; x++)\n B[x] = s[y + x];\n for (let x = 0; x < 10; x++)\n s[y + x] ^= ~B[(x + 2) % 10] & B[(x + 4) % 10];\n }\n // Iota (ι)\n s[0] ^= SHA3_IOTA_H[round];\n s[1] ^= SHA3_IOTA_L[round];\n }\n B.fill(0);\n}\nexports.keccakP = keccakP;\nclass Keccak extends utils_js_1.Hash {\n // NOTE: we accept arguments in bytes instead of bits here.\n constructor(blockLen, suffix, outputLen, enableXOF = false, rounds = 24) {\n super();\n this.blockLen = blockLen;\n this.suffix = suffix;\n this.outputLen = outputLen;\n this.enableXOF = enableXOF;\n this.rounds = rounds;\n this.pos = 0;\n this.posOut = 0;\n this.finished = false;\n this.destroyed = false;\n // Can be passed from user as dkLen\n (0, _assert_js_1.number)(outputLen);\n // 1600 = 5x5 matrix of 64bit. 1600 bits === 200 bytes\n if (0 >= this.blockLen || this.blockLen >= 200)\n throw new Error('Sha3 supports only keccak-f1600 function');\n this.state = new Uint8Array(200);\n this.state32 = (0, utils_js_1.u32)(this.state);\n }\n keccak() {\n if (!utils_js_1.isLE)\n (0, utils_js_1.byteSwap32)(this.state32);\n keccakP(this.state32, this.rounds);\n if (!utils_js_1.isLE)\n (0, utils_js_1.byteSwap32)(this.state32);\n this.posOut = 0;\n this.pos = 0;\n }\n update(data) {\n (0, _assert_js_1.exists)(this);\n const { blockLen, state } = this;\n data = (0, utils_js_1.toBytes)(data);\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n for (let i = 0; i < take; i++)\n state[this.pos++] ^= data[pos++];\n if (this.pos === blockLen)\n this.keccak();\n }\n return this;\n }\n finish() {\n if (this.finished)\n return;\n this.finished = true;\n const { state, suffix, pos, blockLen } = this;\n // Do the padding\n state[pos] ^= suffix;\n if ((suffix & 0x80) !== 0 && pos === blockLen - 1)\n this.keccak();\n state[blockLen - 1] ^= 0x80;\n this.keccak();\n }\n writeInto(out) {\n (0, _assert_js_1.exists)(this, false);\n (0, _assert_js_1.bytes)(out);\n this.finish();\n const bufferOut = this.state;\n const { blockLen } = this;\n for (let pos = 0, len = out.length; pos < len;) {\n if (this.posOut >= blockLen)\n this.keccak();\n const take = Math.min(blockLen - this.posOut, len - pos);\n out.set(bufferOut.subarray(this.posOut, this.posOut + take), pos);\n this.posOut += take;\n pos += take;\n }\n return out;\n }\n xofInto(out) {\n // Sha3/Keccak usage with XOF is probably mistake, only SHAKE instances can do XOF\n if (!this.enableXOF)\n throw new Error('XOF is not possible for this instance');\n return this.writeInto(out);\n }\n xof(bytes) {\n (0, _assert_js_1.number)(bytes);\n return this.xofInto(new Uint8Array(bytes));\n }\n digestInto(out) {\n (0, _assert_js_1.output)(out, this);\n if (this.finished)\n throw new Error('digest() was already called');\n this.writeInto(out);\n this.destroy();\n return out;\n }\n digest() {\n return this.digestInto(new Uint8Array(this.outputLen));\n }\n destroy() {\n this.destroyed = true;\n this.state.fill(0);\n }\n _cloneInto(to) {\n const { blockLen, suffix, outputLen, rounds, enableXOF } = this;\n to || (to = new Keccak(blockLen, suffix, outputLen, enableXOF, rounds));\n to.state32.set(this.state32);\n to.pos = this.pos;\n to.posOut = this.posOut;\n to.finished = this.finished;\n to.rounds = rounds;\n // Suffix can change in cSHAKE\n to.suffix = suffix;\n to.outputLen = outputLen;\n to.enableXOF = enableXOF;\n to.destroyed = this.destroyed;\n return to;\n }\n}\nexports.Keccak = Keccak;\nconst gen = (suffix, blockLen, outputLen) => (0, utils_js_1.wrapConstructor)(() => new Keccak(blockLen, suffix, outputLen));\nexports.sha3_224 = gen(0x06, 144, 224 / 8);\n/**\n * SHA3-256 hash function\n * @param message - that would be hashed\n */\nexports.sha3_256 = gen(0x06, 136, 256 / 8);\nexports.sha3_384 = gen(0x06, 104, 384 / 8);\nexports.sha3_512 = gen(0x06, 72, 512 / 8);\nexports.keccak_224 = gen(0x01, 144, 224 / 8);\n/**\n * keccak-256 hash function. Different from SHA3-256.\n * @param message - that would be hashed\n */\nexports.keccak_256 = gen(0x01, 136, 256 / 8);\nexports.keccak_384 = gen(0x01, 104, 384 / 8);\nexports.keccak_512 = gen(0x01, 72, 512 / 8);\nconst genShake = (suffix, blockLen, outputLen) => (0, utils_js_1.wrapXOFConstructorWithOpts)((opts = {}) => new Keccak(blockLen, suffix, opts.dkLen === undefined ? outputLen : opts.dkLen, true));\nexports.shake128 = genShake(0x1f, 168, 128 / 8);\nexports.shake256 = genShake(0x1f, 136, 256 / 8);\n//# sourceMappingURL=sha3.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9zaGEzLmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2IsOENBQTZDLEVBQUUsYUFBYSxFQUFDO0FBQzdELGdCQUFnQixHQUFHLGdCQUFnQixHQUFHLGtCQUFrQixHQUFHLGtCQUFrQixHQUFHLGtCQUFrQixHQUFHLGtCQUFrQixHQUFHLGdCQUFnQixHQUFHLGdCQUFnQixHQUFHLGdCQUFnQixHQUFHLGdCQUFnQixHQUFHLGNBQWMsR0FBRyxlQUFlO0FBQ3RPLHFCQUFxQixtQkFBTyxDQUFDLG1IQUFjO0FBQzNDLGtCQUFrQixtQkFBTyxDQUFDLDZHQUFXO0FBQ3JDLG1CQUFtQixtQkFBTyxDQUFDLCtHQUFZO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQyxZQUFZO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLE9BQU87QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxZQUFZO0FBQzlDO0FBQ0Esd0JBQXdCLFFBQVE7QUFDaEM7QUFDQSx3QkFBd0IsUUFBUTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsUUFBUTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixRQUFRO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFFBQVE7QUFDaEMsNEJBQTRCLFFBQVE7QUFDcEM7QUFDQSw0QkFBNEIsUUFBUTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isa0JBQWtCO0FBQ2xDO0FBQ0E7QUFDQSwwQkFBMEIsVUFBVTtBQUNwQztBQUNBLDRCQUE0QixVQUFVO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLCtCQUErQjtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsV0FBVztBQUMzQiw0Q0FBNEMsVUFBVTtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlEQUFpRDtBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYztBQUNkO0FBQ0EsZ0JBQWdCO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCO0FBQ2hCLGdCQUFnQjtBQUNoQixnQkFBZ0I7QUFDaEIsa0JBQWtCO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCO0FBQ2xCLGtCQUFrQjtBQUNsQixrQkFBa0I7QUFDbEIsdUdBQXVHO0FBQ3ZHLGdCQUFnQjtBQUNoQixnQkFBZ0I7QUFDaEIiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvc2hhMy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuc2hha2UyNTYgPSBleHBvcnRzLnNoYWtlMTI4ID0gZXhwb3J0cy5rZWNjYWtfNTEyID0gZXhwb3J0cy5rZWNjYWtfMzg0ID0gZXhwb3J0cy5rZWNjYWtfMjU2ID0gZXhwb3J0cy5rZWNjYWtfMjI0ID0gZXhwb3J0cy5zaGEzXzUxMiA9IGV4cG9ydHMuc2hhM18zODQgPSBleHBvcnRzLnNoYTNfMjU2ID0gZXhwb3J0cy5zaGEzXzIyNCA9IGV4cG9ydHMuS2VjY2FrID0gZXhwb3J0cy5rZWNjYWtQID0gdm9pZCAwO1xuY29uc3QgX2Fzc2VydF9qc18xID0gcmVxdWlyZShcIi4vX2Fzc2VydC5qc1wiKTtcbmNvbnN0IF91NjRfanNfMSA9IHJlcXVpcmUoXCIuL191NjQuanNcIik7XG5jb25zdCB1dGlsc19qc18xID0gcmVxdWlyZShcIi4vdXRpbHMuanNcIik7XG4vLyBTSEEzIChrZWNjYWspIGlzIGJhc2VkIG9uIGEgbmV3IGRlc2lnbjogYmFzaWNhbGx5LCB0aGUgaW50ZXJuYWwgc3RhdGUgaXMgYmlnZ2VyIHRoYW4gb3V0cHV0IHNpemUuXG4vLyBJdCdzIGNhbGxlZCBhIHNwb25nZSBmdW5jdGlvbi5cbi8vIFZhcmlvdXMgcGVyIHJvdW5kIGNvbnN0YW50cyBjYWxjdWxhdGlvbnNcbmNvbnN0IFNIQTNfUEkgPSBbXTtcbmNvbnN0IFNIQTNfUk9UTCA9IFtdO1xuY29uc3QgX1NIQTNfSU9UQSA9IFtdO1xuY29uc3QgXzBuID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCgwKTtcbmNvbnN0IF8xbiA9IC8qIEBfX1BVUkVfXyAqLyBCaWdJbnQoMSk7XG5jb25zdCBfMm4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDIpO1xuY29uc3QgXzduID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCg3KTtcbmNvbnN0IF8yNTZuID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCgyNTYpO1xuY29uc3QgXzB4NzFuID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCgweDcxKTtcbmZvciAobGV0IHJvdW5kID0gMCwgUiA9IF8xbiwgeCA9IDEsIHkgPSAwOyByb3VuZCA8IDI0OyByb3VuZCsrKSB7XG4gICAgLy8gUGlcbiAgICBbeCwgeV0gPSBbeSwgKDIgKiB4ICsgMyAqIHkpICUgNV07XG4gICAgU0hBM19QSS5wdXNoKDIgKiAoNSAqIHkgKyB4KSk7XG4gICAgLy8gUm90YXRpb25hbFxuICAgIFNIQTNfUk9UTC5wdXNoKCgoKHJvdW5kICsgMSkgKiAocm91bmQgKyAyKSkgLyAyKSAlIDY0KTtcbiAgICAvLyBJb3RhXG4gICAgbGV0IHQgPSBfMG47XG4gICAgZm9yIChsZXQgaiA9IDA7IGogPCA3OyBqKyspIHtcbiAgICAgICAgUiA9ICgoUiA8PCBfMW4pIF4gKChSID4+IF83bikgKiBfMHg3MW4pKSAlIF8yNTZuO1xuICAgICAgICBpZiAoUiAmIF8ybilcbiAgICAgICAgICAgIHQgXj0gXzFuIDw8ICgoXzFuIDw8IC8qIEBfX1BVUkVfXyAqLyBCaWdJbnQoaikpIC0gXzFuKTtcbiAgICB9XG4gICAgX1NIQTNfSU9UQS5wdXNoKHQpO1xufVxuY29uc3QgW1NIQTNfSU9UQV9ILCBTSEEzX0lPVEFfTF0gPSAvKiBAX19QVVJFX18gKi8gKDAsIF91NjRfanNfMS5zcGxpdCkoX1NIQTNfSU9UQSwgdHJ1ZSk7XG4vLyBMZWZ0IHJvdGF0aW9uICh3aXRob3V0IDAsIDMyLCA2NClcbmNvbnN0IHJvdGxIID0gKGgsIGwsIHMpID0+IChzID4gMzIgPyAoMCwgX3U2NF9qc18xLnJvdGxCSCkoaCwgbCwgcykgOiAoMCwgX3U2NF9qc18xLnJvdGxTSCkoaCwgbCwgcykpO1xuY29uc3Qgcm90bEwgPSAoaCwgbCwgcykgPT4gKHMgPiAzMiA/ICgwLCBfdTY0X2pzXzEucm90bEJMKShoLCBsLCBzKSA6ICgwLCBfdTY0X2pzXzEucm90bFNMKShoLCBsLCBzKSk7XG4vLyBTYW1lIGFzIGtlY2Nha2YxNjAwLCBidXQgYWxsb3dzIHRvIHNraXAgc29tZSByb3VuZHNcbmZ1bmN0aW9uIGtlY2Nha1Aocywgcm91bmRzID0gMjQpIHtcbiAgICBjb25zdCBCID0gbmV3IFVpbnQzMkFycmF5KDUgKiAyKTtcbiAgICAvLyBOT1RFOiBhbGwgaW5kaWNlcyBhcmUgeDIgc2luY2Ugd2Ugc3RvcmUgc3RhdGUgYXMgdTMyIGluc3RlYWQgb2YgdTY0IChiaWdpbnRzIHRvIHNsb3cgaW4ganMpXG4gICAgZm9yIChsZXQgcm91bmQgPSAyNCAtIHJvdW5kczsgcm91bmQgPCAyNDsgcm91bmQrKykge1xuICAgICAgICAvLyBUaGV0YSDOuFxuICAgICAgICBmb3IgKGxldCB4ID0gMDsgeCA8IDEwOyB4KyspXG4gICAgICAgICAgICBCW3hdID0gc1t4XSBeIHNbeCArIDEwXSBeIHNbeCArIDIwXSBeIHNbeCArIDMwXSBeIHNbeCArIDQwXTtcbiAgICAgICAgZm9yIChsZXQgeCA9IDA7IHggPCAxMDsgeCArPSAyKSB7XG4gICAgICAgICAgICBjb25zdCBpZHgxID0gKHggKyA4KSAlIDEwO1xuICAgICAgICAgICAgY29uc3QgaWR4MCA9ICh4ICsgMikgJSAxMDtcbiAgICAgICAgICAgIGNvbnN0IEIwID0gQltpZHgwXTtcbiAgICAgICAgICAgIGNvbnN0IEIxID0gQltpZHgwICsgMV07XG4gICAgICAgICAgICBjb25zdCBUaCA9IHJvdGxIKEIwLCBCMSwgMSkgXiBCW2lkeDFdO1xuICAgICAgICAgICAgY29uc3QgVGwgPSByb3RsTChCMCwgQjEsIDEpIF4gQltpZHgxICsgMV07XG4gICAgICAgICAgICBmb3IgKGxldCB5ID0gMDsgeSA8IDUwOyB5ICs9IDEwKSB7XG4gICAgICAgICAgICAgICAgc1t4ICsgeV0gXj0gVGg7XG4gICAgICAgICAgICAgICAgc1t4ICsgeSArIDFdIF49IFRsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIFJobyAoz4EpIGFuZCBQaSAoz4ApXG4gICAgICAgIGxldCBjdXJIID0gc1syXTtcbiAgICAgICAgbGV0IGN1ckwgPSBzWzNdO1xuICAgICAgICBmb3IgKGxldCB0ID0gMDsgdCA8IDI0OyB0KyspIHtcbiAgICAgICAgICAgIGNvbnN0IHNoaWZ0ID0gU0hBM19ST1RMW3RdO1xuICAgICAgICAgICAgY29uc3QgVGggPSByb3RsSChjdXJILCBjdXJMLCBzaGlmdCk7XG4gICAgICAgICAgICBjb25zdCBUbCA9IHJvdGxMKGN1ckgsIGN1ckwsIHNoaWZ0KTtcbiAgICAgICAgICAgIGNvbnN0IFBJID0gU0hBM19QSVt0XTtcbiAgICAgICAgICAgIGN1ckggPSBzW1BJXTtcbiAgICAgICAgICAgIGN1ckwgPSBzW1BJICsgMV07XG4gICAgICAgICAgICBzW1BJXSA9IFRoO1xuICAgICAgICAgICAgc1tQSSArIDFdID0gVGw7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQ2hpICjPhylcbiAgICAgICAgZm9yIChsZXQgeSA9IDA7IHkgPCA1MDsgeSArPSAxMCkge1xuICAgICAgICAgICAgZm9yIChsZXQgeCA9IDA7IHggPCAxMDsgeCsrKVxuICAgICAgICAgICAgICAgIEJbeF0gPSBzW3kgKyB4XTtcbiAgICAgICAgICAgIGZvciAobGV0IHggPSAwOyB4IDwgMTA7IHgrKylcbiAgICAgICAgICAgICAgICBzW3kgKyB4XSBePSB+QlsoeCArIDIpICUgMTBdICYgQlsoeCArIDQpICUgMTBdO1xuICAgICAgICB9XG4gICAgICAgIC8vIElvdGEgKM65KVxuICAgICAgICBzWzBdIF49IFNIQTNfSU9UQV9IW3JvdW5kXTtcbiAgICAgICAgc1sxXSBePSBTSEEzX0lPVEFfTFtyb3VuZF07XG4gICAgfVxuICAgIEIuZmlsbCgwKTtcbn1cbmV4cG9ydHMua2VjY2FrUCA9IGtlY2Nha1A7XG5jbGFzcyBLZWNjYWsgZXh0ZW5kcyB1dGlsc19qc18xLkhhc2gge1xuICAgIC8vIE5PVEU6IHdlIGFjY2VwdCBhcmd1bWVudHMgaW4gYnl0ZXMgaW5zdGVhZCBvZiBiaXRzIGhlcmUuXG4gICAgY29uc3RydWN0b3IoYmxvY2tMZW4sIHN1ZmZpeCwgb3V0cHV0TGVuLCBlbmFibGVYT0YgPSBmYWxzZSwgcm91bmRzID0gMjQpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5ibG9ja0xlbiA9IGJsb2NrTGVuO1xuICAgICAgICB0aGlzLnN1ZmZpeCA9IHN1ZmZpeDtcbiAgICAgICAgdGhpcy5vdXRwdXRMZW4gPSBvdXRwdXRMZW47XG4gICAgICAgIHRoaXMuZW5hYmxlWE9GID0gZW5hYmxlWE9GO1xuICAgICAgICB0aGlzLnJvdW5kcyA9IHJvdW5kcztcbiAgICAgICAgdGhpcy5wb3MgPSAwO1xuICAgICAgICB0aGlzLnBvc091dCA9IDA7XG4gICAgICAgIHRoaXMuZmluaXNoZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQgPSBmYWxzZTtcbiAgICAgICAgLy8gQ2FuIGJlIHBhc3NlZCBmcm9tIHVzZXIgYXMgZGtMZW5cbiAgICAgICAgKDAsIF9hc3NlcnRfanNfMS5udW1iZXIpKG91dHB1dExlbik7XG4gICAgICAgIC8vIDE2MDAgPSA1eDUgbWF0cml4IG9mIDY0Yml0LiAgMTYwMCBiaXRzID09PSAyMDAgYnl0ZXNcbiAgICAgICAgaWYgKDAgPj0gdGhpcy5ibG9ja0xlbiB8fCB0aGlzLmJsb2NrTGVuID49IDIwMClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignU2hhMyBzdXBwb3J0cyBvbmx5IGtlY2Nhay1mMTYwMCBmdW5jdGlvbicpO1xuICAgICAgICB0aGlzLnN0YXRlID0gbmV3IFVpbnQ4QXJyYXkoMjAwKTtcbiAgICAgICAgdGhpcy5zdGF0ZTMyID0gKDAsIHV0aWxzX2pzXzEudTMyKSh0aGlzLnN0YXRlKTtcbiAgICB9XG4gICAga2VjY2FrKCkge1xuICAgICAgICBpZiAoIXV0aWxzX2pzXzEuaXNMRSlcbiAgICAgICAgICAgICgwLCB1dGlsc19qc18xLmJ5dGVTd2FwMzIpKHRoaXMuc3RhdGUzMik7XG4gICAgICAgIGtlY2Nha1AodGhpcy5zdGF0ZTMyLCB0aGlzLnJvdW5kcyk7XG4gICAgICAgIGlmICghdXRpbHNfanNfMS5pc0xFKVxuICAgICAgICAgICAgKDAsIHV0aWxzX2pzXzEuYnl0ZVN3YXAzMikodGhpcy5zdGF0ZTMyKTtcbiAgICAgICAgdGhpcy5wb3NPdXQgPSAwO1xuICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgfVxuICAgIHVwZGF0ZShkYXRhKSB7XG4gICAgICAgICgwLCBfYXNzZXJ0X2pzXzEuZXhpc3RzKSh0aGlzKTtcbiAgICAgICAgY29uc3QgeyBibG9ja0xlbiwgc3RhdGUgfSA9IHRoaXM7XG4gICAgICAgIGRhdGEgPSAoMCwgdXRpbHNfanNfMS50b0J5dGVzKShkYXRhKTtcbiAgICAgICAgY29uc3QgbGVuID0gZGF0YS5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IHBvcyA9IDA7IHBvcyA8IGxlbjspIHtcbiAgICAgICAgICAgIGNvbnN0IHRha2UgPSBNYXRoLm1pbihibG9ja0xlbiAtIHRoaXMucG9zLCBsZW4gLSBwb3MpO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0YWtlOyBpKyspXG4gICAgICAgICAgICAgICAgc3RhdGVbdGhpcy5wb3MrK10gXj0gZGF0YVtwb3MrK107XG4gICAgICAgICAgICBpZiAodGhpcy5wb3MgPT09IGJsb2NrTGVuKVxuICAgICAgICAgICAgICAgIHRoaXMua2VjY2FrKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIGZpbmlzaCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZmluaXNoZWQpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIHRoaXMuZmluaXNoZWQgPSB0cnVlO1xuICAgICAgICBjb25zdCB7IHN0YXRlLCBzdWZmaXgsIHBvcywgYmxvY2tMZW4gfSA9IHRoaXM7XG4gICAgICAgIC8vIERvIHRoZSBwYWRkaW5nXG4gICAgICAgIHN0YXRlW3Bvc10gXj0gc3VmZml4O1xuICAgICAgICBpZiAoKHN1ZmZpeCAmIDB4ODApICE9PSAwICYmIHBvcyA9PT0gYmxvY2tMZW4gLSAxKVxuICAgICAgICAgICAgdGhpcy5rZWNjYWsoKTtcbiAgICAgICAgc3RhdGVbYmxvY2tMZW4gLSAxXSBePSAweDgwO1xuICAgICAgICB0aGlzLmtlY2NhaygpO1xuICAgIH1cbiAgICB3cml0ZUludG8ob3V0KSB7XG4gICAgICAgICgwLCBfYXNzZXJ0X2pzXzEuZXhpc3RzKSh0aGlzLCBmYWxzZSk7XG4gICAgICAgICgwLCBfYXNzZXJ0X2pzXzEuYnl0ZXMpKG91dCk7XG4gICAgICAgIHRoaXMuZmluaXNoKCk7XG4gICAgICAgIGNvbnN0IGJ1ZmZlck91dCA9IHRoaXMuc3RhdGU7XG4gICAgICAgIGNvbnN0IHsgYmxvY2tMZW4gfSA9IHRoaXM7XG4gICAgICAgIGZvciAobGV0IHBvcyA9IDAsIGxlbiA9IG91dC5sZW5ndGg7IHBvcyA8IGxlbjspIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnBvc091dCA+PSBibG9ja0xlbilcbiAgICAgICAgICAgICAgICB0aGlzLmtlY2NhaygpO1xuICAgICAgICAgICAgY29uc3QgdGFrZSA9IE1hdGgubWluKGJsb2NrTGVuIC0gdGhpcy5wb3NPdXQsIGxlbiAtIHBvcyk7XG4gICAgICAgICAgICBvdXQuc2V0KGJ1ZmZlck91dC5zdWJhcnJheSh0aGlzLnBvc091dCwgdGhpcy5wb3NPdXQgKyB0YWtlKSwgcG9zKTtcbiAgICAgICAgICAgIHRoaXMucG9zT3V0ICs9IHRha2U7XG4gICAgICAgICAgICBwb3MgKz0gdGFrZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb3V0O1xuICAgIH1cbiAgICB4b2ZJbnRvKG91dCkge1xuICAgICAgICAvLyBTaGEzL0tlY2NhayB1c2FnZSB3aXRoIFhPRiBpcyBwcm9iYWJseSBtaXN0YWtlLCBvbmx5IFNIQUtFIGluc3RhbmNlcyBjYW4gZG8gWE9GXG4gICAgICAgIGlmICghdGhpcy5lbmFibGVYT0YpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1hPRiBpcyBub3QgcG9zc2libGUgZm9yIHRoaXMgaW5zdGFuY2UnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMud3JpdGVJbnRvKG91dCk7XG4gICAgfVxuICAgIHhvZihieXRlcykge1xuICAgICAgICAoMCwgX2Fzc2VydF9qc18xLm51bWJlcikoYnl0ZXMpO1xuICAgICAgICByZXR1cm4gdGhpcy54b2ZJbnRvKG5ldyBVaW50OEFycmF5KGJ5dGVzKSk7XG4gICAgfVxuICAgIGRpZ2VzdEludG8ob3V0KSB7XG4gICAgICAgICgwLCBfYXNzZXJ0X2pzXzEub3V0cHV0KShvdXQsIHRoaXMpO1xuICAgICAgICBpZiAodGhpcy5maW5pc2hlZClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignZGlnZXN0KCkgd2FzIGFscmVhZHkgY2FsbGVkJyk7XG4gICAgICAgIHRoaXMud3JpdGVJbnRvKG91dCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgICAgICByZXR1cm4gb3V0O1xuICAgIH1cbiAgICBkaWdlc3QoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpZ2VzdEludG8obmV3IFVpbnQ4QXJyYXkodGhpcy5vdXRwdXRMZW4pKTtcbiAgICB9XG4gICAgZGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLnN0YXRlLmZpbGwoMCk7XG4gICAgfVxuICAgIF9jbG9uZUludG8odG8pIHtcbiAgICAgICAgY29uc3QgeyBibG9ja0xlbiwgc3VmZml4LCBvdXRwdXRMZW4sIHJvdW5kcywgZW5hYmxlWE9GIH0gPSB0aGlzO1xuICAgICAgICB0byB8fCAodG8gPSBuZXcgS2VjY2FrKGJsb2NrTGVuLCBzdWZmaXgsIG91dHB1dExlbiwgZW5hYmxlWE9GLCByb3VuZHMpKTtcbiAgICAgICAgdG8uc3RhdGUzMi5zZXQodGhpcy5zdGF0ZTMyKTtcbiAgICAgICAgdG8ucG9zID0gdGhpcy5wb3M7XG4gICAgICAgIHRvLnBvc091dCA9IHRoaXMucG9zT3V0O1xuICAgICAgICB0by5maW5pc2hlZCA9IHRoaXMuZmluaXNoZWQ7XG4gICAgICAgIHRvLnJvdW5kcyA9IHJvdW5kcztcbiAgICAgICAgLy8gU3VmZml4IGNhbiBjaGFuZ2UgaW4gY1NIQUtFXG4gICAgICAgIHRvLnN1ZmZpeCA9IHN1ZmZpeDtcbiAgICAgICAgdG8ub3V0cHV0TGVuID0gb3V0cHV0TGVuO1xuICAgICAgICB0by5lbmFibGVYT0YgPSBlbmFibGVYT0Y7XG4gICAgICAgIHRvLmRlc3Ryb3llZCA9IHRoaXMuZGVzdHJveWVkO1xuICAgICAgICByZXR1cm4gdG87XG4gICAgfVxufVxuZXhwb3J0cy5LZWNjYWsgPSBLZWNjYWs7XG5jb25zdCBnZW4gPSAoc3VmZml4LCBibG9ja0xlbiwgb3V0cHV0TGVuKSA9PiAoMCwgdXRpbHNfanNfMS53cmFwQ29uc3RydWN0b3IpKCgpID0+IG5ldyBLZWNjYWsoYmxvY2tMZW4sIHN1ZmZpeCwgb3V0cHV0TGVuKSk7XG5leHBvcnRzLnNoYTNfMjI0ID0gZ2VuKDB4MDYsIDE0NCwgMjI0IC8gOCk7XG4vKipcbiAqIFNIQTMtMjU2IGhhc2ggZnVuY3Rpb25cbiAqIEBwYXJhbSBtZXNzYWdlIC0gdGhhdCB3b3VsZCBiZSBoYXNoZWRcbiAqL1xuZXhwb3J0cy5zaGEzXzI1NiA9IGdlbigweDA2LCAxMzYsIDI1NiAvIDgpO1xuZXhwb3J0cy5zaGEzXzM4NCA9IGdlbigweDA2LCAxMDQsIDM4NCAvIDgpO1xuZXhwb3J0cy5zaGEzXzUxMiA9IGdlbigweDA2LCA3MiwgNTEyIC8gOCk7XG5leHBvcnRzLmtlY2Nha18yMjQgPSBnZW4oMHgwMSwgMTQ0LCAyMjQgLyA4KTtcbi8qKlxuICoga2VjY2FrLTI1NiBoYXNoIGZ1bmN0aW9uLiBEaWZmZXJlbnQgZnJvbSBTSEEzLTI1Ni5cbiAqIEBwYXJhbSBtZXNzYWdlIC0gdGhhdCB3b3VsZCBiZSBoYXNoZWRcbiAqL1xuZXhwb3J0cy5rZWNjYWtfMjU2ID0gZ2VuKDB4MDEsIDEzNiwgMjU2IC8gOCk7XG5leHBvcnRzLmtlY2Nha18zODQgPSBnZW4oMHgwMSwgMTA0LCAzODQgLyA4KTtcbmV4cG9ydHMua2VjY2FrXzUxMiA9IGdlbigweDAxLCA3MiwgNTEyIC8gOCk7XG5jb25zdCBnZW5TaGFrZSA9IChzdWZmaXgsIGJsb2NrTGVuLCBvdXRwdXRMZW4pID0+ICgwLCB1dGlsc19qc18xLndyYXBYT0ZDb25zdHJ1Y3RvcldpdGhPcHRzKSgob3B0cyA9IHt9KSA9PiBuZXcgS2VjY2FrKGJsb2NrTGVuLCBzdWZmaXgsIG9wdHMuZGtMZW4gPT09IHVuZGVmaW5lZCA/IG91dHB1dExlbiA6IG9wdHMuZGtMZW4sIHRydWUpKTtcbmV4cG9ydHMuc2hha2UxMjggPSBnZW5TaGFrZSgweDFmLCAxNjgsIDEyOCAvIDgpO1xuZXhwb3J0cy5zaGFrZTI1NiA9IGdlblNoYWtlKDB4MWYsIDEzNiwgMjU2IC8gOCk7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zaGEzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/sha3.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/utils.js": /*!*******************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/utils.js ***! \*******************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.randomBytes = exports.wrapXOFConstructorWithOpts = exports.wrapConstructorWithOpts = exports.wrapConstructor = exports.checkOpts = exports.Hash = exports.concatBytes = exports.toBytes = exports.utf8ToBytes = exports.asyncLoop = exports.nextTick = exports.hexToBytes = exports.bytesToHex = exports.byteSwap32 = exports.byteSwapIfBE = exports.byteSwap = exports.isLE = exports.rotl = exports.rotr = exports.createView = exports.u32 = exports.u8 = exports.isBytes = void 0;\n// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.\n// node.js versions earlier than v19 don't declare it in global scope.\n// For node.js, package.json#exports field mapping rewrites import\n// from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated (2025-04-30), we can just drop the import.\nconst crypto_1 = __webpack_require__(/*! @noble/hashes/crypto */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/crypto.js\");\nconst _assert_js_1 = __webpack_require__(/*! ./_assert.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/_assert.js\");\n// export { isBytes } from './_assert.js';\n// We can't reuse isBytes from _assert, because somehow this causes huge perf issues\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nexports.isBytes = isBytes;\n// Cast array to different type\nconst u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);\nexports.u8 = u8;\nconst u32 = (arr) => new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\nexports.u32 = u32;\n// Cast array to view\nconst createView = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\nexports.createView = createView;\n// The rotate right (circular right shift) operation for uint32\nconst rotr = (word, shift) => (word << (32 - shift)) | (word >>> shift);\nexports.rotr = rotr;\n// The rotate left (circular left shift) operation for uint32\nconst rotl = (word, shift) => (word << shift) | ((word >>> (32 - shift)) >>> 0);\nexports.rotl = rotl;\nexports.isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;\n// The byte swap operation for uint32\nconst byteSwap = (word) => ((word << 24) & 0xff000000) |\n ((word << 8) & 0xff0000) |\n ((word >>> 8) & 0xff00) |\n ((word >>> 24) & 0xff);\nexports.byteSwap = byteSwap;\n// Conditionally byte swap if on a big-endian platform\nexports.byteSwapIfBE = exports.isLE ? (n) => n : (n) => (0, exports.byteSwap)(n);\n// In place byte swap for Uint32Array\nfunction byteSwap32(arr) {\n for (let i = 0; i < arr.length; i++) {\n arr[i] = (0, exports.byteSwap)(arr[i]);\n }\n}\nexports.byteSwap32 = byteSwap32;\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n (0, _assert_js_1.bytes)(bytes);\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\nexports.bytesToHex = bytesToHex;\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };\nfunction asciiToBase16(char) {\n if (char >= asciis._0 && char <= asciis._9)\n return char - asciis._0;\n if (char >= asciis._A && char <= asciis._F)\n return char - (asciis._A - 10);\n if (char >= asciis._a && char <= asciis._f)\n return char - (asciis._a - 10);\n return;\n}\n/**\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('padded hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2;\n }\n return array;\n}\nexports.hexToBytes = hexToBytes;\n// There is no setImmediate in browser and setTimeout is slow.\n// call of async fn will return Promise, which will be fullfiled only on\n// next scheduler queue processing step and this is exactly what we need.\nconst nextTick = async () => { };\nexports.nextTick = nextTick;\n// Returns control to thread each 'tick' ms to avoid blocking\nasync function asyncLoop(iters, tick, cb) {\n let ts = Date.now();\n for (let i = 0; i < iters; i++) {\n cb(i);\n // Date.now() is not monotonic, so in case if clock goes backwards we return return control too\n const diff = Date.now() - ts;\n if (diff >= 0 && diff < tick)\n continue;\n await (0, exports.nextTick)();\n ts += diff;\n }\n}\nexports.asyncLoop = asyncLoop;\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\nexports.utf8ToBytes = utf8ToBytes;\n/**\n * Normalizes (non-hex) string or Uint8Array to Uint8Array.\n * Warning: when Uint8Array is passed, it would NOT get copied.\n * Keep in mind for future mutable operations.\n */\nfunction toBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n (0, _assert_js_1.bytes)(data);\n return data;\n}\nexports.toBytes = toBytes;\n/**\n * Copies several Uint8Arrays into one.\n */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n (0, _assert_js_1.bytes)(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\nexports.concatBytes = concatBytes;\n// For runtime check if class implements interface\nclass Hash {\n // Safe version that clones internal state\n clone() {\n return this._cloneInto();\n }\n}\nexports.Hash = Hash;\nconst toStr = {}.toString;\nfunction checkOpts(defaults, opts) {\n if (opts !== undefined && toStr.call(opts) !== '[object Object]')\n throw new Error('Options should be object or undefined');\n const merged = Object.assign(defaults, opts);\n return merged;\n}\nexports.checkOpts = checkOpts;\nfunction wrapConstructor(hashCons) {\n const hashC = (msg) => hashCons().update(toBytes(msg)).digest();\n const tmp = hashCons();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashCons();\n return hashC;\n}\nexports.wrapConstructor = wrapConstructor;\nfunction wrapConstructorWithOpts(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nexports.wrapConstructorWithOpts = wrapConstructorWithOpts;\nfunction wrapXOFConstructorWithOpts(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nexports.wrapXOFConstructorWithOpts = wrapXOFConstructorWithOpts;\n/**\n * Secure PRNG. Uses `crypto.getRandomValues`, which defers to OS.\n */\nfunction randomBytes(bytesLength = 32) {\n if (crypto_1.crypto && typeof crypto_1.crypto.getRandomValues === 'function') {\n return crypto_1.crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\nexports.randomBytes = randomBytes;\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy91dGlscy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiO0FBQ0EsOENBQTZDLEVBQUUsYUFBYSxFQUFDO0FBQzdELG1CQUFtQixHQUFHLGtDQUFrQyxHQUFHLCtCQUErQixHQUFHLHVCQUF1QixHQUFHLGlCQUFpQixHQUFHLFlBQVksR0FBRyxtQkFBbUIsR0FBRyxlQUFlLEdBQUcsbUJBQW1CLEdBQUcsaUJBQWlCLEdBQUcsZ0JBQWdCLEdBQUcsa0JBQWtCLEdBQUcsa0JBQWtCLEdBQUcsa0JBQWtCLEdBQUcsb0JBQW9CLEdBQUcsZ0JBQWdCLEdBQUcsWUFBWSxHQUFHLFlBQVksR0FBRyxZQUFZLEdBQUcsa0JBQWtCLEdBQUcsV0FBVyxHQUFHLFVBQVUsR0FBRyxlQUFlO0FBQ3BkO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQixtQkFBTyxDQUFDLDBIQUFzQjtBQUMvQyxxQkFBcUIsbUJBQU8sQ0FBQyxtSEFBYztBQUMzQyxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEI7QUFDQTtBQUNBLFlBQVk7QUFDWjtBQUNBO0FBQ0EsWUFBWTtBQUNaLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCO0FBQ2hCO0FBQ0Esb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQSxvQkFBb0IsZ0JBQWdCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQjtBQUNsQjtBQUNBLDJDQUEyQyxhQUFhO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGtCQUFrQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQjtBQUNsQjtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLFNBQVM7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0I7QUFDaEI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLFdBQVc7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0REFBNEQsV0FBVztBQUN2RSwwREFBMEQ7QUFDMUQ7QUFDQSxtQkFBbUI7QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG1CQUFtQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLG1CQUFtQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUI7QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZO0FBQ1osZ0JBQWdCO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCO0FBQ3ZCO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQjtBQUMvQjtBQUNBO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0M7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL3V0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuLyohIG5vYmxlLWhhc2hlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5yYW5kb21CeXRlcyA9IGV4cG9ydHMud3JhcFhPRkNvbnN0cnVjdG9yV2l0aE9wdHMgPSBleHBvcnRzLndyYXBDb25zdHJ1Y3RvcldpdGhPcHRzID0gZXhwb3J0cy53cmFwQ29uc3RydWN0b3IgPSBleHBvcnRzLmNoZWNrT3B0cyA9IGV4cG9ydHMuSGFzaCA9IGV4cG9ydHMuY29uY2F0Qnl0ZXMgPSBleHBvcnRzLnRvQnl0ZXMgPSBleHBvcnRzLnV0ZjhUb0J5dGVzID0gZXhwb3J0cy5hc3luY0xvb3AgPSBleHBvcnRzLm5leHRUaWNrID0gZXhwb3J0cy5oZXhUb0J5dGVzID0gZXhwb3J0cy5ieXRlc1RvSGV4ID0gZXhwb3J0cy5ieXRlU3dhcDMyID0gZXhwb3J0cy5ieXRlU3dhcElmQkUgPSBleHBvcnRzLmJ5dGVTd2FwID0gZXhwb3J0cy5pc0xFID0gZXhwb3J0cy5yb3RsID0gZXhwb3J0cy5yb3RyID0gZXhwb3J0cy5jcmVhdGVWaWV3ID0gZXhwb3J0cy51MzIgPSBleHBvcnRzLnU4ID0gZXhwb3J0cy5pc0J5dGVzID0gdm9pZCAwO1xuLy8gV2UgdXNlIFdlYkNyeXB0byBha2EgZ2xvYmFsVGhpcy5jcnlwdG8sIHdoaWNoIGV4aXN0cyBpbiBicm93c2VycyBhbmQgbm9kZS5qcyAxNisuXG4vLyBub2RlLmpzIHZlcnNpb25zIGVhcmxpZXIgdGhhbiB2MTkgZG9uJ3QgZGVjbGFyZSBpdCBpbiBnbG9iYWwgc2NvcGUuXG4vLyBGb3Igbm9kZS5qcywgcGFja2FnZS5qc29uI2V4cG9ydHMgZmllbGQgbWFwcGluZyByZXdyaXRlcyBpbXBvcnRcbi8vIGZyb20gYGNyeXB0b2AgdG8gYGNyeXB0b05vZGVgLCB3aGljaCBpbXBvcnRzIG5hdGl2ZSBtb2R1bGUuXG4vLyBNYWtlcyB0aGUgdXRpbHMgdW4taW1wb3J0YWJsZSBpbiBicm93c2VycyB3aXRob3V0IGEgYnVuZGxlci5cbi8vIE9uY2Ugbm9kZS5qcyAxOCBpcyBkZXByZWNhdGVkICgyMDI1LTA0LTMwKSwgd2UgY2FuIGp1c3QgZHJvcCB0aGUgaW1wb3J0LlxuY29uc3QgY3J5cHRvXzEgPSByZXF1aXJlKFwiQG5vYmxlL2hhc2hlcy9jcnlwdG9cIik7XG5jb25zdCBfYXNzZXJ0X2pzXzEgPSByZXF1aXJlKFwiLi9fYXNzZXJ0LmpzXCIpO1xuLy8gZXhwb3J0IHsgaXNCeXRlcyB9IGZyb20gJy4vX2Fzc2VydC5qcyc7XG4vLyBXZSBjYW4ndCByZXVzZSBpc0J5dGVzIGZyb20gX2Fzc2VydCwgYmVjYXVzZSBzb21laG93IHRoaXMgY2F1c2VzIGh1Z2UgcGVyZiBpc3N1ZXNcbmZ1bmN0aW9uIGlzQnl0ZXMoYSkge1xuICAgIHJldHVybiAoYSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkgfHxcbiAgICAgICAgKGEgIT0gbnVsbCAmJiB0eXBlb2YgYSA9PT0gJ29iamVjdCcgJiYgYS5jb25zdHJ1Y3Rvci5uYW1lID09PSAnVWludDhBcnJheScpKTtcbn1cbmV4cG9ydHMuaXNCeXRlcyA9IGlzQnl0ZXM7XG4vLyBDYXN0IGFycmF5IHRvIGRpZmZlcmVudCB0eXBlXG5jb25zdCB1OCA9IChhcnIpID0+IG5ldyBVaW50OEFycmF5KGFyci5idWZmZXIsIGFyci5ieXRlT2Zmc2V0LCBhcnIuYnl0ZUxlbmd0aCk7XG5leHBvcnRzLnU4ID0gdTg7XG5jb25zdCB1MzIgPSAoYXJyKSA9PiBuZXcgVWludDMyQXJyYXkoYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIE1hdGguZmxvb3IoYXJyLmJ5dGVMZW5ndGggLyA0KSk7XG5leHBvcnRzLnUzMiA9IHUzMjtcbi8vIENhc3QgYXJyYXkgdG8gdmlld1xuY29uc3QgY3JlYXRlVmlldyA9IChhcnIpID0+IG5ldyBEYXRhVmlldyhhcnIuYnVmZmVyLCBhcnIuYnl0ZU9mZnNldCwgYXJyLmJ5dGVMZW5ndGgpO1xuZXhwb3J0cy5jcmVhdGVWaWV3ID0gY3JlYXRlVmlldztcbi8vIFRoZSByb3RhdGUgcmlnaHQgKGNpcmN1bGFyIHJpZ2h0IHNoaWZ0KSBvcGVyYXRpb24gZm9yIHVpbnQzMlxuY29uc3Qgcm90ciA9ICh3b3JkLCBzaGlmdCkgPT4gKHdvcmQgPDwgKDMyIC0gc2hpZnQpKSB8ICh3b3JkID4+PiBzaGlmdCk7XG5leHBvcnRzLnJvdHIgPSByb3RyO1xuLy8gVGhlIHJvdGF0ZSBsZWZ0IChjaXJjdWxhciBsZWZ0IHNoaWZ0KSBvcGVyYXRpb24gZm9yIHVpbnQzMlxuY29uc3Qgcm90bCA9ICh3b3JkLCBzaGlmdCkgPT4gKHdvcmQgPDwgc2hpZnQpIHwgKCh3b3JkID4+PiAoMzIgLSBzaGlmdCkpID4+PiAwKTtcbmV4cG9ydHMucm90bCA9IHJvdGw7XG5leHBvcnRzLmlzTEUgPSBuZXcgVWludDhBcnJheShuZXcgVWludDMyQXJyYXkoWzB4MTEyMjMzNDRdKS5idWZmZXIpWzBdID09PSAweDQ0O1xuLy8gVGhlIGJ5dGUgc3dhcCBvcGVyYXRpb24gZm9yIHVpbnQzMlxuY29uc3QgYnl0ZVN3YXAgPSAod29yZCkgPT4gKCh3b3JkIDw8IDI0KSAmIDB4ZmYwMDAwMDApIHxcbiAgICAoKHdvcmQgPDwgOCkgJiAweGZmMDAwMCkgfFxuICAgICgod29yZCA+Pj4gOCkgJiAweGZmMDApIHxcbiAgICAoKHdvcmQgPj4+IDI0KSAmIDB4ZmYpO1xuZXhwb3J0cy5ieXRlU3dhcCA9IGJ5dGVTd2FwO1xuLy8gQ29uZGl0aW9uYWxseSBieXRlIHN3YXAgaWYgb24gYSBiaWctZW5kaWFuIHBsYXRmb3JtXG5leHBvcnRzLmJ5dGVTd2FwSWZCRSA9IGV4cG9ydHMuaXNMRSA/IChuKSA9PiBuIDogKG4pID0+ICgwLCBleHBvcnRzLmJ5dGVTd2FwKShuKTtcbi8vIEluIHBsYWNlIGJ5dGUgc3dhcCBmb3IgVWludDMyQXJyYXlcbmZ1bmN0aW9uIGJ5dGVTd2FwMzIoYXJyKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgYXJyW2ldID0gKDAsIGV4cG9ydHMuYnl0ZVN3YXApKGFycltpXSk7XG4gICAgfVxufVxuZXhwb3J0cy5ieXRlU3dhcDMyID0gYnl0ZVN3YXAzMjtcbi8vIEFycmF5IHdoZXJlIGluZGV4IDB4ZjAgKDI0MCkgaXMgbWFwcGVkIHRvIHN0cmluZyAnZjAnXG5jb25zdCBoZXhlcyA9IC8qIEBfX1BVUkVfXyAqLyBBcnJheS5mcm9tKHsgbGVuZ3RoOiAyNTYgfSwgKF8sIGkpID0+IGkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsICcwJykpO1xuLyoqXG4gKiBAZXhhbXBsZSBieXRlc1RvSGV4KFVpbnQ4QXJyYXkuZnJvbShbMHhjYSwgMHhmZSwgMHgwMSwgMHgyM10pKSAvLyAnY2FmZTAxMjMnXG4gKi9cbmZ1bmN0aW9uIGJ5dGVzVG9IZXgoYnl0ZXMpIHtcbiAgICAoMCwgX2Fzc2VydF9qc18xLmJ5dGVzKShieXRlcyk7XG4gICAgLy8gcHJlLWNhY2hpbmcgaW1wcm92ZXMgdGhlIHNwZWVkIDZ4XG4gICAgbGV0IGhleCA9ICcnO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaGV4ICs9IGhleGVzW2J5dGVzW2ldXTtcbiAgICB9XG4gICAgcmV0dXJuIGhleDtcbn1cbmV4cG9ydHMuYnl0ZXNUb0hleCA9IGJ5dGVzVG9IZXg7XG4vLyBXZSB1c2Ugb3B0aW1pemVkIHRlY2huaXF1ZSB0byBjb252ZXJ0IGhleCBzdHJpbmcgdG8gYnl0ZSBhcnJheVxuY29uc3QgYXNjaWlzID0geyBfMDogNDgsIF85OiA1NywgX0E6IDY1LCBfRjogNzAsIF9hOiA5NywgX2Y6IDEwMiB9O1xuZnVuY3Rpb24gYXNjaWlUb0Jhc2UxNihjaGFyKSB7XG4gICAgaWYgKGNoYXIgPj0gYXNjaWlzLl8wICYmIGNoYXIgPD0gYXNjaWlzLl85KVxuICAgICAgICByZXR1cm4gY2hhciAtIGFzY2lpcy5fMDtcbiAgICBpZiAoY2hhciA+PSBhc2NpaXMuX0EgJiYgY2hhciA8PSBhc2NpaXMuX0YpXG4gICAgICAgIHJldHVybiBjaGFyIC0gKGFzY2lpcy5fQSAtIDEwKTtcbiAgICBpZiAoY2hhciA+PSBhc2NpaXMuX2EgJiYgY2hhciA8PSBhc2NpaXMuX2YpXG4gICAgICAgIHJldHVybiBjaGFyIC0gKGFzY2lpcy5fYSAtIDEwKTtcbiAgICByZXR1cm47XG59XG4vKipcbiAqIEBleGFtcGxlIGhleFRvQnl0ZXMoJ2NhZmUwMTIzJykgLy8gVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSlcbiAqL1xuZnVuY3Rpb24gaGV4VG9CeXRlcyhoZXgpIHtcbiAgICBpZiAodHlwZW9mIGhleCAhPT0gJ3N0cmluZycpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaGV4IHN0cmluZyBleHBlY3RlZCwgZ290ICcgKyB0eXBlb2YgaGV4KTtcbiAgICBjb25zdCBobCA9IGhleC5sZW5ndGg7XG4gICAgY29uc3QgYWwgPSBobCAvIDI7XG4gICAgaWYgKGhsICUgMilcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdwYWRkZWQgaGV4IHN0cmluZyBleHBlY3RlZCwgZ290IHVucGFkZGVkIGhleCBvZiBsZW5ndGggJyArIGhsKTtcbiAgICBjb25zdCBhcnJheSA9IG5ldyBVaW50OEFycmF5KGFsKTtcbiAgICBmb3IgKGxldCBhaSA9IDAsIGhpID0gMDsgYWkgPCBhbDsgYWkrKywgaGkgKz0gMikge1xuICAgICAgICBjb25zdCBuMSA9IGFzY2lpVG9CYXNlMTYoaGV4LmNoYXJDb2RlQXQoaGkpKTtcbiAgICAgICAgY29uc3QgbjIgPSBhc2NpaVRvQmFzZTE2KGhleC5jaGFyQ29kZUF0KGhpICsgMSkpO1xuICAgICAgICBpZiAobjEgPT09IHVuZGVmaW5lZCB8fCBuMiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25zdCBjaGFyID0gaGV4W2hpXSArIGhleFtoaSArIDFdO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3Qgbm9uLWhleCBjaGFyYWN0ZXIgXCInICsgY2hhciArICdcIiBhdCBpbmRleCAnICsgaGkpO1xuICAgICAgICB9XG4gICAgICAgIGFycmF5W2FpXSA9IG4xICogMTYgKyBuMjtcbiAgICB9XG4gICAgcmV0dXJuIGFycmF5O1xufVxuZXhwb3J0cy5oZXhUb0J5dGVzID0gaGV4VG9CeXRlcztcbi8vIFRoZXJlIGlzIG5vIHNldEltbWVkaWF0ZSBpbiBicm93c2VyIGFuZCBzZXRUaW1lb3V0IGlzIHNsb3cuXG4vLyBjYWxsIG9mIGFzeW5jIGZuIHdpbGwgcmV0dXJuIFByb21pc2UsIHdoaWNoIHdpbGwgYmUgZnVsbGZpbGVkIG9ubHkgb25cbi8vIG5leHQgc2NoZWR1bGVyIHF1ZXVlIHByb2Nlc3Npbmcgc3RlcCBhbmQgdGhpcyBpcyBleGFjdGx5IHdoYXQgd2UgbmVlZC5cbmNvbnN0IG5leHRUaWNrID0gYXN5bmMgKCkgPT4geyB9O1xuZXhwb3J0cy5uZXh0VGljayA9IG5leHRUaWNrO1xuLy8gUmV0dXJucyBjb250cm9sIHRvIHRocmVhZCBlYWNoICd0aWNrJyBtcyB0byBhdm9pZCBibG9ja2luZ1xuYXN5bmMgZnVuY3Rpb24gYXN5bmNMb29wKGl0ZXJzLCB0aWNrLCBjYikge1xuICAgIGxldCB0cyA9IERhdGUubm93KCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVyczsgaSsrKSB7XG4gICAgICAgIGNiKGkpO1xuICAgICAgICAvLyBEYXRlLm5vdygpIGlzIG5vdCBtb25vdG9uaWMsIHNvIGluIGNhc2UgaWYgY2xvY2sgZ29lcyBiYWNrd2FyZHMgd2UgcmV0dXJuIHJldHVybiBjb250cm9sIHRvb1xuICAgICAgICBjb25zdCBkaWZmID0gRGF0ZS5ub3coKSAtIHRzO1xuICAgICAgICBpZiAoZGlmZiA+PSAwICYmIGRpZmYgPCB0aWNrKVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIGF3YWl0ICgwLCBleHBvcnRzLm5leHRUaWNrKSgpO1xuICAgICAgICB0cyArPSBkaWZmO1xuICAgIH1cbn1cbmV4cG9ydHMuYXN5bmNMb29wID0gYXN5bmNMb29wO1xuLyoqXG4gKiBAZXhhbXBsZSB1dGY4VG9CeXRlcygnYWJjJykgLy8gbmV3IFVpbnQ4QXJyYXkoWzk3LCA5OCwgOTldKVxuICovXG5mdW5jdGlvbiB1dGY4VG9CeXRlcyhzdHIpIHtcbiAgICBpZiAodHlwZW9mIHN0ciAhPT0gJ3N0cmluZycpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgdXRmOFRvQnl0ZXMgZXhwZWN0ZWQgc3RyaW5nLCBnb3QgJHt0eXBlb2Ygc3RyfWApO1xuICAgIHJldHVybiBuZXcgVWludDhBcnJheShuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoc3RyKSk7IC8vIGh0dHBzOi8vYnVnemlsLmxhLzE2ODE4MDlcbn1cbmV4cG9ydHMudXRmOFRvQnl0ZXMgPSB1dGY4VG9CeXRlcztcbi8qKlxuICogTm9ybWFsaXplcyAobm9uLWhleCkgc3RyaW5nIG9yIFVpbnQ4QXJyYXkgdG8gVWludDhBcnJheS5cbiAqIFdhcm5pbmc6IHdoZW4gVWludDhBcnJheSBpcyBwYXNzZWQsIGl0IHdvdWxkIE5PVCBnZXQgY29waWVkLlxuICogS2VlcCBpbiBtaW5kIGZvciBmdXR1cmUgbXV0YWJsZSBvcGVyYXRpb25zLlxuICovXG5mdW5jdGlvbiB0b0J5dGVzKGRhdGEpIHtcbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKVxuICAgICAgICBkYXRhID0gdXRmOFRvQnl0ZXMoZGF0YSk7XG4gICAgKDAsIF9hc3NlcnRfanNfMS5ieXRlcykoZGF0YSk7XG4gICAgcmV0dXJuIGRhdGE7XG59XG5leHBvcnRzLnRvQnl0ZXMgPSB0b0J5dGVzO1xuLyoqXG4gKiBDb3BpZXMgc2V2ZXJhbCBVaW50OEFycmF5cyBpbnRvIG9uZS5cbiAqL1xuZnVuY3Rpb24gY29uY2F0Qnl0ZXMoLi4uYXJyYXlzKSB7XG4gICAgbGV0IHN1bSA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgYSA9IGFycmF5c1tpXTtcbiAgICAgICAgKDAsIF9hc3NlcnRfanNfMS5ieXRlcykoYSk7XG4gICAgICAgIHN1bSArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgY29uc3QgcmVzID0gbmV3IFVpbnQ4QXJyYXkoc3VtKTtcbiAgICBmb3IgKGxldCBpID0gMCwgcGFkID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhID0gYXJyYXlzW2ldO1xuICAgICAgICByZXMuc2V0KGEsIHBhZCk7XG4gICAgICAgIHBhZCArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbmV4cG9ydHMuY29uY2F0Qnl0ZXMgPSBjb25jYXRCeXRlcztcbi8vIEZvciBydW50aW1lIGNoZWNrIGlmIGNsYXNzIGltcGxlbWVudHMgaW50ZXJmYWNlXG5jbGFzcyBIYXNoIHtcbiAgICAvLyBTYWZlIHZlcnNpb24gdGhhdCBjbG9uZXMgaW50ZXJuYWwgc3RhdGVcbiAgICBjbG9uZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Nsb25lSW50bygpO1xuICAgIH1cbn1cbmV4cG9ydHMuSGFzaCA9IEhhc2g7XG5jb25zdCB0b1N0ciA9IHt9LnRvU3RyaW5nO1xuZnVuY3Rpb24gY2hlY2tPcHRzKGRlZmF1bHRzLCBvcHRzKSB7XG4gICAgaWYgKG9wdHMgIT09IHVuZGVmaW5lZCAmJiB0b1N0ci5jYWxsKG9wdHMpICE9PSAnW29iamVjdCBPYmplY3RdJylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdPcHRpb25zIHNob3VsZCBiZSBvYmplY3Qgb3IgdW5kZWZpbmVkJyk7XG4gICAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbihkZWZhdWx0cywgb3B0cyk7XG4gICAgcmV0dXJuIG1lcmdlZDtcbn1cbmV4cG9ydHMuY2hlY2tPcHRzID0gY2hlY2tPcHRzO1xuZnVuY3Rpb24gd3JhcENvbnN0cnVjdG9yKGhhc2hDb25zKSB7XG4gICAgY29uc3QgaGFzaEMgPSAobXNnKSA9PiBoYXNoQ29ucygpLnVwZGF0ZSh0b0J5dGVzKG1zZykpLmRpZ2VzdCgpO1xuICAgIGNvbnN0IHRtcCA9IGhhc2hDb25zKCk7XG4gICAgaGFzaEMub3V0cHV0TGVuID0gdG1wLm91dHB1dExlbjtcbiAgICBoYXNoQy5ibG9ja0xlbiA9IHRtcC5ibG9ja0xlbjtcbiAgICBoYXNoQy5jcmVhdGUgPSAoKSA9PiBoYXNoQ29ucygpO1xuICAgIHJldHVybiBoYXNoQztcbn1cbmV4cG9ydHMud3JhcENvbnN0cnVjdG9yID0gd3JhcENvbnN0cnVjdG9yO1xuZnVuY3Rpb24gd3JhcENvbnN0cnVjdG9yV2l0aE9wdHMoaGFzaENvbnMpIHtcbiAgICBjb25zdCBoYXNoQyA9IChtc2csIG9wdHMpID0+IGhhc2hDb25zKG9wdHMpLnVwZGF0ZSh0b0J5dGVzKG1zZykpLmRpZ2VzdCgpO1xuICAgIGNvbnN0IHRtcCA9IGhhc2hDb25zKHt9KTtcbiAgICBoYXNoQy5vdXRwdXRMZW4gPSB0bXAub3V0cHV0TGVuO1xuICAgIGhhc2hDLmJsb2NrTGVuID0gdG1wLmJsb2NrTGVuO1xuICAgIGhhc2hDLmNyZWF0ZSA9IChvcHRzKSA9PiBoYXNoQ29ucyhvcHRzKTtcbiAgICByZXR1cm4gaGFzaEM7XG59XG5leHBvcnRzLndyYXBDb25zdHJ1Y3RvcldpdGhPcHRzID0gd3JhcENvbnN0cnVjdG9yV2l0aE9wdHM7XG5mdW5jdGlvbiB3cmFwWE9GQ29uc3RydWN0b3JXaXRoT3B0cyhoYXNoQ29ucykge1xuICAgIGNvbnN0IGhhc2hDID0gKG1zZywgb3B0cykgPT4gaGFzaENvbnMob3B0cykudXBkYXRlKHRvQnl0ZXMobXNnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgdG1wID0gaGFzaENvbnMoe30pO1xuICAgIGhhc2hDLm91dHB1dExlbiA9IHRtcC5vdXRwdXRMZW47XG4gICAgaGFzaEMuYmxvY2tMZW4gPSB0bXAuYmxvY2tMZW47XG4gICAgaGFzaEMuY3JlYXRlID0gKG9wdHMpID0+IGhhc2hDb25zKG9wdHMpO1xuICAgIHJldHVybiBoYXNoQztcbn1cbmV4cG9ydHMud3JhcFhPRkNvbnN0cnVjdG9yV2l0aE9wdHMgPSB3cmFwWE9GQ29uc3RydWN0b3JXaXRoT3B0cztcbi8qKlxuICogU2VjdXJlIFBSTkcuIFVzZXMgYGNyeXB0by5nZXRSYW5kb21WYWx1ZXNgLCB3aGljaCBkZWZlcnMgdG8gT1MuXG4gKi9cbmZ1bmN0aW9uIHJhbmRvbUJ5dGVzKGJ5dGVzTGVuZ3RoID0gMzIpIHtcbiAgICBpZiAoY3J5cHRvXzEuY3J5cHRvICYmIHR5cGVvZiBjcnlwdG9fMS5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBjcnlwdG9fMS5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKG5ldyBVaW50OEFycmF5KGJ5dGVzTGVuZ3RoKSk7XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignY3J5cHRvLmdldFJhbmRvbVZhbHVlcyBtdXN0IGJlIGRlZmluZWQnKTtcbn1cbmV4cG9ydHMucmFuZG9tQnl0ZXMgPSByYW5kb21CeXRlcztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWxzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/@noble/hashes/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/clsx/dist/clsx.m.js": /*!****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/clsx/dist/clsx.m.js ***! \****************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clsx: () => (/* binding */ clsx),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nfunction r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f);else for(t in e)e[t]&&(n&&(n+=\" \"),n+=t);return n}function clsx(){for(var e,t,f=0,n=\"\";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (clsx);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvY2xzeC9kaXN0L2Nsc3gubS5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBLGNBQWMsYUFBYSwrQ0FBK0MsdURBQXVELFdBQVcsMENBQTBDLHlDQUF5QyxTQUFnQixnQkFBZ0IscUJBQXFCLG1CQUFtQixrREFBa0QsU0FBUyxpRUFBZSxJQUFJIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9jbHN4L2Rpc3QvY2xzeC5tLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIHIoZSl7dmFyIHQsZixuPVwiXCI7aWYoXCJzdHJpbmdcIj09dHlwZW9mIGV8fFwibnVtYmVyXCI9PXR5cGVvZiBlKW4rPWU7ZWxzZSBpZihcIm9iamVjdFwiPT10eXBlb2YgZSlpZihBcnJheS5pc0FycmF5KGUpKWZvcih0PTA7dDxlLmxlbmd0aDt0KyspZVt0XSYmKGY9cihlW3RdKSkmJihuJiYobis9XCIgXCIpLG4rPWYpO2Vsc2UgZm9yKHQgaW4gZSllW3RdJiYobiYmKG4rPVwiIFwiKSxuKz10KTtyZXR1cm4gbn1leHBvcnQgZnVuY3Rpb24gY2xzeCgpe2Zvcih2YXIgZSx0LGY9MCxuPVwiXCI7Zjxhcmd1bWVudHMubGVuZ3RoOykoZT1hcmd1bWVudHNbZisrXSkmJih0PXIoZSkpJiYobiYmKG4rPVwiIFwiKSxuKz10KTtyZXR1cm4gbn1leHBvcnQgZGVmYXVsdCBjbHN4OyJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/clsx/dist/clsx.m.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Base64.js": /*!*******************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Base64.js ***! \*******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ fromString: () => (/* binding */ fromString),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toHex: () => (/* binding */ toHex),\n/* harmony export */ toString: () => (/* binding */ toString)\n/* harmony export */ });\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n\n\nconst encoder = /*#__PURE__*/ new TextEncoder();\nconst decoder = /*#__PURE__*/ new TextDecoder();\nconst integerToCharacter = /*#__PURE__*/ Object.fromEntries(Array.from('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/').map((a, i) => [i, a.charCodeAt(0)]));\nconst characterToInteger = /*#__PURE__*/ {\n ...Object.fromEntries(Array.from('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/').map((a, i) => [a.charCodeAt(0), i])),\n ['='.charCodeAt(0)]: 0,\n ['-'.charCodeAt(0)]: 62,\n ['_'.charCodeAt(0)]: 63,\n};\n/**\n * Encodes a {@link ox#Bytes.Bytes} to a Base64-encoded string (with optional padding and/or URL-safe characters).\n *\n * @example\n * ```ts twoslash\n * import { Base64, Bytes } from 'ox'\n *\n * const value = Base64.fromBytes(Bytes.fromString('hello world'))\n * // @log: 'aGVsbG8gd29ybGQ='\n * ```\n *\n * @example\n * ### No Padding\n *\n * Turn off [padding of encoded data](https://datatracker.ietf.org/doc/html/rfc4648#section-3.2) with the `pad` option:\n *\n * ```ts twoslash\n * import { Base64, Bytes } from 'ox'\n *\n * const value = Base64.fromBytes(Bytes.fromString('hello world'), { pad: false })\n * // @log: 'aGVsbG8gd29ybGQ'\n * ```\n *\n * ### URL-safe Encoding\n *\n * Turn on [URL-safe encoding](https://datatracker.ietf.org/doc/html/rfc4648#section-5) (Base64 URL) with the `url` option:\n *\n * ```ts twoslash\n * import { Base64, Bytes } from 'ox'\n *\n * const value = Base64.fromBytes(Bytes.fromString('hello wod'), { url: true })\n * // @log: 'aGVsbG8gd29_77-9ZA=='\n * ```\n *\n * @param value - The byte array to encode.\n * @param options - Encoding options.\n * @returns The Base64 encoded string.\n */\nfunction fromBytes(value, options = {}) {\n const { pad = true, url = false } = options;\n const encoded = new Uint8Array(Math.ceil(value.length / 3) * 4);\n for (let i = 0, j = 0; j < value.length; i += 4, j += 3) {\n const y = (value[j] << 16) + (value[j + 1] << 8) + (value[j + 2] | 0);\n encoded[i] = integerToCharacter[y >> 18];\n encoded[i + 1] = integerToCharacter[(y >> 12) & 0x3f];\n encoded[i + 2] = integerToCharacter[(y >> 6) & 0x3f];\n encoded[i + 3] = integerToCharacter[y & 0x3f];\n }\n const k = value.length % 3;\n const end = Math.floor(value.length / 3) * 4 + (k && k + 1);\n let base64 = decoder.decode(new Uint8Array(encoded.buffer, 0, end));\n if (pad && k === 1)\n base64 += '==';\n if (pad && k === 2)\n base64 += '=';\n if (url)\n base64 = base64.replaceAll('+', '-').replaceAll('/', '_');\n return base64;\n}\n/**\n * Encodes a {@link ox#Hex.Hex} to a Base64-encoded string (with optional padding and/or URL-safe characters).\n *\n * @example\n * ```ts twoslash\n * import { Base64, Hex } from 'ox'\n *\n * const value = Base64.fromHex(Hex.fromString('hello world'))\n * // @log: 'aGVsbG8gd29ybGQ='\n * ```\n *\n * @example\n * ### No Padding\n *\n * Turn off [padding of encoded data](https://datatracker.ietf.org/doc/html/rfc4648#section-3.2) with the `pad` option:\n *\n * ```ts twoslash\n * import { Base64, Hex } from 'ox'\n *\n * const value = Base64.fromHex(Hex.fromString('hello world'), { pad: false })\n * // @log: 'aGVsbG8gd29ybGQ'\n * ```\n *\n * ### URL-safe Encoding\n *\n * Turn on [URL-safe encoding](https://datatracker.ietf.org/doc/html/rfc4648#section-5) (Base64 URL) with the `url` option:\n *\n * ```ts twoslash\n * import { Base64, Hex } from 'ox'\n *\n * const value = Base64.fromHex(Hex.fromString('hello wod'), { url: true })\n * // @log: 'aGVsbG8gd29_77-9ZA=='\n * ```\n *\n * @param value - The hex value to encode.\n * @param options - Encoding options.\n * @returns The Base64 encoded string.\n */\nfunction fromHex(value, options = {}) {\n return fromBytes(_Bytes_js__WEBPACK_IMPORTED_MODULE_0__.fromHex(value), options);\n}\n/**\n * Encodes a string to a Base64-encoded string (with optional padding and/or URL-safe characters).\n *\n * @example\n * ```ts twoslash\n * import { Base64 } from 'ox'\n *\n * const value = Base64.fromString('hello world')\n * // @log: 'aGVsbG8gd29ybGQ='\n * ```\n *\n * @example\n * ### No Padding\n *\n * Turn off [padding of encoded data](https://datatracker.ietf.org/doc/html/rfc4648#section-3.2) with the `pad` option:\n *\n * ```ts twoslash\n * import { Base64 } from 'ox'\n *\n * const value = Base64.fromString('hello world', { pad: false })\n * // @log: 'aGVsbG8gd29ybGQ'\n * ```\n *\n * ### URL-safe Encoding\n *\n * Turn on [URL-safe encoding](https://datatracker.ietf.org/doc/html/rfc4648#section-5) (Base64 URL) with the `url` option:\n *\n * ```ts twoslash\n * import { Base64 } from 'ox'\n *\n * const value = Base64.fromString('hello wod', { url: true })\n * // @log: 'aGVsbG8gd29_77-9ZA=='\n * ```\n *\n * @param value - The string to encode.\n * @param options - Encoding options.\n * @returns The Base64 encoded string.\n */\nfunction fromString(value, options = {}) {\n return fromBytes(_Bytes_js__WEBPACK_IMPORTED_MODULE_0__.fromString(value), options);\n}\n/**\n * Decodes a Base64-encoded string (with optional padding and/or URL-safe characters) to {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Base64, Bytes } from 'ox'\n *\n * const value = Base64.toBytes('aGVsbG8gd29ybGQ=')\n * // @log: Uint8Array([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100])\n * ```\n *\n * @param value - The string, hex value, or byte array to encode.\n * @returns The Base64 decoded {@link ox#Bytes.Bytes}.\n */\nfunction toBytes(value) {\n const base64 = value.replace(/=+$/, '');\n const size = base64.length;\n const decoded = new Uint8Array(size + 3);\n encoder.encodeInto(base64 + '===', decoded);\n for (let i = 0, j = 0; i < base64.length; i += 4, j += 3) {\n const x = (characterToInteger[decoded[i]] << 18) +\n (characterToInteger[decoded[i + 1]] << 12) +\n (characterToInteger[decoded[i + 2]] << 6) +\n characterToInteger[decoded[i + 3]];\n decoded[j] = x >> 16;\n decoded[j + 1] = (x >> 8) & 0xff;\n decoded[j + 2] = x & 0xff;\n }\n const decodedSize = (size >> 2) * 3 + (size % 4 && (size % 4) - 1);\n return new Uint8Array(decoded.buffer, 0, decodedSize);\n}\n/**\n * Decodes a Base64-encoded string (with optional padding and/or URL-safe characters) to {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Base64, Hex } from 'ox'\n *\n * const value = Base64.toHex('aGVsbG8gd29ybGQ=')\n * // @log: 0x68656c6c6f20776f726c64\n * ```\n *\n * @param value - The string, hex value, or byte array to encode.\n * @returns The Base64 decoded {@link ox#Hex.Hex}.\n */\nfunction toHex(value) {\n return _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(toBytes(value));\n}\n/**\n * Decodes a Base64-encoded string (with optional padding and/or URL-safe characters) to a string.\n *\n * @example\n * ```ts twoslash\n * import { Base64 } from 'ox'\n *\n * const value = Base64.toString('aGVsbG8gd29ybGQ=')\n * // @log: 'hello world'\n * ```\n *\n * @param value - The string, hex value, or byte array to encode.\n * @returns The Base64 decoded string.\n */\nfunction toString(value) {\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.toString(toBytes(value));\n}\n//# sourceMappingURL=Base64.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0Jhc2U2NC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFvQztBQUNKO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxzQkFBc0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EscUVBQXFFLFlBQVk7QUFDakY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0Esb0VBQW9FLFdBQVc7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxzQ0FBc0M7QUFDN0MsWUFBWSwwQkFBMEI7QUFDdEM7QUFDQSwyQkFBMkIsa0JBQWtCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsa0JBQWtCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLFlBQVksY0FBYztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxjQUFjO0FBQzFCO0FBQ0EsaUVBQWlFLFlBQVk7QUFDN0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksY0FBYztBQUMxQjtBQUNBLGdFQUFnRSxXQUFXO0FBQzNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sb0NBQW9DO0FBQzNDLHFCQUFxQiw4Q0FBYTtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFNBQVM7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksU0FBUztBQUNyQjtBQUNBLG9EQUFvRCxZQUFZO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFNBQVM7QUFDckI7QUFDQSxtREFBbUQsV0FBVztBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHVDQUF1QztBQUM5QyxxQkFBcUIsaURBQWdCO0FBQ3JDO0FBQ0E7QUFDQSwwRkFBMEYscUJBQXFCO0FBQy9HO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyxxQkFBcUI7QUFDckQ7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLG1CQUFtQjtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwRkFBMEYsaUJBQWlCO0FBQzNHO0FBQ0E7QUFDQTtBQUNBLFlBQVksY0FBYztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsaUJBQWlCO0FBQ2pEO0FBQ087QUFDUCxXQUFXLDhDQUFhO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksU0FBUztBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxXQUFXLCtDQUFjO0FBQ3pCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9CYXNlNjQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQnl0ZXMgZnJvbSAnLi9CeXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBIZXggZnJvbSAnLi9IZXguanMnO1xuY29uc3QgZW5jb2RlciA9IC8qI19fUFVSRV9fKi8gbmV3IFRleHRFbmNvZGVyKCk7XG5jb25zdCBkZWNvZGVyID0gLyojX19QVVJFX18qLyBuZXcgVGV4dERlY29kZXIoKTtcbmNvbnN0IGludGVnZXJUb0NoYXJhY3RlciA9IC8qI19fUFVSRV9fKi8gT2JqZWN0LmZyb21FbnRyaWVzKEFycmF5LmZyb20oJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8nKS5tYXAoKGEsIGkpID0+IFtpLCBhLmNoYXJDb2RlQXQoMCldKSk7XG5jb25zdCBjaGFyYWN0ZXJUb0ludGVnZXIgPSAvKiNfX1BVUkVfXyovIHtcbiAgICAuLi5PYmplY3QuZnJvbUVudHJpZXMoQXJyYXkuZnJvbSgnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLycpLm1hcCgoYSwgaSkgPT4gW2EuY2hhckNvZGVBdCgwKSwgaV0pKSxcbiAgICBbJz0nLmNoYXJDb2RlQXQoMCldOiAwLFxuICAgIFsnLScuY2hhckNvZGVBdCgwKV06IDYyLFxuICAgIFsnXycuY2hhckNvZGVBdCgwKV06IDYzLFxufTtcbi8qKlxuICogRW5jb2RlcyBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gdG8gYSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcgKHdpdGggb3B0aW9uYWwgcGFkZGluZyBhbmQvb3IgVVJMLXNhZmUgY2hhcmFjdGVycykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCYXNlNjQsIEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgdmFsdWUgPSBCYXNlNjQuZnJvbUJ5dGVzKEJ5dGVzLmZyb21TdHJpbmcoJ2hlbGxvIHdvcmxkJykpXG4gKiAvLyBAbG9nOiAnYUdWc2JHOGdkMjl5YkdRPSdcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgTm8gUGFkZGluZ1xuICpcbiAqIFR1cm4gb2ZmIFtwYWRkaW5nIG9mIGVuY29kZWQgZGF0YV0oaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM0NjQ4I3NlY3Rpb24tMy4yKSB3aXRoIHRoZSBgcGFkYCBvcHRpb246XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCwgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB2YWx1ZSA9IEJhc2U2NC5mcm9tQnl0ZXMoQnl0ZXMuZnJvbVN0cmluZygnaGVsbG8gd29ybGQnKSwgeyBwYWQ6IGZhbHNlIH0pXG4gKiAvLyBAbG9nOiAnYUdWc2JHOGdkMjl5YkdRJ1xuICogYGBgXG4gKlxuICogIyMjIFVSTC1zYWZlIEVuY29kaW5nXG4gKlxuICogVHVybiBvbiBbVVJMLXNhZmUgZW5jb2RpbmddKGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNDY0OCNzZWN0aW9uLTUpIChCYXNlNjQgVVJMKSB3aXRoIHRoZSBgdXJsYCBvcHRpb246XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCwgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB2YWx1ZSA9IEJhc2U2NC5mcm9tQnl0ZXMoQnl0ZXMuZnJvbVN0cmluZygnaGVsbG8gd29/ZCcpLCB7IHVybDogdHJ1ZSB9KVxuICogLy8gQGxvZzogJ2FHVnNiRzhnZDI5Xzc3LTlaQT09J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIGJ5dGUgYXJyYXkgdG8gZW5jb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBFbmNvZGluZyBvcHRpb25zLlxuICogQHJldHVybnMgVGhlIEJhc2U2NCBlbmNvZGVkIHN0cmluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21CeXRlcyh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBwYWQgPSB0cnVlLCB1cmwgPSBmYWxzZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBlbmNvZGVkID0gbmV3IFVpbnQ4QXJyYXkoTWF0aC5jZWlsKHZhbHVlLmxlbmd0aCAvIDMpICogNCk7XG4gICAgZm9yIChsZXQgaSA9IDAsIGogPSAwOyBqIDwgdmFsdWUubGVuZ3RoOyBpICs9IDQsIGogKz0gMykge1xuICAgICAgICBjb25zdCB5ID0gKHZhbHVlW2pdIDw8IDE2KSArICh2YWx1ZVtqICsgMV0gPDwgOCkgKyAodmFsdWVbaiArIDJdIHwgMCk7XG4gICAgICAgIGVuY29kZWRbaV0gPSBpbnRlZ2VyVG9DaGFyYWN0ZXJbeSA+PiAxOF07XG4gICAgICAgIGVuY29kZWRbaSArIDFdID0gaW50ZWdlclRvQ2hhcmFjdGVyWyh5ID4+IDEyKSAmIDB4M2ZdO1xuICAgICAgICBlbmNvZGVkW2kgKyAyXSA9IGludGVnZXJUb0NoYXJhY3RlclsoeSA+PiA2KSAmIDB4M2ZdO1xuICAgICAgICBlbmNvZGVkW2kgKyAzXSA9IGludGVnZXJUb0NoYXJhY3Rlclt5ICYgMHgzZl07XG4gICAgfVxuICAgIGNvbnN0IGsgPSB2YWx1ZS5sZW5ndGggJSAzO1xuICAgIGNvbnN0IGVuZCA9IE1hdGguZmxvb3IodmFsdWUubGVuZ3RoIC8gMykgKiA0ICsgKGsgJiYgayArIDEpO1xuICAgIGxldCBiYXNlNjQgPSBkZWNvZGVyLmRlY29kZShuZXcgVWludDhBcnJheShlbmNvZGVkLmJ1ZmZlciwgMCwgZW5kKSk7XG4gICAgaWYgKHBhZCAmJiBrID09PSAxKVxuICAgICAgICBiYXNlNjQgKz0gJz09JztcbiAgICBpZiAocGFkICYmIGsgPT09IDIpXG4gICAgICAgIGJhc2U2NCArPSAnPSc7XG4gICAgaWYgKHVybClcbiAgICAgICAgYmFzZTY0ID0gYmFzZTY0LnJlcGxhY2VBbGwoJysnLCAnLScpLnJlcGxhY2VBbGwoJy8nLCAnXycpO1xuICAgIHJldHVybiBiYXNlNjQ7XG59XG4vKipcbiAqIEVuY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdG8gYSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcgKHdpdGggb3B0aW9uYWwgcGFkZGluZyBhbmQvb3IgVVJMLXNhZmUgY2hhcmFjdGVycykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCYXNlNjQsIEhleCB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHZhbHVlID0gQmFzZTY0LmZyb21IZXgoSGV4LmZyb21TdHJpbmcoJ2hlbGxvIHdvcmxkJykpXG4gKiAvLyBAbG9nOiAnYUdWc2JHOGdkMjl5YkdRPSdcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgTm8gUGFkZGluZ1xuICpcbiAqIFR1cm4gb2ZmIFtwYWRkaW5nIG9mIGVuY29kZWQgZGF0YV0oaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM0NjQ4I3NlY3Rpb24tMy4yKSB3aXRoIHRoZSBgcGFkYCBvcHRpb246XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCwgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgdmFsdWUgPSBCYXNlNjQuZnJvbUhleChIZXguZnJvbVN0cmluZygnaGVsbG8gd29ybGQnKSwgeyBwYWQ6IGZhbHNlIH0pXG4gKiAvLyBAbG9nOiAnYUdWc2JHOGdkMjl5YkdRJ1xuICogYGBgXG4gKlxuICogIyMjIFVSTC1zYWZlIEVuY29kaW5nXG4gKlxuICogVHVybiBvbiBbVVJMLXNhZmUgZW5jb2RpbmddKGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNDY0OCNzZWN0aW9uLTUpIChCYXNlNjQgVVJMKSB3aXRoIHRoZSBgdXJsYCBvcHRpb246XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCwgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgdmFsdWUgPSBCYXNlNjQuZnJvbUhleChIZXguZnJvbVN0cmluZygnaGVsbG8gd29/ZCcpLCB7IHVybDogdHJ1ZSB9KVxuICogLy8gQGxvZzogJ2FHVnNiRzhnZDI5Xzc3LTlaQT09J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIGhleCB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEVuY29kaW5nIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgQmFzZTY0IGVuY29kZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUhleCh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgcmV0dXJuIGZyb21CeXRlcyhCeXRlcy5mcm9tSGV4KHZhbHVlKSwgb3B0aW9ucyk7XG59XG4vKipcbiAqIEVuY29kZXMgYSBzdHJpbmcgdG8gYSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcgKHdpdGggb3B0aW9uYWwgcGFkZGluZyBhbmQvb3IgVVJMLXNhZmUgY2hhcmFjdGVycykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCYXNlNjQgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB2YWx1ZSA9IEJhc2U2NC5mcm9tU3RyaW5nKCdoZWxsbyB3b3JsZCcpXG4gKiAvLyBAbG9nOiAnYUdWc2JHOGdkMjl5YkdRPSdcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgTm8gUGFkZGluZ1xuICpcbiAqIFR1cm4gb2ZmIFtwYWRkaW5nIG9mIGVuY29kZWQgZGF0YV0oaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM0NjQ4I3NlY3Rpb24tMy4yKSB3aXRoIHRoZSBgcGFkYCBvcHRpb246XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHZhbHVlID0gQmFzZTY0LmZyb21TdHJpbmcoJ2hlbGxvIHdvcmxkJywgeyBwYWQ6IGZhbHNlIH0pXG4gKiAvLyBAbG9nOiAnYUdWc2JHOGdkMjl5YkdRJ1xuICogYGBgXG4gKlxuICogIyMjIFVSTC1zYWZlIEVuY29kaW5nXG4gKlxuICogVHVybiBvbiBbVVJMLXNhZmUgZW5jb2RpbmddKGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNDY0OCNzZWN0aW9uLTUpIChCYXNlNjQgVVJMKSB3aXRoIHRoZSBgdXJsYCBvcHRpb246XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHZhbHVlID0gQmFzZTY0LmZyb21TdHJpbmcoJ2hlbGxvIHdvf2QnLCB7IHVybDogdHJ1ZSB9KVxuICogLy8gQGxvZzogJ2FHVnNiRzhnZDI5Xzc3LTlaQT09J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHN0cmluZyB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEVuY29kaW5nIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgQmFzZTY0IGVuY29kZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbVN0cmluZyh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgcmV0dXJuIGZyb21CeXRlcyhCeXRlcy5mcm9tU3RyaW5nKHZhbHVlKSwgb3B0aW9ucyk7XG59XG4vKipcbiAqIERlY29kZXMgYSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcgKHdpdGggb3B0aW9uYWwgcGFkZGluZyBhbmQvb3IgVVJMLXNhZmUgY2hhcmFjdGVycykgdG8ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCwgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB2YWx1ZSA9IEJhc2U2NC50b0J5dGVzKCdhR1ZzYkc4Z2QyOXliR1E9JylcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzEwNCwgMTAxLCAxMDgsIDEwOCwgMTExLCAzMiwgMTE5LCAxMTEsIDExNCwgMTA4LCAxMDBdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHN0cmluZywgaGV4IHZhbHVlLCBvciBieXRlIGFycmF5IHRvIGVuY29kZS5cbiAqIEByZXR1cm5zIFRoZSBCYXNlNjQgZGVjb2RlZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9CeXRlcyh2YWx1ZSkge1xuICAgIGNvbnN0IGJhc2U2NCA9IHZhbHVlLnJlcGxhY2UoLz0rJC8sICcnKTtcbiAgICBjb25zdCBzaXplID0gYmFzZTY0Lmxlbmd0aDtcbiAgICBjb25zdCBkZWNvZGVkID0gbmV3IFVpbnQ4QXJyYXkoc2l6ZSArIDMpO1xuICAgIGVuY29kZXIuZW5jb2RlSW50byhiYXNlNjQgKyAnPT09JywgZGVjb2RlZCk7XG4gICAgZm9yIChsZXQgaSA9IDAsIGogPSAwOyBpIDwgYmFzZTY0Lmxlbmd0aDsgaSArPSA0LCBqICs9IDMpIHtcbiAgICAgICAgY29uc3QgeCA9IChjaGFyYWN0ZXJUb0ludGVnZXJbZGVjb2RlZFtpXV0gPDwgMTgpICtcbiAgICAgICAgICAgIChjaGFyYWN0ZXJUb0ludGVnZXJbZGVjb2RlZFtpICsgMV1dIDw8IDEyKSArXG4gICAgICAgICAgICAoY2hhcmFjdGVyVG9JbnRlZ2VyW2RlY29kZWRbaSArIDJdXSA8PCA2KSArXG4gICAgICAgICAgICBjaGFyYWN0ZXJUb0ludGVnZXJbZGVjb2RlZFtpICsgM11dO1xuICAgICAgICBkZWNvZGVkW2pdID0geCA+PiAxNjtcbiAgICAgICAgZGVjb2RlZFtqICsgMV0gPSAoeCA+PiA4KSAmIDB4ZmY7XG4gICAgICAgIGRlY29kZWRbaiArIDJdID0geCAmIDB4ZmY7XG4gICAgfVxuICAgIGNvbnN0IGRlY29kZWRTaXplID0gKHNpemUgPj4gMikgKiAzICsgKHNpemUgJSA0ICYmIChzaXplICUgNCkgLSAxKTtcbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZGVjb2RlZC5idWZmZXIsIDAsIGRlY29kZWRTaXplKTtcbn1cbi8qKlxuICogRGVjb2RlcyBhIEJhc2U2NC1lbmNvZGVkIHN0cmluZyAod2l0aCBvcHRpb25hbCBwYWRkaW5nIGFuZC9vciBVUkwtc2FmZSBjaGFyYWN0ZXJzKSB0byB7QGxpbmsgb3gjSGV4LkhleH0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCYXNlNjQsIEhleCB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHZhbHVlID0gQmFzZTY0LnRvSGV4KCdhR1ZzYkc4Z2QyOXliR1E9JylcbiAqIC8vIEBsb2c6IDB4Njg2NTZjNmM2ZjIwNzc2ZjcyNmM2NFxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHN0cmluZywgaGV4IHZhbHVlLCBvciBieXRlIGFycmF5IHRvIGVuY29kZS5cbiAqIEByZXR1cm5zIFRoZSBCYXNlNjQgZGVjb2RlZCB7QGxpbmsgb3gjSGV4LkhleH0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0hleCh2YWx1ZSkge1xuICAgIHJldHVybiBIZXguZnJvbUJ5dGVzKHRvQnl0ZXModmFsdWUpKTtcbn1cbi8qKlxuICogRGVjb2RlcyBhIEJhc2U2NC1lbmNvZGVkIHN0cmluZyAod2l0aCBvcHRpb25hbCBwYWRkaW5nIGFuZC9vciBVUkwtc2FmZSBjaGFyYWN0ZXJzKSB0byBhIHN0cmluZy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJhc2U2NCB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHZhbHVlID0gQmFzZTY0LnRvU3RyaW5nKCdhR1ZzYkc4Z2QyOXliR1E9JylcbiAqIC8vIEBsb2c6ICdoZWxsbyB3b3JsZCdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBzdHJpbmcsIGhleCB2YWx1ZSwgb3IgYnl0ZSBhcnJheSB0byBlbmNvZGUuXG4gKiBAcmV0dXJucyBUaGUgQmFzZTY0IGRlY29kZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9TdHJpbmcodmFsdWUpIHtcbiAgICByZXR1cm4gQnl0ZXMudG9TdHJpbmcodG9CeXRlcyh2YWx1ZSkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9QmFzZTY0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Base64.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js": /*!******************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js ***! \******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidBytesBooleanError: () => (/* binding */ InvalidBytesBooleanError),\n/* harmony export */ InvalidBytesTypeError: () => (/* binding */ InvalidBytesTypeError),\n/* harmony export */ SizeExceedsPaddingSizeError: () => (/* binding */ SizeExceedsPaddingSizeError),\n/* harmony export */ SizeOverflowError: () => (/* binding */ SizeOverflowError),\n/* harmony export */ SliceOffsetOutOfBoundsError: () => (/* binding */ SliceOffsetOutOfBoundsError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ concat: () => (/* binding */ concat),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromArray: () => (/* binding */ fromArray),\n/* harmony export */ fromBoolean: () => (/* binding */ fromBoolean),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ fromNumber: () => (/* binding */ fromNumber),\n/* harmony export */ fromString: () => (/* binding */ fromString),\n/* harmony export */ isEqual: () => (/* binding */ isEqual),\n/* harmony export */ padLeft: () => (/* binding */ padLeft),\n/* harmony export */ padRight: () => (/* binding */ padRight),\n/* harmony export */ random: () => (/* binding */ random),\n/* harmony export */ size: () => (/* binding */ size),\n/* harmony export */ slice: () => (/* binding */ slice),\n/* harmony export */ toBigInt: () => (/* binding */ toBigInt),\n/* harmony export */ toBoolean: () => (/* binding */ toBoolean),\n/* harmony export */ toHex: () => (/* binding */ toHex),\n/* harmony export */ toNumber: () => (/* binding */ toNumber),\n/* harmony export */ toString: () => (/* binding */ toString),\n/* harmony export */ trimLeft: () => (/* binding */ trimLeft),\n/* harmony export */ trimRight: () => (/* binding */ trimRight),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @noble/curves/abstract/utils */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/abstract/utils.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Json.js\");\n/* harmony import */ var _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/bytes.js\");\n/* harmony import */ var _internal_hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/hex.js\");\n\n\n\n\n\n\nconst decoder = /*#__PURE__*/ new TextDecoder();\nconst encoder = /*#__PURE__*/ new TextEncoder();\n/**\n * Asserts if the given value is {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.assert('abc')\n * // @error: Bytes.InvalidBytesTypeError:\n * // @error: Value `\"abc\"` of type `string` is an invalid Bytes value.\n * // @error: Bytes values must be of type `Uint8Array`.\n * ```\n *\n * @param value - Value to assert.\n */\nfunction assert(value) {\n if (value instanceof Uint8Array)\n return;\n if (!value)\n throw new InvalidBytesTypeError(value);\n if (typeof value !== 'object')\n throw new InvalidBytesTypeError(value);\n if (!('BYTES_PER_ELEMENT' in value))\n throw new InvalidBytesTypeError(value);\n if (value.BYTES_PER_ELEMENT !== 1 || value.constructor.name !== 'Uint8Array')\n throw new InvalidBytesTypeError(value);\n}\n/**\n * Concatenates two or more {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const bytes = Bytes.concat(\n * Bytes.from([1]),\n * Bytes.from([69]),\n * Bytes.from([420, 69]),\n * )\n * // @log: Uint8Array [ 1, 69, 420, 69 ]\n * ```\n *\n * @param values - Values to concatenate.\n * @returns Concatenated {@link ox#Bytes.Bytes}.\n */\nfunction concat(...values) {\n let length = 0;\n for (const arr of values) {\n length += arr.length;\n }\n const result = new Uint8Array(length);\n for (let i = 0, index = 0; i < values.length; i++) {\n const arr = values[i];\n result.set(arr, index);\n index += arr.length;\n }\n return result;\n}\n/**\n * Instantiates a {@link ox#Bytes.Bytes} value from a `Uint8Array`, a hex string, or an array of unsigned 8-bit integers.\n *\n * :::tip\n *\n * To instantiate from a **Boolean**, **String**, or **Number**, use one of the following:\n *\n * - `Bytes.fromBoolean`\n *\n * - `Bytes.fromString`\n *\n * - `Bytes.fromNumber`\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.from([255, 124, 5, 4])\n * // @log: Uint8Array([255, 124, 5, 4])\n *\n * const data = Bytes.from('0xdeadbeef')\n * // @log: Uint8Array([222, 173, 190, 239])\n * ```\n *\n * @param value - Value to convert.\n * @returns A {@link ox#Bytes.Bytes} instance.\n */\nfunction from(value) {\n if (value instanceof Uint8Array)\n return value;\n if (typeof value === 'string')\n return fromHex(value);\n return fromArray(value);\n}\n/**\n * Converts an array of unsigned 8-bit integers into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromArray([255, 124, 5, 4])\n * // @log: Uint8Array([255, 124, 5, 4])\n * ```\n *\n * @param value - Value to convert.\n * @returns A {@link ox#Bytes.Bytes} instance.\n */\nfunction fromArray(value) {\n return value instanceof Uint8Array ? value : new Uint8Array(value);\n}\n/**\n * Encodes a boolean value into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromBoolean(true)\n * // @log: Uint8Array([1])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromBoolean(true, { size: 32 })\n * // @log: Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1])\n * ```\n *\n * @param value - Boolean value to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromBoolean(value, options = {}) {\n const { size } = options;\n const bytes = new Uint8Array(1);\n bytes[0] = Number(value);\n if (typeof size === 'number') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n return padLeft(bytes, size);\n }\n return bytes;\n}\n/**\n * Encodes a {@link ox#Hex.Hex} value into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromHex('0x48656c6c6f20776f726c6421')\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromHex('0x48656c6c6f20776f726c6421', { size: 32 })\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])\n * ```\n *\n * @param value - {@link ox#Hex.Hex} value to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromHex(value, options = {}) {\n const { size } = options;\n let hex = value;\n if (size) {\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_1__.assertSize(value, size);\n hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padRight(value, size);\n }\n let hexString = hex.slice(2);\n if (hexString.length % 2)\n hexString = `0${hexString}`;\n const length = hexString.length / 2;\n const bytes = new Uint8Array(length);\n for (let index = 0, j = 0; index < length; index++) {\n const nibbleLeft = _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.charCodeToBase16(hexString.charCodeAt(j++));\n const nibbleRight = _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.charCodeToBase16(hexString.charCodeAt(j++));\n if (nibbleLeft === undefined || nibbleRight === undefined) {\n throw new _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError(`Invalid byte sequence (\"${hexString[j - 2]}${hexString[j - 1]}\" in \"${hexString}\").`);\n }\n bytes[index] = nibbleLeft * 16 + nibbleRight;\n }\n return bytes;\n}\n/**\n * Encodes a number value into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromNumber(420)\n * // @log: Uint8Array([1, 164])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromNumber(420, { size: 4 })\n * // @log: Uint8Array([0, 0, 1, 164])\n * ```\n *\n * @param value - Number value to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromNumber(value, options) {\n const hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(value, options);\n return fromHex(hex);\n}\n/**\n * Encodes a string into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromString('Hello world!')\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromString('Hello world!', { size: 32 })\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])\n * ```\n *\n * @param value - String to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromString(value, options = {}) {\n const { size } = options;\n const bytes = encoder.encode(value);\n if (typeof size === 'number') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n return padRight(bytes, size);\n }\n return bytes;\n}\n/**\n * Checks if two {@link ox#Bytes.Bytes} values are equal.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.isEqual(Bytes.from([1]), Bytes.from([1]))\n * // @log: true\n *\n * Bytes.isEqual(Bytes.from([1]), Bytes.from([2]))\n * // @log: false\n * ```\n *\n * @param bytesA - First {@link ox#Bytes.Bytes} value.\n * @param bytesB - Second {@link ox#Bytes.Bytes} value.\n * @returns `true` if the two values are equal, otherwise `false`.\n */\nfunction isEqual(bytesA, bytesB) {\n return (0,_noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_4__.equalBytes)(bytesA, bytesB);\n}\n/**\n * Pads a {@link ox#Bytes.Bytes} value to the left with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.padLeft(Bytes.from([1]), 4)\n * // @log: Uint8Array([0, 0, 0, 1])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value to pad.\n * @param size - Size to pad the {@link ox#Bytes.Bytes} value to.\n * @returns Padded {@link ox#Bytes.Bytes} value.\n */\nfunction padLeft(value, size) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'left', size });\n}\n/**\n * Pads a {@link ox#Bytes.Bytes} value to the right with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.padRight(Bytes.from([1]), 4)\n * // @log: Uint8Array([1, 0, 0, 0])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value to pad.\n * @param size - Size to pad the {@link ox#Bytes.Bytes} value to.\n * @returns Padded {@link ox#Bytes.Bytes} value.\n */\nfunction padRight(value, size) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'right', size });\n}\n/**\n * Generates random {@link ox#Bytes.Bytes} of the specified length.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const bytes = Bytes.random(32)\n * // @log: Uint8Array([... x32])\n * ```\n *\n * @param length - Length of the random {@link ox#Bytes.Bytes} to generate.\n * @returns Random {@link ox#Bytes.Bytes} of the specified length.\n */\nfunction random(length) {\n return crypto.getRandomValues(new Uint8Array(length));\n}\n/**\n * Retrieves the size of a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.size(Bytes.from([1, 2, 3, 4]))\n * // @log: 4\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value.\n * @returns Size of the {@link ox#Bytes.Bytes} value.\n */\nfunction size(value) {\n return value.length;\n}\n/**\n * Returns a section of a {@link ox#Bytes.Bytes} value given a start/end bytes offset.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.slice(\n * Bytes.from([1, 2, 3, 4, 5, 6, 7, 8, 9]),\n * 1,\n * 4,\n * )\n * // @log: Uint8Array([2, 3, 4])\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} value.\n * @param start - Start offset.\n * @param end - End offset.\n * @param options - Slice options.\n * @returns Sliced {@link ox#Bytes.Bytes} value.\n */\nfunction slice(value, start, end, options = {}) {\n const { strict } = options;\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertStartOffset(value, start);\n const value_ = value.slice(start, end);\n if (strict)\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertEndOffset(value_, start, end);\n return value_;\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a bigint.\n *\n * @example\n * ```ts\n * import { Bytes } from 'ox'\n *\n * Bytes.toBigInt(Bytes.from([1, 164]))\n * // @log: 420n\n * ```\n *\n * @param bytes - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Decoding options.\n * @returns Decoded bigint.\n */\nfunction toBigInt(bytes, options = {}) {\n const { size } = options;\n if (typeof size !== 'undefined')\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n const hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes, options);\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.toBigInt(hex, options);\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a boolean.\n *\n * @example\n * ```ts\n * import { Bytes } from 'ox'\n *\n * Bytes.toBoolean(Bytes.from([1]))\n * // @log: true\n * ```\n *\n * @param bytes - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Decoding options.\n * @returns Decoded boolean.\n */\nfunction toBoolean(bytes, options = {}) {\n const { size } = options;\n let bytes_ = bytes;\n if (typeof size !== 'undefined') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes_, size);\n bytes_ = trimLeft(bytes_);\n }\n if (bytes_.length > 1 || bytes_[0] > 1)\n throw new InvalidBytesBooleanError(bytes_);\n return Boolean(bytes_[0]);\n}\n/**\n * Encodes a {@link ox#Bytes.Bytes} value into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.toHex(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // '0x48656c6c6f20576f726c6421'\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Options.\n * @returns Decoded {@link ox#Hex.Hex} value.\n */\nfunction toHex(value, options = {}) {\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(value, options);\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a number.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.toNumber(Bytes.from([1, 164]))\n * // @log: 420\n * ```\n */\nfunction toNumber(bytes, options = {}) {\n const { size } = options;\n if (typeof size !== 'undefined')\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n const hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes, options);\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.toNumber(hex, options);\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a string.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.toString(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // @log: 'Hello world'\n * ```\n *\n * @param bytes - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Options.\n * @returns Decoded string.\n */\nfunction toString(bytes, options = {}) {\n const { size } = options;\n let bytes_ = bytes;\n if (typeof size !== 'undefined') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes_, size);\n bytes_ = trimRight(bytes_);\n }\n return decoder.decode(bytes_);\n}\n/**\n * Trims leading zeros from a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.trimLeft(Bytes.from([0, 0, 0, 0, 1, 2, 3]))\n * // @log: Uint8Array([1, 2, 3])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value.\n * @returns Trimmed {@link ox#Bytes.Bytes} value.\n */\nfunction trimLeft(value) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'left' });\n}\n/**\n * Trims trailing zeros from a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.trimRight(Bytes.from([1, 2, 3, 0, 0, 0, 0]))\n * // @log: Uint8Array([1, 2, 3])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value.\n * @returns Trimmed {@link ox#Bytes.Bytes} value.\n */\nfunction trimRight(value) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'right' });\n}\n/**\n * Checks if the given value is {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.validate('0x')\n * // @log: false\n *\n * Bytes.validate(Bytes.from([1, 2, 3]))\n * // @log: true\n * ```\n *\n * @param value - Value to check.\n * @returns `true` if the value is {@link ox#Bytes.Bytes}, otherwise `false`.\n */\nfunction validate(value) {\n try {\n assert(value);\n return true;\n }\n catch {\n return false;\n }\n}\n/**\n * Thrown when the bytes value cannot be represented as a boolean.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.toBoolean(Bytes.from([5]))\n * // @error: Bytes.InvalidBytesBooleanError: Bytes value `[5]` is not a valid boolean.\n * // @error: The bytes array must contain a single byte of either a `0` or `1` value.\n * ```\n */\nclass InvalidBytesBooleanError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor(bytes) {\n super(`Bytes value \\`${bytes}\\` is not a valid boolean.`, {\n metaMessages: [\n 'The bytes array must contain a single byte of either a `0` or `1` value.',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.InvalidBytesBooleanError'\n });\n }\n}\n/**\n * Thrown when a value cannot be converted to bytes.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Bytes } from 'ox'\n *\n * Bytes.from('foo')\n * // @error: Bytes.InvalidBytesTypeError: Value `foo` of type `string` is an invalid Bytes value.\n * ```\n */\nclass InvalidBytesTypeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor(value) {\n super(`Value \\`${typeof value === 'object' ? _Json_js__WEBPACK_IMPORTED_MODULE_5__.stringify(value) : value}\\` of type \\`${typeof value}\\` is an invalid Bytes value.`, {\n metaMessages: ['Bytes values must be of type `Bytes`.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.InvalidBytesTypeError'\n });\n }\n}\n/**\n * Thrown when a size exceeds the maximum allowed size.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.fromString('Hello World!', { size: 8 })\n * // @error: Bytes.SizeOverflowError: Size cannot exceed `8` bytes. Given size: `12` bytes.\n * ```\n */\nclass SizeOverflowError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor({ givenSize, maxSize }) {\n super(`Size cannot exceed \\`${maxSize}\\` bytes. Given size: \\`${givenSize}\\` bytes.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.SizeOverflowError'\n });\n }\n}\n/**\n * Thrown when a slice offset is out-of-bounds.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.slice(Bytes.from([1, 2, 3]), 4)\n * // @error: Bytes.SliceOffsetOutOfBoundsError: Slice starting at offset `4` is out-of-bounds (size: `3`).\n * ```\n */\nclass SliceOffsetOutOfBoundsError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor({ offset, position, size, }) {\n super(`Slice ${position === 'start' ? 'starting' : 'ending'} at offset \\`${offset}\\` is out-of-bounds (size: \\`${size}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.SliceOffsetOutOfBoundsError'\n });\n }\n}\n/**\n * Thrown when a the padding size exceeds the maximum allowed size.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.padLeft(Bytes.fromString('Hello World!'), 8)\n * // @error: [Bytes.SizeExceedsPaddingSizeError: Bytes size (`12`) exceeds padding size (`8`).\n * ```\n */\nclass SizeExceedsPaddingSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor({ size, targetSize, type, }) {\n super(`${type.charAt(0).toUpperCase()}${type\n .slice(1)\n .toLowerCase()} size (\\`${size}\\`) exceeds padding size (\\`${targetSize}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.SizeExceedsPaddingSizeError'\n });\n }\n}\n//# sourceMappingURL=Bytes.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0J5dGVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUEwRDtBQUNwQjtBQUNOO0FBQ0U7QUFDYztBQUNFO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxxQkFBcUI7QUFDdkQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLHFCQUFxQjtBQUNsRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIscUJBQXFCO0FBQy9DO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLG1CQUFtQjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0I7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxzQkFBc0I7QUFDckM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0RBQXNELHFCQUFxQjtBQUMzRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxzQkFBc0I7QUFDckM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxxQkFBcUI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0EsMENBQTBDLFVBQVU7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixxQkFBcUI7QUFDMUM7QUFDTyx3Q0FBd0M7QUFDL0MsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQTtBQUNBLFFBQVEsMERBQW1CO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLGtCQUFrQixZQUFZLHFCQUFxQjtBQUNqRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQSw4REFBOEQsVUFBVTtBQUN4RTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsa0JBQWtCO0FBQ3JDO0FBQ0EscUJBQXFCLHFCQUFxQjtBQUMxQztBQUNPLG9DQUFvQztBQUMzQyxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBLFFBQVEsd0RBQXVCO0FBQy9CLGNBQWMsNkNBQVk7QUFDMUI7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFVBQVU7QUFDbEM7QUFDQTtBQUNBLCtCQUErQixnQkFBZ0I7QUFDL0MsMkJBQTJCLGdFQUF5QjtBQUNwRCw0QkFBNEIsZ0VBQXlCO0FBQ3JEO0FBQ0Esc0JBQXNCLGlEQUFnQiw0QkFBNEIsaUJBQWlCLEVBQUUsaUJBQWlCLFFBQVEsVUFBVTtBQUN4SDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MscUJBQXFCO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBLHdDQUF3QyxTQUFTO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIscUJBQXFCO0FBQzFDO0FBQ087QUFDUCxnQkFBZ0IsK0NBQWM7QUFDOUI7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHFCQUFxQjtBQUMvQztBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQSxtREFBbUQsVUFBVTtBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHFCQUFxQjtBQUMxQztBQUNPLHVDQUF1QztBQUM5QyxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBLFFBQVEsMERBQW1CO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0Isc0JBQXNCO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHNCQUFzQjtBQUNoRCwyQkFBMkIsc0JBQXNCO0FBQ2pEO0FBQ0E7QUFDTztBQUNQLFdBQVcsd0VBQVU7QUFDckI7QUFDQTtBQUNBLFdBQVcsc0JBQXNCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHNCQUFzQjtBQUN6QyxrQ0FBa0Msc0JBQXNCO0FBQ3hELG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDTztBQUNQLFdBQVcsbURBQVksVUFBVSxtQkFBbUI7QUFDcEQ7QUFDQTtBQUNBLFdBQVcsc0JBQXNCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHNCQUFzQjtBQUN6QyxrQ0FBa0Msc0JBQXNCO0FBQ3hELG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDTztBQUNQLFdBQVcsbURBQVksVUFBVSxvQkFBb0I7QUFDckQ7QUFDQTtBQUNBLHFCQUFxQixzQkFBc0I7QUFDM0M7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsc0JBQXNCO0FBQy9ELG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixzQkFBc0I7QUFDbEQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCO0FBQ3pDLHlCQUF5QixzQkFBc0I7QUFDL0M7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQixzQkFBc0I7QUFDakQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixzQkFBc0I7QUFDN0M7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHNCQUFzQjtBQUMxQztBQUNPLDhDQUE4QztBQUNyRCxZQUFZLFNBQVM7QUFDckIsSUFBSSxpRUFBMEI7QUFDOUI7QUFDQTtBQUNBLFFBQVEsK0RBQXdCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLGNBQWMsc0JBQXNCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHNCQUFzQjtBQUM3QztBQUNBO0FBQ0E7QUFDTyxxQ0FBcUM7QUFDNUMsWUFBWSxPQUFPO0FBQ25CO0FBQ0EsUUFBUSwwREFBbUI7QUFDM0IsZ0JBQWdCLDhDQUFhO0FBQzdCLFdBQVcsNkNBQVk7QUFDdkI7QUFDQTtBQUNBLGNBQWMsc0JBQXNCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHNCQUFzQjtBQUM3QztBQUNBO0FBQ0E7QUFDTyxzQ0FBc0M7QUFDN0MsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQSxRQUFRLDBEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsc0JBQXNCLGNBQWMsa0JBQWtCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHNCQUFzQjtBQUM3QztBQUNBLHFCQUFxQixrQkFBa0I7QUFDdkM7QUFDTyxrQ0FBa0M7QUFDekMsV0FBVyw4Q0FBYTtBQUN4QjtBQUNBO0FBQ0EsY0FBYyxzQkFBc0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxxQ0FBcUM7QUFDNUMsWUFBWSxPQUFPO0FBQ25CO0FBQ0EsUUFBUSwwREFBbUI7QUFDM0IsZ0JBQWdCLDhDQUFhO0FBQzdCLFdBQVcsNkNBQVk7QUFDdkI7QUFDQTtBQUNBLGNBQWMsc0JBQXNCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHNCQUFzQjtBQUM3QztBQUNBO0FBQ0E7QUFDTyxxQ0FBcUM7QUFDNUMsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQSxRQUFRLDBEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLHNCQUFzQjtBQUNyRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0I7QUFDekMscUJBQXFCLHNCQUFzQjtBQUMzQztBQUNPO0FBQ1AsV0FBVyxvREFBYSxVQUFVLGFBQWE7QUFDL0M7QUFDQTtBQUNBLGdDQUFnQyxzQkFBc0I7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCO0FBQ3pDLHFCQUFxQixzQkFBc0I7QUFDM0M7QUFDTztBQUNQLFdBQVcsb0RBQWEsVUFBVSxjQUFjO0FBQ2hEO0FBQ0E7QUFDQSxpQ0FBaUMscUJBQXFCO0FBQ3REO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MscUJBQXFCO0FBQ3pEO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyx1Q0FBdUMsaURBQWdCO0FBQzlEO0FBQ0EsK0JBQStCLE1BQU07QUFDckM7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sb0NBQW9DLGlEQUFnQjtBQUMzRDtBQUNBLHlCQUF5Qiw0QkFBNEIsK0NBQWMsZ0JBQWdCLGVBQWUsYUFBYTtBQUMvRztBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0Esc0NBQXNDLFNBQVM7QUFDL0M7QUFDQTtBQUNBO0FBQ08sZ0NBQWdDLGlEQUFnQjtBQUN2RCxrQkFBa0Isb0JBQW9CO0FBQ3RDLHNDQUFzQyxRQUFRLDBCQUEwQixVQUFVO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDBDQUEwQyxpREFBZ0I7QUFDakUsa0JBQWtCLHlCQUF5QjtBQUMzQyx1QkFBdUIsOENBQThDLGNBQWMsT0FBTywrQkFBK0IsS0FBSztBQUM5SDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTywwQ0FBMEMsaURBQWdCO0FBQ2pFLGtCQUFrQix5QkFBeUI7QUFDM0MsaUJBQWlCLDZCQUE2QixFQUFFO0FBQ2hEO0FBQ0EsNEJBQTRCLFVBQVUsS0FBSyw4QkFBOEIsV0FBVztBQUNwRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0J5dGVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVxdWFsQnl0ZXMgfSBmcm9tICdAbm9ibGUvY3VydmVzL2Fic3RyYWN0L3V0aWxzJztcbmltcG9ydCAqIGFzIEVycm9ycyBmcm9tICcuL0Vycm9ycy5qcyc7XG5pbXBvcnQgKiBhcyBIZXggZnJvbSAnLi9IZXguanMnO1xuaW1wb3J0ICogYXMgSnNvbiBmcm9tICcuL0pzb24uanMnO1xuaW1wb3J0ICogYXMgaW50ZXJuYWwgZnJvbSAnLi9pbnRlcm5hbC9ieXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBpbnRlcm5hbF9oZXggZnJvbSAnLi9pbnRlcm5hbC9oZXguanMnO1xuY29uc3QgZGVjb2RlciA9IC8qI19fUFVSRV9fKi8gbmV3IFRleHREZWNvZGVyKCk7XG5jb25zdCBlbmNvZGVyID0gLyojX19QVVJFX18qLyBuZXcgVGV4dEVuY29kZXIoKTtcbi8qKlxuICogQXNzZXJ0cyBpZiB0aGUgZ2l2ZW4gdmFsdWUgaXMge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogQnl0ZXMuYXNzZXJ0KCdhYmMnKVxuICogLy8gQGVycm9yOiBCeXRlcy5JbnZhbGlkQnl0ZXNUeXBlRXJyb3I6XG4gKiAvLyBAZXJyb3I6IFZhbHVlIGBcImFiY1wiYCBvZiB0eXBlIGBzdHJpbmdgIGlzIGFuIGludmFsaWQgQnl0ZXMgdmFsdWUuXG4gKiAvLyBAZXJyb3I6IEJ5dGVzIHZhbHVlcyBtdXN0IGJlIG9mIHR5cGUgYFVpbnQ4QXJyYXlgLlxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVmFsdWUgdG8gYXNzZXJ0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KHZhbHVlKSB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgVWludDhBcnJheSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGlmICghdmFsdWUpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQnl0ZXNUeXBlRXJyb3IodmFsdWUpO1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEJ5dGVzVHlwZUVycm9yKHZhbHVlKTtcbiAgICBpZiAoISgnQllURVNfUEVSX0VMRU1FTlQnIGluIHZhbHVlKSlcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRCeXRlc1R5cGVFcnJvcih2YWx1ZSk7XG4gICAgaWYgKHZhbHVlLkJZVEVTX1BFUl9FTEVNRU5UICE9PSAxIHx8IHZhbHVlLmNvbnN0cnVjdG9yLm5hbWUgIT09ICdVaW50OEFycmF5JylcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRCeXRlc1R5cGVFcnJvcih2YWx1ZSk7XG59XG4vKipcbiAqIENvbmNhdGVuYXRlcyB0d28gb3IgbW9yZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBieXRlcyA9IEJ5dGVzLmNvbmNhdChcbiAqICAgQnl0ZXMuZnJvbShbMV0pLFxuICogICBCeXRlcy5mcm9tKFs2OV0pLFxuICogICBCeXRlcy5mcm9tKFs0MjAsIDY5XSksXG4gKiApXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5IFsgMSwgNjksIDQyMCwgNjkgXVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlcyAtIFZhbHVlcyB0byBjb25jYXRlbmF0ZS5cbiAqIEByZXR1cm5zIENvbmNhdGVuYXRlZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29uY2F0KC4uLnZhbHVlcykge1xuICAgIGxldCBsZW5ndGggPSAwO1xuICAgIGZvciAoY29uc3QgYXJyIG9mIHZhbHVlcykge1xuICAgICAgICBsZW5ndGggKz0gYXJyLmxlbmd0aDtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IFVpbnQ4QXJyYXkobGVuZ3RoKTtcbiAgICBmb3IgKGxldCBpID0gMCwgaW5kZXggPSAwOyBpIDwgdmFsdWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGFyciA9IHZhbHVlc1tpXTtcbiAgICAgICAgcmVzdWx0LnNldChhcnIsIGluZGV4KTtcbiAgICAgICAgaW5kZXggKz0gYXJyLmxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbi8qKlxuICogSW5zdGFudGlhdGVzIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSBmcm9tIGEgYFVpbnQ4QXJyYXlgLCBhIGhleCBzdHJpbmcsIG9yIGFuIGFycmF5IG9mIHVuc2lnbmVkIDgtYml0IGludGVnZXJzLlxuICpcbiAqIDo6OnRpcFxuICpcbiAqIFRvIGluc3RhbnRpYXRlIGZyb20gYSAqKkJvb2xlYW4qKiwgKipTdHJpbmcqKiwgb3IgKipOdW1iZXIqKiwgdXNlIG9uZSBvZiB0aGUgZm9sbG93aW5nOlxuICpcbiAqIC0gYEJ5dGVzLmZyb21Cb29sZWFuYFxuICpcbiAqIC0gYEJ5dGVzLmZyb21TdHJpbmdgXG4gKlxuICogLSBgQnl0ZXMuZnJvbU51bWJlcmBcbiAqXG4gKiA6OjpcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIC8vIEBub0Vycm9yc1xuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbShbMjU1LCAxMjQsIDUsIDRdKVxuICogLy8gQGxvZzogVWludDhBcnJheShbMjU1LCAxMjQsIDUsIDRdKVxuICpcbiAqIGNvbnN0IGRhdGEgPSBCeXRlcy5mcm9tKCcweGRlYWRiZWVmJylcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzIyMiwgMTczLCAxOTAsIDIzOV0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgQSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IGluc3RhbmNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbSh2YWx1ZSkge1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpXG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJylcbiAgICAgICAgcmV0dXJuIGZyb21IZXgodmFsdWUpO1xuICAgIHJldHVybiBmcm9tQXJyYXkodmFsdWUpO1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhbiBhcnJheSBvZiB1bnNpZ25lZCA4LWJpdCBpbnRlZ2VycyBpbnRvIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGRhdGEgPSBCeXRlcy5mcm9tQXJyYXkoWzI1NSwgMTI0LCA1LCA0XSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzI1NSwgMTI0LCA1LCA0XSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBBIHtAbGluayBveCNCeXRlcy5CeXRlc30gaW5zdGFuY2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tQXJyYXkodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gdmFsdWUgOiBuZXcgVWludDhBcnJheSh2YWx1ZSk7XG59XG4vKipcbiAqIEVuY29kZXMgYSBib29sZWFuIHZhbHVlIGludG8ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgZGF0YSA9IEJ5dGVzLmZyb21Cb29sZWFuKHRydWUpXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFsxXSlcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbUJvb2xlYW4odHJ1ZSwgeyBzaXplOiAzMiB9KVxuICogLy8gQGxvZzogVWludDhBcnJheShbMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMV0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBCb29sZWFuIHZhbHVlIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gRW5jb2Rpbmcgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEVuY29kZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21Cb29sZWFuKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpemUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYnl0ZXMgPSBuZXcgVWludDhBcnJheSgxKTtcbiAgICBieXRlc1swXSA9IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKHR5cGVvZiBzaXplID09PSAnbnVtYmVyJykge1xuICAgICAgICBpbnRlcm5hbC5hc3NlcnRTaXplKGJ5dGVzLCBzaXplKTtcbiAgICAgICAgcmV0dXJuIHBhZExlZnQoYnl0ZXMsIHNpemUpO1xuICAgIH1cbiAgICByZXR1cm4gYnl0ZXM7XG59XG4vKipcbiAqIEVuY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbUhleCgnMHg0ODY1NmM2YzZmMjA3NzZmNzI2YzY0MjEnKVxuICogLy8gQGxvZzogVWludDhBcnJheShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSlcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbUhleCgnMHg0ODY1NmM2YzZmMjA3NzZmNzI2YzY0MjEnLCB7IHNpemU6IDMyIH0pXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFs3MiwgMTAxLCAxMDgsIDEwOCwgMTExLCAzMiwgODcsIDExMSwgMTE0LCAxMDgsIDEwMCwgMzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDBdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gRW5jb2Rpbmcgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEVuY29kZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21IZXgodmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBsZXQgaGV4ID0gdmFsdWU7XG4gICAgaWYgKHNpemUpIHtcbiAgICAgICAgaW50ZXJuYWxfaGV4LmFzc2VydFNpemUodmFsdWUsIHNpemUpO1xuICAgICAgICBoZXggPSBIZXgucGFkUmlnaHQodmFsdWUsIHNpemUpO1xuICAgIH1cbiAgICBsZXQgaGV4U3RyaW5nID0gaGV4LnNsaWNlKDIpO1xuICAgIGlmIChoZXhTdHJpbmcubGVuZ3RoICUgMilcbiAgICAgICAgaGV4U3RyaW5nID0gYDAke2hleFN0cmluZ31gO1xuICAgIGNvbnN0IGxlbmd0aCA9IGhleFN0cmluZy5sZW5ndGggLyAyO1xuICAgIGNvbnN0IGJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkobGVuZ3RoKTtcbiAgICBmb3IgKGxldCBpbmRleCA9IDAsIGogPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBjb25zdCBuaWJibGVMZWZ0ID0gaW50ZXJuYWwuY2hhckNvZGVUb0Jhc2UxNihoZXhTdHJpbmcuY2hhckNvZGVBdChqKyspKTtcbiAgICAgICAgY29uc3QgbmliYmxlUmlnaHQgPSBpbnRlcm5hbC5jaGFyQ29kZVRvQmFzZTE2KGhleFN0cmluZy5jaGFyQ29kZUF0KGorKykpO1xuICAgICAgICBpZiAobmliYmxlTGVmdCA9PT0gdW5kZWZpbmVkIHx8IG5pYmJsZVJpZ2h0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcnMuQmFzZUVycm9yKGBJbnZhbGlkIGJ5dGUgc2VxdWVuY2UgKFwiJHtoZXhTdHJpbmdbaiAtIDJdfSR7aGV4U3RyaW5nW2ogLSAxXX1cIiBpbiBcIiR7aGV4U3RyaW5nfVwiKS5gKTtcbiAgICAgICAgfVxuICAgICAgICBieXRlc1tpbmRleF0gPSBuaWJibGVMZWZ0ICogMTYgKyBuaWJibGVSaWdodDtcbiAgICB9XG4gICAgcmV0dXJuIGJ5dGVzO1xufVxuLyoqXG4gKiBFbmNvZGVzIGEgbnVtYmVyIHZhbHVlIGludG8ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgZGF0YSA9IEJ5dGVzLmZyb21OdW1iZXIoNDIwKVxuICogLy8gQGxvZzogVWludDhBcnJheShbMSwgMTY0XSlcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbU51bWJlcig0MjAsIHsgc2l6ZTogNCB9KVxuICogLy8gQGxvZzogVWludDhBcnJheShbMCwgMCwgMSwgMTY0XSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIE51bWJlciB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEVuY29kaW5nIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBFbmNvZGVkIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tTnVtYmVyKHZhbHVlLCBvcHRpb25zKSB7XG4gICAgY29uc3QgaGV4ID0gSGV4LmZyb21OdW1iZXIodmFsdWUsIG9wdGlvbnMpO1xuICAgIHJldHVybiBmcm9tSGV4KGhleCk7XG59XG4vKipcbiAqIEVuY29kZXMgYSBzdHJpbmcgaW50byB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbVN0cmluZygnSGVsbG8gd29ybGQhJylcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzcyLCAxMDEsIDEwOCwgMTA4LCAxMTEsIDMyLCAxMTksIDExMSwgMTE0LCAxMDgsIDEwMCwgMzNdKVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGRhdGEgPSBCeXRlcy5mcm9tU3RyaW5nKCdIZWxsbyB3b3JsZCEnLCB7IHNpemU6IDMyIH0pXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFs3MiwgMTAxLCAxMDgsIDEwOCwgMTExLCAzMiwgODcsIDExMSwgMTE0LCAxMDgsIDEwMCwgMzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDBdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gU3RyaW5nIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gRW5jb2Rpbmcgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEVuY29kZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21TdHJpbmcodmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBieXRlcyA9IGVuY29kZXIuZW5jb2RlKHZhbHVlKTtcbiAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIGludGVybmFsLmFzc2VydFNpemUoYnl0ZXMsIHNpemUpO1xuICAgICAgICByZXR1cm4gcGFkUmlnaHQoYnl0ZXMsIHNpemUpO1xuICAgIH1cbiAgICByZXR1cm4gYnl0ZXM7XG59XG4vKipcbiAqIENoZWNrcyBpZiB0d28ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZXMgYXJlIGVxdWFsLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy5pc0VxdWFsKEJ5dGVzLmZyb20oWzFdKSwgQnl0ZXMuZnJvbShbMV0pKVxuICogLy8gQGxvZzogdHJ1ZVxuICpcbiAqIEJ5dGVzLmlzRXF1YWwoQnl0ZXMuZnJvbShbMV0pLCBCeXRlcy5mcm9tKFsyXSkpXG4gKiAvLyBAbG9nOiBmYWxzZVxuICogYGBgXG4gKlxuICogQHBhcmFtIGJ5dGVzQSAtIEZpcnN0IHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKiBAcGFyYW0gYnl0ZXNCIC0gU2Vjb25kIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHR3byB2YWx1ZXMgYXJlIGVxdWFsLCBvdGhlcndpc2UgYGZhbHNlYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRXF1YWwoYnl0ZXNBLCBieXRlc0IpIHtcbiAgICByZXR1cm4gZXF1YWxCeXRlcyhieXRlc0EsIGJ5dGVzQik7XG59XG4vKipcbiAqIFBhZHMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvIHRoZSBsZWZ0IHdpdGggemVybyBieXRlcyB1bnRpbCBpdCByZWFjaGVzIHRoZSBnaXZlbiBgc2l6ZWAgKGRlZmF1bHQ6IDMyIGJ5dGVzKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogQnl0ZXMucGFkTGVmdChCeXRlcy5mcm9tKFsxXSksIDQpXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFswLCAwLCAwLCAxXSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUgdG8gcGFkLlxuICogQHBhcmFtIHNpemUgLSBTaXplIHRvIHBhZCB0aGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSB0by5cbiAqIEByZXR1cm5zIFBhZGRlZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFkTGVmdCh2YWx1ZSwgc2l6ZSkge1xuICAgIHJldHVybiBpbnRlcm5hbC5wYWQodmFsdWUsIHsgZGlyOiAnbGVmdCcsIHNpemUgfSk7XG59XG4vKipcbiAqIFBhZHMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvIHRoZSByaWdodCB3aXRoIHplcm8gYnl0ZXMgdW50aWwgaXQgcmVhY2hlcyB0aGUgZ2l2ZW4gYHNpemVgIChkZWZhdWx0OiAzMiBieXRlcykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnBhZFJpZ2h0KEJ5dGVzLmZyb20oWzFdKSwgNClcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzEsIDAsIDAsIDBdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSB0byBwYWQuXG4gKiBAcGFyYW0gc2l6ZSAtIFNpemUgdG8gcGFkIHRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvLlxuICogQHJldHVybnMgUGFkZGVkIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWRSaWdodCh2YWx1ZSwgc2l6ZSkge1xuICAgIHJldHVybiBpbnRlcm5hbC5wYWQodmFsdWUsIHsgZGlyOiAncmlnaHQnLCBzaXplIH0pO1xufVxuLyoqXG4gKiBHZW5lcmF0ZXMgcmFuZG9tIHtAbGluayBveCNCeXRlcy5CeXRlc30gb2YgdGhlIHNwZWNpZmllZCBsZW5ndGguXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGJ5dGVzID0gQnl0ZXMucmFuZG9tKDMyKVxuICogLy8gQGxvZzogVWludDhBcnJheShbLi4uIHgzMl0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gbGVuZ3RoIC0gTGVuZ3RoIG9mIHRoZSByYW5kb20ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBnZW5lcmF0ZS5cbiAqIEByZXR1cm5zIFJhbmRvbSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IG9mIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmFuZG9tKGxlbmd0aCkge1xuICAgIHJldHVybiBjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKG5ldyBVaW50OEFycmF5KGxlbmd0aCkpO1xufVxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIHNpemUgb2YgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy5zaXplKEJ5dGVzLmZyb20oWzEsIDIsIDMsIDRdKSlcbiAqIC8vIEBsb2c6IDRcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKiBAcmV0dXJucyBTaXplIG9mIHRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2l6ZSh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG59XG4vKipcbiAqIFJldHVybnMgYSBzZWN0aW9uIG9mIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSBnaXZlbiBhIHN0YXJ0L2VuZCBieXRlcyBvZmZzZXQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnNsaWNlKFxuICogICBCeXRlcy5mcm9tKFsxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5XSksXG4gKiAgIDEsXG4gKiAgIDQsXG4gKiApXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFsyLCAzLCA0XSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICogQHBhcmFtIHN0YXJ0IC0gU3RhcnQgb2Zmc2V0LlxuICogQHBhcmFtIGVuZCAtIEVuZCBvZmZzZXQuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFNsaWNlIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBTbGljZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNsaWNlKHZhbHVlLCBzdGFydCwgZW5kLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHN0cmljdCB9ID0gb3B0aW9ucztcbiAgICBpbnRlcm5hbC5hc3NlcnRTdGFydE9mZnNldCh2YWx1ZSwgc3RhcnQpO1xuICAgIGNvbnN0IHZhbHVlXyA9IHZhbHVlLnNsaWNlKHN0YXJ0LCBlbmQpO1xuICAgIGlmIChzdHJpY3QpXG4gICAgICAgIGludGVybmFsLmFzc2VydEVuZE9mZnNldCh2YWx1ZV8sIHN0YXJ0LCBlbmQpO1xuICAgIHJldHVybiB2YWx1ZV87XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IGludG8gYSBiaWdpbnQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvQmlnSW50KEJ5dGVzLmZyb20oWzEsIDE2NF0pKVxuICogLy8gQGxvZzogNDIwblxuICogYGBgXG4gKlxuICogQHBhcmFtIGJ5dGVzIC0gVGhlIHtAbGluayBveCNCeXRlcy5CeXRlc30gdG8gZGVjb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBEZWNvZGluZyBvcHRpb25zLlxuICogQHJldHVybnMgRGVjb2RlZCBiaWdpbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0JpZ0ludChieXRlcywgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBzaXplIH0gPSBvcHRpb25zO1xuICAgIGlmICh0eXBlb2Ygc2l6ZSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIGludGVybmFsLmFzc2VydFNpemUoYnl0ZXMsIHNpemUpO1xuICAgIGNvbnN0IGhleCA9IEhleC5mcm9tQnl0ZXMoYnl0ZXMsIG9wdGlvbnMpO1xuICAgIHJldHVybiBIZXgudG9CaWdJbnQoaGV4LCBvcHRpb25zKTtcbn1cbi8qKlxuICogRGVjb2RlcyBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gaW50byBhIGJvb2xlYW4uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvQm9vbGVhbihCeXRlcy5mcm9tKFsxXSkpXG4gKiAvLyBAbG9nOiB0cnVlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYnl0ZXMgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIERlY29kaW5nIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBEZWNvZGVkIGJvb2xlYW4uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0Jvb2xlYW4oYnl0ZXMsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBsZXQgYnl0ZXNfID0gYnl0ZXM7XG4gICAgaWYgKHR5cGVvZiBzaXplICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBpbnRlcm5hbC5hc3NlcnRTaXplKGJ5dGVzXywgc2l6ZSk7XG4gICAgICAgIGJ5dGVzXyA9IHRyaW1MZWZ0KGJ5dGVzXyk7XG4gICAgfVxuICAgIGlmIChieXRlc18ubGVuZ3RoID4gMSB8fCBieXRlc19bMF0gPiAxKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEJ5dGVzQm9vbGVhbkVycm9yKGJ5dGVzXyk7XG4gICAgcmV0dXJuIEJvb2xlYW4oYnl0ZXNfWzBdKTtcbn1cbi8qKlxuICogRW5jb2RlcyBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUgaW50byBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogQnl0ZXMudG9IZXgoQnl0ZXMuZnJvbShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSkpXG4gKiAvLyAnMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBEZWNvZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSGV4KHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICByZXR1cm4gSGV4LmZyb21CeXRlcyh2YWx1ZSwgb3B0aW9ucyk7XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IGludG8gYSBudW1iZXIuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvTnVtYmVyKEJ5dGVzLmZyb20oWzEsIDE2NF0pKVxuICogLy8gQGxvZzogNDIwXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvTnVtYmVyKGJ5dGVzLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpemUgfSA9IG9wdGlvbnM7XG4gICAgaWYgKHR5cGVvZiBzaXplICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShieXRlcywgc2l6ZSk7XG4gICAgY29uc3QgaGV4ID0gSGV4LmZyb21CeXRlcyhieXRlcywgb3B0aW9ucyk7XG4gICAgcmV0dXJuIEhleC50b051bWJlcihoZXgsIG9wdGlvbnMpO1xufVxuLyoqXG4gKiBEZWNvZGVzIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBpbnRvIGEgc3RyaW5nLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMudG9TdHJpbmcoQnl0ZXMuZnJvbShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSkpXG4gKiAvLyBAbG9nOiAnSGVsbG8gd29ybGQnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYnl0ZXMgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBEZWNvZGVkIHN0cmluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvU3RyaW5nKGJ5dGVzLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpemUgfSA9IG9wdGlvbnM7XG4gICAgbGV0IGJ5dGVzXyA9IGJ5dGVzO1xuICAgIGlmICh0eXBlb2Ygc2l6ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShieXRlc18sIHNpemUpO1xuICAgICAgICBieXRlc18gPSB0cmltUmlnaHQoYnl0ZXNfKTtcbiAgICB9XG4gICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGJ5dGVzXyk7XG59XG4vKipcbiAqIFRyaW1zIGxlYWRpbmcgemVyb3MgZnJvbSBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRyaW1MZWZ0KEJ5dGVzLmZyb20oWzAsIDAsIDAsIDAsIDEsIDIsIDNdKSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzEsIDIsIDNdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqIEByZXR1cm5zIFRyaW1tZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyaW1MZWZ0KHZhbHVlKSB7XG4gICAgcmV0dXJuIGludGVybmFsLnRyaW0odmFsdWUsIHsgZGlyOiAnbGVmdCcgfSk7XG59XG4vKipcbiAqIFRyaW1zIHRyYWlsaW5nIHplcm9zIGZyb20gYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy50cmltUmlnaHQoQnl0ZXMuZnJvbShbMSwgMiwgMywgMCwgMCwgMCwgMF0pKVxuICogLy8gQGxvZzogVWludDhBcnJheShbMSwgMiwgM10pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICogQHJldHVybnMgVHJpbW1lZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJpbVJpZ2h0KHZhbHVlKSB7XG4gICAgcmV0dXJuIGludGVybmFsLnRyaW0odmFsdWUsIHsgZGlyOiAncmlnaHQnIH0pO1xufVxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIHZhbHVlIGlzIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnZhbGlkYXRlKCcweCcpXG4gKiAvLyBAbG9nOiBmYWxzZVxuICpcbiAqIEJ5dGVzLnZhbGlkYXRlKEJ5dGVzLmZyb20oWzEsIDIsIDNdKSlcbiAqIC8vIEBsb2c6IHRydWVcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZSBpcyB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LCBvdGhlcndpc2UgYGZhbHNlYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZhbHVlKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgYXNzZXJ0KHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNhdGNoIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gdGhlIGJ5dGVzIHZhbHVlIGNhbm5vdCBiZSByZXByZXNlbnRlZCBhcyBhIGJvb2xlYW4uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvQm9vbGVhbihCeXRlcy5mcm9tKFs1XSkpXG4gKiAvLyBAZXJyb3I6IEJ5dGVzLkludmFsaWRCeXRlc0Jvb2xlYW5FcnJvcjogQnl0ZXMgdmFsdWUgYFs1XWAgaXMgbm90IGEgdmFsaWQgYm9vbGVhbi5cbiAqIC8vIEBlcnJvcjogVGhlIGJ5dGVzIGFycmF5IG11c3QgY29udGFpbiBhIHNpbmdsZSBieXRlIG9mIGVpdGhlciBhIGAwYCBvciBgMWAgdmFsdWUuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRCeXRlc0Jvb2xlYW5FcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKGJ5dGVzKSB7XG4gICAgICAgIHN1cGVyKGBCeXRlcyB2YWx1ZSBcXGAke2J5dGVzfVxcYCBpcyBub3QgYSB2YWxpZCBib29sZWFuLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGUgYnl0ZXMgYXJyYXkgbXVzdCBjb250YWluIGEgc2luZ2xlIGJ5dGUgb2YgZWl0aGVyIGEgYDBgIG9yIGAxYCB2YWx1ZS4nLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdCeXRlcy5JbnZhbGlkQnl0ZXNCb29sZWFuRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gYSB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGJ5dGVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLmZyb20oJ2ZvbycpXG4gKiAvLyBAZXJyb3I6IEJ5dGVzLkludmFsaWRCeXRlc1R5cGVFcnJvcjogVmFsdWUgYGZvb2Agb2YgdHlwZSBgc3RyaW5nYCBpcyBhbiBpbnZhbGlkIEJ5dGVzIHZhbHVlLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQnl0ZXNUeXBlRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih2YWx1ZSkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHt0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnID8gSnNvbi5zdHJpbmdpZnkodmFsdWUpIDogdmFsdWV9XFxgIG9mIHR5cGUgXFxgJHt0eXBlb2YgdmFsdWV9XFxgIGlzIGFuIGludmFsaWQgQnl0ZXMgdmFsdWUuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbJ0J5dGVzIHZhbHVlcyBtdXN0IGJlIG9mIHR5cGUgYEJ5dGVzYC4nXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdCeXRlcy5JbnZhbGlkQnl0ZXNUeXBlRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gYSBzaXplIGV4Y2VlZHMgdGhlIG1heGltdW0gYWxsb3dlZCBzaXplLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy5mcm9tU3RyaW5nKCdIZWxsbyBXb3JsZCEnLCB7IHNpemU6IDggfSlcbiAqIC8vIEBlcnJvcjogQnl0ZXMuU2l6ZU92ZXJmbG93RXJyb3I6IFNpemUgY2Fubm90IGV4Y2VlZCBgOGAgYnl0ZXMuIEdpdmVuIHNpemU6IGAxMmAgYnl0ZXMuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNpemVPdmVyZmxvd0Vycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBnaXZlblNpemUsIG1heFNpemUgfSkge1xuICAgICAgICBzdXBlcihgU2l6ZSBjYW5ub3QgZXhjZWVkIFxcYCR7bWF4U2l6ZX1cXGAgYnl0ZXMuIEdpdmVuIHNpemU6IFxcYCR7Z2l2ZW5TaXplfVxcYCBieXRlcy5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0J5dGVzLlNpemVPdmVyZmxvd0Vycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIGEgc2xpY2Ugb2Zmc2V0IGlzIG91dC1vZi1ib3VuZHMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnNsaWNlKEJ5dGVzLmZyb20oWzEsIDIsIDNdKSwgNClcbiAqIC8vIEBlcnJvcjogQnl0ZXMuU2xpY2VPZmZzZXRPdXRPZkJvdW5kc0Vycm9yOiBTbGljZSBzdGFydGluZyBhdCBvZmZzZXQgYDRgIGlzIG91dC1vZi1ib3VuZHMgKHNpemU6IGAzYCkuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgb2Zmc2V0LCBwb3NpdGlvbiwgc2l6ZSwgfSkge1xuICAgICAgICBzdXBlcihgU2xpY2UgJHtwb3NpdGlvbiA9PT0gJ3N0YXJ0JyA/ICdzdGFydGluZycgOiAnZW5kaW5nJ30gYXQgb2Zmc2V0IFxcYCR7b2Zmc2V0fVxcYCBpcyBvdXQtb2YtYm91bmRzIChzaXplOiBcXGAke3NpemV9XFxgKS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0J5dGVzLlNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiBhIHRoZSBwYWRkaW5nIHNpemUgZXhjZWVkcyB0aGUgbWF4aW11bSBhbGxvd2VkIHNpemUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnBhZExlZnQoQnl0ZXMuZnJvbVN0cmluZygnSGVsbG8gV29ybGQhJyksIDgpXG4gKiAvLyBAZXJyb3I6IFtCeXRlcy5TaXplRXhjZWVkc1BhZGRpbmdTaXplRXJyb3I6IEJ5dGVzIHNpemUgKGAxMmApIGV4Y2VlZHMgcGFkZGluZyBzaXplIChgOGApLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBTaXplRXhjZWVkc1BhZGRpbmdTaXplRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHNpemUsIHRhcmdldFNpemUsIHR5cGUsIH0pIHtcbiAgICAgICAgc3VwZXIoYCR7dHlwZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke3R5cGVcbiAgICAgICAgICAgIC5zbGljZSgxKVxuICAgICAgICAgICAgLnRvTG93ZXJDYXNlKCl9IHNpemUgKFxcYCR7c2l6ZX1cXGApIGV4Y2VlZHMgcGFkZGluZyBzaXplIChcXGAke3RhcmdldFNpemV9XFxgKS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0J5dGVzLlNpemVFeGNlZWRzUGFkZGluZ1NpemVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Qnl0ZXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js": /*!*******************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js ***! \*******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BaseError: () => (/* binding */ BaseError)\n/* harmony export */ });\n/* harmony import */ var _internal_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/errors.js\");\n\n/**\n * Base error class inherited by all errors thrown by ox.\n *\n * @example\n * ```ts\n * import { Errors } from 'ox'\n * throw new Errors.BaseError('An error occurred')\n * ```\n */\nclass BaseError extends Error {\n constructor(shortMessage, options = {}) {\n const details = (() => {\n if (options.cause instanceof BaseError) {\n if (options.cause.details)\n return options.cause.details;\n if (options.cause.shortMessage)\n return options.cause.shortMessage;\n }\n if (options.cause?.message)\n return options.cause.message;\n return options.details;\n })();\n const docsPath = (() => {\n if (options.cause instanceof BaseError)\n return options.cause.docsPath || options.docsPath;\n return options.docsPath;\n })();\n const docsBaseUrl = 'https://oxlib.sh';\n const docs = `${docsBaseUrl}${docsPath ?? ''}`;\n const message = [\n shortMessage || 'An error occurred.',\n ...(options.metaMessages ? ['', ...options.metaMessages] : []),\n ...(details || docsPath\n ? [\n '',\n details ? `Details: ${details}` : undefined,\n docsPath ? `See: ${docs}` : undefined,\n ]\n : []),\n ]\n .filter((x) => typeof x === 'string')\n .join('\\n');\n super(message, options.cause ? { cause: options.cause } : undefined);\n Object.defineProperty(this, \"details\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"docs\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"docsPath\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"shortMessage\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"cause\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'BaseError'\n });\n Object.defineProperty(this, \"version\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: `ox@${(0,_internal_errors_js__WEBPACK_IMPORTED_MODULE_0__.getVersion)()}`\n });\n this.cause = options.cause;\n this.details = details;\n this.docs = docs;\n this.docsPath = docsPath;\n this.shortMessage = shortMessage;\n }\n walk(fn) {\n return walk(this, fn);\n }\n}\n/** @internal */\nfunction walk(err, fn) {\n if (fn?.(err))\n return err;\n if (err && typeof err === 'object' && 'cause' in err && err.cause)\n return walk(err.cause, fn);\n return fn ? null : err;\n}\n//# sourceMappingURL=Errors.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0Vycm9ycy5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFrRDtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxTQUFTO0FBQ3JCO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsMENBQTBDO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0Esd0JBQXdCLFlBQVksRUFBRSxlQUFlO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBDQUEwQyxRQUFRO0FBQ2xELHVDQUF1QyxLQUFLO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsdUJBQXVCO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLCtEQUFVLEdBQUc7QUFDdEMsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvRXJyb3JzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldFZlcnNpb24gfSBmcm9tICcuL2ludGVybmFsL2Vycm9ycy5qcyc7XG4vKipcbiAqIEJhc2UgZXJyb3IgY2xhc3MgaW5oZXJpdGVkIGJ5IGFsbCBlcnJvcnMgdGhyb3duIGJ5IG94LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgRXJyb3JzIH0gZnJvbSAnb3gnXG4gKiB0aHJvdyBuZXcgRXJyb3JzLkJhc2VFcnJvcignQW4gZXJyb3Igb2NjdXJyZWQnKVxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBCYXNlRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gICAgY29uc3RydWN0b3Ioc2hvcnRNZXNzYWdlLCBvcHRpb25zID0ge30pIHtcbiAgICAgICAgY29uc3QgZGV0YWlscyA9ICgoKSA9PiB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5jYXVzZSBpbnN0YW5jZW9mIEJhc2VFcnJvcikge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmNhdXNlLmRldGFpbHMpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvcHRpb25zLmNhdXNlLmRldGFpbHM7XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMuY2F1c2Uuc2hvcnRNZXNzYWdlKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5jYXVzZS5zaG9ydE1lc3NhZ2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5jYXVzZT8ubWVzc2FnZSlcbiAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5jYXVzZS5tZXNzYWdlO1xuICAgICAgICAgICAgcmV0dXJuIG9wdGlvbnMuZGV0YWlscztcbiAgICAgICAgfSkoKTtcbiAgICAgICAgY29uc3QgZG9jc1BhdGggPSAoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMuY2F1c2UgaW5zdGFuY2VvZiBCYXNlRXJyb3IpXG4gICAgICAgICAgICAgICAgcmV0dXJuIG9wdGlvbnMuY2F1c2UuZG9jc1BhdGggfHwgb3B0aW9ucy5kb2NzUGF0aDtcbiAgICAgICAgICAgIHJldHVybiBvcHRpb25zLmRvY3NQYXRoO1xuICAgICAgICB9KSgpO1xuICAgICAgICBjb25zdCBkb2NzQmFzZVVybCA9ICdodHRwczovL294bGliLnNoJztcbiAgICAgICAgY29uc3QgZG9jcyA9IGAke2RvY3NCYXNlVXJsfSR7ZG9jc1BhdGggPz8gJyd9YDtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IFtcbiAgICAgICAgICAgIHNob3J0TWVzc2FnZSB8fCAnQW4gZXJyb3Igb2NjdXJyZWQuJyxcbiAgICAgICAgICAgIC4uLihvcHRpb25zLm1ldGFNZXNzYWdlcyA/IFsnJywgLi4ub3B0aW9ucy5tZXRhTWVzc2FnZXNdIDogW10pLFxuICAgICAgICAgICAgLi4uKGRldGFpbHMgfHwgZG9jc1BhdGhcbiAgICAgICAgICAgICAgICA/IFtcbiAgICAgICAgICAgICAgICAgICAgJycsXG4gICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPyBgRGV0YWlsczogJHtkZXRhaWxzfWAgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGRvY3NQYXRoID8gYFNlZTogJHtkb2NzfWAgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIDogW10pLFxuICAgICAgICBdXG4gICAgICAgICAgICAuZmlsdGVyKCh4KSA9PiB0eXBlb2YgeCA9PT0gJ3N0cmluZycpXG4gICAgICAgICAgICAuam9pbignXFxuJyk7XG4gICAgICAgIHN1cGVyKG1lc3NhZ2UsIG9wdGlvbnMuY2F1c2UgPyB7IGNhdXNlOiBvcHRpb25zLmNhdXNlIH0gOiB1bmRlZmluZWQpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJkZXRhaWxzXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImRvY3NcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwiZG9jc1BhdGhcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwic2hvcnRNZXNzYWdlXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImNhdXNlXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdCYXNlRXJyb3InXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJ2ZXJzaW9uXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiBgb3hAJHtnZXRWZXJzaW9uKCl9YFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jYXVzZSA9IG9wdGlvbnMuY2F1c2U7XG4gICAgICAgIHRoaXMuZGV0YWlscyA9IGRldGFpbHM7XG4gICAgICAgIHRoaXMuZG9jcyA9IGRvY3M7XG4gICAgICAgIHRoaXMuZG9jc1BhdGggPSBkb2NzUGF0aDtcbiAgICAgICAgdGhpcy5zaG9ydE1lc3NhZ2UgPSBzaG9ydE1lc3NhZ2U7XG4gICAgfVxuICAgIHdhbGsoZm4pIHtcbiAgICAgICAgcmV0dXJuIHdhbGsodGhpcywgZm4pO1xuICAgIH1cbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmZ1bmN0aW9uIHdhbGsoZXJyLCBmbikge1xuICAgIGlmIChmbj8uKGVycikpXG4gICAgICAgIHJldHVybiBlcnI7XG4gICAgaWYgKGVyciAmJiB0eXBlb2YgZXJyID09PSAnb2JqZWN0JyAmJiAnY2F1c2UnIGluIGVyciAmJiBlcnIuY2F1c2UpXG4gICAgICAgIHJldHVybiB3YWxrKGVyci5jYXVzZSwgZm4pO1xuICAgIHJldHVybiBmbiA/IG51bGwgOiBlcnI7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1FcnJvcnMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hash.js": /*!*****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hash.js ***! \*****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ keccak256: () => (/* binding */ keccak256),\n/* harmony export */ ripemd160: () => (/* binding */ ripemd160),\n/* harmony export */ sha256: () => (/* binding */ sha256),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_ripemd160__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @noble/hashes/ripemd160 */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/ripemd160.js\");\n/* harmony import */ var _noble_hashes_sha3__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/hashes/sha3 */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha3.js\");\n/* harmony import */ var _noble_hashes_sha256__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @noble/hashes/sha256 */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha256.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n\n\n\n\n\n/**\n * Calculates the [Keccak256](https://en.wikipedia.org/wiki/SHA-3) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `keccak_256` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.keccak256('0xdeadbeef')\n * // @log: '0xd4fd4e189132273036449fc9e11198c739161b4c0116a9a2dccdfa1c492006f1'\n * ```\n *\n * @example\n * ### Calculate Hash of a String\n *\n * ```ts twoslash\n * import { Hash, Hex } from 'ox'\n *\n * Hash.keccak256(Hex.fromString('hello world'))\n * // @log: '0x3ea2f1d0abf3fc66cf29eebb70cbd4e7fe762ef8a09bcc06c8edf641230afec0'\n * ```\n *\n * @example\n * ### Configure Return Type\n *\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.keccak256('0xdeadbeef', { as: 'Bytes' })\n * // @log: Uint8Array [...]\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Keccak256 hash.\n */\nfunction keccak256(value, options = {}) {\n const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options;\n const bytes = (0,_noble_hashes_sha3__WEBPACK_IMPORTED_MODULE_0__.keccak_256)(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(value));\n if (as === 'Bytes')\n return bytes;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes);\n}\n/**\n * Calculates the [Ripemd160](https://en.wikipedia.org/wiki/RIPEMD) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `ripemd160` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.ripemd160('0xdeadbeef')\n * // '0x226821c2f5423e11fe9af68bd285c249db2e4b5a'\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Ripemd160 hash.\n */\nfunction ripemd160(value, options = {}) {\n const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options;\n const bytes = (0,_noble_hashes_ripemd160__WEBPACK_IMPORTED_MODULE_3__.ripemd160)(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(value));\n if (as === 'Bytes')\n return bytes;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes);\n}\n/**\n * Calculates the [Sha256](https://en.wikipedia.org/wiki/SHA-256) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `sha256` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.sha256('0xdeadbeef')\n * // '0x5f78c33274e43fa9de5659265c1d917e25c03722dcb0b8d27db8d5feaa813953'\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Sha256 hash.\n */\nfunction sha256(value, options = {}) {\n const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options;\n const bytes = (0,_noble_hashes_sha256__WEBPACK_IMPORTED_MODULE_4__.sha256)(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(value));\n if (as === 'Bytes')\n return bytes;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes);\n}\n/**\n * Checks if a string is a valid hash value.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.validate('0x')\n * // @log: false\n *\n * Hash.validate('0x3ea2f1d0abf3fc66cf29eebb70cbd4e7fe762ef8a09bcc06c8edf641230afec0')\n * // @log: true\n * ```\n *\n * @param value - Value to check.\n * @returns Whether the value is a valid hash.\n */\nfunction validate(value) {\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.validate(value) && _Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(value) === 32;\n}\n//# sourceMappingURL=Hash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0hhc2guanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQXVFO0FBQ0o7QUFDTDtBQUMxQjtBQUNKO0FBQ2hDO0FBQ0EsOEVBQThFLHNCQUFzQixJQUFJLGtCQUFrQjtBQUMxSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQSxrQ0FBa0MsYUFBYTtBQUMvQztBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCLElBQUksa0JBQWtCO0FBQy9EO0FBQ0E7QUFDQTtBQUNPLHNDQUFzQztBQUM3QyxZQUFZLG1EQUFtRDtBQUMvRCxrQkFBa0IsOERBQWUsQ0FBQywyQ0FBVTtBQUM1QztBQUNBO0FBQ0EsV0FBVyw4Q0FBYTtBQUN4QjtBQUNBO0FBQ0EsK0VBQStFLHNCQUFzQixJQUFJLGtCQUFrQjtBQUMzSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCLElBQUksa0JBQWtCO0FBQy9EO0FBQ0E7QUFDQTtBQUNPLHNDQUFzQztBQUM3QyxZQUFZLG1EQUFtRDtBQUMvRCxrQkFBa0Isa0VBQWUsQ0FBQywyQ0FBVTtBQUM1QztBQUNBO0FBQ0EsV0FBVyw4Q0FBYTtBQUN4QjtBQUNBO0FBQ0EsNkVBQTZFLHNCQUFzQixJQUFJLGtCQUFrQjtBQUN6SDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCLElBQUksa0JBQWtCO0FBQy9EO0FBQ0E7QUFDQTtBQUNPLG1DQUFtQztBQUMxQyxZQUFZLG1EQUFtRDtBQUMvRCxrQkFBa0IsNERBQVksQ0FBQywyQ0FBVTtBQUN6QztBQUNBO0FBQ0EsV0FBVyw4Q0FBYTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsV0FBVyw2Q0FBWSxXQUFXLHlDQUFRO0FBQzFDO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9IYXNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJpcGVtZDE2MCBhcyBub2JsZV9yaXBlbWQxNjAgfSBmcm9tICdAbm9ibGUvaGFzaGVzL3JpcGVtZDE2MCc7XG5pbXBvcnQgeyBrZWNjYWtfMjU2IGFzIG5vYmxlX2tlY2NhazI1NiB9IGZyb20gJ0Bub2JsZS9oYXNoZXMvc2hhMyc7XG5pbXBvcnQgeyBzaGEyNTYgYXMgbm9ibGVfc2hhMjU2IH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9zaGEyNTYnO1xuaW1wb3J0ICogYXMgQnl0ZXMgZnJvbSAnLi9CeXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBIZXggZnJvbSAnLi9IZXguanMnO1xuLyoqXG4gKiBDYWxjdWxhdGVzIHRoZSBbS2VjY2FrMjU2XShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TSEEtMykgaGFzaCBvZiBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gb3Ige0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gaXMgYSByZS1leHBvcnQgb2YgYGtlY2Nha18yNTZgIGZyb20gW2BAbm9ibGUvaGFzaGVzYF0oaHR0cHM6Ly9naXRodWIuY29tL3BhdWxtaWxsci9ub2JsZS1oYXNoZXMpLCBhbiBhdWRpdGVkICYgbWluaW1hbCBKUyBoYXNoaW5nIGxpYnJhcnkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIYXNoIH0gZnJvbSAnb3gnXG4gKlxuICogSGFzaC5rZWNjYWsyNTYoJzB4ZGVhZGJlZWYnKVxuICogLy8gQGxvZzogJzB4ZDRmZDRlMTg5MTMyMjczMDM2NDQ5ZmM5ZTExMTk4YzczOTE2MWI0YzAxMTZhOWEyZGNjZGZhMWM0OTIwMDZmMSdcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgQ2FsY3VsYXRlIEhhc2ggb2YgYSBTdHJpbmdcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGFzaCwgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGFzaC5rZWNjYWsyNTYoSGV4LmZyb21TdHJpbmcoJ2hlbGxvIHdvcmxkJykpXG4gKiAvLyBAbG9nOiAnMHgzZWEyZjFkMGFiZjNmYzY2Y2YyOWVlYmI3MGNiZDRlN2ZlNzYyZWY4YTA5YmNjMDZjOGVkZjY0MTIzMGFmZWMwJ1xuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBDb25maWd1cmUgUmV0dXJuIFR5cGVcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGFzaCB9IGZyb20gJ294J1xuICpcbiAqIEhhc2gua2VjY2FrMjU2KCcweGRlYWRiZWVmJywgeyBhczogJ0J5dGVzJyB9KVxuICogLy8gQGxvZzogVWludDhBcnJheSBbLi4uXVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBvciB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBLZWNjYWsyNTYgaGFzaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGtlY2NhazI1Nih2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBhcyA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyAnSGV4JyA6ICdCeXRlcycgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYnl0ZXMgPSBub2JsZV9rZWNjYWsyNTYoQnl0ZXMuZnJvbSh2YWx1ZSkpO1xuICAgIGlmIChhcyA9PT0gJ0J5dGVzJylcbiAgICAgICAgcmV0dXJuIGJ5dGVzO1xuICAgIHJldHVybiBIZXguZnJvbUJ5dGVzKGJ5dGVzKTtcbn1cbi8qKlxuICogQ2FsY3VsYXRlcyB0aGUgW1JpcGVtZDE2MF0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvUklQRU1EKSBoYXNoIG9mIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBvciB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogVGhpcyBmdW5jdGlvbiBpcyBhIHJlLWV4cG9ydCBvZiBgcmlwZW1kMTYwYCBmcm9tIFtgQG5vYmxlL2hhc2hlc2BdKGh0dHBzOi8vZ2l0aHViLmNvbS9wYXVsbWlsbHIvbm9ibGUtaGFzaGVzKSwgYW4gYXVkaXRlZCAmIG1pbmltYWwgSlMgaGFzaGluZyBsaWJyYXJ5LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGFzaCB9IGZyb20gJ294J1xuICpcbiAqIEhhc2gucmlwZW1kMTYwKCcweGRlYWRiZWVmJylcbiAqIC8vICcweDIyNjgyMWMyZjU0MjNlMTFmZTlhZjY4YmQyODVjMjQ5ZGIyZTRiNWEnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IG9yIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFJpcGVtZDE2MCBoYXNoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmlwZW1kMTYwKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGFzID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/ICdIZXgnIDogJ0J5dGVzJyB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBieXRlcyA9IG5vYmxlX3JpcGVtZDE2MChCeXRlcy5mcm9tKHZhbHVlKSk7XG4gICAgaWYgKGFzID09PSAnQnl0ZXMnKVxuICAgICAgICByZXR1cm4gYnl0ZXM7XG4gICAgcmV0dXJuIEhleC5mcm9tQnl0ZXMoYnl0ZXMpO1xufVxuLyoqXG4gKiBDYWxjdWxhdGVzIHRoZSBbU2hhMjU2XShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TSEEtMjU2KSBoYXNoIG9mIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBvciB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogVGhpcyBmdW5jdGlvbiBpcyBhIHJlLWV4cG9ydCBvZiBgc2hhMjU2YCBmcm9tIFtgQG5vYmxlL2hhc2hlc2BdKGh0dHBzOi8vZ2l0aHViLmNvbS9wYXVsbWlsbHIvbm9ibGUtaGFzaGVzKSwgYW4gYXVkaXRlZCAmIG1pbmltYWwgSlMgaGFzaGluZyBsaWJyYXJ5LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGFzaCB9IGZyb20gJ294J1xuICpcbiAqIEhhc2guc2hhMjU2KCcweGRlYWRiZWVmJylcbiAqIC8vICcweDVmNzhjMzMyNzRlNDNmYTlkZTU2NTkyNjVjMWQ5MTdlMjVjMDM3MjJkY2IwYjhkMjdkYjhkNWZlYWE4MTM5NTMnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IG9yIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFNoYTI1NiBoYXNoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2hhMjU2KHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGFzID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/ICdIZXgnIDogJ0J5dGVzJyB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBieXRlcyA9IG5vYmxlX3NoYTI1NihCeXRlcy5mcm9tKHZhbHVlKSk7XG4gICAgaWYgKGFzID09PSAnQnl0ZXMnKVxuICAgICAgICByZXR1cm4gYnl0ZXM7XG4gICAgcmV0dXJuIEhleC5mcm9tQnl0ZXMoYnl0ZXMpO1xufVxuLyoqXG4gKiBDaGVja3MgaWYgYSBzdHJpbmcgaXMgYSB2YWxpZCBoYXNoIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGFzaCB9IGZyb20gJ294J1xuICpcbiAqIEhhc2gudmFsaWRhdGUoJzB4JylcbiAqIC8vIEBsb2c6IGZhbHNlXG4gKlxuICogSGFzaC52YWxpZGF0ZSgnMHgzZWEyZjFkMGFiZjNmYzY2Y2YyOWVlYmI3MGNiZDRlN2ZlNzYyZWY4YTA5YmNjMDZjOGVkZjY0MTIzMGFmZWMwJylcbiAqIC8vIEBsb2c6IHRydWVcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgdmFsdWUgaXMgYSB2YWxpZCBoYXNoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGUodmFsdWUpIHtcbiAgICByZXR1cm4gSGV4LnZhbGlkYXRlKHZhbHVlKSAmJiBIZXguc2l6ZSh2YWx1ZSkgPT09IDMyO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9SGFzaC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js": /*!****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IntegerOutOfRangeError: () => (/* binding */ IntegerOutOfRangeError),\n/* harmony export */ InvalidHexBooleanError: () => (/* binding */ InvalidHexBooleanError),\n/* harmony export */ InvalidHexTypeError: () => (/* binding */ InvalidHexTypeError),\n/* harmony export */ InvalidHexValueError: () => (/* binding */ InvalidHexValueError),\n/* harmony export */ InvalidLengthError: () => (/* binding */ InvalidLengthError),\n/* harmony export */ SizeExceedsPaddingSizeError: () => (/* binding */ SizeExceedsPaddingSizeError),\n/* harmony export */ SizeOverflowError: () => (/* binding */ SizeOverflowError),\n/* harmony export */ SliceOffsetOutOfBoundsError: () => (/* binding */ SliceOffsetOutOfBoundsError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ concat: () => (/* binding */ concat),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromBoolean: () => (/* binding */ fromBoolean),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromNumber: () => (/* binding */ fromNumber),\n/* harmony export */ fromString: () => (/* binding */ fromString),\n/* harmony export */ isEqual: () => (/* binding */ isEqual),\n/* harmony export */ padLeft: () => (/* binding */ padLeft),\n/* harmony export */ padRight: () => (/* binding */ padRight),\n/* harmony export */ random: () => (/* binding */ random),\n/* harmony export */ size: () => (/* binding */ size),\n/* harmony export */ slice: () => (/* binding */ slice),\n/* harmony export */ toBigInt: () => (/* binding */ toBigInt),\n/* harmony export */ toBoolean: () => (/* binding */ toBoolean),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toNumber: () => (/* binding */ toNumber),\n/* harmony export */ toString: () => (/* binding */ toString),\n/* harmony export */ trimLeft: () => (/* binding */ trimLeft),\n/* harmony export */ trimRight: () => (/* binding */ trimRight),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @noble/curves/abstract/utils */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/abstract/utils.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Json.js\");\n/* harmony import */ var _internal_bytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internal/bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/bytes.js\");\n/* harmony import */ var _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/hex.js\");\n\n\n\n\n\n\nconst encoder = /*#__PURE__*/ new TextEncoder();\nconst hexes = /*#__PURE__*/ Array.from({ length: 256 }, (_v, i) => i.toString(16).padStart(2, '0'));\n/**\n * Asserts if the given value is {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.assert('abc')\n * // @error: InvalidHexValueTypeError:\n * // @error: Value `\"abc\"` of type `string` is an invalid hex type.\n * // @error: Hex types must be represented as `\"0x\\${string}\"`.\n * ```\n *\n * @param value - The value to assert.\n * @param options - Options.\n */\nfunction assert(value, options = {}) {\n const { strict = false } = options;\n if (!value)\n throw new InvalidHexTypeError(value);\n if (typeof value !== 'string')\n throw new InvalidHexTypeError(value);\n if (strict) {\n if (!/^0x[0-9a-fA-F]*$/.test(value))\n throw new InvalidHexValueError(value);\n }\n if (!value.startsWith('0x'))\n throw new InvalidHexValueError(value);\n}\n/**\n * Concatenates two or more {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.concat('0x123', '0x456')\n * // @log: '0x123456'\n * ```\n *\n * @param values - The {@link ox#Hex.Hex} values to concatenate.\n * @returns The concatenated {@link ox#Hex.Hex} value.\n */\nfunction concat(...values) {\n return `0x${values.reduce((acc, x) => acc + x.replace('0x', ''), '')}`;\n}\n/**\n * Instantiates a {@link ox#Hex.Hex} value from a hex string or {@link ox#Bytes.Bytes} value.\n *\n * :::tip\n *\n * To instantiate from a **Boolean**, **String**, or **Number**, use one of the following:\n *\n * - `Hex.fromBoolean`\n *\n * - `Hex.fromString`\n *\n * - `Hex.fromNumber`\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Hex } from 'ox'\n *\n * Hex.from('0x48656c6c6f20576f726c6421')\n * // @log: '0x48656c6c6f20576f726c6421'\n *\n * Hex.from(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // @log: '0x48656c6c6f20576f726c6421'\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} value to encode.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction from(value) {\n if (value instanceof Uint8Array)\n return fromBytes(value);\n if (Array.isArray(value))\n return fromBytes(new Uint8Array(value));\n return value;\n}\n/**\n * Encodes a boolean into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromBoolean(true)\n * // @log: '0x1'\n *\n * Hex.fromBoolean(false)\n * // @log: '0x0'\n *\n * Hex.fromBoolean(true, { size: 32 })\n * // @log: '0x0000000000000000000000000000000000000000000000000000000000000001'\n * ```\n *\n * @param value - The boolean value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromBoolean(value, options = {}) {\n const hex = `0x${Number(value)}`;\n if (typeof options.size === 'number') {\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n return padLeft(hex, options.size);\n }\n return hex;\n}\n/**\n * Encodes a {@link ox#Bytes.Bytes} value into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Hex } from 'ox'\n *\n * Hex.fromBytes(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // @log: '0x48656c6c6f20576f726c6421'\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromBytes(value, options = {}) {\n let string = '';\n for (let i = 0; i < value.length; i++)\n string += hexes[value[i]];\n const hex = `0x${string}`;\n if (typeof options.size === 'number') {\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n return padRight(hex, options.size);\n }\n return hex;\n}\n/**\n * Encodes a number or bigint into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromNumber(420)\n * // @log: '0x1a4'\n *\n * Hex.fromNumber(420, { size: 32 })\n * // @log: '0x00000000000000000000000000000000000000000000000000000000000001a4'\n * ```\n *\n * @param value - The number or bigint value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromNumber(value, options = {}) {\n const { signed, size } = options;\n const value_ = BigInt(value);\n let maxValue;\n if (size) {\n if (signed)\n maxValue = (1n << (BigInt(size) * 8n - 1n)) - 1n;\n else\n maxValue = 2n ** (BigInt(size) * 8n) - 1n;\n }\n else if (typeof value === 'number') {\n maxValue = BigInt(Number.MAX_SAFE_INTEGER);\n }\n const minValue = typeof maxValue === 'bigint' && signed ? -maxValue - 1n : 0;\n if ((maxValue && value_ > maxValue) || value_ < minValue) {\n const suffix = typeof value === 'bigint' ? 'n' : '';\n throw new IntegerOutOfRangeError({\n max: maxValue ? `${maxValue}${suffix}` : undefined,\n min: `${minValue}${suffix}`,\n signed,\n size,\n value: `${value}${suffix}`,\n });\n }\n const stringValue = (signed && value_ < 0 ? (1n << BigInt(size * 8)) + BigInt(value_) : value_).toString(16);\n const hex = `0x${stringValue}`;\n if (size)\n return padLeft(hex, size);\n return hex;\n}\n/**\n * Encodes a string into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n * Hex.fromString('Hello World!')\n * // '0x48656c6c6f20576f726c6421'\n *\n * Hex.fromString('Hello World!', { size: 32 })\n * // '0x48656c6c6f20576f726c64210000000000000000000000000000000000000000'\n * ```\n *\n * @param value - The string value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromString(value, options = {}) {\n return fromBytes(encoder.encode(value), options);\n}\n/**\n * Checks if two {@link ox#Hex.Hex} values are equal.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.isEqual('0xdeadbeef', '0xdeadbeef')\n * // @log: true\n *\n * Hex.isEqual('0xda', '0xba')\n * // @log: false\n * ```\n *\n * @param hexA - The first {@link ox#Hex.Hex} value.\n * @param hexB - The second {@link ox#Hex.Hex} value.\n * @returns `true` if the two {@link ox#Hex.Hex} values are equal, `false` otherwise.\n */\nfunction isEqual(hexA, hexB) {\n return (0,_noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_1__.equalBytes)(_Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hexA), _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hexB));\n}\n/**\n * Pads a {@link ox#Hex.Hex} value to the left with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.padLeft('0x1234', 4)\n * // @log: '0x00001234'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to pad.\n * @param size - The size (in bytes) of the output hex value.\n * @returns The padded {@link ox#Hex.Hex} value.\n */\nfunction padLeft(value, size) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'left', size });\n}\n/**\n * Pads a {@link ox#Hex.Hex} value to the right with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts\n * import { Hex } from 'ox'\n *\n * Hex.padRight('0x1234', 4)\n * // @log: '0x12340000'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to pad.\n * @param size - The size (in bytes) of the output hex value.\n * @returns The padded {@link ox#Hex.Hex} value.\n */\nfunction padRight(value, size) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'right', size });\n}\n/**\n * Generates a random {@link ox#Hex.Hex} value of the specified length.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * const hex = Hex.random(32)\n * // @log: '0x...'\n * ```\n *\n * @returns Random {@link ox#Hex.Hex} value.\n */\nfunction random(length) {\n return fromBytes(_Bytes_js__WEBPACK_IMPORTED_MODULE_2__.random(length));\n}\n/**\n * Returns a section of a {@link ox#Bytes.Bytes} value given a start/end bytes offset.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.slice('0x0123456789', 1, 4)\n * // @log: '0x234567'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to slice.\n * @param start - The start offset (in bytes).\n * @param end - The end offset (in bytes).\n * @param options - Options.\n * @returns The sliced {@link ox#Hex.Hex} value.\n */\nfunction slice(value, start, end, options = {}) {\n const { strict } = options;\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertStartOffset(value, start);\n const value_ = `0x${value\n .replace('0x', '')\n .slice((start ?? 0) * 2, (end ?? value.length) * 2)}`;\n if (strict)\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertEndOffset(value_, start, end);\n return value_;\n}\n/**\n * Retrieves the size of a {@link ox#Hex.Hex} value (in bytes).\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.size('0xdeadbeef')\n * // @log: 4\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to get the size of.\n * @returns The size of the {@link ox#Hex.Hex} value (in bytes).\n */\nfunction size(value) {\n return Math.ceil((value.length - 2) / 2);\n}\n/**\n * Trims leading zeros from a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.trimLeft('0x00000000deadbeef')\n * // @log: '0xdeadbeef'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to trim.\n * @returns The trimmed {@link ox#Hex.Hex} value.\n */\nfunction trimLeft(value) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'left' });\n}\n/**\n * Trims trailing zeros from a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.trimRight('0xdeadbeef00000000')\n * // @log: '0xdeadbeef'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to trim.\n * @returns The trimmed {@link ox#Hex.Hex} value.\n */\nfunction trimRight(value) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'right' });\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a BigInt.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toBigInt('0x1a4')\n * // @log: 420n\n *\n * Hex.toBigInt('0x00000000000000000000000000000000000000000000000000000000000001a4', { size: 32 })\n * // @log: 420n\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded BigInt.\n */\nfunction toBigInt(hex, options = {}) {\n const { signed } = options;\n if (options.size)\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n const value = BigInt(hex);\n if (!signed)\n return value;\n const size = (hex.length - 2) / 2;\n const max_unsigned = (1n << (BigInt(size) * 8n)) - 1n;\n const max_signed = max_unsigned >> 1n;\n if (value <= max_signed)\n return value;\n return value - max_unsigned - 1n;\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a boolean.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toBoolean('0x01')\n * // @log: true\n *\n * Hex.toBoolean('0x0000000000000000000000000000000000000000000000000000000000000001', { size: 32 })\n * // @log: true\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded boolean.\n */\nfunction toBoolean(hex, options = {}) {\n if (options.size)\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n const hex_ = trimLeft(hex);\n if (hex_ === '0x')\n return false;\n if (hex_ === '0x1')\n return true;\n throw new InvalidHexBooleanError(hex);\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * const data = Hex.toBytes('0x48656c6c6f20776f726c6421')\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded {@link ox#Bytes.Bytes}.\n */\nfunction toBytes(hex, options = {}) {\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hex, options);\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a number.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toNumber('0x1a4')\n * // @log: 420\n *\n * Hex.toNumber('0x00000000000000000000000000000000000000000000000000000000000001a4', { size: 32 })\n * // @log: 420\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded number.\n */\nfunction toNumber(hex, options = {}) {\n const { signed, size } = options;\n if (!signed && !size)\n return Number(hex);\n return Number(toBigInt(hex, options));\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a string.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toString('0x48656c6c6f20576f726c6421')\n * // @log: 'Hello world!'\n *\n * Hex.toString('0x48656c6c6f20576f726c64210000000000000000000000000000000000000000', {\n * size: 32,\n * })\n * // @log: 'Hello world'\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded string.\n */\nfunction toString(hex, options = {}) {\n const { size } = options;\n let bytes = _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hex);\n if (size) {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_3__.assertSize(bytes, size);\n bytes = _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.trimRight(bytes);\n }\n return new TextDecoder().decode(bytes);\n}\n/**\n * Checks if the given value is {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Hex } from 'ox'\n *\n * Hex.validate('0xdeadbeef')\n * // @log: true\n *\n * Hex.validate(Bytes.from([1, 2, 3]))\n * // @log: false\n * ```\n *\n * @param value - The value to check.\n * @param options - Options.\n * @returns `true` if the value is a {@link ox#Hex.Hex}, `false` otherwise.\n */\nfunction validate(value, options = {}) {\n const { strict = false } = options;\n try {\n assert(value, { strict });\n return true;\n }\n catch {\n return false;\n }\n}\n/**\n * Thrown when the provided integer is out of range, and cannot be represented as a hex value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromNumber(420182738912731283712937129)\n * // @error: Hex.IntegerOutOfRangeError: Number \\`4.2018273891273126e+26\\` is not in safe unsigned integer range (`0` to `9007199254740991`)\n * ```\n */\nclass IntegerOutOfRangeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ max, min, signed, size, value, }) {\n super(`Number \\`${value}\\` is not in safe${size ? ` ${size * 8}-bit` : ''}${signed ? ' signed' : ' unsigned'} integer range ${max ? `(\\`${min}\\` to \\`${max}\\`)` : `(above \\`${min}\\`)`}`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.IntegerOutOfRangeError'\n });\n }\n}\n/**\n * Thrown when the provided hex value cannot be represented as a boolean.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toBoolean('0xa')\n * // @error: Hex.InvalidHexBooleanError: Hex value `\"0xa\"` is not a valid boolean.\n * // @error: The hex value must be `\"0x0\"` (false) or `\"0x1\"` (true).\n * ```\n */\nclass InvalidHexBooleanError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(hex) {\n super(`Hex value \\`\"${hex}\"\\` is not a valid boolean.`, {\n metaMessages: [\n 'The hex value must be `\"0x0\"` (false) or `\"0x1\"` (true).',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidHexBooleanError'\n });\n }\n}\n/**\n * Thrown when the provided value is not a valid hex type.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.assert(1)\n * // @error: Hex.InvalidHexTypeError: Value `1` of type `number` is an invalid hex type.\n * ```\n */\nclass InvalidHexTypeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(value) {\n super(`Value \\`${typeof value === 'object' ? _Json_js__WEBPACK_IMPORTED_MODULE_5__.stringify(value) : value}\\` of type \\`${typeof value}\\` is an invalid hex type.`, {\n metaMessages: ['Hex types must be represented as `\"0x${string}\"`.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidHexTypeError'\n });\n }\n}\n/**\n * Thrown when the provided hex value is invalid.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.assert('0x0123456789abcdefg')\n * // @error: Hex.InvalidHexValueError: Value `0x0123456789abcdefg` is an invalid hex value.\n * // @error: Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).\n * ```\n */\nclass InvalidHexValueError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(value) {\n super(`Value \\`${value}\\` is an invalid hex value.`, {\n metaMessages: [\n 'Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidHexValueError'\n });\n }\n}\n/**\n * Thrown when the provided hex value is an odd length.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.fromHex('0xabcde')\n * // @error: Hex.InvalidLengthError: Hex value `\"0xabcde\"` is an odd length (5 nibbles).\n * ```\n */\nclass InvalidLengthError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(value) {\n super(`Hex value \\`\"${value}\"\\` is an odd length (${value.length - 2} nibbles).`, {\n metaMessages: ['It must be an even length.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidLengthError'\n });\n }\n}\n/**\n * Thrown when the size of the value exceeds the expected max size.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromString('Hello World!', { size: 8 })\n * // @error: Hex.SizeOverflowError: Size cannot exceed `8` bytes. Given size: `12` bytes.\n * ```\n */\nclass SizeOverflowError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ givenSize, maxSize }) {\n super(`Size cannot exceed \\`${maxSize}\\` bytes. Given size: \\`${givenSize}\\` bytes.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.SizeOverflowError'\n });\n }\n}\n/**\n * Thrown when the slice offset exceeds the bounds of the value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.slice('0x0123456789', 6)\n * // @error: Hex.SliceOffsetOutOfBoundsError: Slice starting at offset `6` is out-of-bounds (size: `5`).\n * ```\n */\nclass SliceOffsetOutOfBoundsError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ offset, position, size, }) {\n super(`Slice ${position === 'start' ? 'starting' : 'ending'} at offset \\`${offset}\\` is out-of-bounds (size: \\`${size}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.SliceOffsetOutOfBoundsError'\n });\n }\n}\n/**\n * Thrown when the size of the value exceeds the pad size.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.padLeft('0x1a4e12a45a21323123aaa87a897a897a898a6567a578a867a98778a667a85a875a87a6a787a65a675a6a9', 32)\n * // @error: Hex.SizeExceedsPaddingSizeError: Hex size (`43`) exceeds padding size (`32`).\n * ```\n */\nclass SizeExceedsPaddingSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ size, targetSize, type, }) {\n super(`${type.charAt(0).toUpperCase()}${type\n .slice(1)\n .toLowerCase()} size (\\`${size}\\`) exceeds padding size (\\`${targetSize}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.SizeExceedsPaddingSizeError'\n });\n }\n}\n//# sourceMappingURL=Hex.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0hleC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUEwRDtBQUN0QjtBQUNFO0FBQ0o7QUFDb0I7QUFDUjtBQUM5QztBQUNBLHlDQUF5QyxhQUFhO0FBQ3REO0FBQ0Esa0NBQWtDLGlCQUFpQjtBQUNuRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzREFBc0QsT0FBTztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUNBQW1DO0FBQzFDLFlBQVksaUJBQWlCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixpQkFBaUI7QUFDOUM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isa0JBQWtCO0FBQzFDLDhCQUE4QixrQkFBa0I7QUFDaEQ7QUFDTztBQUNQLGdCQUFnQix5REFBeUQ7QUFDekU7QUFDQTtBQUNBLG1CQUFtQixrQkFBa0IsNEJBQTRCLHNCQUFzQjtBQUN2RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGFBQWE7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixzQkFBc0I7QUFDN0MseUJBQXlCLGtCQUFrQjtBQUMzQztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsa0JBQWtCO0FBQy9DO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQixVQUFVO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsa0JBQWtCO0FBQzNDO0FBQ08sd0NBQXdDO0FBQy9DLHFCQUFxQixjQUFjO0FBQ25DO0FBQ0EsUUFBUSx3REFBbUI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsc0JBQXNCLGNBQWMsa0JBQWtCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHNCQUFzQjtBQUM3QztBQUNBLHlCQUF5QixrQkFBa0I7QUFDM0M7QUFDTyxzQ0FBc0M7QUFDN0M7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0EscUJBQXFCLE9BQU87QUFDNUI7QUFDQSxRQUFRLHdEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLGtCQUFrQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsVUFBVTtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLGtCQUFrQjtBQUMzQztBQUNPLHVDQUF1QztBQUM5QyxZQUFZLGVBQWU7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLFNBQVMsRUFBRSxPQUFPO0FBQ2pELG9CQUFvQixTQUFTLEVBQUUsT0FBTztBQUN0QztBQUNBO0FBQ0Esc0JBQXNCLE1BQU0sRUFBRSxPQUFPO0FBQ3JDLFNBQVM7QUFDVDtBQUNBO0FBQ0EscUJBQXFCLFlBQVk7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixrQkFBa0I7QUFDOUM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxVQUFVO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsa0JBQWtCO0FBQzNDO0FBQ08sdUNBQXVDO0FBQzlDO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixrQkFBa0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsa0JBQWtCO0FBQzlDLDZCQUE2QixrQkFBa0I7QUFDL0MsK0JBQStCLGtCQUFrQjtBQUNqRDtBQUNPO0FBQ1AsV0FBVyx3RUFBVSxDQUFDLDhDQUFhLFFBQVEsOENBQWE7QUFDeEQ7QUFDQTtBQUNBLFdBQVcsa0JBQWtCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLGtCQUFrQjtBQUN6QztBQUNBLHdCQUF3QixrQkFBa0I7QUFDMUM7QUFDTztBQUNQLFdBQVcsaURBQVksVUFBVSxtQkFBbUI7QUFDcEQ7QUFDQTtBQUNBLFdBQVcsa0JBQWtCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLGtCQUFrQjtBQUN6QztBQUNBLHdCQUF3QixrQkFBa0I7QUFDMUM7QUFDTztBQUNQLFdBQVcsaURBQVksVUFBVSxvQkFBb0I7QUFDckQ7QUFDQTtBQUNBLHVCQUF1QixrQkFBa0I7QUFDekM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ087QUFDUCxxQkFBcUIsNkNBQVk7QUFDakM7QUFDQTtBQUNBLDJCQUEyQixzQkFBc0I7QUFDakQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixrQkFBa0I7QUFDMUM7QUFDTyw4Q0FBOEM7QUFDckQsWUFBWSxTQUFTO0FBQ3JCLElBQUksK0RBQTBCO0FBQzlCLHdCQUF3QjtBQUN4QjtBQUNBLDREQUE0RDtBQUM1RDtBQUNBLFFBQVEsNkRBQXdCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixrQkFBa0I7QUFDOUM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDLDZCQUE2QixrQkFBa0I7QUFDL0M7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixrQkFBa0I7QUFDakQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDLHlCQUF5QixrQkFBa0I7QUFDM0M7QUFDTztBQUNQLFdBQVcsa0RBQWEsVUFBVSxhQUFhO0FBQy9DO0FBQ0E7QUFDQSxnQ0FBZ0Msa0JBQWtCO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLGtCQUFrQjtBQUN6Qyx5QkFBeUIsa0JBQWtCO0FBQzNDO0FBQ087QUFDUCxXQUFXLGtEQUFhLFVBQVUsY0FBYztBQUNoRDtBQUNBO0FBQ0EsY0FBYyxrQkFBa0I7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0ZBQXdGLFVBQVU7QUFDbEc7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGtCQUFrQjtBQUN2QztBQUNBO0FBQ0E7QUFDTyxtQ0FBbUM7QUFDMUMsWUFBWSxTQUFTO0FBQ3JCO0FBQ0EsUUFBUSx3REFBbUI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsa0JBQWtCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlGQUF5RixVQUFVO0FBQ25HO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixrQkFBa0I7QUFDdkM7QUFDQTtBQUNBO0FBQ08sb0NBQW9DO0FBQzNDO0FBQ0EsUUFBUSx3REFBbUI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsa0JBQWtCLGNBQWMscUJBQXFCO0FBQ25FO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGtCQUFrQjtBQUN2QztBQUNBLHlCQUF5QixxQkFBcUI7QUFDOUM7QUFDTyxrQ0FBa0M7QUFDekMsV0FBVyw4Q0FBYTtBQUN4QjtBQUNBO0FBQ0EsY0FBYyxrQkFBa0I7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0ZBQXdGLFVBQVU7QUFDbEc7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGtCQUFrQjtBQUN2QztBQUNBO0FBQ0E7QUFDTyxtQ0FBbUM7QUFDMUMsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLGtCQUFrQjtBQUNoQztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixrQkFBa0I7QUFDdkM7QUFDQTtBQUNBO0FBQ08sbUNBQW1DO0FBQzFDLFlBQVksT0FBTztBQUNuQixnQkFBZ0IsOENBQWE7QUFDN0I7QUFDQSxRQUFRLDBEQUF5QjtBQUNqQyxnQkFBZ0IsZ0RBQWU7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMsaUJBQWlCO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyxpQkFBaUI7QUFDdkQ7QUFDTyxxQ0FBcUM7QUFDNUMsWUFBWSxpQkFBaUI7QUFDN0I7QUFDQSx3QkFBd0IsUUFBUTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxxQ0FBcUMsaURBQWdCO0FBQzVELGtCQUFrQixnQ0FBZ0M7QUFDbEQsMEJBQTBCLE1BQU0sbUJBQW1CLFdBQVcsU0FBUyxXQUFXLEVBQUUsa0NBQWtDLGdCQUFnQixZQUFZLElBQUksVUFBVSxJQUFJLG1CQUFtQixJQUFJLEtBQUs7QUFDaE07QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxxQ0FBcUMsaURBQWdCO0FBQzVEO0FBQ0EsOEJBQThCLElBQUk7QUFDbEM7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLGtDQUFrQyxpREFBZ0I7QUFDekQ7QUFDQSx5QkFBeUIsNEJBQTRCLCtDQUFjLGdCQUFnQixlQUFlLGFBQWE7QUFDL0csbUVBQW1FLE9BQU87QUFDMUUsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUNBQW1DLGlEQUFnQjtBQUMxRDtBQUNBLHlCQUF5QixNQUFNO0FBQy9CO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxpQ0FBaUMsaURBQWdCO0FBQ3hEO0FBQ0EsOEJBQThCLE1BQU0sd0JBQXdCLGtCQUFrQjtBQUM5RTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0Esb0NBQW9DLFNBQVM7QUFDN0M7QUFDQTtBQUNBO0FBQ08sZ0NBQWdDLGlEQUFnQjtBQUN2RCxrQkFBa0Isb0JBQW9CO0FBQ3RDLHNDQUFzQyxRQUFRLDBCQUEwQixVQUFVO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDBDQUEwQyxpREFBZ0I7QUFDakUsa0JBQWtCLHlCQUF5QjtBQUMzQyx1QkFBdUIsOENBQThDLGNBQWMsT0FBTywrQkFBK0IsS0FBSztBQUM5SDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTywwQ0FBMEMsaURBQWdCO0FBQ2pFLGtCQUFrQix5QkFBeUI7QUFDM0MsaUJBQWlCLDZCQUE2QixFQUFFO0FBQ2hEO0FBQ0EsNEJBQTRCLFVBQVUsS0FBSyw4QkFBOEIsV0FBVztBQUNwRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0hleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlcXVhbEJ5dGVzIH0gZnJvbSAnQG5vYmxlL2N1cnZlcy9hYnN0cmFjdC91dGlscyc7XG5pbXBvcnQgKiBhcyBCeXRlcyBmcm9tICcuL0J5dGVzLmpzJztcbmltcG9ydCAqIGFzIEVycm9ycyBmcm9tICcuL0Vycm9ycy5qcyc7XG5pbXBvcnQgKiBhcyBKc29uIGZyb20gJy4vSnNvbi5qcyc7XG5pbXBvcnQgKiBhcyBpbnRlcm5hbF9ieXRlcyBmcm9tICcuL2ludGVybmFsL2J5dGVzLmpzJztcbmltcG9ydCAqIGFzIGludGVybmFsIGZyb20gJy4vaW50ZXJuYWwvaGV4LmpzJztcbmNvbnN0IGVuY29kZXIgPSAvKiNfX1BVUkVfXyovIG5ldyBUZXh0RW5jb2RlcigpO1xuY29uc3QgaGV4ZXMgPSAvKiNfX1BVUkVfXyovIEFycmF5LmZyb20oeyBsZW5ndGg6IDI1NiB9LCAoX3YsIGkpID0+IGkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsICcwJykpO1xuLyoqXG4gKiBBc3NlcnRzIGlmIHRoZSBnaXZlbiB2YWx1ZSBpcyB7QGxpbmsgb3gjSGV4LkhleH0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguYXNzZXJ0KCdhYmMnKVxuICogLy8gQGVycm9yOiBJbnZhbGlkSGV4VmFsdWVUeXBlRXJyb3I6XG4gKiAvLyBAZXJyb3I6IFZhbHVlIGBcImFiY1wiYCBvZiB0eXBlIGBzdHJpbmdgIGlzIGFuIGludmFsaWQgaGV4IHR5cGUuXG4gKiAvLyBAZXJyb3I6IEhleCB0eXBlcyBtdXN0IGJlIHJlcHJlc2VudGVkIGFzIGBcIjB4XFwke3N0cmluZ31cImAuXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gYXNzZXJ0LlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHN0cmljdCA9IGZhbHNlIH0gPSBvcHRpb25zO1xuICAgIGlmICghdmFsdWUpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkSGV4VHlwZUVycm9yKHZhbHVlKTtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJylcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRIZXhUeXBlRXJyb3IodmFsdWUpO1xuICAgIGlmIChzdHJpY3QpIHtcbiAgICAgICAgaWYgKCEvXjB4WzAtOWEtZkEtRl0qJC8udGVzdCh2YWx1ZSkpXG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEhleFZhbHVlRXJyb3IodmFsdWUpO1xuICAgIH1cbiAgICBpZiAoIXZhbHVlLnN0YXJ0c1dpdGgoJzB4JykpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkSGV4VmFsdWVFcnJvcih2YWx1ZSk7XG59XG4vKipcbiAqIENvbmNhdGVuYXRlcyB0d28gb3IgbW9yZSB7QGxpbmsgb3gjSGV4LkhleH0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguY29uY2F0KCcweDEyMycsICcweDQ1NicpXG4gKiAvLyBAbG9nOiAnMHgxMjM0NTYnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWVzIC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZXMgdG8gY29uY2F0ZW5hdGUuXG4gKiBAcmV0dXJucyBUaGUgY29uY2F0ZW5hdGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbmNhdCguLi52YWx1ZXMpIHtcbiAgICByZXR1cm4gYDB4JHt2YWx1ZXMucmVkdWNlKChhY2MsIHgpID0+IGFjYyArIHgucmVwbGFjZSgnMHgnLCAnJyksICcnKX1gO1xufVxuLyoqXG4gKiBJbnN0YW50aWF0ZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgZnJvbSBhIGhleCBzdHJpbmcgb3Ige0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqXG4gKiA6Ojp0aXBcbiAqXG4gKiBUbyBpbnN0YW50aWF0ZSBmcm9tIGEgKipCb29sZWFuKiosICoqU3RyaW5nKiosIG9yICoqTnVtYmVyKiosIHVzZSBvbmUgb2YgdGhlIGZvbGxvd2luZzpcbiAqXG4gKiAtIGBIZXguZnJvbUJvb2xlYW5gXG4gKlxuICogLSBgSGV4LmZyb21TdHJpbmdgXG4gKlxuICogLSBgSGV4LmZyb21OdW1iZXJgXG4gKlxuICogOjo6XG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcywgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LmZyb20oJzB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxJylcbiAqIC8vIEBsb2c6ICcweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSdcbiAqXG4gKiBIZXguZnJvbShCeXRlcy5mcm9tKFs3MiwgMTAxLCAxMDgsIDEwOCwgMTExLCAzMiwgODcsIDExMSwgMTE0LCAxMDgsIDEwMCwgMzNdKSlcbiAqIC8vIEBsb2c6ICcweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvIGVuY29kZS5cbiAqIEByZXR1cm5zIFRoZSBlbmNvZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb20odmFsdWUpIHtcbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBVaW50OEFycmF5KVxuICAgICAgICByZXR1cm4gZnJvbUJ5dGVzKHZhbHVlKTtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpXG4gICAgICAgIHJldHVybiBmcm9tQnl0ZXMobmV3IFVpbnQ4QXJyYXkodmFsdWUpKTtcbiAgICByZXR1cm4gdmFsdWU7XG59XG4vKipcbiAqIEVuY29kZXMgYSBib29sZWFuIGludG8gYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguZnJvbUJvb2xlYW4odHJ1ZSlcbiAqIC8vIEBsb2c6ICcweDEnXG4gKlxuICogSGV4LmZyb21Cb29sZWFuKGZhbHNlKVxuICogLy8gQGxvZzogJzB4MCdcbiAqXG4gKiBIZXguZnJvbUJvb2xlYW4odHJ1ZSwgeyBzaXplOiAzMiB9KVxuICogLy8gQGxvZzogJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMSdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBib29sZWFuIHZhbHVlIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBlbmNvZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21Cb29sZWFuKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCBoZXggPSBgMHgke051bWJlcih2YWx1ZSl9YDtcbiAgICBpZiAodHlwZW9mIG9wdGlvbnMuc2l6ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShoZXgsIG9wdGlvbnMuc2l6ZSk7XG4gICAgICAgIHJldHVybiBwYWRMZWZ0KGhleCwgb3B0aW9ucy5zaXplKTtcbiAgICB9XG4gICAgcmV0dXJuIGhleDtcbn1cbi8qKlxuICogRW5jb2RlcyBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUgaW50byBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzLCBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguZnJvbUJ5dGVzKEJ5dGVzLmZyb20oWzcyLCAxMDEsIDEwOCwgMTA4LCAxMTEsIDMyLCA4NywgMTExLCAxMTQsIDEwOCwgMTAwLCAzM10pKVxuICogLy8gQGxvZzogJzB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUgdG8gZW5jb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgVGhlIGVuY29kZWQge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUJ5dGVzKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBsZXQgc3RyaW5nID0gJyc7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKylcbiAgICAgICAgc3RyaW5nICs9IGhleGVzW3ZhbHVlW2ldXTtcbiAgICBjb25zdCBoZXggPSBgMHgke3N0cmluZ31gO1xuICAgIGlmICh0eXBlb2Ygb3B0aW9ucy5zaXplID09PSAnbnVtYmVyJykge1xuICAgICAgICBpbnRlcm5hbC5hc3NlcnRTaXplKGhleCwgb3B0aW9ucy5zaXplKTtcbiAgICAgICAgcmV0dXJuIHBhZFJpZ2h0KGhleCwgb3B0aW9ucy5zaXplKTtcbiAgICB9XG4gICAgcmV0dXJuIGhleDtcbn1cbi8qKlxuICogRW5jb2RlcyBhIG51bWJlciBvciBiaWdpbnQgaW50byBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5mcm9tTnVtYmVyKDQyMClcbiAqIC8vIEBsb2c6ICcweDFhNCdcbiAqXG4gKiBIZXguZnJvbU51bWJlcig0MjAsIHsgc2l6ZTogMzIgfSlcbiAqIC8vIEBsb2c6ICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxYTQnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgbnVtYmVyIG9yIGJpZ2ludCB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgZW5jb2RlZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tTnVtYmVyKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpZ25lZCwgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB2YWx1ZV8gPSBCaWdJbnQodmFsdWUpO1xuICAgIGxldCBtYXhWYWx1ZTtcbiAgICBpZiAoc2l6ZSkge1xuICAgICAgICBpZiAoc2lnbmVkKVxuICAgICAgICAgICAgbWF4VmFsdWUgPSAoMW4gPDwgKEJpZ0ludChzaXplKSAqIDhuIC0gMW4pKSAtIDFuO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBtYXhWYWx1ZSA9IDJuICoqIChCaWdJbnQoc2l6ZSkgKiA4bikgLSAxbjtcbiAgICB9XG4gICAgZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgICBtYXhWYWx1ZSA9IEJpZ0ludChOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7XG4gICAgfVxuICAgIGNvbnN0IG1pblZhbHVlID0gdHlwZW9mIG1heFZhbHVlID09PSAnYmlnaW50JyAmJiBzaWduZWQgPyAtbWF4VmFsdWUgLSAxbiA6IDA7XG4gICAgaWYgKChtYXhWYWx1ZSAmJiB2YWx1ZV8gPiBtYXhWYWx1ZSkgfHwgdmFsdWVfIDwgbWluVmFsdWUpIHtcbiAgICAgICAgY29uc3Qgc3VmZml4ID0gdHlwZW9mIHZhbHVlID09PSAnYmlnaW50JyA/ICduJyA6ICcnO1xuICAgICAgICB0aHJvdyBuZXcgSW50ZWdlck91dE9mUmFuZ2VFcnJvcih7XG4gICAgICAgICAgICBtYXg6IG1heFZhbHVlID8gYCR7bWF4VmFsdWV9JHtzdWZmaXh9YCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIG1pbjogYCR7bWluVmFsdWV9JHtzdWZmaXh9YCxcbiAgICAgICAgICAgIHNpZ25lZCxcbiAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICB2YWx1ZTogYCR7dmFsdWV9JHtzdWZmaXh9YCxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IHN0cmluZ1ZhbHVlID0gKHNpZ25lZCAmJiB2YWx1ZV8gPCAwID8gKDFuIDw8IEJpZ0ludChzaXplICogOCkpICsgQmlnSW50KHZhbHVlXykgOiB2YWx1ZV8pLnRvU3RyaW5nKDE2KTtcbiAgICBjb25zdCBoZXggPSBgMHgke3N0cmluZ1ZhbHVlfWA7XG4gICAgaWYgKHNpemUpXG4gICAgICAgIHJldHVybiBwYWRMZWZ0KGhleCwgc2l6ZSk7XG4gICAgcmV0dXJuIGhleDtcbn1cbi8qKlxuICogRW5jb2RlcyBhIHN0cmluZyBpbnRvIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKiBIZXguZnJvbVN0cmluZygnSGVsbG8gV29ybGQhJylcbiAqIC8vICcweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSdcbiAqXG4gKiBIZXguZnJvbVN0cmluZygnSGVsbG8gV29ybGQhJywgeyBzaXplOiAzMiB9KVxuICogLy8gJzB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBzdHJpbmcgdmFsdWUgdG8gZW5jb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgVGhlIGVuY29kZWQge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbVN0cmluZyh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgcmV0dXJuIGZyb21CeXRlcyhlbmNvZGVyLmVuY29kZSh2YWx1ZSksIG9wdGlvbnMpO1xufVxuLyoqXG4gKiBDaGVja3MgaWYgdHdvIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZXMgYXJlIGVxdWFsLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LmlzRXF1YWwoJzB4ZGVhZGJlZWYnLCAnMHhkZWFkYmVlZicpXG4gKiAvLyBAbG9nOiB0cnVlXG4gKlxuICogSGV4LmlzRXF1YWwoJzB4ZGEnLCAnMHhiYScpXG4gKiAvLyBAbG9nOiBmYWxzZVxuICogYGBgXG4gKlxuICogQHBhcmFtIGhleEEgLSBUaGUgZmlyc3Qge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICogQHBhcmFtIGhleEIgLSBUaGUgc2Vjb25kIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdHdvIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZXMgYXJlIGVxdWFsLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRXF1YWwoaGV4QSwgaGV4Qikge1xuICAgIHJldHVybiBlcXVhbEJ5dGVzKEJ5dGVzLmZyb21IZXgoaGV4QSksIEJ5dGVzLmZyb21IZXgoaGV4QikpO1xufVxuLyoqXG4gKiBQYWRzIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIHRoZSBsZWZ0IHdpdGggemVybyBieXRlcyB1bnRpbCBpdCByZWFjaGVzIHRoZSBnaXZlbiBgc2l6ZWAgKGRlZmF1bHQ6IDMyIGJ5dGVzKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5wYWRMZWZ0KCcweDEyMzQnLCA0KVxuICogLy8gQGxvZzogJzB4MDAwMDEyMzQnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIHBhZC5cbiAqIEBwYXJhbSBzaXplIC0gVGhlIHNpemUgKGluIGJ5dGVzKSBvZiB0aGUgb3V0cHV0IGhleCB2YWx1ZS5cbiAqIEByZXR1cm5zIFRoZSBwYWRkZWQge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFkTGVmdCh2YWx1ZSwgc2l6ZSkge1xuICAgIHJldHVybiBpbnRlcm5hbC5wYWQodmFsdWUsIHsgZGlyOiAnbGVmdCcsIHNpemUgfSk7XG59XG4vKipcbiAqIFBhZHMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgdG8gdGhlIHJpZ2h0IHdpdGggemVybyBieXRlcyB1bnRpbCBpdCByZWFjaGVzIHRoZSBnaXZlbiBgc2l6ZWAgKGRlZmF1bHQ6IDMyIGJ5dGVzKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5wYWRSaWdodCgnMHgxMjM0JywgNClcbiAqIC8vIEBsb2c6ICcweDEyMzQwMDAwJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBwYWQuXG4gKiBAcGFyYW0gc2l6ZSAtIFRoZSBzaXplIChpbiBieXRlcykgb2YgdGhlIG91dHB1dCBoZXggdmFsdWUuXG4gKiBAcmV0dXJucyBUaGUgcGFkZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhZFJpZ2h0KHZhbHVlLCBzaXplKSB7XG4gICAgcmV0dXJuIGludGVybmFsLnBhZCh2YWx1ZSwgeyBkaXI6ICdyaWdodCcsIHNpemUgfSk7XG59XG4vKipcbiAqIEdlbmVyYXRlcyBhIHJhbmRvbSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgb2YgdGhlIHNwZWNpZmllZCBsZW5ndGguXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBoZXggPSBIZXgucmFuZG9tKDMyKVxuICogLy8gQGxvZzogJzB4Li4uJ1xuICogYGBgXG4gKlxuICogQHJldHVybnMgUmFuZG9tIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJhbmRvbShsZW5ndGgpIHtcbiAgICByZXR1cm4gZnJvbUJ5dGVzKEJ5dGVzLnJhbmRvbShsZW5ndGgpKTtcbn1cbi8qKlxuICogUmV0dXJucyBhIHNlY3Rpb24gb2YgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIGdpdmVuIGEgc3RhcnQvZW5kIGJ5dGVzIG9mZnNldC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5zbGljZSgnMHgwMTIzNDU2Nzg5JywgMSwgNClcbiAqIC8vIEBsb2c6ICcweDIzNDU2NydcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgdG8gc2xpY2UuXG4gKiBAcGFyYW0gc3RhcnQgLSBUaGUgc3RhcnQgb2Zmc2V0IChpbiBieXRlcykuXG4gKiBAcGFyYW0gZW5kIC0gVGhlIGVuZCBvZmZzZXQgKGluIGJ5dGVzKS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBzbGljZWQge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2xpY2UodmFsdWUsIHN0YXJ0LCBlbmQsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc3RyaWN0IH0gPSBvcHRpb25zO1xuICAgIGludGVybmFsLmFzc2VydFN0YXJ0T2Zmc2V0KHZhbHVlLCBzdGFydCk7XG4gICAgY29uc3QgdmFsdWVfID0gYDB4JHt2YWx1ZVxuICAgICAgICAucmVwbGFjZSgnMHgnLCAnJylcbiAgICAgICAgLnNsaWNlKChzdGFydCA/PyAwKSAqIDIsIChlbmQgPz8gdmFsdWUubGVuZ3RoKSAqIDIpfWA7XG4gICAgaWYgKHN0cmljdClcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0RW5kT2Zmc2V0KHZhbHVlXywgc3RhcnQsIGVuZCk7XG4gICAgcmV0dXJuIHZhbHVlXztcbn1cbi8qKlxuICogUmV0cmlldmVzIHRoZSBzaXplIG9mIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIChpbiBieXRlcykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguc2l6ZSgnMHhkZWFkYmVlZicpXG4gKiAvLyBAbG9nOiA0XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIGdldCB0aGUgc2l6ZSBvZi5cbiAqIEByZXR1cm5zIFRoZSBzaXplIG9mIHRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgKGluIGJ5dGVzKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNpemUodmFsdWUpIHtcbiAgICByZXR1cm4gTWF0aC5jZWlsKCh2YWx1ZS5sZW5ndGggLSAyKSAvIDIpO1xufVxuLyoqXG4gKiBUcmltcyBsZWFkaW5nIHplcm9zIGZyb20gYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgudHJpbUxlZnQoJzB4MDAwMDAwMDBkZWFkYmVlZicpXG4gKiAvLyBAbG9nOiAnMHhkZWFkYmVlZidcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgdG8gdHJpbS5cbiAqIEByZXR1cm5zIFRoZSB0cmltbWVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyaW1MZWZ0KHZhbHVlKSB7XG4gICAgcmV0dXJuIGludGVybmFsLnRyaW0odmFsdWUsIHsgZGlyOiAnbGVmdCcgfSk7XG59XG4vKipcbiAqIFRyaW1zIHRyYWlsaW5nIHplcm9zIGZyb20gYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgudHJpbVJpZ2h0KCcweGRlYWRiZWVmMDAwMDAwMDAnKVxuICogLy8gQGxvZzogJzB4ZGVhZGJlZWYnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIHRyaW0uXG4gKiBAcmV0dXJucyBUaGUgdHJpbW1lZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cmltUmlnaHQodmFsdWUpIHtcbiAgICByZXR1cm4gaW50ZXJuYWwudHJpbSh2YWx1ZSwgeyBkaXI6ICdyaWdodCcgfSk7XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byBhIEJpZ0ludC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC50b0JpZ0ludCgnMHgxYTQnKVxuICogLy8gQGxvZzogNDIwblxuICpcbiAqIEhleC50b0JpZ0ludCgnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWE0JywgeyBzaXplOiAzMiB9KVxuICogLy8gQGxvZzogNDIwblxuICogYGBgXG4gKlxuICogQHBhcmFtIGhleCAtIFRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgdG8gZGVjb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgVGhlIGRlY29kZWQgQmlnSW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9CaWdJbnQoaGV4LCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpZ25lZCB9ID0gb3B0aW9ucztcbiAgICBpZiAob3B0aW9ucy5zaXplKVxuICAgICAgICBpbnRlcm5hbC5hc3NlcnRTaXplKGhleCwgb3B0aW9ucy5zaXplKTtcbiAgICBjb25zdCB2YWx1ZSA9IEJpZ0ludChoZXgpO1xuICAgIGlmICghc2lnbmVkKVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgY29uc3Qgc2l6ZSA9IChoZXgubGVuZ3RoIC0gMikgLyAyO1xuICAgIGNvbnN0IG1heF91bnNpZ25lZCA9ICgxbiA8PCAoQmlnSW50KHNpemUpICogOG4pKSAtIDFuO1xuICAgIGNvbnN0IG1heF9zaWduZWQgPSBtYXhfdW5zaWduZWQgPj4gMW47XG4gICAgaWYgKHZhbHVlIDw9IG1heF9zaWduZWQpXG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICByZXR1cm4gdmFsdWUgLSBtYXhfdW5zaWduZWQgLSAxbjtcbn1cbi8qKlxuICogRGVjb2RlcyBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSBpbnRvIGEgYm9vbGVhbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC50b0Jvb2xlYW4oJzB4MDEnKVxuICogLy8gQGxvZzogdHJ1ZVxuICpcbiAqIEhleC50b0Jvb2xlYW4oJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMScsIHsgc2l6ZTogMzIgfSlcbiAqIC8vIEBsb2c6IHRydWVcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBoZXggLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIGRlY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBkZWNvZGVkIGJvb2xlYW4uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0Jvb2xlYW4oaGV4LCBvcHRpb25zID0ge30pIHtcbiAgICBpZiAob3B0aW9ucy5zaXplKVxuICAgICAgICBpbnRlcm5hbC5hc3NlcnRTaXplKGhleCwgb3B0aW9ucy5zaXplKTtcbiAgICBjb25zdCBoZXhfID0gdHJpbUxlZnQoaGV4KTtcbiAgICBpZiAoaGV4XyA9PT0gJzB4JylcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChoZXhfID09PSAnMHgxJylcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgdGhyb3cgbmV3IEludmFsaWRIZXhCb29sZWFuRXJyb3IoaGV4KTtcbn1cbi8qKlxuICogRGVjb2RlcyBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSBpbnRvIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGRhdGEgPSBIZXgudG9CeXRlcygnMHg0ODY1NmM2YzZmMjA3NzZmNzI2YzY0MjEnKVxuICogLy8gQGxvZzogVWludDhBcnJheShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBoZXggLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIGRlY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBkZWNvZGVkIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0J5dGVzKGhleCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgcmV0dXJuIEJ5dGVzLmZyb21IZXgoaGV4LCBvcHRpb25zKTtcbn1cbi8qKlxuICogRGVjb2RlcyBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSBpbnRvIGEgbnVtYmVyLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LnRvTnVtYmVyKCcweDFhNCcpXG4gKiAvLyBAbG9nOiA0MjBcbiAqXG4gKiBIZXgudG9OdW1iZXIoJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFhNCcsIHsgc2l6ZTogMzIgfSlcbiAqIC8vIEBsb2c6IDQyMFxuICogYGBgXG4gKlxuICogQHBhcmFtIGhleCAtIFRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgdG8gZGVjb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgVGhlIGRlY29kZWQgbnVtYmVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9OdW1iZXIoaGV4LCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpZ25lZCwgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBpZiAoIXNpZ25lZCAmJiAhc2l6ZSlcbiAgICAgICAgcmV0dXJuIE51bWJlcihoZXgpO1xuICAgIHJldHVybiBOdW1iZXIodG9CaWdJbnQoaGV4LCBvcHRpb25zKSk7XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byBhIHN0cmluZy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC50b1N0cmluZygnMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEnKVxuICogLy8gQGxvZzogJ0hlbGxvIHdvcmxkISdcbiAqXG4gKiBIZXgudG9TdHJpbmcoJzB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsIHtcbiAqICBzaXplOiAzMixcbiAqIH0pXG4gKiAvLyBAbG9nOiAnSGVsbG8gd29ybGQnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gaGV4IC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgZGVjb2RlZCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1N0cmluZyhoZXgsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBsZXQgYnl0ZXMgPSBCeXRlcy5mcm9tSGV4KGhleCk7XG4gICAgaWYgKHNpemUpIHtcbiAgICAgICAgaW50ZXJuYWxfYnl0ZXMuYXNzZXJ0U2l6ZShieXRlcywgc2l6ZSk7XG4gICAgICAgIGJ5dGVzID0gQnl0ZXMudHJpbVJpZ2h0KGJ5dGVzKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShieXRlcyk7XG59XG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gdmFsdWUgaXMge0BsaW5rIG94I0hleC5IZXh9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMsIEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC52YWxpZGF0ZSgnMHhkZWFkYmVlZicpXG4gKiAvLyBAbG9nOiB0cnVlXG4gKlxuICogSGV4LnZhbGlkYXRlKEJ5dGVzLmZyb20oWzEsIDIsIDNdKSlcbiAqIC8vIEBsb2c6IGZhbHNlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHZhbHVlIGlzIGEge0BsaW5rIG94I0hleC5IZXh9LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHN0cmljdCA9IGZhbHNlIH0gPSBvcHRpb25zO1xuICAgIHRyeSB7XG4gICAgICAgIGFzc2VydCh2YWx1ZSwgeyBzdHJpY3QgfSk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjYXRjaCB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIHRoZSBwcm92aWRlZCBpbnRlZ2VyIGlzIG91dCBvZiByYW5nZSwgYW5kIGNhbm5vdCBiZSByZXByZXNlbnRlZCBhcyBhIGhleCB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5mcm9tTnVtYmVyKDQyMDE4MjczODkxMjczMTI4MzcxMjkzNzEyOSlcbiAqIC8vIEBlcnJvcjogSGV4LkludGVnZXJPdXRPZlJhbmdlRXJyb3I6IE51bWJlciBcXGA0LjIwMTgyNzM4OTEyNzMxMjZlKzI2XFxgIGlzIG5vdCBpbiBzYWZlIHVuc2lnbmVkIGludGVnZXIgcmFuZ2UgKGAwYCB0byBgOTAwNzE5OTI1NDc0MDk5MWApXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludGVnZXJPdXRPZlJhbmdlRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IG1heCwgbWluLCBzaWduZWQsIHNpemUsIHZhbHVlLCB9KSB7XG4gICAgICAgIHN1cGVyKGBOdW1iZXIgXFxgJHt2YWx1ZX1cXGAgaXMgbm90IGluIHNhZmUke3NpemUgPyBgICR7c2l6ZSAqIDh9LWJpdGAgOiAnJ30ke3NpZ25lZCA/ICcgc2lnbmVkJyA6ICcgdW5zaWduZWQnfSBpbnRlZ2VyIHJhbmdlICR7bWF4ID8gYChcXGAke21pbn1cXGAgdG8gXFxgJHttYXh9XFxgKWAgOiBgKGFib3ZlIFxcYCR7bWlufVxcYClgfWApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSGV4LkludGVnZXJPdXRPZlJhbmdlRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gdGhlIHByb3ZpZGVkIGhleCB2YWx1ZSBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgYXMgYSBib29sZWFuLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LnRvQm9vbGVhbignMHhhJylcbiAqIC8vIEBlcnJvcjogSGV4LkludmFsaWRIZXhCb29sZWFuRXJyb3I6IEhleCB2YWx1ZSBgXCIweGFcImAgaXMgbm90IGEgdmFsaWQgYm9vbGVhbi5cbiAqIC8vIEBlcnJvcjogVGhlIGhleCB2YWx1ZSBtdXN0IGJlIGBcIjB4MFwiYCAoZmFsc2UpIG9yIGBcIjB4MVwiYCAodHJ1ZSkuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRIZXhCb29sZWFuRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihoZXgpIHtcbiAgICAgICAgc3VwZXIoYEhleCB2YWx1ZSBcXGBcIiR7aGV4fVwiXFxgIGlzIG5vdCBhIHZhbGlkIGJvb2xlYW4uYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgJ1RoZSBoZXggdmFsdWUgbXVzdCBiZSBgXCIweDBcImAgKGZhbHNlKSBvciBgXCIweDFcImAgKHRydWUpLicsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0hleC5JbnZhbGlkSGV4Qm9vbGVhbkVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIHRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub3QgYSB2YWxpZCBoZXggdHlwZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5hc3NlcnQoMSlcbiAqIC8vIEBlcnJvcjogSGV4LkludmFsaWRIZXhUeXBlRXJyb3I6IFZhbHVlIGAxYCBvZiB0eXBlIGBudW1iZXJgIGlzIGFuIGludmFsaWQgaGV4IHR5cGUuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRIZXhUeXBlRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih2YWx1ZSkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHt0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnID8gSnNvbi5zdHJpbmdpZnkodmFsdWUpIDogdmFsdWV9XFxgIG9mIHR5cGUgXFxgJHt0eXBlb2YgdmFsdWV9XFxgIGlzIGFuIGludmFsaWQgaGV4IHR5cGUuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbJ0hleCB0eXBlcyBtdXN0IGJlIHJlcHJlc2VudGVkIGFzIGBcIjB4JHtzdHJpbmd9XCJgLiddLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0hleC5JbnZhbGlkSGV4VHlwZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIHRoZSBwcm92aWRlZCBoZXggdmFsdWUgaXMgaW52YWxpZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5hc3NlcnQoJzB4MDEyMzQ1Njc4OWFiY2RlZmcnKVxuICogLy8gQGVycm9yOiBIZXguSW52YWxpZEhleFZhbHVlRXJyb3I6IFZhbHVlIGAweDAxMjM0NTY3ODlhYmNkZWZnYCBpcyBhbiBpbnZhbGlkIGhleCB2YWx1ZS5cbiAqIC8vIEBlcnJvcjogSGV4IHZhbHVlcyBtdXN0IHN0YXJ0IHdpdGggYFwiMHhcImAgYW5kIGNvbnRhaW4gb25seSBoZXhhZGVjaW1hbCBjaGFyYWN0ZXJzICgwLTksIGEtZiwgQS1GKS5cbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZEhleFZhbHVlRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih2YWx1ZSkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHt2YWx1ZX1cXGAgaXMgYW4gaW52YWxpZCBoZXggdmFsdWUuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgJ0hleCB2YWx1ZXMgbXVzdCBzdGFydCB3aXRoIGBcIjB4XCJgIGFuZCBjb250YWluIG9ubHkgaGV4YWRlY2ltYWwgY2hhcmFjdGVycyAoMC05LCBhLWYsIEEtRikuJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSGV4LkludmFsaWRIZXhWYWx1ZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIHRoZSBwcm92aWRlZCBoZXggdmFsdWUgaXMgYW4gb2RkIGxlbmd0aC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogQnl0ZXMuZnJvbUhleCgnMHhhYmNkZScpXG4gKiAvLyBAZXJyb3I6IEhleC5JbnZhbGlkTGVuZ3RoRXJyb3I6IEhleCB2YWx1ZSBgXCIweGFiY2RlXCJgIGlzIGFuIG9kZCBsZW5ndGggKDUgbmliYmxlcykuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRMZW5ndGhFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHZhbHVlKSB7XG4gICAgICAgIHN1cGVyKGBIZXggdmFsdWUgXFxgXCIke3ZhbHVlfVwiXFxgIGlzIGFuIG9kZCBsZW5ndGggKCR7dmFsdWUubGVuZ3RoIC0gMn0gbmliYmxlcykuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbJ0l0IG11c3QgYmUgYW4gZXZlbiBsZW5ndGguJ10sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSGV4LkludmFsaWRMZW5ndGhFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiB0aGUgc2l6ZSBvZiB0aGUgdmFsdWUgZXhjZWVkcyB0aGUgZXhwZWN0ZWQgbWF4IHNpemUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguZnJvbVN0cmluZygnSGVsbG8gV29ybGQhJywgeyBzaXplOiA4IH0pXG4gKiAvLyBAZXJyb3I6IEhleC5TaXplT3ZlcmZsb3dFcnJvcjogU2l6ZSBjYW5ub3QgZXhjZWVkIGA4YCBieXRlcy4gR2l2ZW4gc2l6ZTogYDEyYCBieXRlcy5cbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgU2l6ZU92ZXJmbG93RXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGdpdmVuU2l6ZSwgbWF4U2l6ZSB9KSB7XG4gICAgICAgIHN1cGVyKGBTaXplIGNhbm5vdCBleGNlZWQgXFxgJHttYXhTaXplfVxcYCBieXRlcy4gR2l2ZW4gc2l6ZTogXFxgJHtnaXZlblNpemV9XFxgIGJ5dGVzLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSGV4LlNpemVPdmVyZmxvd0Vycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIHRoZSBzbGljZSBvZmZzZXQgZXhjZWVkcyB0aGUgYm91bmRzIG9mIHRoZSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5zbGljZSgnMHgwMTIzNDU2Nzg5JywgNilcbiAqIC8vIEBlcnJvcjogSGV4LlNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvcjogU2xpY2Ugc3RhcnRpbmcgYXQgb2Zmc2V0IGA2YCBpcyBvdXQtb2YtYm91bmRzIChzaXplOiBgNWApLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBTbGljZU9mZnNldE91dE9mQm91bmRzRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IG9mZnNldCwgcG9zaXRpb24sIHNpemUsIH0pIHtcbiAgICAgICAgc3VwZXIoYFNsaWNlICR7cG9zaXRpb24gPT09ICdzdGFydCcgPyAnc3RhcnRpbmcnIDogJ2VuZGluZyd9IGF0IG9mZnNldCBcXGAke29mZnNldH1cXGAgaXMgb3V0LW9mLWJvdW5kcyAoc2l6ZTogXFxgJHtzaXplfVxcYCkuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdIZXguU2xpY2VPZmZzZXRPdXRPZkJvdW5kc0Vycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIHRoZSBzaXplIG9mIHRoZSB2YWx1ZSBleGNlZWRzIHRoZSBwYWQgc2l6ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5wYWRMZWZ0KCcweDFhNGUxMmE0NWEyMTMyMzEyM2FhYTg3YTg5N2E4OTdhODk4YTY1NjdhNTc4YTg2N2E5ODc3OGE2NjdhODVhODc1YTg3YTZhNzg3YTY1YTY3NWE2YTknLCAzMilcbiAqIC8vIEBlcnJvcjogSGV4LlNpemVFeGNlZWRzUGFkZGluZ1NpemVFcnJvcjogSGV4IHNpemUgKGA0M2ApIGV4Y2VlZHMgcGFkZGluZyBzaXplIChgMzJgKS5cbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgU2l6ZUV4Y2VlZHNQYWRkaW5nU2l6ZUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBzaXplLCB0YXJnZXRTaXplLCB0eXBlLCB9KSB7XG4gICAgICAgIHN1cGVyKGAke3R5cGUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCl9JHt0eXBlXG4gICAgICAgICAgICAuc2xpY2UoMSlcbiAgICAgICAgICAgIC50b0xvd2VyQ2FzZSgpfSBzaXplIChcXGAke3NpemV9XFxgKSBleGNlZWRzIHBhZGRpbmcgc2l6ZSAoXFxgJHt0YXJnZXRTaXplfVxcYCkuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdIZXguU2l6ZUV4Y2VlZHNQYWRkaW5nU2l6ZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1IZXguanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Json.js": /*!*****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Json.js ***! \*****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parse: () => (/* binding */ parse),\n/* harmony export */ stringify: () => (/* binding */ stringify)\n/* harmony export */ });\nconst bigIntSuffix = '#__bigint';\n/**\n * Parses a JSON string, with support for `bigint`.\n *\n * @example\n * ```ts twoslash\n * import { Json } from 'ox'\n *\n * const json = Json.parse('{\"foo\":\"bar\",\"baz\":\"69420694206942069420694206942069420694206942069420#__bigint\"}')\n * // @log: {\n * // @log: foo: 'bar',\n * // @log: baz: 69420694206942069420694206942069420694206942069420n\n * // @log: }\n * ```\n *\n * @param string - The value to parse.\n * @param reviver - A function that transforms the results.\n * @returns The parsed value.\n */\nfunction parse(string, reviver) {\n return JSON.parse(string, (key, value_) => {\n const value = value_;\n if (typeof value === 'string' && value.endsWith(bigIntSuffix))\n return BigInt(value.slice(0, -bigIntSuffix.length));\n return typeof reviver === 'function' ? reviver(key, value) : value;\n });\n}\n/**\n * Stringifies a value to its JSON representation, with support for `bigint`.\n *\n * @example\n * ```ts twoslash\n * import { Json } from 'ox'\n *\n * const json = Json.stringify({\n * foo: 'bar',\n * baz: 69420694206942069420694206942069420694206942069420n,\n * })\n * // @log: '{\"foo\":\"bar\",\"baz\":\"69420694206942069420694206942069420694206942069420#__bigint\"}'\n * ```\n *\n * @param value - The value to stringify.\n * @param replacer - A function that transforms the results. It is passed the key and value of the property, and must return the value to be used in the JSON string. If this function returns `undefined`, the property is not included in the resulting JSON string.\n * @param space - A string or number that determines the indentation of the JSON string. If it is a number, it indicates the number of spaces to use as indentation; if it is a string (e.g. `'\\t'`), it uses the string as the indentation character.\n * @returns The JSON string.\n */\nfunction stringify(value, replacer, space) {\n return JSON.stringify(value, (key, value) => {\n if (typeof replacer === 'function')\n return replacer(key, value);\n if (typeof value === 'bigint')\n return value.toString() + bigIntSuffix;\n return value;\n }, space);\n}\n//# sourceMappingURL=Json.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0pzb24uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQSw2QkFBNkIsZ0ZBQWdGO0FBQzdHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSixjQUFjLGdGQUFnRjtBQUM5RjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFLQUFxSztBQUNySztBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0pzb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgYmlnSW50U3VmZml4ID0gJyNfX2JpZ2ludCc7XG4vKipcbiAqIFBhcnNlcyBhIEpTT04gc3RyaW5nLCB3aXRoIHN1cHBvcnQgZm9yIGBiaWdpbnRgLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSnNvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGpzb24gPSBKc29uLnBhcnNlKCd7XCJmb29cIjpcImJhclwiLFwiYmF6XCI6XCI2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMCNfX2JpZ2ludFwifScpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIGZvbzogJ2JhcicsXG4gKiAvLyBAbG9nOiAgIGJhejogNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjBuXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc3RyaW5nIC0gVGhlIHZhbHVlIHRvIHBhcnNlLlxuICogQHBhcmFtIHJldml2ZXIgLSBBIGZ1bmN0aW9uIHRoYXQgdHJhbnNmb3JtcyB0aGUgcmVzdWx0cy5cbiAqIEByZXR1cm5zIFRoZSBwYXJzZWQgdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZShzdHJpbmcsIHJldml2ZXIpIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShzdHJpbmcsIChrZXksIHZhbHVlXykgPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlXztcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgdmFsdWUuZW5kc1dpdGgoYmlnSW50U3VmZml4KSlcbiAgICAgICAgICAgIHJldHVybiBCaWdJbnQodmFsdWUuc2xpY2UoMCwgLWJpZ0ludFN1ZmZpeC5sZW5ndGgpKTtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiByZXZpdmVyID09PSAnZnVuY3Rpb24nID8gcmV2aXZlcihrZXksIHZhbHVlKSA6IHZhbHVlO1xuICAgIH0pO1xufVxuLyoqXG4gKiBTdHJpbmdpZmllcyBhIHZhbHVlIHRvIGl0cyBKU09OIHJlcHJlc2VudGF0aW9uLCB3aXRoIHN1cHBvcnQgZm9yIGBiaWdpbnRgLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSnNvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGpzb24gPSBKc29uLnN0cmluZ2lmeSh7XG4gKiAgIGZvbzogJ2JhcicsXG4gKiAgIGJhejogNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjBuLFxuICogfSlcbiAqIC8vIEBsb2c6ICd7XCJmb29cIjpcImJhclwiLFwiYmF6XCI6XCI2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMCNfX2JpZ2ludFwifSdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzdHJpbmdpZnkuXG4gKiBAcGFyYW0gcmVwbGFjZXIgLSBBIGZ1bmN0aW9uIHRoYXQgdHJhbnNmb3JtcyB0aGUgcmVzdWx0cy4gSXQgaXMgcGFzc2VkIHRoZSBrZXkgYW5kIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSwgYW5kIG11c3QgcmV0dXJuIHRoZSB2YWx1ZSB0byBiZSB1c2VkIGluIHRoZSBKU09OIHN0cmluZy4gSWYgdGhpcyBmdW5jdGlvbiByZXR1cm5zIGB1bmRlZmluZWRgLCB0aGUgcHJvcGVydHkgaXMgbm90IGluY2x1ZGVkIGluIHRoZSByZXN1bHRpbmcgSlNPTiBzdHJpbmcuXG4gKiBAcGFyYW0gc3BhY2UgLSBBIHN0cmluZyBvciBudW1iZXIgdGhhdCBkZXRlcm1pbmVzIHRoZSBpbmRlbnRhdGlvbiBvZiB0aGUgSlNPTiBzdHJpbmcuIElmIGl0IGlzIGEgbnVtYmVyLCBpdCBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBzcGFjZXMgdG8gdXNlIGFzIGluZGVudGF0aW9uOyBpZiBpdCBpcyBhIHN0cmluZyAoZS5nLiBgJ1xcdCdgKSwgaXQgdXNlcyB0aGUgc3RyaW5nIGFzIHRoZSBpbmRlbnRhdGlvbiBjaGFyYWN0ZXIuXG4gKiBAcmV0dXJucyBUaGUgSlNPTiBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdpZnkodmFsdWUsIHJlcGxhY2VyLCBzcGFjZSkge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSwgKGtleSwgdmFsdWUpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIHJldHVybiByZXBsYWNlcihrZXksIHZhbHVlKTtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcpXG4gICAgICAgICAgICByZXR1cm4gdmFsdWUudG9TdHJpbmcoKSArIGJpZ0ludFN1ZmZpeDtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0sIHNwYWNlKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUpzb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Json.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/P256.js": /*!*****************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/P256.js ***! \*****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getPublicKey: () => (/* binding */ getPublicKey),\n/* harmony export */ noble: () => (/* binding */ noble),\n/* harmony export */ randomPrivateKey: () => (/* binding */ randomPrivateKey),\n/* harmony export */ recoverPublicKey: () => (/* binding */ recoverPublicKey),\n/* harmony export */ sign: () => (/* binding */ sign),\n/* harmony export */ verify: () => (/* binding */ verify)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_p256__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/curves/p256 */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/p256.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PublicKey.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/PublicKey.js\");\n/* harmony import */ var _internal_entropy_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internal/entropy.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/entropy.js\");\n\n\n\n\n\n/** Re-export of noble/curves P256 utilities. */\nconst noble = _noble_curves_p256__WEBPACK_IMPORTED_MODULE_0__.secp256r1;\n/**\n * Computes the P256 ECDSA public key from a provided private key.\n *\n * @example\n * ```ts twoslash\n * import { P256 } from 'ox'\n *\n * const publicKey = P256.getPublicKey({ privateKey: '0x...' })\n * ```\n *\n * @param options - The options to compute the public key.\n * @returns The computed public key.\n */\nfunction getPublicKey(options) {\n const { privateKey } = options;\n const point = _noble_curves_p256__WEBPACK_IMPORTED_MODULE_0__.secp256r1.ProjectivePoint.fromPrivateKey(typeof privateKey === 'string'\n ? privateKey.slice(2)\n : _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(privateKey).slice(2));\n return _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__.from(point);\n}\n/**\n * Generates a random P256 ECDSA private key.\n *\n * @example\n * ```ts twoslash\n * import { P256 } from 'ox'\n *\n * const privateKey = P256.randomPrivateKey()\n * ```\n *\n * @param options - The options to generate the private key.\n * @returns The generated private key.\n */\nfunction randomPrivateKey(options = {}) {\n const { as = 'Hex' } = options;\n const bytes = _noble_curves_p256__WEBPACK_IMPORTED_MODULE_0__.secp256r1.utils.randomPrivateKey();\n if (as === 'Hex')\n return _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(bytes);\n return bytes;\n}\n/**\n * Recovers the signing public key from the signed payload and signature.\n *\n * @example\n * ```ts twoslash\n * import { P256 } from 'ox'\n *\n * const signature = P256.sign({ payload: '0xdeadbeef', privateKey: '0x...' })\n *\n * const publicKey = P256.recoverPublicKey({ // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param options - The recovery options.\n * @returns The recovered public key.\n */\nfunction recoverPublicKey(options) {\n const { payload, signature } = options;\n const { r, s, yParity } = signature;\n const signature_ = new _noble_curves_p256__WEBPACK_IMPORTED_MODULE_0__.secp256r1.Signature(BigInt(r), BigInt(s)).addRecoveryBit(yParity);\n const payload_ = payload instanceof Uint8Array ? _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(payload) : payload;\n const point = signature_.recoverPublicKey(payload_.substring(2));\n return _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__.from(point);\n}\n/**\n * Signs the payload with the provided private key and returns a P256 signature.\n *\n * @example\n * ```ts twoslash\n * import { P256 } from 'ox'\n *\n * const signature = P256.sign({ // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * privateKey: '0x...' // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param options - The signing options.\n * @returns The ECDSA {@link ox#Signature.Signature}.\n */\nfunction sign(options) {\n const { extraEntropy = _internal_entropy_js__WEBPACK_IMPORTED_MODULE_3__.extraEntropy, hash, payload, privateKey, } = options;\n const { r, s, recovery } = _noble_curves_p256__WEBPACK_IMPORTED_MODULE_0__.secp256r1.sign(payload instanceof Uint8Array ? payload : _Bytes_js__WEBPACK_IMPORTED_MODULE_4__.fromHex(payload), privateKey instanceof Uint8Array ? privateKey : _Bytes_js__WEBPACK_IMPORTED_MODULE_4__.fromHex(privateKey), {\n extraEntropy: typeof extraEntropy === 'boolean'\n ? extraEntropy\n : _Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(extraEntropy).slice(2),\n lowS: true,\n ...(hash ? { prehash: true } : {}),\n });\n return {\n r,\n s,\n yParity: recovery,\n };\n}\n/**\n * Verifies a payload was signed by the provided public key.\n *\n * @example\n *\n * ```ts twoslash\n * import { P256 } from 'ox'\n *\n * const privateKey = P256.randomPrivateKey()\n * const publicKey = P256.getPublicKey({ privateKey })\n * const signature = P256.sign({ payload: '0xdeadbeef', privateKey })\n *\n * const verified = P256.verify({ // [!code focus]\n * publicKey, // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param options - The verification options.\n * @returns Whether the payload was signed by the provided public key.\n */\nfunction verify(options) {\n const { hash, payload, publicKey, signature } = options;\n return _noble_curves_p256__WEBPACK_IMPORTED_MODULE_0__.secp256r1.verify(signature, payload instanceof Uint8Array ? payload : _Bytes_js__WEBPACK_IMPORTED_MODULE_4__.fromHex(payload), _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__.toHex(publicKey).substring(2), ...(hash ? [{ prehash: true, lowS: true }] : []));\n}\n//# sourceMappingURL=P256.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL1AyNTYuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBK0M7QUFDWDtBQUNKO0FBQ1k7QUFDSztBQUNqRDtBQUNPLGNBQWMseURBQVM7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBLHlDQUF5QyxxQkFBcUI7QUFDOUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSxhQUFhO0FBQ3pCLGtCQUFrQix5REFBUztBQUMzQjtBQUNBLFVBQVUsOENBQWE7QUFDdkIsV0FBVywrQ0FBYztBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxzQ0FBc0M7QUFDN0MsWUFBWSxhQUFhO0FBQ3pCLGtCQUFrQix5REFBUztBQUMzQjtBQUNBLGVBQWUsOENBQWE7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQSxpQ0FBaUMsNENBQTRDO0FBQzdFO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSxxQkFBcUI7QUFDakMsWUFBWSxnQkFBZ0I7QUFDNUIsMkJBQTJCLHlEQUFTO0FBQ3BDLHFEQUFxRCw4Q0FBYTtBQUNsRTtBQUNBLFdBQVcsK0NBQWM7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxPQUFPO0FBQ25CO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLDZCQUE2QjtBQUNwRDtBQUNPO0FBQ1AsWUFBWSxlQUFlLDhEQUFvQiwrQkFBK0I7QUFDOUUsWUFBWSxpQkFBaUIsRUFBRSx5REFBUyxnREFBZ0QsOENBQWEsMkRBQTJELDhDQUFhO0FBQzdLO0FBQ0E7QUFDQSxjQUFjLHlDQUFRO0FBQ3RCO0FBQ0EscUJBQXFCLGdCQUFnQixJQUFJO0FBQ3pDLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBLHlDQUF5QyxZQUFZO0FBQ3JELGlDQUFpQyxtQ0FBbUM7QUFDcEU7QUFDQSxrQ0FBa0M7QUFDbEM7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksc0NBQXNDO0FBQ2xELFdBQVcseURBQVMsNkRBQTZELDhDQUFhLFdBQVcsZ0RBQWUsd0NBQXdDLDJCQUEyQjtBQUMzTDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvUDI1Ni5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzZWNwMjU2cjEgfSBmcm9tICdAbm9ibGUvY3VydmVzL3AyNTYnO1xuaW1wb3J0ICogYXMgQnl0ZXMgZnJvbSAnLi9CeXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBIZXggZnJvbSAnLi9IZXguanMnO1xuaW1wb3J0ICogYXMgUHVibGljS2V5IGZyb20gJy4vUHVibGljS2V5LmpzJztcbmltcG9ydCAqIGFzIEVudHJvcHkgZnJvbSAnLi9pbnRlcm5hbC9lbnRyb3B5LmpzJztcbi8qKiBSZS1leHBvcnQgb2Ygbm9ibGUvY3VydmVzIFAyNTYgdXRpbGl0aWVzLiAqL1xuZXhwb3J0IGNvbnN0IG5vYmxlID0gc2VjcDI1NnIxO1xuLyoqXG4gKiBDb21wdXRlcyB0aGUgUDI1NiBFQ0RTQSBwdWJsaWMga2V5IGZyb20gYSBwcm92aWRlZCBwcml2YXRlIGtleS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFAyNTYgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBQMjU2LmdldFB1YmxpY0tleSh7IHByaXZhdGVLZXk6ICcweC4uLicgfSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gY29tcHV0ZSB0aGUgcHVibGljIGtleS5cbiAqIEByZXR1cm5zIFRoZSBjb21wdXRlZCBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHVibGljS2V5KG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHByaXZhdGVLZXkgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgcG9pbnQgPSBzZWNwMjU2cjEuUHJvamVjdGl2ZVBvaW50LmZyb21Qcml2YXRlS2V5KHR5cGVvZiBwcml2YXRlS2V5ID09PSAnc3RyaW5nJ1xuICAgICAgICA/IHByaXZhdGVLZXkuc2xpY2UoMilcbiAgICAgICAgOiBIZXguZnJvbUJ5dGVzKHByaXZhdGVLZXkpLnNsaWNlKDIpKTtcbiAgICByZXR1cm4gUHVibGljS2V5LmZyb20ocG9pbnQpO1xufVxuLyoqXG4gKiBHZW5lcmF0ZXMgYSByYW5kb20gUDI1NiBFQ0RTQSBwcml2YXRlIGtleS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFAyNTYgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwcml2YXRlS2V5ID0gUDI1Ni5yYW5kb21Qcml2YXRlS2V5KClcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gZ2VuZXJhdGUgdGhlIHByaXZhdGUga2V5LlxuICogQHJldHVybnMgVGhlIGdlbmVyYXRlZCBwcml2YXRlIGtleS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJhbmRvbVByaXZhdGVLZXkob3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBhcyA9ICdIZXgnIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGJ5dGVzID0gc2VjcDI1NnIxLnV0aWxzLnJhbmRvbVByaXZhdGVLZXkoKTtcbiAgICBpZiAoYXMgPT09ICdIZXgnKVxuICAgICAgICByZXR1cm4gSGV4LmZyb21CeXRlcyhieXRlcyk7XG4gICAgcmV0dXJuIGJ5dGVzO1xufVxuLyoqXG4gKiBSZWNvdmVycyB0aGUgc2lnbmluZyBwdWJsaWMga2V5IGZyb20gdGhlIHNpZ25lZCBwYXlsb2FkIGFuZCBzaWduYXR1cmUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBQMjU2IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gUDI1Ni5zaWduKHsgcGF5bG9hZDogJzB4ZGVhZGJlZWYnLCBwcml2YXRlS2V5OiAnMHguLi4nIH0pXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUDI1Ni5yZWNvdmVyUHVibGljS2V5KHsgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwYXlsb2FkOiAnMHhkZWFkYmVlZicsIC8vIFshY29kZSBmb2N1c11cbiAqICAgc2lnbmF0dXJlLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiB9KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSByZWNvdmVyeSBvcHRpb25zLlxuICogQHJldHVybnMgVGhlIHJlY292ZXJlZCBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVjb3ZlclB1YmxpY0tleShvcHRpb25zKSB7XG4gICAgY29uc3QgeyBwYXlsb2FkLCBzaWduYXR1cmUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgeyByLCBzLCB5UGFyaXR5IH0gPSBzaWduYXR1cmU7XG4gICAgY29uc3Qgc2lnbmF0dXJlXyA9IG5ldyBzZWNwMjU2cjEuU2lnbmF0dXJlKEJpZ0ludChyKSwgQmlnSW50KHMpKS5hZGRSZWNvdmVyeUJpdCh5UGFyaXR5KTtcbiAgICBjb25zdCBwYXlsb2FkXyA9IHBheWxvYWQgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gSGV4LmZyb21CeXRlcyhwYXlsb2FkKSA6IHBheWxvYWQ7XG4gICAgY29uc3QgcG9pbnQgPSBzaWduYXR1cmVfLnJlY292ZXJQdWJsaWNLZXkocGF5bG9hZF8uc3Vic3RyaW5nKDIpKTtcbiAgICByZXR1cm4gUHVibGljS2V5LmZyb20ocG9pbnQpO1xufVxuLyoqXG4gKiBTaWducyB0aGUgcGF5bG9hZCB3aXRoIHRoZSBwcm92aWRlZCBwcml2YXRlIGtleSBhbmQgcmV0dXJucyBhIFAyNTYgc2lnbmF0dXJlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFAyNTYuc2lnbih7IC8vIFshY29kZSBmb2N1c11cbiAqICAgcGF5bG9hZDogJzB4ZGVhZGJlZWYnLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHByaXZhdGVLZXk6ICcweC4uLicgLy8gWyFjb2RlIGZvY3VzXVxuICogfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgc2lnbmluZyBvcHRpb25zLlxuICogQHJldHVybnMgVGhlIEVDRFNBIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ24ob3B0aW9ucykge1xuICAgIGNvbnN0IHsgZXh0cmFFbnRyb3B5ID0gRW50cm9weS5leHRyYUVudHJvcHksIGhhc2gsIHBheWxvYWQsIHByaXZhdGVLZXksIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHsgciwgcywgcmVjb3ZlcnkgfSA9IHNlY3AyNTZyMS5zaWduKHBheWxvYWQgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gcGF5bG9hZCA6IEJ5dGVzLmZyb21IZXgocGF5bG9hZCksIHByaXZhdGVLZXkgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gcHJpdmF0ZUtleSA6IEJ5dGVzLmZyb21IZXgocHJpdmF0ZUtleSksIHtcbiAgICAgICAgZXh0cmFFbnRyb3B5OiB0eXBlb2YgZXh0cmFFbnRyb3B5ID09PSAnYm9vbGVhbidcbiAgICAgICAgICAgID8gZXh0cmFFbnRyb3B5XG4gICAgICAgICAgICA6IEhleC5mcm9tKGV4dHJhRW50cm9weSkuc2xpY2UoMiksXG4gICAgICAgIGxvd1M6IHRydWUsXG4gICAgICAgIC4uLihoYXNoID8geyBwcmVoYXNoOiB0cnVlIH0gOiB7fSksXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcixcbiAgICAgICAgcyxcbiAgICAgICAgeVBhcml0eTogcmVjb3ZlcnksXG4gICAgfTtcbn1cbi8qKlxuICogVmVyaWZpZXMgYSBwYXlsb2FkIHdhcyBzaWduZWQgYnkgdGhlIHByb3ZpZGVkIHB1YmxpYyBrZXkuXG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHByaXZhdGVLZXkgPSBQMjU2LnJhbmRvbVByaXZhdGVLZXkoKVxuICogY29uc3QgcHVibGljS2V5ID0gUDI1Ni5nZXRQdWJsaWNLZXkoeyBwcml2YXRlS2V5IH0pXG4gKiBjb25zdCBzaWduYXR1cmUgPSBQMjU2LnNpZ24oeyBwYXlsb2FkOiAnMHhkZWFkYmVlZicsIHByaXZhdGVLZXkgfSlcbiAqXG4gKiBjb25zdCB2ZXJpZmllZCA9IFAyNTYudmVyaWZ5KHsgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwdWJsaWNLZXksIC8vIFshY29kZSBmb2N1c11cbiAqICAgcGF5bG9hZDogJzB4ZGVhZGJlZWYnLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHNpZ25hdHVyZSwgLy8gWyFjb2RlIGZvY3VzXVxuICogfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgdmVyaWZpY2F0aW9uIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBwYXlsb2FkIHdhcyBzaWduZWQgYnkgdGhlIHByb3ZpZGVkIHB1YmxpYyBrZXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnkob3B0aW9ucykge1xuICAgIGNvbnN0IHsgaGFzaCwgcGF5bG9hZCwgcHVibGljS2V5LCBzaWduYXR1cmUgfSA9IG9wdGlvbnM7XG4gICAgcmV0dXJuIHNlY3AyNTZyMS52ZXJpZnkoc2lnbmF0dXJlLCBwYXlsb2FkIGluc3RhbmNlb2YgVWludDhBcnJheSA/IHBheWxvYWQgOiBCeXRlcy5mcm9tSGV4KHBheWxvYWQpLCBQdWJsaWNLZXkudG9IZXgocHVibGljS2V5KS5zdWJzdHJpbmcoMiksIC4uLihoYXNoID8gW3sgcHJlaGFzaDogdHJ1ZSwgbG93UzogdHJ1ZSB9XSA6IFtdKSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1QMjU2LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/P256.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/PublicKey.js": /*!**********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/PublicKey.js ***! \**********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidCompressedPrefixError: () => (/* binding */ InvalidCompressedPrefixError),\n/* harmony export */ InvalidError: () => (/* binding */ InvalidError),\n/* harmony export */ InvalidPrefixError: () => (/* binding */ InvalidPrefixError),\n/* harmony export */ InvalidSerializedSizeError: () => (/* binding */ InvalidSerializedSizeError),\n/* harmony export */ InvalidUncompressedPrefixError: () => (/* binding */ InvalidUncompressedPrefixError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ compress: () => (/* binding */ compress),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toHex: () => (/* binding */ toHex),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Json.js\");\n\n\n\n\n/**\n * Asserts that a {@link ox#PublicKey.PublicKey} is valid.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * PublicKey.assert({\n * prefix: 4,\n * y: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * })\n * // @error: PublicKey.InvalidError: Value \\`{\"y\":\"1\"}\\` is not a valid public key.\n * // @error: Public key must contain:\n * // @error: - an `x` and `prefix` value (compressed)\n * // @error: - an `x`, `y`, and `prefix` value (uncompressed)\n * ```\n *\n * @param publicKey - The public key object to assert.\n */\nfunction assert(publicKey, options = {}) {\n const { compressed } = options;\n const { prefix, x, y } = publicKey;\n // Uncompressed\n if (compressed === false ||\n (typeof x === 'bigint' && typeof y === 'bigint')) {\n if (prefix !== 4)\n throw new InvalidPrefixError({\n prefix,\n cause: new InvalidUncompressedPrefixError(),\n });\n return;\n }\n // Compressed\n if (compressed === true ||\n (typeof x === 'bigint' && typeof y === 'undefined')) {\n if (prefix !== 3 && prefix !== 2)\n throw new InvalidPrefixError({\n prefix,\n cause: new InvalidCompressedPrefixError(),\n });\n return;\n }\n // Unknown/invalid\n throw new InvalidError({ publicKey });\n}\n/**\n * Compresses a {@link ox#PublicKey.PublicKey}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n *\n * const compressed = PublicKey.compress(publicKey) // [!code focus]\n * // @log: {\n * // @log: prefix: 3,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: }\n * ```\n *\n * @param publicKey - The public key to compress.\n * @returns The compressed public key.\n */\nfunction compress(publicKey) {\n const { x, y } = publicKey;\n return {\n prefix: y % 2n === 0n ? 2 : 3,\n x,\n };\n}\n/**\n * Instantiates a typed {@link ox#PublicKey.PublicKey} object from a {@link ox#PublicKey.PublicKey}, {@link ox#Bytes.Bytes}, or {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @example\n * ### From Serialized\n *\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from('0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5')\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @param value - The public key value to instantiate.\n * @returns The instantiated {@link ox#PublicKey.PublicKey}.\n */\nfunction from(value) {\n const publicKey = (() => {\n if (_Hex_js__WEBPACK_IMPORTED_MODULE_0__.validate(value))\n return fromHex(value);\n if (_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.validate(value))\n return fromBytes(value);\n const { prefix, x, y } = value;\n if (typeof x === 'bigint' && typeof y === 'bigint')\n return { prefix: prefix ?? 0x04, x, y };\n return { prefix, x };\n })();\n assert(publicKey);\n return publicKey;\n}\n/**\n * Deserializes a {@link ox#PublicKey.PublicKey} from a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.fromBytes(new Uint8Array([128, 3, 131, ...]))\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @param publicKey - The serialized public key.\n * @returns The deserialized public key.\n */\nfunction fromBytes(publicKey) {\n return fromHex(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromBytes(publicKey));\n}\n/**\n * Deserializes a {@link ox#PublicKey.PublicKey} from a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.fromHex('0x8318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5')\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @example\n * ### Deserializing a Compressed Public Key\n *\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.fromHex('0x038318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed75')\n * // @log: {\n * // @log: prefix: 3,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: }\n * ```\n *\n * @param publicKey - The serialized public key.\n * @returns The deserialized public key.\n */\nfunction fromHex(publicKey) {\n if (publicKey.length !== 132 &&\n publicKey.length !== 130 &&\n publicKey.length !== 68)\n throw new InvalidSerializedSizeError({ publicKey });\n if (publicKey.length === 130) {\n const x = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 0, 32));\n const y = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 32, 64));\n return {\n prefix: 4,\n x,\n y,\n };\n }\n if (publicKey.length === 132) {\n const prefix = Number(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 0, 1));\n const x = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 1, 33));\n const y = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 33, 65));\n return {\n prefix,\n x,\n y,\n };\n }\n const prefix = Number(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 0, 1));\n const x = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 1, 33));\n return {\n prefix,\n x,\n };\n}\n/**\n * Serializes a {@link ox#PublicKey.PublicKey} to {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n *\n * const bytes = PublicKey.toBytes(publicKey) // [!code focus]\n * // @log: Uint8Array [128, 3, 131, ...]\n * ```\n *\n * @param publicKey - The public key to serialize.\n * @returns The serialized public key.\n */\nfunction toBytes(publicKey, options = {}) {\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.fromHex(toHex(publicKey, options));\n}\n/**\n * Serializes a {@link ox#PublicKey.PublicKey} to {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n *\n * const hex = PublicKey.toHex(publicKey) // [!code focus]\n * // @log: '0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5'\n * ```\n *\n * @param publicKey - The public key to serialize.\n * @returns The serialized public key.\n */\nfunction toHex(publicKey, options = {}) {\n assert(publicKey);\n const { prefix, x, y } = publicKey;\n const { includePrefix = true } = options;\n const publicKey_ = _Hex_js__WEBPACK_IMPORTED_MODULE_0__.concat(includePrefix ? _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(prefix, { size: 1 }) : '0x', _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(x, { size: 32 }), \n // If the public key is not compressed, add the y coordinate.\n typeof y === 'bigint' ? _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(y, { size: 32 }) : '0x');\n return publicKey_;\n}\n/**\n * Validates a {@link ox#PublicKey.PublicKey}. Returns `true` if valid, `false` otherwise.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const valid = PublicKey.validate({\n * prefix: 4,\n * y: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * })\n * // @log: false\n * ```\n *\n * @param publicKey - The public key object to assert.\n */\nfunction validate(publicKey, options = {}) {\n try {\n assert(publicKey, options);\n return true;\n }\n catch (error) {\n return false;\n }\n}\n/**\n * Thrown when a public key is invalid.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * PublicKey.assert({ y: 1n })\n * // @error: PublicKey.InvalidError: Value `{\"y\":1n}` is not a valid public key.\n * // @error: Public key must contain:\n * // @error: - an `x` and `prefix` value (compressed)\n * // @error: - an `x`, `y`, and `prefix` value (uncompressed)\n * ```\n */\nclass InvalidError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor({ publicKey }) {\n super(`Value \\`${_Json_js__WEBPACK_IMPORTED_MODULE_3__.stringify(publicKey)}\\` is not a valid public key.`, {\n metaMessages: [\n 'Public key must contain:',\n '- an `x` and `prefix` value (compressed)',\n '- an `x`, `y`, and `prefix` value (uncompressed)',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidError'\n });\n }\n}\n/** Thrown when a public key has an invalid prefix. */\nclass InvalidPrefixError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor({ prefix, cause }) {\n super(`Prefix \"${prefix}\" is invalid.`, {\n cause,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidPrefixError'\n });\n }\n}\n/** Thrown when the public key has an invalid prefix for a compressed public key. */\nclass InvalidCompressedPrefixError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor() {\n super('Prefix must be 2 or 3 for compressed public keys.');\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidCompressedPrefixError'\n });\n }\n}\n/** Thrown when the public key has an invalid prefix for an uncompressed public key. */\nclass InvalidUncompressedPrefixError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor() {\n super('Prefix must be 4 for uncompressed public keys.');\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidUncompressedPrefixError'\n });\n }\n}\n/** Thrown when the public key has an invalid serialized size. */\nclass InvalidSerializedSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor({ publicKey }) {\n super(`Value \\`${publicKey}\\` is an invalid public key size.`, {\n metaMessages: [\n 'Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).',\n `Received ${_Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.from(publicKey))} bytes.`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidSerializedSizeError'\n });\n }\n}\n//# sourceMappingURL=PublicKey.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL1B1YmxpY0tleS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFvQztBQUNFO0FBQ047QUFDRTtBQUNsQztBQUNBLG1CQUFtQiw4QkFBOEI7QUFDakQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKLCtDQUErQyxRQUFRO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sdUNBQXVDO0FBQzlDLFlBQVksYUFBYTtBQUN6QixZQUFZLGVBQWU7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixXQUFXO0FBQ3hDO0FBQ0E7QUFDQSxpQkFBaUIsNkJBQTZCO0FBQzlDO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsOEJBQThCLGVBQWUsNkJBQTZCLEdBQUcscUJBQXFCLE1BQU0saUJBQWlCO0FBQ2xKO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsNkJBQTZCO0FBQzNEO0FBQ087QUFDUDtBQUNBLFlBQVksNkNBQVk7QUFDeEI7QUFDQSxZQUFZLCtDQUFjO0FBQzFCO0FBQ0EsZ0JBQWdCLGVBQWU7QUFDL0I7QUFDQSxxQkFBcUI7QUFDckIsaUJBQWlCO0FBQ2pCLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQiw4QkFBOEIsUUFBUSxzQkFBc0I7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxtQkFBbUIsOENBQWE7QUFDaEM7QUFDQTtBQUNBLG1CQUFtQiw4QkFBOEIsUUFBUSxrQkFBa0I7QUFDM0U7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLCtDQUErQyxXQUFXO0FBQzFEO0FBQ0EseUJBQXlCLDBDQUFTO0FBQ2xDLHlCQUF5QiwwQ0FBUztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QiwwQ0FBUztBQUN2Qyx5QkFBeUIsMENBQVM7QUFDbEMseUJBQXlCLDBDQUFTO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwwQ0FBUztBQUNuQyxxQkFBcUIsMENBQVM7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLDhCQUE4QixJQUFJLHFCQUFxQjtBQUN4RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sd0NBQXdDO0FBQy9DLFdBQVcsOENBQWE7QUFDeEI7QUFDQTtBQUNBLGlCQUFpQiw4QkFBOEIsSUFBSSxpQkFBaUI7QUFDcEU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHNDQUFzQztBQUM3QztBQUNBLFlBQVksZUFBZTtBQUMzQixZQUFZLHVCQUF1QjtBQUNuQyx1QkFBdUIsMkNBQVUsaUJBQWlCLCtDQUFjLFdBQVcsU0FBUyxVQUFVLCtDQUFjLE1BQU0sVUFBVTtBQUM1SDtBQUNBLDRCQUE0QiwrQ0FBYyxNQUFNLFVBQVU7QUFDMUQ7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLDZCQUE2QjtBQUM3QztBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHlDQUF5QztBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBLHNCQUFzQixPQUFPO0FBQzdCLDhDQUE4QyxPQUFPO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTywyQkFBMkIsaURBQWdCO0FBQ2xELGtCQUFrQixXQUFXO0FBQzdCLHlCQUF5QiwrQ0FBYyxZQUFZO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTyxpQ0FBaUMsaURBQWdCO0FBQ3hELGtCQUFrQixlQUFlO0FBQ2pDLHlCQUF5QixPQUFPO0FBQ2hDO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sMkNBQTJDLGlEQUFnQjtBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTyw2Q0FBNkMsaURBQWdCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLHlDQUF5QyxpREFBZ0I7QUFDaEUsa0JBQWtCLFdBQVc7QUFDN0IseUJBQXlCLFVBQVU7QUFDbkM7QUFDQTtBQUNBLDRCQUE0Qix5Q0FBUSxDQUFDLHlDQUFRLGNBQWM7QUFDM0Q7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9QdWJsaWNLZXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQnl0ZXMgZnJvbSAnLi9CeXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBFcnJvcnMgZnJvbSAnLi9FcnJvcnMuanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4vSGV4LmpzJztcbmltcG9ydCAqIGFzIEpzb24gZnJvbSAnLi9Kc29uLmpzJztcbi8qKlxuICogQXNzZXJ0cyB0aGF0IGEge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9IGlzIHZhbGlkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogUHVibGljS2V5LmFzc2VydCh7XG4gKiAgIHByZWZpeDogNCxcbiAqICAgeTogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogfSlcbiAqIC8vIEBlcnJvcjogUHVibGljS2V5LkludmFsaWRFcnJvcjogVmFsdWUgXFxge1wieVwiOlwiMVwifVxcYCBpcyBub3QgYSB2YWxpZCBwdWJsaWMga2V5LlxuICogLy8gQGVycm9yOiBQdWJsaWMga2V5IG11c3QgY29udGFpbjpcbiAqIC8vIEBlcnJvcjogLSBhbiBgeGAgYW5kIGBwcmVmaXhgIHZhbHVlIChjb21wcmVzc2VkKVxuICogLy8gQGVycm9yOiAtIGFuIGB4YCwgYHlgLCBhbmQgYHByZWZpeGAgdmFsdWUgKHVuY29tcHJlc3NlZClcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBwdWJsaWNLZXkgLSBUaGUgcHVibGljIGtleSBvYmplY3QgdG8gYXNzZXJ0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KHB1YmxpY0tleSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBjb21wcmVzc2VkIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHsgcHJlZml4LCB4LCB5IH0gPSBwdWJsaWNLZXk7XG4gICAgLy8gVW5jb21wcmVzc2VkXG4gICAgaWYgKGNvbXByZXNzZWQgPT09IGZhbHNlIHx8XG4gICAgICAgICh0eXBlb2YgeCA9PT0gJ2JpZ2ludCcgJiYgdHlwZW9mIHkgPT09ICdiaWdpbnQnKSkge1xuICAgICAgICBpZiAocHJlZml4ICE9PSA0KVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRQcmVmaXhFcnJvcih7XG4gICAgICAgICAgICAgICAgcHJlZml4LFxuICAgICAgICAgICAgICAgIGNhdXNlOiBuZXcgSW52YWxpZFVuY29tcHJlc3NlZFByZWZpeEVycm9yKCksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBDb21wcmVzc2VkXG4gICAgaWYgKGNvbXByZXNzZWQgPT09IHRydWUgfHxcbiAgICAgICAgKHR5cGVvZiB4ID09PSAnYmlnaW50JyAmJiB0eXBlb2YgeSA9PT0gJ3VuZGVmaW5lZCcpKSB7XG4gICAgICAgIGlmIChwcmVmaXggIT09IDMgJiYgcHJlZml4ICE9PSAyKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRQcmVmaXhFcnJvcih7XG4gICAgICAgICAgICAgICAgcHJlZml4LFxuICAgICAgICAgICAgICAgIGNhdXNlOiBuZXcgSW52YWxpZENvbXByZXNzZWRQcmVmaXhFcnJvcigpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gVW5rbm93bi9pbnZhbGlkXG4gICAgdGhyb3cgbmV3IEludmFsaWRFcnJvcih7IHB1YmxpY0tleSB9KTtcbn1cbi8qKlxuICogQ29tcHJlc3NlcyBhIHtAbGluayBveCNQdWJsaWNLZXkuUHVibGljS2V5fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHB1YmxpY0tleSA9IFB1YmxpY0tleS5mcm9tKHtcbiAqICAgcHJlZml4OiA0LFxuICogICB4OiA1OTI5NTk2MjgwMTExNzQ3Mjg1OTQ1NzkwODkxOTk0MTQ3MzM4OTM4MDI4NDEzMjIyNDg2MTgzOTgyMDc0NzcyOTU2NTIwMDE0OTg3N24sXG4gKiAgIHk6IDI0MDk5NjkxMjA5OTk2MjkwOTI1MjU5MzY3Njc4NTQwMjI3MTk4MjM1NDg0NTkzMzg5NDcwMzMwNjA1NjQxMDAzNTAwMjM4MDg4ODY5bixcbiAqIH0pXG4gKlxuICogY29uc3QgY29tcHJlc3NlZCA9IFB1YmxpY0tleS5jb21wcmVzcyhwdWJsaWNLZXkpIC8vIFshY29kZSBmb2N1c11cbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcHJlZml4OiAzLFxuICogLy8gQGxvZzogICB4OiA1OTI5NTk2MjgwMTExNzQ3Mjg1OTQ1NzkwODkxOTk0MTQ3MzM4OTM4MDI4NDEzMjIyNDg2MTgzOTgyMDc0NzcyOTU2NTIwMDE0OTg3N24sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gcHVibGljS2V5IC0gVGhlIHB1YmxpYyBrZXkgdG8gY29tcHJlc3MuXG4gKiBAcmV0dXJucyBUaGUgY29tcHJlc3NlZCBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tcHJlc3MocHVibGljS2V5KSB7XG4gICAgY29uc3QgeyB4LCB5IH0gPSBwdWJsaWNLZXk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJlZml4OiB5ICUgMm4gPT09IDBuID8gMiA6IDMsXG4gICAgICAgIHgsXG4gICAgfTtcbn1cbi8qKlxuICogSW5zdGFudGlhdGVzIGEgdHlwZWQge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9IG9iamVjdCBmcm9tIGEge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9LCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LCBvciB7QGxpbmsgb3gjSGV4LkhleH0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBQdWJsaWNLZXkuZnJvbSh7XG4gKiAgIHByZWZpeDogNCxcbiAqICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogICB5OiAyNDA5OTY5MTIwOTk5NjI5MDkyNTI1OTM2NzY3ODU0MDIyNzE5ODIzNTQ4NDU5MzM4OTQ3MDMzMDYwNTY0MTAwMzUwMDIzODA4ODg2OW4sXG4gKiB9KVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBwcmVmaXg6IDQsXG4gKiAvLyBAbG9nOiAgIHg6IDU5Mjk1OTYyODAxMTE3NDcyODU5NDU3OTA4OTE5OTQxNDczMzg5MzgwMjg0MTMyMjI0ODYxODM5ODIwNzQ3NzI5NTY1MjAwMTQ5ODc3bixcbiAqIC8vIEBsb2c6ICAgeTogMjQwOTk2OTEyMDk5OTYyOTA5MjUyNTkzNjc2Nzg1NDAyMjcxOTgyMzU0ODQ1OTMzODk0NzAzMzA2MDU2NDEwMDM1MDAyMzgwODg4NjluLFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBGcm9tIFNlcmlhbGl6ZWRcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb20oJzB4MDQ4MzE4NTM1YjU0MTA1ZDRhN2FhZTYwYzA4ZmM0NWY5Njg3MTgxYjRmZGZjNjI1YmQxYTc1M2ZhNzM5N2ZlZDc1MzU0N2YxMWNhODY5NjY0NmYyZjNhY2IwOGUzMTAxNmFmYWMyM2U2MzBjNWQxMWY1OWY2MWZlZjU3YjBkMmFhNScpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHByZWZpeDogNCxcbiAqIC8vIEBsb2c6ICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogLy8gQGxvZzogICB5OiAyNDA5OTY5MTIwOTk5NjI5MDkyNTI1OTM2NzY3ODU0MDIyNzE5ODIzNTQ4NDU5MzM4OTQ3MDMzMDYwNTY0MTAwMzUwMDIzODA4ODg2OW4sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgcHVibGljIGtleSB2YWx1ZSB0byBpbnN0YW50aWF0ZS5cbiAqIEByZXR1cm5zIFRoZSBpbnN0YW50aWF0ZWQge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbSh2YWx1ZSkge1xuICAgIGNvbnN0IHB1YmxpY0tleSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChIZXgudmFsaWRhdGUodmFsdWUpKVxuICAgICAgICAgICAgcmV0dXJuIGZyb21IZXgodmFsdWUpO1xuICAgICAgICBpZiAoQnl0ZXMudmFsaWRhdGUodmFsdWUpKVxuICAgICAgICAgICAgcmV0dXJuIGZyb21CeXRlcyh2YWx1ZSk7XG4gICAgICAgIGNvbnN0IHsgcHJlZml4LCB4LCB5IH0gPSB2YWx1ZTtcbiAgICAgICAgaWYgKHR5cGVvZiB4ID09PSAnYmlnaW50JyAmJiB0eXBlb2YgeSA9PT0gJ2JpZ2ludCcpXG4gICAgICAgICAgICByZXR1cm4geyBwcmVmaXg6IHByZWZpeCA/PyAweDA0LCB4LCB5IH07XG4gICAgICAgIHJldHVybiB7IHByZWZpeCwgeCB9O1xuICAgIH0pKCk7XG4gICAgYXNzZXJ0KHB1YmxpY0tleSk7XG4gICAgcmV0dXJuIHB1YmxpY0tleTtcbn1cbi8qKlxuICogRGVzZXJpYWxpemVzIGEge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9IGZyb20gYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBQdWJsaWNLZXkuZnJvbUJ5dGVzKG5ldyBVaW50OEFycmF5KFsxMjgsIDMsIDEzMSwgLi4uXSkpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHByZWZpeDogNCxcbiAqIC8vIEBsb2c6ICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogLy8gQGxvZzogICB5OiAyNDA5OTY5MTIwOTk5NjI5MDkyNTI1OTM2NzY3ODU0MDIyNzE5ODIzNTQ4NDU5MzM4OTQ3MDMzMDYwNTY0MTAwMzUwMDIzODA4ODg2OW4sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gcHVibGljS2V5IC0gVGhlIHNlcmlhbGl6ZWQgcHVibGljIGtleS5cbiAqIEByZXR1cm5zIFRoZSBkZXNlcmlhbGl6ZWQgcHVibGljIGtleS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21CeXRlcyhwdWJsaWNLZXkpIHtcbiAgICByZXR1cm4gZnJvbUhleChIZXguZnJvbUJ5dGVzKHB1YmxpY0tleSkpO1xufVxuLyoqXG4gKiBEZXNlcmlhbGl6ZXMgYSB7QGxpbmsgb3gjUHVibGljS2V5LlB1YmxpY0tleX0gZnJvbSBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHB1YmxpY0tleSA9IFB1YmxpY0tleS5mcm9tSGV4KCcweDgzMTg1MzViNTQxMDVkNGE3YWFlNjBjMDhmYzQ1Zjk2ODcxODFiNGZkZmM2MjViZDFhNzUzZmE3Mzk3ZmVkNzUzNTQ3ZjExY2E4Njk2NjQ2ZjJmM2FjYjA4ZTMxMDE2YWZhYzIzZTYzMGM1ZDExZjU5ZjYxZmVmNTdiMGQyYWE1JylcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcHJlZml4OiA0LFxuICogLy8gQGxvZzogICB4OiA1OTI5NTk2MjgwMTExNzQ3Mjg1OTQ1NzkwODkxOTk0MTQ3MzM4OTM4MDI4NDEzMjIyNDg2MTgzOTgyMDc0NzcyOTU2NTIwMDE0OTg3N24sXG4gKiAvLyBAbG9nOiAgIHk6IDI0MDk5NjkxMjA5OTk2MjkwOTI1MjU5MzY3Njc4NTQwMjI3MTk4MjM1NDg0NTkzMzg5NDcwMzMwNjA1NjQxMDAzNTAwMjM4MDg4ODY5bixcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgRGVzZXJpYWxpemluZyBhIENvbXByZXNzZWQgUHVibGljIEtleVxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBQdWJsaWNLZXkuZnJvbUhleCgnMHgwMzgzMTg1MzViNTQxMDVkNGE3YWFlNjBjMDhmYzQ1Zjk2ODcxODFiNGZkZmM2MjViZDFhNzUzZmE3Mzk3ZmVkNzUnKVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBwcmVmaXg6IDMsXG4gKiAvLyBAbG9nOiAgIHg6IDU5Mjk1OTYyODAxMTE3NDcyODU5NDU3OTA4OTE5OTQxNDczMzg5MzgwMjg0MTMyMjI0ODYxODM5ODIwNzQ3NzI5NTY1MjAwMTQ5ODc3bixcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBwdWJsaWNLZXkgLSBUaGUgc2VyaWFsaXplZCBwdWJsaWMga2V5LlxuICogQHJldHVybnMgVGhlIGRlc2VyaWFsaXplZCBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUhleChwdWJsaWNLZXkpIHtcbiAgICBpZiAocHVibGljS2V5Lmxlbmd0aCAhPT0gMTMyICYmXG4gICAgICAgIHB1YmxpY0tleS5sZW5ndGggIT09IDEzMCAmJlxuICAgICAgICBwdWJsaWNLZXkubGVuZ3RoICE9PSA2OClcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRTZXJpYWxpemVkU2l6ZUVycm9yKHsgcHVibGljS2V5IH0pO1xuICAgIGlmIChwdWJsaWNLZXkubGVuZ3RoID09PSAxMzApIHtcbiAgICAgICAgY29uc3QgeCA9IEJpZ0ludChIZXguc2xpY2UocHVibGljS2V5LCAwLCAzMikpO1xuICAgICAgICBjb25zdCB5ID0gQmlnSW50KEhleC5zbGljZShwdWJsaWNLZXksIDMyLCA2NCkpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcHJlZml4OiA0LFxuICAgICAgICAgICAgeCxcbiAgICAgICAgICAgIHksXG4gICAgICAgIH07XG4gICAgfVxuICAgIGlmIChwdWJsaWNLZXkubGVuZ3RoID09PSAxMzIpIHtcbiAgICAgICAgY29uc3QgcHJlZml4ID0gTnVtYmVyKEhleC5zbGljZShwdWJsaWNLZXksIDAsIDEpKTtcbiAgICAgICAgY29uc3QgeCA9IEJpZ0ludChIZXguc2xpY2UocHVibGljS2V5LCAxLCAzMykpO1xuICAgICAgICBjb25zdCB5ID0gQmlnSW50KEhleC5zbGljZShwdWJsaWNLZXksIDMzLCA2NSkpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcHJlZml4LFxuICAgICAgICAgICAgeCxcbiAgICAgICAgICAgIHksXG4gICAgICAgIH07XG4gICAgfVxuICAgIGNvbnN0IHByZWZpeCA9IE51bWJlcihIZXguc2xpY2UocHVibGljS2V5LCAwLCAxKSk7XG4gICAgY29uc3QgeCA9IEJpZ0ludChIZXguc2xpY2UocHVibGljS2V5LCAxLCAzMykpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHByZWZpeCxcbiAgICAgICAgeCxcbiAgICB9O1xufVxuLyoqXG4gKiBTZXJpYWxpemVzIGEge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9IHRvIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBQdWJsaWNLZXkuZnJvbSh7XG4gKiAgIHByZWZpeDogNCxcbiAqICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogICB5OiAyNDA5OTY5MTIwOTk5NjI5MDkyNTI1OTM2NzY3ODU0MDIyNzE5ODIzNTQ4NDU5MzM4OTQ3MDMzMDYwNTY0MTAwMzUwMDIzODA4ODg2OW4sXG4gKiB9KVxuICpcbiAqIGNvbnN0IGJ5dGVzID0gUHVibGljS2V5LnRvQnl0ZXMocHVibGljS2V5KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5IFsxMjgsIDMsIDEzMSwgLi4uXVxuICogYGBgXG4gKlxuICogQHBhcmFtIHB1YmxpY0tleSAtIFRoZSBwdWJsaWMga2V5IHRvIHNlcmlhbGl6ZS5cbiAqIEByZXR1cm5zIFRoZSBzZXJpYWxpemVkIHB1YmxpYyBrZXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0J5dGVzKHB1YmxpY0tleSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgcmV0dXJuIEJ5dGVzLmZyb21IZXgodG9IZXgocHVibGljS2V5LCBvcHRpb25zKSk7XG59XG4vKipcbiAqIFNlcmlhbGl6ZXMgYSB7QGxpbmsgb3gjUHVibGljS2V5LlB1YmxpY0tleX0gdG8ge0BsaW5rIG94I0hleC5IZXh9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb20oe1xuICogICBwcmVmaXg6IDQsXG4gKiAgIHg6IDU5Mjk1OTYyODAxMTE3NDcyODU5NDU3OTA4OTE5OTQxNDczMzg5MzgwMjg0MTMyMjI0ODYxODM5ODIwNzQ3NzI5NTY1MjAwMTQ5ODc3bixcbiAqICAgeTogMjQwOTk2OTEyMDk5OTYyOTA5MjUyNTkzNjc2Nzg1NDAyMjcxOTgyMzU0ODQ1OTMzODk0NzAzMzA2MDU2NDEwMDM1MDAyMzgwODg4NjluLFxuICogfSlcbiAqXG4gKiBjb25zdCBoZXggPSBQdWJsaWNLZXkudG9IZXgocHVibGljS2V5KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyBAbG9nOiAnMHgwNDgzMTg1MzViNTQxMDVkNGE3YWFlNjBjMDhmYzQ1Zjk2ODcxODFiNGZkZmM2MjViZDFhNzUzZmE3Mzk3ZmVkNzUzNTQ3ZjExY2E4Njk2NjQ2ZjJmM2FjYjA4ZTMxMDE2YWZhYzIzZTYzMGM1ZDExZjU5ZjYxZmVmNTdiMGQyYWE1J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHB1YmxpY0tleSAtIFRoZSBwdWJsaWMga2V5IHRvIHNlcmlhbGl6ZS5cbiAqIEByZXR1cm5zIFRoZSBzZXJpYWxpemVkIHB1YmxpYyBrZXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0hleChwdWJsaWNLZXksIG9wdGlvbnMgPSB7fSkge1xuICAgIGFzc2VydChwdWJsaWNLZXkpO1xuICAgIGNvbnN0IHsgcHJlZml4LCB4LCB5IH0gPSBwdWJsaWNLZXk7XG4gICAgY29uc3QgeyBpbmNsdWRlUHJlZml4ID0gdHJ1ZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBwdWJsaWNLZXlfID0gSGV4LmNvbmNhdChpbmNsdWRlUHJlZml4ID8gSGV4LmZyb21OdW1iZXIocHJlZml4LCB7IHNpemU6IDEgfSkgOiAnMHgnLCBIZXguZnJvbU51bWJlcih4LCB7IHNpemU6IDMyIH0pLCBcbiAgICAvLyBJZiB0aGUgcHVibGljIGtleSBpcyBub3QgY29tcHJlc3NlZCwgYWRkIHRoZSB5IGNvb3JkaW5hdGUuXG4gICAgdHlwZW9mIHkgPT09ICdiaWdpbnQnID8gSGV4LmZyb21OdW1iZXIoeSwgeyBzaXplOiAzMiB9KSA6ICcweCcpO1xuICAgIHJldHVybiBwdWJsaWNLZXlfO1xufVxuLyoqXG4gKiBWYWxpZGF0ZXMgYSB7QGxpbmsgb3gjUHVibGljS2V5LlB1YmxpY0tleX0uIFJldHVybnMgYHRydWVgIGlmIHZhbGlkLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHZhbGlkID0gUHVibGljS2V5LnZhbGlkYXRlKHtcbiAqICAgcHJlZml4OiA0LFxuICogICB5OiA0OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiB9KVxuICogLy8gQGxvZzogZmFsc2VcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBwdWJsaWNLZXkgLSBUaGUgcHVibGljIGtleSBvYmplY3QgdG8gYXNzZXJ0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGUocHVibGljS2V5LCBvcHRpb25zID0ge30pIHtcbiAgICB0cnkge1xuICAgICAgICBhc3NlcnQocHVibGljS2V5LCBvcHRpb25zKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiBhIHB1YmxpYyBrZXkgaXMgaW52YWxpZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ294J1xuICpcbiAqIFB1YmxpY0tleS5hc3NlcnQoeyB5OiAxbiB9KVxuICogLy8gQGVycm9yOiBQdWJsaWNLZXkuSW52YWxpZEVycm9yOiBWYWx1ZSBge1wieVwiOjFufWAgaXMgbm90IGEgdmFsaWQgcHVibGljIGtleS5cbiAqIC8vIEBlcnJvcjogUHVibGljIGtleSBtdXN0IGNvbnRhaW46XG4gKiAvLyBAZXJyb3I6IC0gYW4gYHhgIGFuZCBgcHJlZml4YCB2YWx1ZSAoY29tcHJlc3NlZClcbiAqIC8vIEBlcnJvcjogLSBhbiBgeGAsIGB5YCwgYW5kIGBwcmVmaXhgIHZhbHVlICh1bmNvbXByZXNzZWQpXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcHVibGljS2V5IH0pIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7SnNvbi5zdHJpbmdpZnkocHVibGljS2V5KX1cXGAgaXMgbm90IGEgdmFsaWQgcHVibGljIGtleS5gLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnUHVibGljIGtleSBtdXN0IGNvbnRhaW46JyxcbiAgICAgICAgICAgICAgICAnLSBhbiBgeGAgYW5kIGBwcmVmaXhgIHZhbHVlIChjb21wcmVzc2VkKScsXG4gICAgICAgICAgICAgICAgJy0gYW4gYHhgLCBgeWAsIGFuZCBgcHJlZml4YCB2YWx1ZSAodW5jb21wcmVzc2VkKScsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1B1YmxpY0tleS5JbnZhbGlkRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiBhIHB1YmxpYyBrZXkgaGFzIGFuIGludmFsaWQgcHJlZml4LiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRQcmVmaXhFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcHJlZml4LCBjYXVzZSB9KSB7XG4gICAgICAgIHN1cGVyKGBQcmVmaXggXCIke3ByZWZpeH1cIiBpcyBpbnZhbGlkLmAsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1B1YmxpY0tleS5JbnZhbGlkUHJlZml4RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgcHVibGljIGtleSBoYXMgYW4gaW52YWxpZCBwcmVmaXggZm9yIGEgY29tcHJlc3NlZCBwdWJsaWMga2V5LiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRDb21wcmVzc2VkUHJlZml4RXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoJ1ByZWZpeCBtdXN0IGJlIDIgb3IgMyBmb3IgY29tcHJlc3NlZCBwdWJsaWMga2V5cy4nKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1B1YmxpY0tleS5JbnZhbGlkQ29tcHJlc3NlZFByZWZpeEVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKiogVGhyb3duIHdoZW4gdGhlIHB1YmxpYyBrZXkgaGFzIGFuIGludmFsaWQgcHJlZml4IGZvciBhbiB1bmNvbXByZXNzZWQgcHVibGljIGtleS4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkVW5jb21wcmVzc2VkUHJlZml4RXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoJ1ByZWZpeCBtdXN0IGJlIDQgZm9yIHVuY29tcHJlc3NlZCBwdWJsaWMga2V5cy4nKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1B1YmxpY0tleS5JbnZhbGlkVW5jb21wcmVzc2VkUHJlZml4RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgcHVibGljIGtleSBoYXMgYW4gaW52YWxpZCBzZXJpYWxpemVkIHNpemUuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZFNlcmlhbGl6ZWRTaXplRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHB1YmxpY0tleSB9KSB7XG4gICAgICAgIHN1cGVyKGBWYWx1ZSBcXGAke3B1YmxpY0tleX1cXGAgaXMgYW4gaW52YWxpZCBwdWJsaWMga2V5IHNpemUuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgJ0V4cGVjdGVkOiAzMyBieXRlcyAoY29tcHJlc3NlZCArIHByZWZpeCksIDY0IGJ5dGVzICh1bmNvbXByZXNzZWQpIG9yIDY1IGJ5dGVzICh1bmNvbXByZXNzZWQgKyBwcmVmaXgpLicsXG4gICAgICAgICAgICAgICAgYFJlY2VpdmVkICR7SGV4LnNpemUoSGV4LmZyb20ocHVibGljS2V5KSl9IGJ5dGVzLmAsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1B1YmxpY0tleS5JbnZhbGlkU2VyaWFsaXplZFNpemVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UHVibGljS2V5LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/PublicKey.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Signature.js": /*!**********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Signature.js ***! \**********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidRError: () => (/* binding */ InvalidRError),\n/* harmony export */ InvalidSError: () => (/* binding */ InvalidSError),\n/* harmony export */ InvalidSerializedSizeError: () => (/* binding */ InvalidSerializedSizeError),\n/* harmony export */ InvalidVError: () => (/* binding */ InvalidVError),\n/* harmony export */ InvalidYParityError: () => (/* binding */ InvalidYParityError),\n/* harmony export */ MissingPropertiesError: () => (/* binding */ MissingPropertiesError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ extract: () => (/* binding */ extract),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromDerBytes: () => (/* binding */ fromDerBytes),\n/* harmony export */ fromDerHex: () => (/* binding */ fromDerHex),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ fromLegacy: () => (/* binding */ fromLegacy),\n/* harmony export */ fromRpc: () => (/* binding */ fromRpc),\n/* harmony export */ fromTuple: () => (/* binding */ fromTuple),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toDerBytes: () => (/* binding */ toDerBytes),\n/* harmony export */ toDerHex: () => (/* binding */ toDerHex),\n/* harmony export */ toHex: () => (/* binding */ toHex),\n/* harmony export */ toLegacy: () => (/* binding */ toLegacy),\n/* harmony export */ toRpc: () => (/* binding */ toRpc),\n/* harmony export */ toTuple: () => (/* binding */ toTuple),\n/* harmony export */ vToYParity: () => (/* binding */ vToYParity),\n/* harmony export */ validate: () => (/* binding */ validate),\n/* harmony export */ yParityToV: () => (/* binding */ yParityToV)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @noble/curves/secp256k1 */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/secp256k1.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Json.js\");\n/* harmony import */ var _Solidity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Solidity.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Solidity.js\");\n\n\n\n\n\n\n/**\n * Asserts that a Signature is valid.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.assert({\n * r: -49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * })\n * // @error: InvalidSignatureRError:\n * // @error: Value `-549...n` is an invalid r value.\n * // @error: r must be a positive integer less than 2^256.\n * ```\n *\n * @param signature - The signature object to assert.\n */\nfunction assert(signature, options = {}) {\n const { recovered } = options;\n if (typeof signature.r === 'undefined')\n throw new MissingPropertiesError({ signature });\n if (typeof signature.s === 'undefined')\n throw new MissingPropertiesError({ signature });\n if (recovered && typeof signature.yParity === 'undefined')\n throw new MissingPropertiesError({ signature });\n if (signature.r < 0n || signature.r > _Solidity_js__WEBPACK_IMPORTED_MODULE_0__.maxUint256)\n throw new InvalidRError({ value: signature.r });\n if (signature.s < 0n || signature.s > _Solidity_js__WEBPACK_IMPORTED_MODULE_0__.maxUint256)\n throw new InvalidSError({ value: signature.s });\n if (typeof signature.yParity === 'number' &&\n signature.yParity !== 0 &&\n signature.yParity !== 1)\n throw new InvalidYParityError({ value: signature.yParity });\n}\n/**\n * Deserializes a {@link ox#Bytes.Bytes} signature into a structured {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Signature } from 'ox'\n *\n * Signature.fromBytes(new Uint8Array([128, 3, 131, ...]))\n * // @log: { r: 5231...n, s: 3522...n, yParity: 0 }\n * ```\n *\n * @param signature - The serialized signature.\n * @returns The deserialized {@link ox#Signature.Signature}.\n */\nfunction fromBytes(signature) {\n return fromHex(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(signature));\n}\n/**\n * Deserializes a {@link ox#Hex.Hex} signature into a structured {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.fromHex('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')\n * // @log: { r: 5231...n, s: 3522...n, yParity: 0 }\n * ```\n *\n * @param serialized - The serialized signature.\n * @returns The deserialized {@link ox#Signature.Signature}.\n */\nfunction fromHex(signature) {\n if (signature.length !== 130 && signature.length !== 132)\n throw new InvalidSerializedSizeError({ signature });\n const r = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(signature, 0, 32));\n const s = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(signature, 32, 64));\n const yParity = (() => {\n const yParity = Number(`0x${signature.slice(130)}`);\n if (Number.isNaN(yParity))\n return undefined;\n try {\n return vToYParity(yParity);\n }\n catch {\n throw new InvalidYParityError({ value: yParity });\n }\n })();\n if (typeof yParity === 'undefined')\n return {\n r,\n s,\n };\n return {\n r,\n s,\n yParity,\n };\n}\n/**\n * Extracts a {@link ox#Signature.Signature} from an arbitrary object that may include signature properties.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Signature } from 'ox'\n *\n * Signature.extract({\n * baz: 'barry',\n * foo: 'bar',\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * zebra: 'stripes',\n * })\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: yParity: 1\n * // @log: }\n * ```\n *\n * @param value - The arbitrary object to extract the signature from.\n * @returns The extracted {@link ox#Signature.Signature}.\n */\nfunction extract(value) {\n if (typeof value.r === 'undefined')\n return undefined;\n if (typeof value.s === 'undefined')\n return undefined;\n return from(value);\n}\n/**\n * Instantiates a typed {@link ox#Signature.Signature} object from a {@link ox#Signature.Signature}, {@link ox#Signature.Legacy}, {@link ox#Bytes.Bytes}, or {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.from({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * })\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: yParity: 1\n * // @log: }\n * ```\n *\n * @example\n * ### From Serialized\n *\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.from('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db801')\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: yParity: 1,\n * // @log: }\n * ```\n *\n * @example\n * ### From Legacy\n *\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.from({\n * r: 47323457007453657207889730243826965761922296599680473886588287015755652701072n,\n * s: 57228803202727131502949358313456071280488184270258293674242124340113824882788n,\n * v: 27,\n * })\n * // @log: {\n * // @log: r: 47323457007453657207889730243826965761922296599680473886588287015755652701072n,\n * // @log: s: 57228803202727131502949358313456071280488184270258293674242124340113824882788n,\n * // @log: yParity: 0\n * // @log: }\n * ```\n *\n * @param signature - The signature value to instantiate.\n * @returns The instantiated {@link ox#Signature.Signature}.\n */\nfunction from(signature) {\n const signature_ = (() => {\n if (typeof signature === 'string')\n return fromHex(signature);\n if (signature instanceof Uint8Array)\n return fromBytes(signature);\n if (typeof signature.r === 'string')\n return fromRpc(signature);\n if (signature.v)\n return fromLegacy(signature);\n return {\n r: signature.r,\n s: signature.s,\n ...(typeof signature.yParity !== 'undefined'\n ? { yParity: signature.yParity }\n : {}),\n };\n })();\n assert(signature_);\n return signature_;\n}\n/**\n * Converts a DER-encoded signature to a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromDerBytes(new Uint8Array([132, 51, 23, ...]))\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: }\n * ```\n *\n * @param signature - The DER-encoded signature to convert.\n * @returns The {@link ox#Signature.Signature}.\n */\nfunction fromDerBytes(signature) {\n return fromDerHex(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(signature));\n}\n/**\n * Converts a DER-encoded signature to a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromDerHex('0x304402206e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf02204a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8')\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: }\n * ```\n *\n * @param signature - The DER-encoded signature to convert.\n * @returns The {@link ox#Signature.Signature}.\n */\nfunction fromDerHex(signature) {\n const { r, s } = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__.secp256k1.Signature.fromDER(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(signature).slice(2));\n return { r, s };\n}\n/**\n * Converts a {@link ox#Signature.Legacy} into a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const legacy = Signature.fromLegacy({ r: 1n, s: 2n, v: 28 })\n * // @log: { r: 1n, s: 2n, yParity: 1 }\n * ```\n *\n * @param signature - The {@link ox#Signature.Legacy} to convert.\n * @returns The converted {@link ox#Signature.Signature}.\n */\nfunction fromLegacy(signature) {\n return {\n r: signature.r,\n s: signature.s,\n yParity: vToYParity(signature.v),\n };\n}\n/**\n * Converts a {@link ox#Signature.Rpc} into a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromRpc({\n * r: '0x635dc2033e60185bb36709c29c75d64ea51dfbd91c32ef4be198e4ceb169fb4d',\n * s: '0x50c2667ac4c771072746acfdcf1f1483336dcca8bd2df47cd83175dbe60f0540',\n * yParity: '0x0',\n * })\n * ```\n *\n * @param signature - The {@link ox#Signature.Rpc} to convert.\n * @returns The converted {@link ox#Signature.Signature}.\n */\nfunction fromRpc(signature) {\n const yParity = (() => {\n const v = signature.v ? Number(signature.v) : undefined;\n let yParity = signature.yParity ? Number(signature.yParity) : undefined;\n if (typeof v === 'number' && typeof yParity !== 'number')\n yParity = vToYParity(v);\n if (typeof yParity !== 'number')\n throw new InvalidYParityError({ value: signature.yParity });\n return yParity;\n })();\n return {\n r: BigInt(signature.r),\n s: BigInt(signature.s),\n yParity,\n };\n}\n/**\n * Converts a {@link ox#Signature.Tuple} to a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromTuple(['0x01', '0x7b', '0x1c8'])\n * // @log: {\n * // @log: r: 123n,\n * // @log: s: 456n,\n * // @log: yParity: 1,\n * // @log: }\n * ```\n *\n * @param tuple - The {@link ox#Signature.Tuple} to convert.\n * @returns The {@link ox#Signature.Signature}.\n */\nfunction fromTuple(tuple) {\n const [yParity, r, s] = tuple;\n return from({\n r: r === '0x' ? 0n : BigInt(r),\n s: s === '0x' ? 0n : BigInt(s),\n yParity: yParity === '0x' ? 0 : Number(yParity),\n });\n}\n/**\n * Serializes a {@link ox#Signature.Signature} to {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.toBytes({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1\n * })\n * // @log: Uint8Array [102, 16, 10, ...]\n * ```\n *\n * @param signature - The signature to serialize.\n * @returns The serialized signature.\n */\nfunction toBytes(signature) {\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.fromHex(toHex(signature));\n}\n/**\n * Serializes a {@link ox#Signature.Signature} to {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.toHex({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1\n * })\n * // @log: '0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c'\n * ```\n *\n * @param signature - The signature to serialize.\n * @returns The serialized signature.\n */\nfunction toHex(signature) {\n assert(signature);\n const r = signature.r;\n const s = signature.s;\n const signature_ = _Hex_js__WEBPACK_IMPORTED_MODULE_1__.concat(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(r, { size: 32 }), _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(s, { size: 32 }), \n // If the signature is recovered, add the recovery byte to the signature.\n typeof signature.yParity === 'number'\n ? _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(yParityToV(signature.yParity), { size: 1 })\n : '0x');\n return signature_;\n}\n/**\n * Converts a {@link ox#Signature.Signature} to DER-encoded format.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.from({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * })\n *\n * const signature_der = Signature.toDerBytes(signature)\n * // @log: Uint8Array [132, 51, 23, ...]\n * ```\n *\n * @param signature - The signature to convert.\n * @returns The DER-encoded signature.\n */\nfunction toDerBytes(signature) {\n const sig = new _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__.secp256k1.Signature(signature.r, signature.s);\n return sig.toDERRawBytes();\n}\n/**\n * Converts a {@link ox#Signature.Signature} to DER-encoded format.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.from({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * })\n *\n * const signature_der = Signature.toDerHex(signature)\n * // @log: '0x304402206e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf02204a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8'\n * ```\n *\n * @param signature - The signature to convert.\n * @returns The DER-encoded signature.\n */\nfunction toDerHex(signature) {\n const sig = new _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__.secp256k1.Signature(signature.r, signature.s);\n return `0x${sig.toDERHex()}`;\n}\n/**\n * Converts a {@link ox#Signature.Signature} into a {@link ox#Signature.Legacy}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const legacy = Signature.toLegacy({ r: 1n, s: 2n, yParity: 1 })\n * // @log: { r: 1n, s: 2n, v: 28 }\n * ```\n *\n * @param signature - The {@link ox#Signature.Signature} to convert.\n * @returns The converted {@link ox#Signature.Legacy}.\n */\nfunction toLegacy(signature) {\n return {\n r: signature.r,\n s: signature.s,\n v: yParityToV(signature.yParity),\n };\n}\n/**\n * Converts a {@link ox#Signature.Signature} into a {@link ox#Signature.Rpc}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.toRpc({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1\n * })\n * ```\n *\n * @param signature - The {@link ox#Signature.Signature} to convert.\n * @returns The converted {@link ox#Signature.Rpc}.\n */\nfunction toRpc(signature) {\n const { r, s, yParity } = signature;\n return {\n r: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(r, { size: 32 }),\n s: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(s, { size: 32 }),\n yParity: yParity === 0 ? '0x0' : '0x1',\n };\n}\n/**\n * Converts a {@link ox#Signature.Signature} to a serialized {@link ox#Signature.Tuple} to be used for signatures in Transaction Envelopes, EIP-7702 Authorization Lists, etc.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signatureTuple = Signature.toTuple({\n * r: 123n,\n * s: 456n,\n * yParity: 1,\n * })\n * // @log: [yParity: '0x01', r: '0x7b', s: '0x1c8']\n * ```\n *\n * @param signature - The {@link ox#Signature.Signature} to convert.\n * @returns The {@link ox#Signature.Tuple}.\n */\nfunction toTuple(signature) {\n const { r, s, yParity } = signature;\n return [\n yParity ? '0x01' : '0x',\n r === 0n ? '0x' : _Hex_js__WEBPACK_IMPORTED_MODULE_1__.trimLeft(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(r)),\n s === 0n ? '0x' : _Hex_js__WEBPACK_IMPORTED_MODULE_1__.trimLeft(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(s)),\n ];\n}\n/**\n * Validates a Signature. Returns `true` if the signature is valid, `false` otherwise.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const valid = Signature.validate({\n * r: -49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * })\n * // @log: false\n * ```\n *\n * @param signature - The signature object to assert.\n */\nfunction validate(signature, options = {}) {\n try {\n assert(signature, options);\n return true;\n }\n catch {\n return false;\n }\n}\n/**\n * Converts a ECDSA `v` value to a `yParity` value.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const yParity = Signature.vToYParity(28)\n * // @log: 1\n * ```\n *\n * @param v - The ECDSA `v` value to convert.\n * @returns The `yParity` value.\n */\nfunction vToYParity(v) {\n if (v === 0 || v === 27)\n return 0;\n if (v === 1 || v === 28)\n return 1;\n if (v >= 35)\n return v % 2 === 0 ? 1 : 0;\n throw new InvalidVError({ value: v });\n}\n/**\n * Converts a ECDSA `v` value to a `yParity` value.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const v = Signature.yParityToV(1)\n * // @log: 28\n * ```\n *\n * @param yParity - The ECDSA `yParity` value to convert.\n * @returns The `v` value.\n */\nfunction yParityToV(yParity) {\n if (yParity === 0)\n return 27;\n if (yParity === 1)\n return 28;\n throw new InvalidYParityError({ value: yParity });\n}\n/** Thrown when the serialized signature is of an invalid size. */\nclass InvalidSerializedSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ signature }) {\n super(`Value \\`${signature}\\` is an invalid signature size.`, {\n metaMessages: [\n 'Expected: 64 bytes or 65 bytes.',\n `Received ${_Hex_js__WEBPACK_IMPORTED_MODULE_1__.size(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(signature))} bytes.`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidSerializedSizeError'\n });\n }\n}\n/** Thrown when the signature is missing either an `r`, `s`, or `yParity` property. */\nclass MissingPropertiesError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ signature }) {\n super(`Signature \\`${_Json_js__WEBPACK_IMPORTED_MODULE_5__.stringify(signature)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.MissingPropertiesError'\n });\n }\n}\n/** Thrown when the signature has an invalid `r` value. */\nclass InvalidRError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid r value. r must be a positive integer less than 2^256.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidRError'\n });\n }\n}\n/** Thrown when the signature has an invalid `s` value. */\nclass InvalidSError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid s value. s must be a positive integer less than 2^256.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidSError'\n });\n }\n}\n/** Thrown when the signature has an invalid `yParity` value. */\nclass InvalidYParityError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidYParityError'\n });\n }\n}\n/** Thrown when the signature has an invalid `v` value. */\nclass InvalidVError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid v value. v must be 27, 28 or >=35.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidVError'\n });\n }\n}\n//# sourceMappingURL=Signature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL1NpZ25hdHVyZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFvRDtBQUNoQjtBQUNFO0FBQ047QUFDRTtBQUNRO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHVDQUF1QztBQUM5QyxZQUFZLFlBQVk7QUFDeEI7QUFDQSwyQ0FBMkMsV0FBVztBQUN0RDtBQUNBLDJDQUEyQyxXQUFXO0FBQ3REO0FBQ0EsMkNBQTJDLFdBQVc7QUFDdEQsMENBQTBDLG9EQUFtQjtBQUM3RCxrQ0FBa0Msb0JBQW9CO0FBQ3RELDBDQUEwQyxvREFBbUI7QUFDN0Qsa0NBQWtDLG9CQUFvQjtBQUN0RDtBQUNBO0FBQ0E7QUFDQSx3Q0FBd0MsMEJBQTBCO0FBQ2xFO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCLDZCQUE2Qiw2QkFBNkI7QUFDbkc7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsNkJBQTZCO0FBQzNEO0FBQ087QUFDUCxtQkFBbUIsOENBQWE7QUFDaEM7QUFDQTtBQUNBLG1CQUFtQixrQkFBa0IsNkJBQTZCLDZCQUE2QjtBQUMvRjtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsNkJBQTZCO0FBQzNEO0FBQ087QUFDUDtBQUNBLCtDQUErQyxXQUFXO0FBQzFELHFCQUFxQiwwQ0FBUztBQUM5QixxQkFBcUIsMENBQVM7QUFDOUI7QUFDQSxvQ0FBb0MscUJBQXFCO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QyxnQkFBZ0I7QUFDNUQ7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSw4QkFBOEI7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLDZCQUE2QjtBQUN4RDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsOEJBQThCLGVBQWUsNkJBQTZCLEdBQUcsMEJBQTBCLEdBQUcscUJBQXFCLE1BQU0saUJBQWlCO0FBQy9LO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDZCQUE2QjtBQUMzRDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEIsb0JBQW9CO0FBQ3BCO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLDZCQUE2QjtBQUN2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsNkJBQTZCO0FBQzlDO0FBQ087QUFDUCxzQkFBc0IsOENBQWE7QUFDbkM7QUFDQTtBQUNBLDBDQUEwQyw2QkFBNkI7QUFDdkU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQiw2QkFBNkI7QUFDOUM7QUFDTztBQUNQLFlBQVksT0FBTyxFQUFFLDhEQUFTLG1CQUFtQix5Q0FBUTtBQUN6RCxhQUFhO0FBQ2I7QUFDQTtBQUNBLGVBQWUsMkJBQTJCLFFBQVEsNkJBQTZCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBLHlDQUF5QyxxQkFBcUI7QUFDOUQsY0FBYztBQUNkO0FBQ0E7QUFDQSwyQkFBMkIsMkJBQTJCO0FBQ3RELDJCQUEyQiw2QkFBNkI7QUFDeEQ7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSx3QkFBd0IsUUFBUSw2QkFBNkI7QUFDNUU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLDJCQUEyQix3QkFBd0I7QUFDbkQsMkJBQTJCLDZCQUE2QjtBQUN4RDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLDBCQUEwQjtBQUN0RTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsMEJBQTBCLE1BQU0sNkJBQTZCO0FBQzVFO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsMEJBQTBCO0FBQ2pELGlCQUFpQiw2QkFBNkI7QUFDOUM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGlCQUFpQiw4QkFBOEIsSUFBSSxxQkFBcUI7QUFDeEU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxXQUFXLDhDQUFhO0FBQ3hCO0FBQ0E7QUFDQSxpQkFBaUIsOEJBQThCLElBQUksaUJBQWlCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLDJDQUFVLENBQUMsK0NBQWMsTUFBTSxVQUFVLEdBQUcsK0NBQWMsTUFBTSxVQUFVO0FBQ2pHO0FBQ0E7QUFDQSxVQUFVLCtDQUFjLGtDQUFrQyxTQUFTO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSw4QkFBOEI7QUFDN0M7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLG9CQUFvQiw4REFBUztBQUM3QjtBQUNBO0FBQ0E7QUFDQSxlQUFlLDhCQUE4QjtBQUM3QztBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1Asb0JBQW9CLDhEQUFTO0FBQzdCLGdCQUFnQixlQUFlO0FBQy9CO0FBQ0E7QUFDQSxlQUFlLDhCQUE4QixRQUFRLDBCQUEwQjtBQUMvRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQSx1Q0FBdUMsMEJBQTBCO0FBQ2pFLGNBQWM7QUFDZDtBQUNBO0FBQ0EsMkJBQTJCLDhCQUE4QjtBQUN6RCwyQkFBMkIsMEJBQTBCO0FBQ3JEO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsOEJBQThCLFFBQVEsdUJBQXVCO0FBQzVFO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQSwyQkFBMkIsOEJBQThCO0FBQ3pELDJCQUEyQix1QkFBdUI7QUFDbEQ7QUFDTztBQUNQLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EsV0FBVywrQ0FBYyxNQUFNLFVBQVU7QUFDekMsV0FBVywrQ0FBYyxNQUFNLFVBQVU7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLDhCQUE4QixpQkFBaUIsMEJBQTBCO0FBQ3hGO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQiw4QkFBOEI7QUFDekQsaUJBQWlCLHlCQUF5QjtBQUMxQztBQUNPO0FBQ1AsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBLDBCQUEwQiw2Q0FBWSxDQUFDLCtDQUFjO0FBQ3JELDBCQUEwQiw2Q0FBWSxDQUFDLCtDQUFjO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHlDQUF5QztBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsVUFBVTtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsZ0JBQWdCO0FBQ3BEO0FBQ0E7QUFDTyx5Q0FBeUMsaURBQWdCO0FBQ2hFLGtCQUFrQixXQUFXO0FBQzdCLHlCQUF5QixVQUFVO0FBQ25DO0FBQ0E7QUFDQSw0QkFBNEIseUNBQVEsQ0FBQyx5Q0FBUSxjQUFjO0FBQzNEO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08scUNBQXFDLGlEQUFnQjtBQUM1RCxrQkFBa0IsV0FBVztBQUM3Qiw2QkFBNkIsK0NBQWMsWUFBWTtBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLDRCQUE0QixpREFBZ0I7QUFDbkQsa0JBQWtCLE9BQU87QUFDekIseUJBQXlCLE1BQU07QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTyw0QkFBNEIsaURBQWdCO0FBQ25ELGtCQUFrQixPQUFPO0FBQ3pCLHlCQUF5QixNQUFNO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sa0NBQWtDLGlEQUFnQjtBQUN6RCxrQkFBa0IsT0FBTztBQUN6Qix5QkFBeUIsTUFBTTtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLDRCQUE0QixpREFBZ0I7QUFDbkQsa0JBQWtCLE9BQU87QUFDekIseUJBQXlCLE1BQU07QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9TaWduYXR1cmUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2VjcDI1NmsxIH0gZnJvbSAnQG5vYmxlL2N1cnZlcy9zZWNwMjU2azEnO1xuaW1wb3J0ICogYXMgQnl0ZXMgZnJvbSAnLi9CeXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBFcnJvcnMgZnJvbSAnLi9FcnJvcnMuanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4vSGV4LmpzJztcbmltcG9ydCAqIGFzIEpzb24gZnJvbSAnLi9Kc29uLmpzJztcbmltcG9ydCAqIGFzIFNvbGlkaXR5IGZyb20gJy4vU29saWRpdHkuanMnO1xuLyoqXG4gKiBBc3NlcnRzIHRoYXQgYSBTaWduYXR1cmUgaXMgdmFsaWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBTaWduYXR1cmUuYXNzZXJ0KHtcbiAqICAgcjogLTQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogICB5UGFyaXR5OiAxLFxuICogfSlcbiAqIC8vIEBlcnJvcjogSW52YWxpZFNpZ25hdHVyZVJFcnJvcjpcbiAqIC8vIEBlcnJvcjogVmFsdWUgYC01NDkuLi5uYCBpcyBhbiBpbnZhbGlkIHIgdmFsdWUuXG4gKiAvLyBAZXJyb3I6IHIgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXIgbGVzcyB0aGFuIDJeMjU2LlxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSBzaWduYXR1cmUgb2JqZWN0IHRvIGFzc2VydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydChzaWduYXR1cmUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgcmVjb3ZlcmVkIH0gPSBvcHRpb25zO1xuICAgIGlmICh0eXBlb2Ygc2lnbmF0dXJlLnIgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICB0aHJvdyBuZXcgTWlzc2luZ1Byb3BlcnRpZXNFcnJvcih7IHNpZ25hdHVyZSB9KTtcbiAgICBpZiAodHlwZW9mIHNpZ25hdHVyZS5zID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgdGhyb3cgbmV3IE1pc3NpbmdQcm9wZXJ0aWVzRXJyb3IoeyBzaWduYXR1cmUgfSk7XG4gICAgaWYgKHJlY292ZXJlZCAmJiB0eXBlb2Ygc2lnbmF0dXJlLnlQYXJpdHkgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICB0aHJvdyBuZXcgTWlzc2luZ1Byb3BlcnRpZXNFcnJvcih7IHNpZ25hdHVyZSB9KTtcbiAgICBpZiAoc2lnbmF0dXJlLnIgPCAwbiB8fCBzaWduYXR1cmUuciA+IFNvbGlkaXR5Lm1heFVpbnQyNTYpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkUkVycm9yKHsgdmFsdWU6IHNpZ25hdHVyZS5yIH0pO1xuICAgIGlmIChzaWduYXR1cmUucyA8IDBuIHx8IHNpZ25hdHVyZS5zID4gU29saWRpdHkubWF4VWludDI1NilcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRTRXJyb3IoeyB2YWx1ZTogc2lnbmF0dXJlLnMgfSk7XG4gICAgaWYgKHR5cGVvZiBzaWduYXR1cmUueVBhcml0eSA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgc2lnbmF0dXJlLnlQYXJpdHkgIT09IDAgJiZcbiAgICAgICAgc2lnbmF0dXJlLnlQYXJpdHkgIT09IDEpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkWVBhcml0eUVycm9yKHsgdmFsdWU6IHNpZ25hdHVyZS55UGFyaXR5IH0pO1xufVxuLyoqXG4gKiBEZXNlcmlhbGl6ZXMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHNpZ25hdHVyZSBpbnRvIGEgc3RydWN0dXJlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiAvLyBAbm9FcnJvcnNcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIFNpZ25hdHVyZS5mcm9tQnl0ZXMobmV3IFVpbnQ4QXJyYXkoWzEyOCwgMywgMTMxLCAuLi5dKSlcbiAqIC8vIEBsb2c6IHsgcjogNTIzMS4uLm4sIHM6IDM1MjIuLi5uLCB5UGFyaXR5OiAwIH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUgc2VyaWFsaXplZCBzaWduYXR1cmUuXG4gKiBAcmV0dXJucyBUaGUgZGVzZXJpYWxpemVkIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21CeXRlcyhzaWduYXR1cmUpIHtcbiAgICByZXR1cm4gZnJvbUhleChIZXguZnJvbUJ5dGVzKHNpZ25hdHVyZSkpO1xufVxuLyoqXG4gKiBEZXNlcmlhbGl6ZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gc2lnbmF0dXJlIGludG8gYSBzdHJ1Y3R1cmVkIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIFNpZ25hdHVyZS5mcm9tSGV4KCcweDZlMTAwYTM1MmVjNmFkMWI3MDgwMjI5MGUxOGFlZWQxOTA3MDQ5NzM1NzBmM2I4ZWQ0MmNiOTgwOGUyZWE2YmY0YTkwYTIyOWEyNDQ0OTViNDE4OTA5ODc4MDZmY2JkMmQ1ZDIzZmMwZGJlNWY1MjU2YzI2MTNjMDM5ZDc2ZGI4MWMnKVxuICogLy8gQGxvZzogeyByOiA1MjMxLi4ubiwgczogMzUyMi4uLm4sIHlQYXJpdHk6IDAgfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNlcmlhbGl6ZWQgLSBUaGUgc2VyaWFsaXplZCBzaWduYXR1cmUuXG4gKiBAcmV0dXJucyBUaGUgZGVzZXJpYWxpemVkIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21IZXgoc2lnbmF0dXJlKSB7XG4gICAgaWYgKHNpZ25hdHVyZS5sZW5ndGggIT09IDEzMCAmJiBzaWduYXR1cmUubGVuZ3RoICE9PSAxMzIpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2VyaWFsaXplZFNpemVFcnJvcih7IHNpZ25hdHVyZSB9KTtcbiAgICBjb25zdCByID0gQmlnSW50KEhleC5zbGljZShzaWduYXR1cmUsIDAsIDMyKSk7XG4gICAgY29uc3QgcyA9IEJpZ0ludChIZXguc2xpY2Uoc2lnbmF0dXJlLCAzMiwgNjQpKTtcbiAgICBjb25zdCB5UGFyaXR5ID0gKCgpID0+IHtcbiAgICAgICAgY29uc3QgeVBhcml0eSA9IE51bWJlcihgMHgke3NpZ25hdHVyZS5zbGljZSgxMzApfWApO1xuICAgICAgICBpZiAoTnVtYmVyLmlzTmFOKHlQYXJpdHkpKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiB2VG9ZUGFyaXR5KHlQYXJpdHkpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkWVBhcml0eUVycm9yKHsgdmFsdWU6IHlQYXJpdHkgfSk7XG4gICAgICAgIH1cbiAgICB9KSgpO1xuICAgIGlmICh0eXBlb2YgeVBhcml0eSA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICByLFxuICAgICAgICAgICAgcyxcbiAgICAgICAgfTtcbiAgICByZXR1cm4ge1xuICAgICAgICByLFxuICAgICAgICBzLFxuICAgICAgICB5UGFyaXR5LFxuICAgIH07XG59XG4vKipcbiAqIEV4dHJhY3RzIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IGZyb20gYW4gYXJiaXRyYXJ5IG9iamVjdCB0aGF0IG1heSBpbmNsdWRlIHNpZ25hdHVyZSBwcm9wZXJ0aWVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBTaWduYXR1cmUuZXh0cmFjdCh7XG4gKiAgIGJhejogJ2JhcnJ5JyxcbiAqICAgZm9vOiAnYmFyJyxcbiAqICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAgIHlQYXJpdHk6IDEsXG4gKiAgIHplYnJhOiAnc3RyaXBlcycsXG4gKiB9KVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICByOiA0OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAvLyBAbG9nOiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqIC8vIEBsb2c6ICAgeVBhcml0eTogMVxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIGFyYml0cmFyeSBvYmplY3QgdG8gZXh0cmFjdCB0aGUgc2lnbmF0dXJlIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgZXh0cmFjdGVkIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3QodmFsdWUpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlLnIgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGlmICh0eXBlb2YgdmFsdWUucyA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIGZyb20odmFsdWUpO1xufVxuLyoqXG4gKiBJbnN0YW50aWF0ZXMgYSB0eXBlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gb2JqZWN0IGZyb20gYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0sIHtAbGluayBveCNTaWduYXR1cmUuTGVnYWN5fSwge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSwgb3Ige0BsaW5rIG94I0hleC5IZXh9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogU2lnbmF0dXJlLmZyb20oe1xuICogICByOiA0OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqICAgeVBhcml0eTogMSxcbiAqIH0pXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqIC8vIEBsb2c6ICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogLy8gQGxvZzogICB5UGFyaXR5OiAxXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIEZyb20gU2VyaWFsaXplZFxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBTaWduYXR1cmUuZnJvbSgnMHg2ZTEwMGEzNTJlYzZhZDFiNzA4MDIyOTBlMThhZWVkMTkwNzA0OTczNTcwZjNiOGVkNDJjYjk4MDhlMmVhNmJmNGE5MGEyMjlhMjQ0NDk1YjQxODkwOTg3ODA2ZmNiZDJkNWQyM2ZjMGRiZTVmNTI1NmMyNjEzYzAzOWQ3NmRiODAxJylcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogLy8gQGxvZzogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAvLyBAbG9nOiAgIHlQYXJpdHk6IDEsXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIEZyb20gTGVnYWN5XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIFNpZ25hdHVyZS5mcm9tKHtcbiAqICAgcjogNDczMjM0NTcwMDc0NTM2NTcyMDc4ODk3MzAyNDM4MjY5NjU3NjE5MjIyOTY1OTk2ODA0NzM4ODY1ODgyODcwMTU3NTU2NTI3MDEwNzJuLFxuICogICBzOiA1NzIyODgwMzIwMjcyNzEzMTUwMjk0OTM1ODMxMzQ1NjA3MTI4MDQ4ODE4NDI3MDI1ODI5MzY3NDI0MjEyNDM0MDExMzgyNDg4Mjc4OG4sXG4gKiAgIHY6IDI3LFxuICogfSlcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcjogNDczMjM0NTcwMDc0NTM2NTcyMDc4ODk3MzAyNDM4MjY5NjU3NjE5MjIyOTY1OTk2ODA0NzM4ODY1ODgyODcwMTU3NTU2NTI3MDEwNzJuLFxuICogLy8gQGxvZzogICBzOiA1NzIyODgwMzIwMjcyNzEzMTUwMjk0OTM1ODMxMzQ1NjA3MTI4MDQ4ODE4NDI3MDI1ODI5MzY3NDI0MjEyNDM0MDExMzgyNDg4Mjc4OG4sXG4gKiAvLyBAbG9nOiAgIHlQYXJpdHk6IDBcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIHZhbHVlIHRvIGluc3RhbnRpYXRlLlxuICogQHJldHVybnMgVGhlIGluc3RhbnRpYXRlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKHNpZ25hdHVyZSkge1xuICAgIGNvbnN0IHNpZ25hdHVyZV8gPSAoKCkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHNpZ25hdHVyZSA9PT0gJ3N0cmluZycpXG4gICAgICAgICAgICByZXR1cm4gZnJvbUhleChzaWduYXR1cmUpO1xuICAgICAgICBpZiAoc2lnbmF0dXJlIGluc3RhbmNlb2YgVWludDhBcnJheSlcbiAgICAgICAgICAgIHJldHVybiBmcm9tQnl0ZXMoc2lnbmF0dXJlKTtcbiAgICAgICAgaWYgKHR5cGVvZiBzaWduYXR1cmUuciA9PT0gJ3N0cmluZycpXG4gICAgICAgICAgICByZXR1cm4gZnJvbVJwYyhzaWduYXR1cmUpO1xuICAgICAgICBpZiAoc2lnbmF0dXJlLnYpXG4gICAgICAgICAgICByZXR1cm4gZnJvbUxlZ2FjeShzaWduYXR1cmUpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcjogc2lnbmF0dXJlLnIsXG4gICAgICAgICAgICBzOiBzaWduYXR1cmUucyxcbiAgICAgICAgICAgIC4uLih0eXBlb2Ygc2lnbmF0dXJlLnlQYXJpdHkgIT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICAgICAgPyB7IHlQYXJpdHk6IHNpZ25hdHVyZS55UGFyaXR5IH1cbiAgICAgICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgfTtcbiAgICB9KSgpO1xuICAgIGFzc2VydChzaWduYXR1cmVfKTtcbiAgICByZXR1cm4gc2lnbmF0dXJlXztcbn1cbi8qKlxuICogQ29udmVydHMgYSBERVItZW5jb2RlZCBzaWduYXR1cmUgdG8gYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiAvLyBAbm9FcnJvcnNcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5mcm9tRGVyQnl0ZXMobmV3IFVpbnQ4QXJyYXkoWzEzMiwgNTEsIDIzLCAuLi5dKSlcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogLy8gQGxvZzogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIERFUi1lbmNvZGVkIHNpZ25hdHVyZSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21EZXJCeXRlcyhzaWduYXR1cmUpIHtcbiAgICByZXR1cm4gZnJvbURlckhleChIZXguZnJvbUJ5dGVzKHNpZ25hdHVyZSkpO1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhIERFUi1lbmNvZGVkIHNpZ25hdHVyZSB0byBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5mcm9tRGVySGV4KCcweDMwNDQwMjIwNmUxMDBhMzUyZWM2YWQxYjcwODAyMjkwZTE4YWVlZDE5MDcwNDk3MzU3MGYzYjhlZDQyY2I5ODA4ZTJlYTZiZjAyMjA0YTkwYTIyOWEyNDQ0OTViNDE4OTA5ODc4MDZmY2JkMmQ1ZDIzZmMwZGJlNWY1MjU2YzI2MTNjMDM5ZDc2ZGI4JylcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogLy8gQGxvZzogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIERFUi1lbmNvZGVkIHNpZ25hdHVyZSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21EZXJIZXgoc2lnbmF0dXJlKSB7XG4gICAgY29uc3QgeyByLCBzIH0gPSBzZWNwMjU2azEuU2lnbmF0dXJlLmZyb21ERVIoSGV4LmZyb20oc2lnbmF0dXJlKS5zbGljZSgyKSk7XG4gICAgcmV0dXJuIHsgciwgcyB9O1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhIHtAbGluayBveCNTaWduYXR1cmUuTGVnYWN5fSBpbnRvIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgbGVnYWN5ID0gU2lnbmF0dXJlLmZyb21MZWdhY3koeyByOiAxbiwgczogMm4sIHY6IDI4IH0pXG4gKiAvLyBAbG9nOiB7IHI6IDFuLCBzOiAybiwgeVBhcml0eTogMSB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHtAbGluayBveCNTaWduYXR1cmUuTGVnYWN5fSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIGNvbnZlcnRlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tTGVnYWN5KHNpZ25hdHVyZSkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHI6IHNpZ25hdHVyZS5yLFxuICAgICAgICBzOiBzaWduYXR1cmUucyxcbiAgICAgICAgeVBhcml0eTogdlRvWVBhcml0eShzaWduYXR1cmUudiksXG4gICAgfTtcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlJwY30gaW50byBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5mcm9tUnBjKHtcbiAqICAgcjogJzB4NjM1ZGMyMDMzZTYwMTg1YmIzNjcwOWMyOWM3NWQ2NGVhNTFkZmJkOTFjMzJlZjRiZTE5OGU0Y2ViMTY5ZmI0ZCcsXG4gKiAgIHM6ICcweDUwYzI2NjdhYzRjNzcxMDcyNzQ2YWNmZGNmMWYxNDgzMzM2ZGNjYThiZDJkZjQ3Y2Q4MzE3NWRiZTYwZjA1NDAnLFxuICogICB5UGFyaXR5OiAnMHgwJyxcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHtAbGluayBveCNTaWduYXR1cmUuUnBjfSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIGNvbnZlcnRlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tUnBjKHNpZ25hdHVyZSkge1xuICAgIGNvbnN0IHlQYXJpdHkgPSAoKCkgPT4ge1xuICAgICAgICBjb25zdCB2ID0gc2lnbmF0dXJlLnYgPyBOdW1iZXIoc2lnbmF0dXJlLnYpIDogdW5kZWZpbmVkO1xuICAgICAgICBsZXQgeVBhcml0eSA9IHNpZ25hdHVyZS55UGFyaXR5ID8gTnVtYmVyKHNpZ25hdHVyZS55UGFyaXR5KSA6IHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKHR5cGVvZiB2ID09PSAnbnVtYmVyJyAmJiB0eXBlb2YgeVBhcml0eSAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICB5UGFyaXR5ID0gdlRvWVBhcml0eSh2KTtcbiAgICAgICAgaWYgKHR5cGVvZiB5UGFyaXR5ICE9PSAnbnVtYmVyJylcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkWVBhcml0eUVycm9yKHsgdmFsdWU6IHNpZ25hdHVyZS55UGFyaXR5IH0pO1xuICAgICAgICByZXR1cm4geVBhcml0eTtcbiAgICB9KSgpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHI6IEJpZ0ludChzaWduYXR1cmUuciksXG4gICAgICAgIHM6IEJpZ0ludChzaWduYXR1cmUucyksXG4gICAgICAgIHlQYXJpdHksXG4gICAgfTtcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlR1cGxlfSB0byBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5mcm9tVHVwbGUoWycweDAxJywgJzB4N2InLCAnMHgxYzgnXSlcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcjogMTIzbixcbiAqIC8vIEBsb2c6ICAgczogNDU2bixcbiAqIC8vIEBsb2c6ICAgeVBhcml0eTogMSxcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB0dXBsZSAtIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLlR1cGxlfSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21UdXBsZSh0dXBsZSkge1xuICAgIGNvbnN0IFt5UGFyaXR5LCByLCBzXSA9IHR1cGxlO1xuICAgIHJldHVybiBmcm9tKHtcbiAgICAgICAgcjogciA9PT0gJzB4JyA/IDBuIDogQmlnSW50KHIpLFxuICAgICAgICBzOiBzID09PSAnMHgnID8gMG4gOiBCaWdJbnQocyksXG4gICAgICAgIHlQYXJpdHk6IHlQYXJpdHkgPT09ICcweCcgPyAwIDogTnVtYmVyKHlQYXJpdHkpLFxuICAgIH0pO1xufVxuLyoqXG4gKiBTZXJpYWxpemVzIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IHRvIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTaWduYXR1cmUudG9CeXRlcyh7XG4gKiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogICB5UGFyaXR5OiAxXG4gKiB9KVxuICogLy8gQGxvZzogVWludDhBcnJheSBbMTAyLCAxNiwgMTAsIC4uLl1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIHRvIHNlcmlhbGl6ZS5cbiAqIEByZXR1cm5zIFRoZSBzZXJpYWxpemVkIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvQnl0ZXMoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIEJ5dGVzLmZyb21IZXgodG9IZXgoc2lnbmF0dXJlKSk7XG59XG4vKipcbiAqIFNlcmlhbGl6ZXMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gdG8ge0BsaW5rIG94I0hleC5IZXh9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gU2lnbmF0dXJlLnRvSGV4KHtcbiAqICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAgIHlQYXJpdHk6IDFcbiAqIH0pXG4gKiAvLyBAbG9nOiAnMHg2ZTEwMGEzNTJlYzZhZDFiNzA4MDIyOTBlMThhZWVkMTkwNzA0OTczNTcwZjNiOGVkNDJjYjk4MDhlMmVhNmJmNGE5MGEyMjlhMjQ0NDk1YjQxODkwOTg3ODA2ZmNiZDJkNWQyM2ZjMGRiZTVmNTI1NmMyNjEzYzAzOWQ3NmRiODFjJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSBzaWduYXR1cmUgdG8gc2VyaWFsaXplLlxuICogQHJldHVybnMgVGhlIHNlcmlhbGl6ZWQgc2lnbmF0dXJlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9IZXgoc2lnbmF0dXJlKSB7XG4gICAgYXNzZXJ0KHNpZ25hdHVyZSk7XG4gICAgY29uc3QgciA9IHNpZ25hdHVyZS5yO1xuICAgIGNvbnN0IHMgPSBzaWduYXR1cmUucztcbiAgICBjb25zdCBzaWduYXR1cmVfID0gSGV4LmNvbmNhdChIZXguZnJvbU51bWJlcihyLCB7IHNpemU6IDMyIH0pLCBIZXguZnJvbU51bWJlcihzLCB7IHNpemU6IDMyIH0pLCBcbiAgICAvLyBJZiB0aGUgc2lnbmF0dXJlIGlzIHJlY292ZXJlZCwgYWRkIHRoZSByZWNvdmVyeSBieXRlIHRvIHRoZSBzaWduYXR1cmUuXG4gICAgdHlwZW9mIHNpZ25hdHVyZS55UGFyaXR5ID09PSAnbnVtYmVyJ1xuICAgICAgICA/IEhleC5mcm9tTnVtYmVyKHlQYXJpdHlUb1Yoc2lnbmF0dXJlLnlQYXJpdHkpLCB7IHNpemU6IDEgfSlcbiAgICAgICAgOiAnMHgnKTtcbiAgICByZXR1cm4gc2lnbmF0dXJlXztcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gdG8gREVSLWVuY29kZWQgZm9ybWF0LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gU2lnbmF0dXJlLmZyb20oe1xuICogICByOiA0OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqIH0pXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlX2RlciA9IFNpZ25hdHVyZS50b0RlckJ5dGVzKHNpZ25hdHVyZSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkgWzEzMiwgNTEsIDIzLCAuLi5dXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHNpZ25hdHVyZSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIERFUi1lbmNvZGVkIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvRGVyQnl0ZXMoc2lnbmF0dXJlKSB7XG4gICAgY29uc3Qgc2lnID0gbmV3IHNlY3AyNTZrMS5TaWduYXR1cmUoc2lnbmF0dXJlLnIsIHNpZ25hdHVyZS5zKTtcbiAgICByZXR1cm4gc2lnLnRvREVSUmF3Qnl0ZXMoKTtcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gdG8gREVSLWVuY29kZWQgZm9ybWF0LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gU2lnbmF0dXJlLmZyb20oe1xuICogICByOiA0OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqIH0pXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlX2RlciA9IFNpZ25hdHVyZS50b0RlckhleChzaWduYXR1cmUpXG4gKiAvLyBAbG9nOiAnMHgzMDQ0MDIyMDZlMTAwYTM1MmVjNmFkMWI3MDgwMjI5MGUxOGFlZWQxOTA3MDQ5NzM1NzBmM2I4ZWQ0MmNiOTgwOGUyZWE2YmYwMjIwNGE5MGEyMjlhMjQ0NDk1YjQxODkwOTg3ODA2ZmNiZDJkNWQyM2ZjMGRiZTVmNTI1NmMyNjEzYzAzOWQ3NmRiOCdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBUaGUgREVSLWVuY29kZWQgc2lnbmF0dXJlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9EZXJIZXgoc2lnbmF0dXJlKSB7XG4gICAgY29uc3Qgc2lnID0gbmV3IHNlY3AyNTZrMS5TaWduYXR1cmUoc2lnbmF0dXJlLnIsIHNpZ25hdHVyZS5zKTtcbiAgICByZXR1cm4gYDB4JHtzaWcudG9ERVJIZXgoKX1gO1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfSBpbnRvIGEge0BsaW5rIG94I1NpZ25hdHVyZS5MZWdhY3l9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgbGVnYWN5ID0gU2lnbmF0dXJlLnRvTGVnYWN5KHsgcjogMW4sIHM6IDJuLCB5UGFyaXR5OiAxIH0pXG4gKiAvLyBAbG9nOiB7IHI6IDFuLCBzOiAybiwgdjogMjggfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBjb252ZXJ0ZWQge0BsaW5rIG94I1NpZ25hdHVyZS5MZWdhY3l9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9MZWdhY3koc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcjogc2lnbmF0dXJlLnIsXG4gICAgICAgIHM6IHNpZ25hdHVyZS5zLFxuICAgICAgICB2OiB5UGFyaXR5VG9WKHNpZ25hdHVyZS55UGFyaXR5KSxcbiAgICB9O1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfSBpbnRvIGEge0BsaW5rIG94I1NpZ25hdHVyZS5ScGN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gU2lnbmF0dXJlLnRvUnBjKHtcbiAqICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAgIHlQYXJpdHk6IDFcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIGNvbnZlcnRlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlJwY30uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1JwYyhzaWduYXR1cmUpIHtcbiAgICBjb25zdCB7IHIsIHMsIHlQYXJpdHkgfSA9IHNpZ25hdHVyZTtcbiAgICByZXR1cm4ge1xuICAgICAgICByOiBIZXguZnJvbU51bWJlcihyLCB7IHNpemU6IDMyIH0pLFxuICAgICAgICBzOiBIZXguZnJvbU51bWJlcihzLCB7IHNpemU6IDMyIH0pLFxuICAgICAgICB5UGFyaXR5OiB5UGFyaXR5ID09PSAwID8gJzB4MCcgOiAnMHgxJyxcbiAgICB9O1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfSB0byBhIHNlcmlhbGl6ZWQge0BsaW5rIG94I1NpZ25hdHVyZS5UdXBsZX0gdG8gYmUgdXNlZCBmb3Igc2lnbmF0dXJlcyBpbiBUcmFuc2FjdGlvbiBFbnZlbG9wZXMsIEVJUC03NzAyIEF1dGhvcml6YXRpb24gTGlzdHMsIGV0Yy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZVR1cGxlID0gU2lnbmF0dXJlLnRvVHVwbGUoe1xuICogICByOiAxMjNuLFxuICogICBzOiA0NTZuLFxuICogICB5UGFyaXR5OiAxLFxuICogfSlcbiAqIC8vIEBsb2c6IFt5UGFyaXR5OiAnMHgwMScsIHI6ICcweDdiJywgczogJzB4MWM4J11cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBUaGUge0BsaW5rIG94I1NpZ25hdHVyZS5UdXBsZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1R1cGxlKHNpZ25hdHVyZSkge1xuICAgIGNvbnN0IHsgciwgcywgeVBhcml0eSB9ID0gc2lnbmF0dXJlO1xuICAgIHJldHVybiBbXG4gICAgICAgIHlQYXJpdHkgPyAnMHgwMScgOiAnMHgnLFxuICAgICAgICByID09PSAwbiA/ICcweCcgOiBIZXgudHJpbUxlZnQoSGV4LmZyb21OdW1iZXIocikpLFxuICAgICAgICBzID09PSAwbiA/ICcweCcgOiBIZXgudHJpbUxlZnQoSGV4LmZyb21OdW1iZXIocykpLFxuICAgIF07XG59XG4vKipcbiAqIFZhbGlkYXRlcyBhIFNpZ25hdHVyZS4gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHNpZ25hdHVyZSBpcyB2YWxpZCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB2YWxpZCA9IFNpZ25hdHVyZS52YWxpZGF0ZSh7XG4gKiAgIHI6IC00OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqICAgeVBhcml0eTogMSxcbiAqIH0pXG4gKiAvLyBAbG9nOiBmYWxzZVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSBzaWduYXR1cmUgb2JqZWN0IHRvIGFzc2VydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHNpZ25hdHVyZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgdHJ5IHtcbiAgICAgICAgYXNzZXJ0KHNpZ25hdHVyZSwgb3B0aW9ucyk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjYXRjaCB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG4vKipcbiAqIENvbnZlcnRzIGEgRUNEU0EgYHZgIHZhbHVlIHRvIGEgYHlQYXJpdHlgIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgeVBhcml0eSA9IFNpZ25hdHVyZS52VG9ZUGFyaXR5KDI4KVxuICogLy8gQGxvZzogMVxuICogYGBgXG4gKlxuICogQHBhcmFtIHYgLSBUaGUgRUNEU0EgYHZgIHZhbHVlIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBUaGUgYHlQYXJpdHlgIHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdlRvWVBhcml0eSh2KSB7XG4gICAgaWYgKHYgPT09IDAgfHwgdiA9PT0gMjcpXG4gICAgICAgIHJldHVybiAwO1xuICAgIGlmICh2ID09PSAxIHx8IHYgPT09IDI4KVxuICAgICAgICByZXR1cm4gMTtcbiAgICBpZiAodiA+PSAzNSlcbiAgICAgICAgcmV0dXJuIHYgJSAyID09PSAwID8gMSA6IDA7XG4gICAgdGhyb3cgbmV3IEludmFsaWRWRXJyb3IoeyB2YWx1ZTogdiB9KTtcbn1cbi8qKlxuICogQ29udmVydHMgYSBFQ0RTQSBgdmAgdmFsdWUgdG8gYSBgeVBhcml0eWAgdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB2ID0gU2lnbmF0dXJlLnlQYXJpdHlUb1YoMSlcbiAqIC8vIEBsb2c6IDI4XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0geVBhcml0eSAtIFRoZSBFQ0RTQSBgeVBhcml0eWAgdmFsdWUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBgdmAgdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB5UGFyaXR5VG9WKHlQYXJpdHkpIHtcbiAgICBpZiAoeVBhcml0eSA9PT0gMClcbiAgICAgICAgcmV0dXJuIDI3O1xuICAgIGlmICh5UGFyaXR5ID09PSAxKVxuICAgICAgICByZXR1cm4gMjg7XG4gICAgdGhyb3cgbmV3IEludmFsaWRZUGFyaXR5RXJyb3IoeyB2YWx1ZTogeVBhcml0eSB9KTtcbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgc2VyaWFsaXplZCBzaWduYXR1cmUgaXMgb2YgYW4gaW52YWxpZCBzaXplLiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRTZXJpYWxpemVkU2l6ZUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBzaWduYXR1cmUgfSkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHtzaWduYXR1cmV9XFxgIGlzIGFuIGludmFsaWQgc2lnbmF0dXJlIHNpemUuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgJ0V4cGVjdGVkOiA2NCBieXRlcyBvciA2NSBieXRlcy4nLFxuICAgICAgICAgICAgICAgIGBSZWNlaXZlZCAke0hleC5zaXplKEhleC5mcm9tKHNpZ25hdHVyZSkpfSBieXRlcy5gLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdTaWduYXR1cmUuSW52YWxpZFNlcmlhbGl6ZWRTaXplRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgc2lnbmF0dXJlIGlzIG1pc3NpbmcgZWl0aGVyIGFuIGByYCwgYHNgLCBvciBgeVBhcml0eWAgcHJvcGVydHkuICovXG5leHBvcnQgY2xhc3MgTWlzc2luZ1Byb3BlcnRpZXNFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgc2lnbmF0dXJlIH0pIHtcbiAgICAgICAgc3VwZXIoYFNpZ25hdHVyZSBcXGAke0pzb24uc3RyaW5naWZ5KHNpZ25hdHVyZSl9XFxgIGlzIG1pc3NpbmcgZWl0aGVyIGFuIFxcYHJcXGAsIFxcYHNcXGAsIG9yIFxcYHlQYXJpdHlcXGAgcHJvcGVydHkuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdTaWduYXR1cmUuTWlzc2luZ1Byb3BlcnRpZXNFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIFRocm93biB3aGVuIHRoZSBzaWduYXR1cmUgaGFzIGFuIGludmFsaWQgYHJgIHZhbHVlLiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRSRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHZhbHVlIH0pIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7dmFsdWV9XFxgIGlzIGFuIGludmFsaWQgciB2YWx1ZS4gciBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciBsZXNzIHRoYW4gMl4yNTYuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdTaWduYXR1cmUuSW52YWxpZFJFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIFRocm93biB3aGVuIHRoZSBzaWduYXR1cmUgaGFzIGFuIGludmFsaWQgYHNgIHZhbHVlLiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRTRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHZhbHVlIH0pIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7dmFsdWV9XFxgIGlzIGFuIGludmFsaWQgcyB2YWx1ZS4gcyBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciBsZXNzIHRoYW4gMl4yNTYuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdTaWduYXR1cmUuSW52YWxpZFNFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIFRocm93biB3aGVuIHRoZSBzaWduYXR1cmUgaGFzIGFuIGludmFsaWQgYHlQYXJpdHlgIHZhbHVlLiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRZUGFyaXR5RXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHZhbHVlIH0pIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7dmFsdWV9XFxgIGlzIGFuIGludmFsaWQgeS1wYXJpdHkgdmFsdWUuIFktcGFyaXR5IG11c3QgYmUgMCBvciAxLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnU2lnbmF0dXJlLkludmFsaWRZUGFyaXR5RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgc2lnbmF0dXJlIGhhcyBhbiBpbnZhbGlkIGB2YCB2YWx1ZS4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkVkVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyB2YWx1ZSB9KSB7XG4gICAgICAgIHN1cGVyKGBWYWx1ZSBcXGAke3ZhbHVlfVxcYCBpcyBhbiBpbnZhbGlkIHYgdmFsdWUuIHYgbXVzdCBiZSAyNywgMjggb3IgPj0zNS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1NpZ25hdHVyZS5JbnZhbGlkVkVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1TaWduYXR1cmUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Signature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Solidity.js": /*!*********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Solidity.js ***! \*********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ arrayRegex: () => (/* binding */ arrayRegex),\n/* harmony export */ bytesRegex: () => (/* binding */ bytesRegex),\n/* harmony export */ integerRegex: () => (/* binding */ integerRegex),\n/* harmony export */ maxInt104: () => (/* binding */ maxInt104),\n/* harmony export */ maxInt112: () => (/* binding */ maxInt112),\n/* harmony export */ maxInt120: () => (/* binding */ maxInt120),\n/* harmony export */ maxInt128: () => (/* binding */ maxInt128),\n/* harmony export */ maxInt136: () => (/* binding */ maxInt136),\n/* harmony export */ maxInt144: () => (/* binding */ maxInt144),\n/* harmony export */ maxInt152: () => (/* binding */ maxInt152),\n/* harmony export */ maxInt16: () => (/* binding */ maxInt16),\n/* harmony export */ maxInt160: () => (/* binding */ maxInt160),\n/* harmony export */ maxInt168: () => (/* binding */ maxInt168),\n/* harmony export */ maxInt176: () => (/* binding */ maxInt176),\n/* harmony export */ maxInt184: () => (/* binding */ maxInt184),\n/* harmony export */ maxInt192: () => (/* binding */ maxInt192),\n/* harmony export */ maxInt200: () => (/* binding */ maxInt200),\n/* harmony export */ maxInt208: () => (/* binding */ maxInt208),\n/* harmony export */ maxInt216: () => (/* binding */ maxInt216),\n/* harmony export */ maxInt224: () => (/* binding */ maxInt224),\n/* harmony export */ maxInt232: () => (/* binding */ maxInt232),\n/* harmony export */ maxInt24: () => (/* binding */ maxInt24),\n/* harmony export */ maxInt240: () => (/* binding */ maxInt240),\n/* harmony export */ maxInt248: () => (/* binding */ maxInt248),\n/* harmony export */ maxInt256: () => (/* binding */ maxInt256),\n/* harmony export */ maxInt32: () => (/* binding */ maxInt32),\n/* harmony export */ maxInt40: () => (/* binding */ maxInt40),\n/* harmony export */ maxInt48: () => (/* binding */ maxInt48),\n/* harmony export */ maxInt56: () => (/* binding */ maxInt56),\n/* harmony export */ maxInt64: () => (/* binding */ maxInt64),\n/* harmony export */ maxInt72: () => (/* binding */ maxInt72),\n/* harmony export */ maxInt8: () => (/* binding */ maxInt8),\n/* harmony export */ maxInt80: () => (/* binding */ maxInt80),\n/* harmony export */ maxInt88: () => (/* binding */ maxInt88),\n/* harmony export */ maxInt96: () => (/* binding */ maxInt96),\n/* harmony export */ maxUint104: () => (/* binding */ maxUint104),\n/* harmony export */ maxUint112: () => (/* binding */ maxUint112),\n/* harmony export */ maxUint120: () => (/* binding */ maxUint120),\n/* harmony export */ maxUint128: () => (/* binding */ maxUint128),\n/* harmony export */ maxUint136: () => (/* binding */ maxUint136),\n/* harmony export */ maxUint144: () => (/* binding */ maxUint144),\n/* harmony export */ maxUint152: () => (/* binding */ maxUint152),\n/* harmony export */ maxUint16: () => (/* binding */ maxUint16),\n/* harmony export */ maxUint160: () => (/* binding */ maxUint160),\n/* harmony export */ maxUint168: () => (/* binding */ maxUint168),\n/* harmony export */ maxUint176: () => (/* binding */ maxUint176),\n/* harmony export */ maxUint184: () => (/* binding */ maxUint184),\n/* harmony export */ maxUint192: () => (/* binding */ maxUint192),\n/* harmony export */ maxUint200: () => (/* binding */ maxUint200),\n/* harmony export */ maxUint208: () => (/* binding */ maxUint208),\n/* harmony export */ maxUint216: () => (/* binding */ maxUint216),\n/* harmony export */ maxUint224: () => (/* binding */ maxUint224),\n/* harmony export */ maxUint232: () => (/* binding */ maxUint232),\n/* harmony export */ maxUint24: () => (/* binding */ maxUint24),\n/* harmony export */ maxUint240: () => (/* binding */ maxUint240),\n/* harmony export */ maxUint248: () => (/* binding */ maxUint248),\n/* harmony export */ maxUint256: () => (/* binding */ maxUint256),\n/* harmony export */ maxUint32: () => (/* binding */ maxUint32),\n/* harmony export */ maxUint40: () => (/* binding */ maxUint40),\n/* harmony export */ maxUint48: () => (/* binding */ maxUint48),\n/* harmony export */ maxUint56: () => (/* binding */ maxUint56),\n/* harmony export */ maxUint64: () => (/* binding */ maxUint64),\n/* harmony export */ maxUint72: () => (/* binding */ maxUint72),\n/* harmony export */ maxUint8: () => (/* binding */ maxUint8),\n/* harmony export */ maxUint80: () => (/* binding */ maxUint80),\n/* harmony export */ maxUint88: () => (/* binding */ maxUint88),\n/* harmony export */ maxUint96: () => (/* binding */ maxUint96),\n/* harmony export */ minInt104: () => (/* binding */ minInt104),\n/* harmony export */ minInt112: () => (/* binding */ minInt112),\n/* harmony export */ minInt120: () => (/* binding */ minInt120),\n/* harmony export */ minInt128: () => (/* binding */ minInt128),\n/* harmony export */ minInt136: () => (/* binding */ minInt136),\n/* harmony export */ minInt144: () => (/* binding */ minInt144),\n/* harmony export */ minInt152: () => (/* binding */ minInt152),\n/* harmony export */ minInt16: () => (/* binding */ minInt16),\n/* harmony export */ minInt160: () => (/* binding */ minInt160),\n/* harmony export */ minInt168: () => (/* binding */ minInt168),\n/* harmony export */ minInt176: () => (/* binding */ minInt176),\n/* harmony export */ minInt184: () => (/* binding */ minInt184),\n/* harmony export */ minInt192: () => (/* binding */ minInt192),\n/* harmony export */ minInt200: () => (/* binding */ minInt200),\n/* harmony export */ minInt208: () => (/* binding */ minInt208),\n/* harmony export */ minInt216: () => (/* binding */ minInt216),\n/* harmony export */ minInt224: () => (/* binding */ minInt224),\n/* harmony export */ minInt232: () => (/* binding */ minInt232),\n/* harmony export */ minInt24: () => (/* binding */ minInt24),\n/* harmony export */ minInt240: () => (/* binding */ minInt240),\n/* harmony export */ minInt248: () => (/* binding */ minInt248),\n/* harmony export */ minInt256: () => (/* binding */ minInt256),\n/* harmony export */ minInt32: () => (/* binding */ minInt32),\n/* harmony export */ minInt40: () => (/* binding */ minInt40),\n/* harmony export */ minInt48: () => (/* binding */ minInt48),\n/* harmony export */ minInt56: () => (/* binding */ minInt56),\n/* harmony export */ minInt64: () => (/* binding */ minInt64),\n/* harmony export */ minInt72: () => (/* binding */ minInt72),\n/* harmony export */ minInt8: () => (/* binding */ minInt8),\n/* harmony export */ minInt80: () => (/* binding */ minInt80),\n/* harmony export */ minInt88: () => (/* binding */ minInt88),\n/* harmony export */ minInt96: () => (/* binding */ minInt96)\n/* harmony export */ });\nconst arrayRegex = /^(.*)\\[([0-9]*)\\]$/;\n// `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n// https://regexr.com/6va55\nconst bytesRegex = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/;\n// `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n// https://regexr.com/6v8hp\nconst integerRegex = /^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;\nconst maxInt8 = 2n ** (8n - 1n) - 1n;\nconst maxInt16 = 2n ** (16n - 1n) - 1n;\nconst maxInt24 = 2n ** (24n - 1n) - 1n;\nconst maxInt32 = 2n ** (32n - 1n) - 1n;\nconst maxInt40 = 2n ** (40n - 1n) - 1n;\nconst maxInt48 = 2n ** (48n - 1n) - 1n;\nconst maxInt56 = 2n ** (56n - 1n) - 1n;\nconst maxInt64 = 2n ** (64n - 1n) - 1n;\nconst maxInt72 = 2n ** (72n - 1n) - 1n;\nconst maxInt80 = 2n ** (80n - 1n) - 1n;\nconst maxInt88 = 2n ** (88n - 1n) - 1n;\nconst maxInt96 = 2n ** (96n - 1n) - 1n;\nconst maxInt104 = 2n ** (104n - 1n) - 1n;\nconst maxInt112 = 2n ** (112n - 1n) - 1n;\nconst maxInt120 = 2n ** (120n - 1n) - 1n;\nconst maxInt128 = 2n ** (128n - 1n) - 1n;\nconst maxInt136 = 2n ** (136n - 1n) - 1n;\nconst maxInt144 = 2n ** (144n - 1n) - 1n;\nconst maxInt152 = 2n ** (152n - 1n) - 1n;\nconst maxInt160 = 2n ** (160n - 1n) - 1n;\nconst maxInt168 = 2n ** (168n - 1n) - 1n;\nconst maxInt176 = 2n ** (176n - 1n) - 1n;\nconst maxInt184 = 2n ** (184n - 1n) - 1n;\nconst maxInt192 = 2n ** (192n - 1n) - 1n;\nconst maxInt200 = 2n ** (200n - 1n) - 1n;\nconst maxInt208 = 2n ** (208n - 1n) - 1n;\nconst maxInt216 = 2n ** (216n - 1n) - 1n;\nconst maxInt224 = 2n ** (224n - 1n) - 1n;\nconst maxInt232 = 2n ** (232n - 1n) - 1n;\nconst maxInt240 = 2n ** (240n - 1n) - 1n;\nconst maxInt248 = 2n ** (248n - 1n) - 1n;\nconst maxInt256 = 2n ** (256n - 1n) - 1n;\nconst minInt8 = -(2n ** (8n - 1n));\nconst minInt16 = -(2n ** (16n - 1n));\nconst minInt24 = -(2n ** (24n - 1n));\nconst minInt32 = -(2n ** (32n - 1n));\nconst minInt40 = -(2n ** (40n - 1n));\nconst minInt48 = -(2n ** (48n - 1n));\nconst minInt56 = -(2n ** (56n - 1n));\nconst minInt64 = -(2n ** (64n - 1n));\nconst minInt72 = -(2n ** (72n - 1n));\nconst minInt80 = -(2n ** (80n - 1n));\nconst minInt88 = -(2n ** (88n - 1n));\nconst minInt96 = -(2n ** (96n - 1n));\nconst minInt104 = -(2n ** (104n - 1n));\nconst minInt112 = -(2n ** (112n - 1n));\nconst minInt120 = -(2n ** (120n - 1n));\nconst minInt128 = -(2n ** (128n - 1n));\nconst minInt136 = -(2n ** (136n - 1n));\nconst minInt144 = -(2n ** (144n - 1n));\nconst minInt152 = -(2n ** (152n - 1n));\nconst minInt160 = -(2n ** (160n - 1n));\nconst minInt168 = -(2n ** (168n - 1n));\nconst minInt176 = -(2n ** (176n - 1n));\nconst minInt184 = -(2n ** (184n - 1n));\nconst minInt192 = -(2n ** (192n - 1n));\nconst minInt200 = -(2n ** (200n - 1n));\nconst minInt208 = -(2n ** (208n - 1n));\nconst minInt216 = -(2n ** (216n - 1n));\nconst minInt224 = -(2n ** (224n - 1n));\nconst minInt232 = -(2n ** (232n - 1n));\nconst minInt240 = -(2n ** (240n - 1n));\nconst minInt248 = -(2n ** (248n - 1n));\nconst minInt256 = -(2n ** (256n - 1n));\nconst maxUint8 = 2n ** 8n - 1n;\nconst maxUint16 = 2n ** 16n - 1n;\nconst maxUint24 = 2n ** 24n - 1n;\nconst maxUint32 = 2n ** 32n - 1n;\nconst maxUint40 = 2n ** 40n - 1n;\nconst maxUint48 = 2n ** 48n - 1n;\nconst maxUint56 = 2n ** 56n - 1n;\nconst maxUint64 = 2n ** 64n - 1n;\nconst maxUint72 = 2n ** 72n - 1n;\nconst maxUint80 = 2n ** 80n - 1n;\nconst maxUint88 = 2n ** 88n - 1n;\nconst maxUint96 = 2n ** 96n - 1n;\nconst maxUint104 = 2n ** 104n - 1n;\nconst maxUint112 = 2n ** 112n - 1n;\nconst maxUint120 = 2n ** 120n - 1n;\nconst maxUint128 = 2n ** 128n - 1n;\nconst maxUint136 = 2n ** 136n - 1n;\nconst maxUint144 = 2n ** 144n - 1n;\nconst maxUint152 = 2n ** 152n - 1n;\nconst maxUint160 = 2n ** 160n - 1n;\nconst maxUint168 = 2n ** 168n - 1n;\nconst maxUint176 = 2n ** 176n - 1n;\nconst maxUint184 = 2n ** 184n - 1n;\nconst maxUint192 = 2n ** 192n - 1n;\nconst maxUint200 = 2n ** 200n - 1n;\nconst maxUint208 = 2n ** 208n - 1n;\nconst maxUint216 = 2n ** 216n - 1n;\nconst maxUint224 = 2n ** 224n - 1n;\nconst maxUint232 = 2n ** 232n - 1n;\nconst maxUint240 = 2n ** 240n - 1n;\nconst maxUint248 = 2n ** 248n - 1n;\nconst maxUint256 = 2n ** 256n - 1n;\n//# sourceMappingURL=Solidity.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL1NvbGlkaXR5LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFPO0FBQ1A7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNPO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ1AiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9Tb2xpZGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgYXJyYXlSZWdleCA9IC9eKC4qKVxcWyhbMC05XSopXFxdJC87XG4vLyBgYnl0ZXM8TT5gOiBiaW5hcnkgdHlwZSBvZiBgTWAgYnl0ZXMsIGAwIDwgTSA8PSAzMmBcbi8vIGh0dHBzOi8vcmVnZXhyLmNvbS82dmE1NVxuZXhwb3J0IGNvbnN0IGJ5dGVzUmVnZXggPSAvXmJ5dGVzKFsxLTldfDFbMC05XXwyWzAtOV18M1swLTJdKT8kLztcbi8vIGAodSlpbnQ8TT5gOiAodW4pc2lnbmVkIGludGVnZXIgdHlwZSBvZiBgTWAgYml0cywgYDAgPCBNIDw9IDI1NmAsIGBNICUgOCA9PSAwYFxuLy8gaHR0cHM6Ly9yZWdleHIuY29tLzZ2OGhwXG5leHBvcnQgY29uc3QgaW50ZWdlclJlZ2V4ID0gL14odT9pbnQpKDh8MTZ8MjR8MzJ8NDB8NDh8NTZ8NjR8NzJ8ODB8ODh8OTZ8MTA0fDExMnwxMjB8MTI4fDEzNnwxNDR8MTUyfDE2MHwxNjh8MTc2fDE4NHwxOTJ8MjAwfDIwOHwyMTZ8MjI0fDIzMnwyNDB8MjQ4fDI1Nik/JC87XG5leHBvcnQgY29uc3QgbWF4SW50OCA9IDJuICoqICg4biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDE2ID0gMm4gKiogKDE2biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDI0ID0gMm4gKiogKDI0biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDMyID0gMm4gKiogKDMybiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDQwID0gMm4gKiogKDQwbiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDQ4ID0gMm4gKiogKDQ4biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDU2ID0gMm4gKiogKDU2biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDY0ID0gMm4gKiogKDY0biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDcyID0gMm4gKiogKDcybiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDgwID0gMm4gKiogKDgwbiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDg4ID0gMm4gKiogKDg4biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDk2ID0gMm4gKiogKDk2biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDEwNCA9IDJuICoqICgxMDRuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTEyID0gMm4gKiogKDExMm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxMjAgPSAybiAqKiAoMTIwbiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDEyOCA9IDJuICoqICgxMjhuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTM2ID0gMm4gKiogKDEzNm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxNDQgPSAybiAqKiAoMTQ0biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDE1MiA9IDJuICoqICgxNTJuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTYwID0gMm4gKiogKDE2MG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxNjggPSAybiAqKiAoMTY4biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDE3NiA9IDJuICoqICgxNzZuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTg0ID0gMm4gKiogKDE4NG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxOTIgPSAybiAqKiAoMTkybiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDIwMCA9IDJuICoqICgyMDBuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MjA4ID0gMm4gKiogKDIwOG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQyMTYgPSAybiAqKiAoMjE2biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDIyNCA9IDJuICoqICgyMjRuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MjMyID0gMm4gKiogKDIzMm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQyNDAgPSAybiAqKiAoMjQwbiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDI0OCA9IDJuICoqICgyNDhuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MjU2ID0gMm4gKiogKDI1Nm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtaW5JbnQ4ID0gLSgybiAqKiAoOG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE2ID0gLSgybiAqKiAoMTZuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQyNCA9IC0oMm4gKiogKDI0biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MzIgPSAtKDJuICoqICgzMm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDQwID0gLSgybiAqKiAoNDBuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQ0OCA9IC0oMm4gKiogKDQ4biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50NTYgPSAtKDJuICoqICg1Nm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDY0ID0gLSgybiAqKiAoNjRuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQ3MiA9IC0oMm4gKiogKDcybiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50ODAgPSAtKDJuICoqICg4MG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDg4ID0gLSgybiAqKiAoODhuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQ5NiA9IC0oMm4gKiogKDk2biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTA0ID0gLSgybiAqKiAoMTA0biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTEyID0gLSgybiAqKiAoMTEybiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTIwID0gLSgybiAqKiAoMTIwbiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTI4ID0gLSgybiAqKiAoMTI4biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTM2ID0gLSgybiAqKiAoMTM2biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTQ0ID0gLSgybiAqKiAoMTQ0biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTUyID0gLSgybiAqKiAoMTUybiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTYwID0gLSgybiAqKiAoMTYwbiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTY4ID0gLSgybiAqKiAoMTY4biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTc2ID0gLSgybiAqKiAoMTc2biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTg0ID0gLSgybiAqKiAoMTg0biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MTkyID0gLSgybiAqKiAoMTkybiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjAwID0gLSgybiAqKiAoMjAwbiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjA4ID0gLSgybiAqKiAoMjA4biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjE2ID0gLSgybiAqKiAoMjE2biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjI0ID0gLSgybiAqKiAoMjI0biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjMyID0gLSgybiAqKiAoMjMybiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjQwID0gLSgybiAqKiAoMjQwbiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjQ4ID0gLSgybiAqKiAoMjQ4biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjU2ID0gLSgybiAqKiAoMjU2biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWF4VWludDggPSAybiAqKiA4biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxNiA9IDJuICoqIDE2biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQyNCA9IDJuICoqIDI0biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQzMiA9IDJuICoqIDMybiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ0MCA9IDJuICoqIDQwbiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ0OCA9IDJuICoqIDQ4biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ1NiA9IDJuICoqIDU2biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ2NCA9IDJuICoqIDY0biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ3MiA9IDJuICoqIDcybiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ4MCA9IDJuICoqIDgwbiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ4OCA9IDJuICoqIDg4biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ5NiA9IDJuICoqIDk2biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxMDQgPSAybiAqKiAxMDRuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDExMiA9IDJuICoqIDExMm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTIwID0gMm4gKiogMTIwbiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxMjggPSAybiAqKiAxMjhuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDEzNiA9IDJuICoqIDEzNm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTQ0ID0gMm4gKiogMTQ0biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxNTIgPSAybiAqKiAxNTJuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDE2MCA9IDJuICoqIDE2MG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTY4ID0gMm4gKiogMTY4biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxNzYgPSAybiAqKiAxNzZuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDE4NCA9IDJuICoqIDE4NG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTkyID0gMm4gKiogMTkybiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQyMDAgPSAybiAqKiAyMDBuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDIwOCA9IDJuICoqIDIwOG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MjE2ID0gMm4gKiogMjE2biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQyMjQgPSAybiAqKiAyMjRuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDIzMiA9IDJuICoqIDIzMm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MjQwID0gMm4gKiogMjQwbiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQyNDggPSAybiAqKiAyNDhuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDI1NiA9IDJuICoqIDI1Nm4gLSAxbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVNvbGlkaXR5LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Solidity.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebAuthnP256.js": /*!*************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebAuthnP256.js ***! \*************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CredentialCreationFailedError: () => (/* binding */ CredentialCreationFailedError),\n/* harmony export */ CredentialRequestFailedError: () => (/* binding */ CredentialRequestFailedError),\n/* harmony export */ createChallenge: () => (/* binding */ createChallenge),\n/* harmony export */ createCredential: () => (/* binding */ createCredential),\n/* harmony export */ getAuthenticatorData: () => (/* binding */ getAuthenticatorData),\n/* harmony export */ getClientDataJSON: () => (/* binding */ getClientDataJSON),\n/* harmony export */ getCredentialCreationOptions: () => (/* binding */ getCredentialCreationOptions),\n/* harmony export */ getCredentialRequestOptions: () => (/* binding */ getCredentialRequestOptions),\n/* harmony export */ getSignPayload: () => (/* binding */ getSignPayload),\n/* harmony export */ sign: () => (/* binding */ sign),\n/* harmony export */ verify: () => (/* binding */ verify)\n/* harmony export */ });\n/* harmony import */ var _Base64_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Base64.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Base64.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hash.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hash.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _P256_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./P256.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/P256.js\");\n/* harmony import */ var _internal_webauthn_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/webauthn.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/webauthn.js\");\n\n\n\n\n\n\n\nconst createChallenge = Uint8Array.from([\n 105, 171, 180, 181, 160, 222, 75, 198, 42, 42, 32, 31, 141, 37, 186, 233,\n]);\n/**\n * Creates a new WebAuthn P256 Credential, which can be stored and later used for signing.\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256 } from 'ox'\n *\n * const credential = await WebAuthnP256.createCredential({ name: 'Example' }) // [!code focus]\n * // @log: {\n * // @log: id: 'oZ48...',\n * // @log: publicKey: { x: 51421...5123n, y: 12345...6789n },\n * // @log: raw: PublicKeyCredential {},\n * // @log: }\n *\n * const { metadata, signature } = await WebAuthnP256.sign({\n * credentialId: credential.id,\n * challenge: '0xdeadbeef',\n * })\n * ```\n *\n * @param options - Credential creation options.\n * @returns A WebAuthn P256 credential.\n */\nasync function createCredential(options) {\n const { createFn = window.navigator.credentials.create.bind(window.navigator.credentials), ...rest } = options;\n const creationOptions = getCredentialCreationOptions(rest);\n try {\n const credential = (await createFn(creationOptions));\n if (!credential)\n throw new CredentialCreationFailedError();\n const response = credential.response;\n const publicKey = await _internal_webauthn_js__WEBPACK_IMPORTED_MODULE_0__.parseCredentialPublicKey(response);\n return {\n id: credential.id,\n publicKey,\n raw: credential,\n };\n }\n catch (error) {\n throw new CredentialCreationFailedError({\n cause: error,\n });\n }\n}\n/**\n * Gets the authenticator data which contains information about the\n * processing of an authenticator request (ie. from `WebAuthnP256.sign`).\n *\n * :::warning\n *\n * This function is mainly for testing purposes or for manually constructing\n * autenticator data. In most cases you will not need this function.\n * `authenticatorData` is typically returned as part of the\n * {@link ox#WebAuthnP256.(sign:function)} response (ie. an authenticator response).\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256 } from 'ox'\n *\n * const authenticatorData = WebAuthnP256.getAuthenticatorData({\n * rpId: 'example.com',\n * signCount: 420,\n * })\n * // @log: \"0xa379a6f6eeafb9a55e378c118034e2751e682fab9f2d30ab13d2125586ce194705000001a4\"\n * ```\n *\n * @param options - Options to construct the authenticator data.\n * @returns The authenticator data.\n */\nfunction getAuthenticatorData(options = {}) {\n const { flag = 5, rpId = window.location.hostname, signCount = 0 } = options;\n const rpIdHash = _Hash_js__WEBPACK_IMPORTED_MODULE_1__.sha256(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromString(rpId));\n const flag_bytes = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(flag, { size: 1 });\n const signCount_bytes = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(signCount, { size: 4 });\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(rpIdHash, flag_bytes, signCount_bytes);\n}\n/**\n * Constructs the Client Data in stringified JSON format which represents client data that\n * was passed to `credentials.get()` in {@link ox#WebAuthnP256.(sign:function)}.\n *\n * :::warning\n *\n * This function is mainly for testing purposes or for manually constructing\n * client data. In most cases you will not need this function.\n * `clientDataJSON` is typically returned as part of the\n * {@link ox#WebAuthnP256.(sign:function)} response (ie. an authenticator response).\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256 } from 'ox'\n *\n * const clientDataJSON = WebAuthnP256.getClientDataJSON({\n * challenge: '0xdeadbeef',\n * origin: 'https://example.com',\n * })\n * // @log: \"{\"type\":\"webauthn.get\",\"challenge\":\"3q2-7w\",\"origin\":\"https://example.com\",\"crossOrigin\":false}\"\n * ```\n *\n * @param options - Options to construct the client data.\n * @returns The client data.\n */\nfunction getClientDataJSON(options) {\n const { challenge, crossOrigin = false, extraClientData, origin = window.location.origin, } = options;\n return JSON.stringify({\n type: 'webauthn.get',\n challenge: _Base64_js__WEBPACK_IMPORTED_MODULE_3__.fromHex(challenge, { url: true, pad: false }),\n origin,\n crossOrigin,\n ...extraClientData,\n });\n}\n/**\n * Returns the creation options for a P256 WebAuthn Credential to be used with\n * the Web Authentication API.\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256 } from 'ox'\n *\n * const options = WebAuthnP256.getCredentialCreationOptions({ name: 'Example' })\n *\n * const credential = await window.navigator.credentials.create(options)\n * ```\n *\n * @param options - Options.\n * @returns The credential creation options.\n */\nfunction getCredentialCreationOptions(options) {\n const { attestation = 'none', authenticatorSelection = {\n residentKey: 'preferred',\n requireResidentKey: false,\n userVerification: 'required',\n }, challenge = createChallenge, excludeCredentialIds, name: name_, rp = {\n id: window.location.hostname,\n name: window.document.title,\n }, user, extensions, } = options;\n const name = (user?.name ?? name_);\n return {\n publicKey: {\n attestation,\n authenticatorSelection,\n challenge,\n ...(excludeCredentialIds\n ? {\n excludeCredentials: excludeCredentialIds?.map((id) => ({\n id: _Base64_js__WEBPACK_IMPORTED_MODULE_3__.toBytes(id),\n type: 'public-key',\n })),\n }\n : {}),\n pubKeyCredParams: [\n {\n type: 'public-key',\n alg: -7, // p256\n },\n ],\n rp,\n user: {\n id: user?.id ?? _Hash_js__WEBPACK_IMPORTED_MODULE_1__.keccak256(_Bytes_js__WEBPACK_IMPORTED_MODULE_4__.fromString(name), { as: 'Bytes' }),\n name,\n displayName: user?.displayName ?? name,\n },\n extensions,\n },\n };\n}\n/**\n * Returns the request options to sign a challenge with the Web Authentication API.\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256 } from 'ox'\n *\n * const options = WebAuthnP256.getCredentialRequestOptions({\n * challenge: '0xdeadbeef',\n * })\n *\n * const credential = await window.navigator.credentials.get(options)\n * ```\n *\n * @param options - Options.\n * @returns The credential request options.\n */\nfunction getCredentialRequestOptions(options) {\n const { credentialId, challenge, rpId = window.location.hostname, userVerification = 'required', } = options;\n return {\n publicKey: {\n ...(credentialId\n ? {\n allowCredentials: [\n {\n id: _Base64_js__WEBPACK_IMPORTED_MODULE_3__.toBytes(credentialId),\n type: 'public-key',\n },\n ],\n }\n : {}),\n challenge: _Bytes_js__WEBPACK_IMPORTED_MODULE_4__.fromHex(challenge),\n rpId,\n userVerification,\n },\n };\n}\n/**\n * Constructs the final digest that was signed and computed by the authenticator. This payload includes\n * the cryptographic `challenge`, as well as authenticator metadata (`authenticatorData` + `clientDataJSON`).\n * This value can be also used with raw P256 verification (such as {@link ox#P256.(verify:function)} or\n * {@link ox#WebCryptoP256.(verify:function)}).\n *\n * :::warning\n *\n * This function is mainly for testing purposes or for manually constructing\n * signing payloads. In most cases you will not need this function and\n * instead use {@link ox#WebAuthnP256.(sign:function)}.\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256, WebCryptoP256 } from 'ox'\n *\n * const { metadata, payload } = WebAuthnP256.getSignPayload({ // [!code focus]\n * challenge: '0xdeadbeef', // [!code focus]\n * }) // [!code focus]\n * // @log: {\n * // @log: metadata: {\n * // @log: authenticatorData: \"0x49960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000\",\n * // @log: challengeIndex: 23,\n * // @log: clientDataJSON: \"{\"type\":\"webauthn.get\",\"challenge\":\"9jEFijuhEWrM4SOW-tChJbUEHEP44VcjcJ-Bqo1fTM8\",\"origin\":\"http://localhost:5173\",\"crossOrigin\":false}\",\n * // @log: typeIndex: 1,\n * // @log: userVerificationRequired: true,\n * // @log: },\n * // @log: payload: \"0x49960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d9763050000000045086dcb06a5f234db625bcdc94e657f86b76b6fd3eb9c30543eabc1e577a4b0\",\n * // @log: }\n *\n * const { publicKey, privateKey } = await WebCryptoP256.createKeyPair()\n *\n * const signature = await WebCryptoP256.sign({\n * payload,\n * privateKey,\n * })\n * ```\n *\n * @param options - Options to construct the signing payload.\n * @returns The signing payload.\n */\nfunction getSignPayload(options) {\n const { challenge, crossOrigin, extraClientData, flag, origin, rpId, signCount, userVerification = 'required', } = options;\n const authenticatorData = getAuthenticatorData({\n flag,\n rpId,\n signCount,\n });\n const clientDataJSON = getClientDataJSON({\n challenge,\n crossOrigin,\n extraClientData,\n origin,\n });\n const clientDataJSONHash = _Hash_js__WEBPACK_IMPORTED_MODULE_1__.sha256(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromString(clientDataJSON));\n const challengeIndex = clientDataJSON.indexOf('\"challenge\"');\n const typeIndex = clientDataJSON.indexOf('\"type\"');\n const metadata = {\n authenticatorData,\n clientDataJSON,\n challengeIndex,\n typeIndex,\n userVerificationRequired: userVerification === 'required',\n };\n const payload = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(authenticatorData, clientDataJSONHash);\n return { metadata, payload };\n}\n/**\n * Signs a challenge using a stored WebAuthn P256 Credential. If no Credential is provided,\n * a prompt will be displayed for the user to select an existing Credential\n * that was previously registered.\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256 } from 'ox'\n *\n * const credential = await WebAuthnP256.createCredential({\n * name: 'Example',\n * })\n *\n * const { metadata, signature } = await WebAuthnP256.sign({ // [!code focus]\n * credentialId: credential.id, // [!code focus]\n * challenge: '0xdeadbeef', // [!code focus]\n * }) // [!code focus]\n * // @log: {\n * // @log: metadata: {\n * // @log: authenticatorData: '0x49960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000',\n * // @log: clientDataJSON: '{\"type\":\"webauthn.get\",\"challenge\":\"9jEFijuhEWrM4SOW-tChJbUEHEP44VcjcJ-Bqo1fTM8\",\"origin\":\"http://localhost:5173\",\"crossOrigin\":false}',\n * // @log: challengeIndex: 23,\n * // @log: typeIndex: 1,\n * // @log: userVerificationRequired: true,\n * // @log: },\n * // @log: signature: { r: 51231...4215n, s: 12345...6789n },\n * // @log: }\n * ```\n *\n * @param options - Options.\n * @returns The signature.\n */\nasync function sign(options) {\n const { getFn = window.navigator.credentials.get.bind(window.navigator.credentials), ...rest } = options;\n const requestOptions = getCredentialRequestOptions(rest);\n try {\n const credential = (await getFn(requestOptions));\n if (!credential)\n throw new CredentialRequestFailedError();\n const response = credential.response;\n const clientDataJSON = String.fromCharCode(...new Uint8Array(response.clientDataJSON));\n const challengeIndex = clientDataJSON.indexOf('\"challenge\"');\n const typeIndex = clientDataJSON.indexOf('\"type\"');\n const signature = _internal_webauthn_js__WEBPACK_IMPORTED_MODULE_0__.parseAsn1Signature(new Uint8Array(response.signature));\n return {\n metadata: {\n authenticatorData: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(new Uint8Array(response.authenticatorData)),\n clientDataJSON,\n challengeIndex,\n typeIndex,\n userVerificationRequired: requestOptions.publicKey.userVerification === 'required',\n },\n signature,\n raw: credential,\n };\n }\n catch (error) {\n throw new CredentialRequestFailedError({\n cause: error,\n });\n }\n}\n/**\n * Verifies a signature using the Credential's public key and the challenge which was signed.\n *\n * @example\n * ```ts twoslash\n * import { WebAuthnP256 } from 'ox'\n *\n * const credential = await WebAuthnP256.createCredential({\n * name: 'Example',\n * })\n *\n * const { metadata, signature } = await WebAuthnP256.sign({\n * credentialId: credential.id,\n * challenge: '0xdeadbeef',\n * })\n *\n * const result = await WebAuthnP256.verify({ // [!code focus]\n * metadata, // [!code focus]\n * challenge: '0xdeadbeef', // [!code focus]\n * publicKey: credential.publicKey, // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * // @log: true\n * ```\n *\n * @param options - Options.\n * @returns Whether the signature is valid.\n */\nfunction verify(options) {\n const { challenge, hash = true, metadata, publicKey, signature } = options;\n const { authenticatorData, challengeIndex, clientDataJSON, typeIndex, userVerificationRequired, } = metadata;\n const authenticatorDataBytes = _Bytes_js__WEBPACK_IMPORTED_MODULE_4__.fromHex(authenticatorData);\n // Check length of `authenticatorData`.\n if (authenticatorDataBytes.length < 37)\n return false;\n const flag = authenticatorDataBytes[32];\n // Verify that the UP bit of the flags in authData is set.\n if ((flag & 0x01) !== 0x01)\n return false;\n // If user verification was determined to be required, verify that\n // the UV bit of the flags in authData is set. Otherwise, ignore the\n // value of the UV flag.\n if (userVerificationRequired && (flag & 0x04) !== 0x04)\n return false;\n // If the BE bit of the flags in authData is not set, verify that\n // the BS bit is not set.\n if ((flag & 0x08) !== 0x08 && (flag & 0x10) === 0x10)\n return false;\n // Check that response is for an authentication assertion\n const type = '\"type\":\"webauthn.get\"';\n if (type !== clientDataJSON.slice(Number(typeIndex), type.length + 1))\n return false;\n // Check that hash is in the clientDataJSON.\n const match = clientDataJSON\n .slice(Number(challengeIndex))\n .match(/^\"challenge\":\"(.*?)\"/);\n if (!match)\n return false;\n // Validate the challenge in the clientDataJSON.\n const [_, challenge_extracted] = match;\n if (_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(_Base64_js__WEBPACK_IMPORTED_MODULE_3__.toBytes(challenge_extracted)) !== challenge)\n return false;\n const clientDataJSONHash = _Hash_js__WEBPACK_IMPORTED_MODULE_1__.sha256(_Bytes_js__WEBPACK_IMPORTED_MODULE_4__.fromString(clientDataJSON), {\n as: 'Bytes',\n });\n const payload = _Bytes_js__WEBPACK_IMPORTED_MODULE_4__.concat(authenticatorDataBytes, clientDataJSONHash);\n return _P256_js__WEBPACK_IMPORTED_MODULE_5__.verify({\n hash,\n payload,\n publicKey,\n signature,\n });\n}\n/** Thrown when a WebAuthn P256 credential creation fails. */\nclass CredentialCreationFailedError extends _Errors_js__WEBPACK_IMPORTED_MODULE_6__.BaseError {\n constructor({ cause } = {}) {\n super('Failed to create credential.', {\n cause,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'WebAuthnP256.CredentialCreationFailedError'\n });\n }\n}\n/** Thrown when a WebAuthn P256 credential request fails. */\nclass CredentialRequestFailedError extends _Errors_js__WEBPACK_IMPORTED_MODULE_6__.BaseError {\n constructor({ cause } = {}) {\n super('Failed to request credential.', {\n cause,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'WebAuthnP256.CredentialRequestFailedError'\n });\n }\n}\n//# sourceMappingURL=WebAuthnP256.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL1dlYkF1dGhuUDI1Ni5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBc0M7QUFDRjtBQUNFO0FBQ0o7QUFDRjtBQUNFO0FBQ2lCO0FBQzVDO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGVBQWU7QUFDM0I7QUFDQSw0REFBNEQsaUJBQWlCO0FBQzdFO0FBQ0E7QUFDQSwyQkFBMkIsb0NBQW9DO0FBQy9ELHlDQUF5QztBQUN6QztBQUNBO0FBQ0EsV0FBVyxzQkFBc0I7QUFDakM7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLDZGQUE2RjtBQUN6RztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsMkVBQWlDO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSSx1Q0FBdUM7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTywwQ0FBMEM7QUFDakQsWUFBWSwyREFBMkQ7QUFDdkUscUJBQXFCLDRDQUFXLENBQUMsK0NBQWM7QUFDL0MsdUJBQXVCLCtDQUFjLFNBQVMsU0FBUztBQUN2RCw0QkFBNEIsK0NBQWMsY0FBYyxTQUFTO0FBQ2pFLFdBQVcsMkNBQVU7QUFDckI7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLHNDQUFzQztBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJLHVDQUF1QztBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKLGNBQWMsOEZBQThGO0FBQzVHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksb0ZBQW9GO0FBQ2hHO0FBQ0E7QUFDQSxtQkFBbUIsK0NBQWMsY0FBYyx1QkFBdUI7QUFDdEU7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxlQUFlO0FBQzNCO0FBQ0EsK0RBQStELGlCQUFpQjtBQUNoRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWTtBQUNaO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSyxzQkFBc0I7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLCtDQUFjO0FBQzFDO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0Esb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQywrQ0FBYyxDQUFDLGlEQUFnQixVQUFVLGFBQWE7QUFDdEY7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksMkZBQTJGO0FBQ3ZHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQywrQ0FBYztBQUM5QztBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0Esb0JBQW9CO0FBQ3BCLHVCQUF1Qiw4Q0FBYTtBQUNwQztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvRUFBb0UsaUNBQWlDO0FBQ3JHLElBQUkseUNBQXlDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isc0NBQXNDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDhCQUE4QjtBQUMxQztBQUNBLFdBQVcsb0JBQW9CLGdDQUFnQztBQUMvRDtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxxSUFBcUk7QUFDdks7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQSxXQUFXLHdCQUF3QjtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLHlHQUF5RztBQUNySDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLCtCQUErQiw0Q0FBVyxDQUFDLCtDQUFjO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwyQ0FBVTtBQUM5QixhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxXQUFXLHNCQUFzQiw0QkFBNEI7QUFDN0Q7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0MscUlBQXFJO0FBQ3ZLO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZiwyQkFBMkIsb0NBQW9DO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSx1RkFBdUY7QUFDbkc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHFFQUEyQjtBQUNyRDtBQUNBO0FBQ0EsbUNBQW1DLDhDQUFhO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLFdBQVcsc0JBQXNCO0FBQ2pDO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSw4Q0FBOEM7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLHlEQUF5RDtBQUNyRSxZQUFZLDBGQUEwRjtBQUN0RyxtQ0FBbUMsOENBQWE7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLDhDQUFhLENBQUMsK0NBQWM7QUFDcEM7QUFDQSwrQkFBK0IsNENBQVcsQ0FBQyxpREFBZ0I7QUFDM0Q7QUFDQSxLQUFLO0FBQ0wsb0JBQW9CLDZDQUFZO0FBQ2hDLFdBQVcsNENBQVc7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNPLDRDQUE0QyxpREFBZ0I7QUFDbkUsa0JBQWtCLFFBQVEsSUFBSTtBQUM5QjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sMkNBQTJDLGlEQUFnQjtBQUNsRSxrQkFBa0IsUUFBUSxJQUFJO0FBQzlCO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9XZWJBdXRoblAyNTYuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQmFzZTY0IGZyb20gJy4vQmFzZTY0LmpzJztcbmltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgRXJyb3JzIGZyb20gJy4vRXJyb3JzLmpzJztcbmltcG9ydCAqIGFzIEhhc2ggZnJvbSAnLi9IYXNoLmpzJztcbmltcG9ydCAqIGFzIEhleCBmcm9tICcuL0hleC5qcyc7XG5pbXBvcnQgKiBhcyBQMjU2IGZyb20gJy4vUDI1Ni5qcyc7XG5pbXBvcnQgKiBhcyBpbnRlcm5hbCBmcm9tICcuL2ludGVybmFsL3dlYmF1dGhuLmpzJztcbmV4cG9ydCBjb25zdCBjcmVhdGVDaGFsbGVuZ2UgPSBVaW50OEFycmF5LmZyb20oW1xuICAgIDEwNSwgMTcxLCAxODAsIDE4MSwgMTYwLCAyMjIsIDc1LCAxOTgsIDQyLCA0MiwgMzIsIDMxLCAxNDEsIDM3LCAxODYsIDIzMyxcbl0pO1xuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IFdlYkF1dGhuIFAyNTYgQ3JlZGVudGlhbCwgd2hpY2ggY2FuIGJlIHN0b3JlZCBhbmQgbGF0ZXIgdXNlZCBmb3Igc2lnbmluZy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFdlYkF1dGhuUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGNyZWRlbnRpYWwgPSBhd2FpdCBXZWJBdXRoblAyNTYuY3JlYXRlQ3JlZGVudGlhbCh7IG5hbWU6ICdFeGFtcGxlJyB9KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIGlkOiAnb1o0OC4uLicsXG4gKiAvLyBAbG9nOiAgIHB1YmxpY0tleTogeyB4OiA1MTQyMS4uLjUxMjNuLCB5OiAxMjM0NS4uLjY3ODluIH0sXG4gKiAvLyBAbG9nOiAgIHJhdzogUHVibGljS2V5Q3JlZGVudGlhbCB7fSxcbiAqIC8vIEBsb2c6IH1cbiAqXG4gKiBjb25zdCB7IG1ldGFkYXRhLCBzaWduYXR1cmUgfSA9IGF3YWl0IFdlYkF1dGhuUDI1Ni5zaWduKHtcbiAqICAgY3JlZGVudGlhbElkOiBjcmVkZW50aWFsLmlkLFxuICogICBjaGFsbGVuZ2U6ICcweGRlYWRiZWVmJyxcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIENyZWRlbnRpYWwgY3JlYXRpb24gb3B0aW9ucy5cbiAqIEByZXR1cm5zIEEgV2ViQXV0aG4gUDI1NiBjcmVkZW50aWFsLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlQ3JlZGVudGlhbChvcHRpb25zKSB7XG4gICAgY29uc3QgeyBjcmVhdGVGbiA9IHdpbmRvdy5uYXZpZ2F0b3IuY3JlZGVudGlhbHMuY3JlYXRlLmJpbmQod2luZG93Lm5hdmlnYXRvci5jcmVkZW50aWFscyksIC4uLnJlc3QgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgY3JlYXRpb25PcHRpb25zID0gZ2V0Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucyhyZXN0KTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBjcmVkZW50aWFsID0gKGF3YWl0IGNyZWF0ZUZuKGNyZWF0aW9uT3B0aW9ucykpO1xuICAgICAgICBpZiAoIWNyZWRlbnRpYWwpXG4gICAgICAgICAgICB0aHJvdyBuZXcgQ3JlZGVudGlhbENyZWF0aW9uRmFpbGVkRXJyb3IoKTtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBjcmVkZW50aWFsLnJlc3BvbnNlO1xuICAgICAgICBjb25zdCBwdWJsaWNLZXkgPSBhd2FpdCBpbnRlcm5hbC5wYXJzZUNyZWRlbnRpYWxQdWJsaWNLZXkocmVzcG9uc2UpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IGNyZWRlbnRpYWwuaWQsXG4gICAgICAgICAgICBwdWJsaWNLZXksXG4gICAgICAgICAgICByYXc6IGNyZWRlbnRpYWwsXG4gICAgICAgIH07XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgQ3JlZGVudGlhbENyZWF0aW9uRmFpbGVkRXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycm9yLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIEdldHMgdGhlIGF1dGhlbnRpY2F0b3IgZGF0YSB3aGljaCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiAqIHByb2Nlc3Npbmcgb2YgYW4gYXV0aGVudGljYXRvciByZXF1ZXN0IChpZS4gZnJvbSBgV2ViQXV0aG5QMjU2LnNpZ25gKS5cbiAqXG4gKiA6Ojp3YXJuaW5nXG4gKlxuICogVGhpcyBmdW5jdGlvbiBpcyBtYWlubHkgZm9yIHRlc3RpbmcgcHVycG9zZXMgb3IgZm9yIG1hbnVhbGx5IGNvbnN0cnVjdGluZ1xuICogYXV0ZW50aWNhdG9yIGRhdGEuIEluIG1vc3QgY2FzZXMgeW91IHdpbGwgbm90IG5lZWQgdGhpcyBmdW5jdGlvbi5cbiAqIGBhdXRoZW50aWNhdG9yRGF0YWAgaXMgdHlwaWNhbGx5IHJldHVybmVkIGFzIHBhcnQgb2YgdGhlXG4gKiB7QGxpbmsgb3gjV2ViQXV0aG5QMjU2LihzaWduOmZ1bmN0aW9uKX0gcmVzcG9uc2UgKGllLiBhbiBhdXRoZW50aWNhdG9yIHJlc3BvbnNlKS5cbiAqXG4gKiA6OjpcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFdlYkF1dGhuUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGF1dGhlbnRpY2F0b3JEYXRhID0gV2ViQXV0aG5QMjU2LmdldEF1dGhlbnRpY2F0b3JEYXRhKHtcbiAqICAgcnBJZDogJ2V4YW1wbGUuY29tJyxcbiAqICAgc2lnbkNvdW50OiA0MjAsXG4gKiB9KVxuICogLy8gQGxvZzogXCIweGEzNzlhNmY2ZWVhZmI5YTU1ZTM3OGMxMTgwMzRlMjc1MWU2ODJmYWI5ZjJkMzBhYjEzZDIxMjU1ODZjZTE5NDcwNTAwMDAwMWE0XCJcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucyB0byBjb25zdHJ1Y3QgdGhlIGF1dGhlbnRpY2F0b3IgZGF0YS5cbiAqIEByZXR1cm5zIFRoZSBhdXRoZW50aWNhdG9yIGRhdGEuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBdXRoZW50aWNhdG9yRGF0YShvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGZsYWcgPSA1LCBycElkID0gd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLCBzaWduQ291bnQgPSAwIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHJwSWRIYXNoID0gSGFzaC5zaGEyNTYoSGV4LmZyb21TdHJpbmcocnBJZCkpO1xuICAgIGNvbnN0IGZsYWdfYnl0ZXMgPSBIZXguZnJvbU51bWJlcihmbGFnLCB7IHNpemU6IDEgfSk7XG4gICAgY29uc3Qgc2lnbkNvdW50X2J5dGVzID0gSGV4LmZyb21OdW1iZXIoc2lnbkNvdW50LCB7IHNpemU6IDQgfSk7XG4gICAgcmV0dXJuIEhleC5jb25jYXQocnBJZEhhc2gsIGZsYWdfYnl0ZXMsIHNpZ25Db3VudF9ieXRlcyk7XG59XG4vKipcbiAqIENvbnN0cnVjdHMgdGhlIENsaWVudCBEYXRhIGluIHN0cmluZ2lmaWVkIEpTT04gZm9ybWF0IHdoaWNoIHJlcHJlc2VudHMgY2xpZW50IGRhdGEgdGhhdFxuICogd2FzIHBhc3NlZCB0byBgY3JlZGVudGlhbHMuZ2V0KClgIGluIHtAbGluayBveCNXZWJBdXRoblAyNTYuKHNpZ246ZnVuY3Rpb24pfS5cbiAqXG4gKiA6Ojp3YXJuaW5nXG4gKlxuICogVGhpcyBmdW5jdGlvbiBpcyBtYWlubHkgZm9yIHRlc3RpbmcgcHVycG9zZXMgb3IgZm9yIG1hbnVhbGx5IGNvbnN0cnVjdGluZ1xuICogY2xpZW50IGRhdGEuIEluIG1vc3QgY2FzZXMgeW91IHdpbGwgbm90IG5lZWQgdGhpcyBmdW5jdGlvbi5cbiAqIGBjbGllbnREYXRhSlNPTmAgaXMgdHlwaWNhbGx5IHJldHVybmVkIGFzIHBhcnQgb2YgdGhlXG4gKiB7QGxpbmsgb3gjV2ViQXV0aG5QMjU2LihzaWduOmZ1bmN0aW9uKX0gcmVzcG9uc2UgKGllLiBhbiBhdXRoZW50aWNhdG9yIHJlc3BvbnNlKS5cbiAqXG4gKiA6OjpcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFdlYkF1dGhuUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGNsaWVudERhdGFKU09OID0gV2ViQXV0aG5QMjU2LmdldENsaWVudERhdGFKU09OKHtcbiAqICAgY2hhbGxlbmdlOiAnMHhkZWFkYmVlZicsXG4gKiAgIG9yaWdpbjogJ2h0dHBzOi8vZXhhbXBsZS5jb20nLFxuICogfSlcbiAqIC8vIEBsb2c6IFwie1widHlwZVwiOlwid2ViYXV0aG4uZ2V0XCIsXCJjaGFsbGVuZ2VcIjpcIjNxMi03d1wiLFwib3JpZ2luXCI6XCJodHRwczovL2V4YW1wbGUuY29tXCIsXCJjcm9zc09yaWdpblwiOmZhbHNlfVwiXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMgdG8gY29uc3RydWN0IHRoZSBjbGllbnQgZGF0YS5cbiAqIEByZXR1cm5zIFRoZSBjbGllbnQgZGF0YS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENsaWVudERhdGFKU09OKG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGNoYWxsZW5nZSwgY3Jvc3NPcmlnaW4gPSBmYWxzZSwgZXh0cmFDbGllbnREYXRhLCBvcmlnaW4gPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luLCB9ID0gb3B0aW9ucztcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICB0eXBlOiAnd2ViYXV0aG4uZ2V0JyxcbiAgICAgICAgY2hhbGxlbmdlOiBCYXNlNjQuZnJvbUhleChjaGFsbGVuZ2UsIHsgdXJsOiB0cnVlLCBwYWQ6IGZhbHNlIH0pLFxuICAgICAgICBvcmlnaW4sXG4gICAgICAgIGNyb3NzT3JpZ2luLFxuICAgICAgICAuLi5leHRyYUNsaWVudERhdGEsXG4gICAgfSk7XG59XG4vKipcbiAqIFJldHVybnMgdGhlIGNyZWF0aW9uIG9wdGlvbnMgZm9yIGEgUDI1NiBXZWJBdXRobiBDcmVkZW50aWFsIHRvIGJlIHVzZWQgd2l0aFxuICogdGhlIFdlYiBBdXRoZW50aWNhdGlvbiBBUEkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBXZWJBdXRoblAyNTYgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBvcHRpb25zID0gV2ViQXV0aG5QMjU2LmdldENyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMoeyBuYW1lOiAnRXhhbXBsZScgfSlcbiAqXG4gKiBjb25zdCBjcmVkZW50aWFsID0gYXdhaXQgd2luZG93Lm5hdmlnYXRvci5jcmVkZW50aWFscy5jcmVhdGUob3B0aW9ucylcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBjcmVkZW50aWFsIGNyZWF0aW9uIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDcmVkZW50aWFsQ3JlYXRpb25PcHRpb25zKG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGF0dGVzdGF0aW9uID0gJ25vbmUnLCBhdXRoZW50aWNhdG9yU2VsZWN0aW9uID0ge1xuICAgICAgICByZXNpZGVudEtleTogJ3ByZWZlcnJlZCcsXG4gICAgICAgIHJlcXVpcmVSZXNpZGVudEtleTogZmFsc2UsXG4gICAgICAgIHVzZXJWZXJpZmljYXRpb246ICdyZXF1aXJlZCcsXG4gICAgfSwgY2hhbGxlbmdlID0gY3JlYXRlQ2hhbGxlbmdlLCBleGNsdWRlQ3JlZGVudGlhbElkcywgbmFtZTogbmFtZV8sIHJwID0ge1xuICAgICAgICBpZDogd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLFxuICAgICAgICBuYW1lOiB3aW5kb3cuZG9jdW1lbnQudGl0bGUsXG4gICAgfSwgdXNlciwgZXh0ZW5zaW9ucywgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgbmFtZSA9ICh1c2VyPy5uYW1lID8/IG5hbWVfKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBwdWJsaWNLZXk6IHtcbiAgICAgICAgICAgIGF0dGVzdGF0aW9uLFxuICAgICAgICAgICAgYXV0aGVudGljYXRvclNlbGVjdGlvbixcbiAgICAgICAgICAgIGNoYWxsZW5nZSxcbiAgICAgICAgICAgIC4uLihleGNsdWRlQ3JlZGVudGlhbElkc1xuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICBleGNsdWRlQ3JlZGVudGlhbHM6IGV4Y2x1ZGVDcmVkZW50aWFsSWRzPy5tYXAoKGlkKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IEJhc2U2NC50b0J5dGVzKGlkKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdwdWJsaWMta2V5JyxcbiAgICAgICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAgIHB1YktleUNyZWRQYXJhbXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdwdWJsaWMta2V5JyxcbiAgICAgICAgICAgICAgICAgICAgYWxnOiAtNywgLy8gcDI1NlxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgcnAsXG4gICAgICAgICAgICB1c2VyOiB7XG4gICAgICAgICAgICAgICAgaWQ6IHVzZXI/LmlkID8/IEhhc2gua2VjY2FrMjU2KEJ5dGVzLmZyb21TdHJpbmcobmFtZSksIHsgYXM6ICdCeXRlcycgfSksXG4gICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogdXNlcj8uZGlzcGxheU5hbWUgPz8gbmFtZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleHRlbnNpb25zLFxuICAgICAgICB9LFxuICAgIH07XG59XG4vKipcbiAqIFJldHVybnMgdGhlIHJlcXVlc3Qgb3B0aW9ucyB0byBzaWduIGEgY2hhbGxlbmdlIHdpdGggdGhlIFdlYiBBdXRoZW50aWNhdGlvbiBBUEkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBXZWJBdXRoblAyNTYgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBvcHRpb25zID0gV2ViQXV0aG5QMjU2LmdldENyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucyh7XG4gKiAgIGNoYWxsZW5nZTogJzB4ZGVhZGJlZWYnLFxuICogfSlcbiAqXG4gKiBjb25zdCBjcmVkZW50aWFsID0gYXdhaXQgd2luZG93Lm5hdmlnYXRvci5jcmVkZW50aWFscy5nZXQob3B0aW9ucylcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBjcmVkZW50aWFsIHJlcXVlc3Qgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucyhvcHRpb25zKSB7XG4gICAgY29uc3QgeyBjcmVkZW50aWFsSWQsIGNoYWxsZW5nZSwgcnBJZCA9IHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSwgdXNlclZlcmlmaWNhdGlvbiA9ICdyZXF1aXJlZCcsIH0gPSBvcHRpb25zO1xuICAgIHJldHVybiB7XG4gICAgICAgIHB1YmxpY0tleToge1xuICAgICAgICAgICAgLi4uKGNyZWRlbnRpYWxJZFxuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICBhbGxvd0NyZWRlbnRpYWxzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IEJhc2U2NC50b0J5dGVzKGNyZWRlbnRpYWxJZCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3B1YmxpYy1rZXknLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgOiB7fSksXG4gICAgICAgICAgICBjaGFsbGVuZ2U6IEJ5dGVzLmZyb21IZXgoY2hhbGxlbmdlKSxcbiAgICAgICAgICAgIHJwSWQsXG4gICAgICAgICAgICB1c2VyVmVyaWZpY2F0aW9uLFxuICAgICAgICB9LFxuICAgIH07XG59XG4vKipcbiAqIENvbnN0cnVjdHMgdGhlIGZpbmFsIGRpZ2VzdCB0aGF0IHdhcyBzaWduZWQgYW5kIGNvbXB1dGVkIGJ5IHRoZSBhdXRoZW50aWNhdG9yLiBUaGlzIHBheWxvYWQgaW5jbHVkZXNcbiAqIHRoZSBjcnlwdG9ncmFwaGljIGBjaGFsbGVuZ2VgLCBhcyB3ZWxsIGFzIGF1dGhlbnRpY2F0b3IgbWV0YWRhdGEgKGBhdXRoZW50aWNhdG9yRGF0YWAgKyBgY2xpZW50RGF0YUpTT05gKS5cbiAqIFRoaXMgdmFsdWUgY2FuIGJlIGFsc28gdXNlZCB3aXRoIHJhdyBQMjU2IHZlcmlmaWNhdGlvbiAoc3VjaCBhcyB7QGxpbmsgb3gjUDI1Ni4odmVyaWZ5OmZ1bmN0aW9uKX0gb3JcbiAqIHtAbGluayBveCNXZWJDcnlwdG9QMjU2Lih2ZXJpZnk6ZnVuY3Rpb24pfSkuXG4gKlxuICogOjo6d2FybmluZ1xuICpcbiAqIFRoaXMgZnVuY3Rpb24gaXMgbWFpbmx5IGZvciB0ZXN0aW5nIHB1cnBvc2VzIG9yIGZvciBtYW51YWxseSBjb25zdHJ1Y3RpbmdcbiAqIHNpZ25pbmcgcGF5bG9hZHMuIEluIG1vc3QgY2FzZXMgeW91IHdpbGwgbm90IG5lZWQgdGhpcyBmdW5jdGlvbiBhbmRcbiAqIGluc3RlYWQgdXNlIHtAbGluayBveCNXZWJBdXRoblAyNTYuKHNpZ246ZnVuY3Rpb24pfS5cbiAqXG4gKiA6OjpcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFdlYkF1dGhuUDI1NiwgV2ViQ3J5cHRvUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHsgbWV0YWRhdGEsIHBheWxvYWQgfSA9IFdlYkF1dGhuUDI1Ni5nZXRTaWduUGF5bG9hZCh7IC8vIFshY29kZSBmb2N1c11cbiAqICAgY2hhbGxlbmdlOiAnMHhkZWFkYmVlZicsIC8vIFshY29kZSBmb2N1c11cbiAqIH0pIC8vIFshY29kZSBmb2N1c11cbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgbWV0YWRhdGE6IHtcbiAqIC8vIEBsb2c6ICAgICBhdXRoZW50aWNhdG9yRGF0YTogXCIweDQ5OTYwZGU1ODgwZThjNjg3NDM0MTcwZjY0NzY2MDViOGZlNGFlYjlhMjg2MzJjNzk5NWNmM2JhODMxZDk3NjMwNTAwMDAwMDAwXCIsXG4gKiAvLyBAbG9nOiAgICAgY2hhbGxlbmdlSW5kZXg6IDIzLFxuICogLy8gQGxvZzogICAgIGNsaWVudERhdGFKU09OOiBcIntcInR5cGVcIjpcIndlYmF1dGhuLmdldFwiLFwiY2hhbGxlbmdlXCI6XCI5akVGaWp1aEVXck00U09XLXRDaEpiVUVIRVA0NFZjamNKLUJxbzFmVE04XCIsXCJvcmlnaW5cIjpcImh0dHA6Ly9sb2NhbGhvc3Q6NTE3M1wiLFwiY3Jvc3NPcmlnaW5cIjpmYWxzZX1cIixcbiAqIC8vIEBsb2c6ICAgICB0eXBlSW5kZXg6IDEsXG4gKiAvLyBAbG9nOiAgICAgdXNlclZlcmlmaWNhdGlvblJlcXVpcmVkOiB0cnVlLFxuICogLy8gQGxvZzogICB9LFxuICogLy8gQGxvZzogICBwYXlsb2FkOiBcIjB4NDk5NjBkZTU4ODBlOGM2ODc0MzQxNzBmNjQ3NjYwNWI4ZmU0YWViOWEyODYzMmM3OTk1Y2YzYmE4MzFkOTc2MzA1MDAwMDAwMDA0NTA4NmRjYjA2YTVmMjM0ZGI2MjViY2RjOTRlNjU3Zjg2Yjc2YjZmZDNlYjljMzA1NDNlYWJjMWU1NzdhNGIwXCIsXG4gKiAvLyBAbG9nOiB9XG4gKlxuICogY29uc3QgeyBwdWJsaWNLZXksIHByaXZhdGVLZXkgfSA9IGF3YWl0IFdlYkNyeXB0b1AyNTYuY3JlYXRlS2V5UGFpcigpXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgV2ViQ3J5cHRvUDI1Ni5zaWduKHtcbiAqICAgcGF5bG9hZCxcbiAqICAgcHJpdmF0ZUtleSxcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMgdG8gY29uc3RydWN0IHRoZSBzaWduaW5nIHBheWxvYWQuXG4gKiBAcmV0dXJucyBUaGUgc2lnbmluZyBwYXlsb2FkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2lnblBheWxvYWQob3B0aW9ucykge1xuICAgIGNvbnN0IHsgY2hhbGxlbmdlLCBjcm9zc09yaWdpbiwgZXh0cmFDbGllbnREYXRhLCBmbGFnLCBvcmlnaW4sIHJwSWQsIHNpZ25Db3VudCwgdXNlclZlcmlmaWNhdGlvbiA9ICdyZXF1aXJlZCcsIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGF1dGhlbnRpY2F0b3JEYXRhID0gZ2V0QXV0aGVudGljYXRvckRhdGEoe1xuICAgICAgICBmbGFnLFxuICAgICAgICBycElkLFxuICAgICAgICBzaWduQ291bnQsXG4gICAgfSk7XG4gICAgY29uc3QgY2xpZW50RGF0YUpTT04gPSBnZXRDbGllbnREYXRhSlNPTih7XG4gICAgICAgIGNoYWxsZW5nZSxcbiAgICAgICAgY3Jvc3NPcmlnaW4sXG4gICAgICAgIGV4dHJhQ2xpZW50RGF0YSxcbiAgICAgICAgb3JpZ2luLFxuICAgIH0pO1xuICAgIGNvbnN0IGNsaWVudERhdGFKU09OSGFzaCA9IEhhc2guc2hhMjU2KEhleC5mcm9tU3RyaW5nKGNsaWVudERhdGFKU09OKSk7XG4gICAgY29uc3QgY2hhbGxlbmdlSW5kZXggPSBjbGllbnREYXRhSlNPTi5pbmRleE9mKCdcImNoYWxsZW5nZVwiJyk7XG4gICAgY29uc3QgdHlwZUluZGV4ID0gY2xpZW50RGF0YUpTT04uaW5kZXhPZignXCJ0eXBlXCInKTtcbiAgICBjb25zdCBtZXRhZGF0YSA9IHtcbiAgICAgICAgYXV0aGVudGljYXRvckRhdGEsXG4gICAgICAgIGNsaWVudERhdGFKU09OLFxuICAgICAgICBjaGFsbGVuZ2VJbmRleCxcbiAgICAgICAgdHlwZUluZGV4LFxuICAgICAgICB1c2VyVmVyaWZpY2F0aW9uUmVxdWlyZWQ6IHVzZXJWZXJpZmljYXRpb24gPT09ICdyZXF1aXJlZCcsXG4gICAgfTtcbiAgICBjb25zdCBwYXlsb2FkID0gSGV4LmNvbmNhdChhdXRoZW50aWNhdG9yRGF0YSwgY2xpZW50RGF0YUpTT05IYXNoKTtcbiAgICByZXR1cm4geyBtZXRhZGF0YSwgcGF5bG9hZCB9O1xufVxuLyoqXG4gKiBTaWducyBhIGNoYWxsZW5nZSB1c2luZyBhIHN0b3JlZCBXZWJBdXRobiBQMjU2IENyZWRlbnRpYWwuIElmIG5vIENyZWRlbnRpYWwgaXMgcHJvdmlkZWQsXG4gKiBhIHByb21wdCB3aWxsIGJlIGRpc3BsYXllZCBmb3IgdGhlIHVzZXIgdG8gc2VsZWN0IGFuIGV4aXN0aW5nIENyZWRlbnRpYWxcbiAqIHRoYXQgd2FzIHByZXZpb3VzbHkgcmVnaXN0ZXJlZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFdlYkF1dGhuUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGNyZWRlbnRpYWwgPSBhd2FpdCBXZWJBdXRoblAyNTYuY3JlYXRlQ3JlZGVudGlhbCh7XG4gKiAgIG5hbWU6ICdFeGFtcGxlJyxcbiAqIH0pXG4gKlxuICogY29uc3QgeyBtZXRhZGF0YSwgc2lnbmF0dXJlIH0gPSBhd2FpdCBXZWJBdXRoblAyNTYuc2lnbih7IC8vIFshY29kZSBmb2N1c11cbiAqICAgY3JlZGVudGlhbElkOiBjcmVkZW50aWFsLmlkLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIGNoYWxsZW5nZTogJzB4ZGVhZGJlZWYnLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiB9KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIG1ldGFkYXRhOiB7XG4gKiAvLyBAbG9nOiAgICAgYXV0aGVudGljYXRvckRhdGE6ICcweDQ5OTYwZGU1ODgwZThjNjg3NDM0MTcwZjY0NzY2MDViOGZlNGFlYjlhMjg2MzJjNzk5NWNmM2JhODMxZDk3NjMwNTAwMDAwMDAwJyxcbiAqIC8vIEBsb2c6ICAgICBjbGllbnREYXRhSlNPTjogJ3tcInR5cGVcIjpcIndlYmF1dGhuLmdldFwiLFwiY2hhbGxlbmdlXCI6XCI5akVGaWp1aEVXck00U09XLXRDaEpiVUVIRVA0NFZjamNKLUJxbzFmVE04XCIsXCJvcmlnaW5cIjpcImh0dHA6Ly9sb2NhbGhvc3Q6NTE3M1wiLFwiY3Jvc3NPcmlnaW5cIjpmYWxzZX0nLFxuICogLy8gQGxvZzogICAgIGNoYWxsZW5nZUluZGV4OiAyMyxcbiAqIC8vIEBsb2c6ICAgICB0eXBlSW5kZXg6IDEsXG4gKiAvLyBAbG9nOiAgICAgdXNlclZlcmlmaWNhdGlvblJlcXVpcmVkOiB0cnVlLFxuICogLy8gQGxvZzogICB9LFxuICogLy8gQGxvZzogICBzaWduYXR1cmU6IHsgcjogNTEyMzEuLi40MjE1biwgczogMTIzNDUuLi42Nzg5biB9LFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgVGhlIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNpZ24ob3B0aW9ucykge1xuICAgIGNvbnN0IHsgZ2V0Rm4gPSB3aW5kb3cubmF2aWdhdG9yLmNyZWRlbnRpYWxzLmdldC5iaW5kKHdpbmRvdy5uYXZpZ2F0b3IuY3JlZGVudGlhbHMpLCAuLi5yZXN0IH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHJlcXVlc3RPcHRpb25zID0gZ2V0Q3JlZGVudGlhbFJlcXVlc3RPcHRpb25zKHJlc3QpO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGNyZWRlbnRpYWwgPSAoYXdhaXQgZ2V0Rm4ocmVxdWVzdE9wdGlvbnMpKTtcbiAgICAgICAgaWYgKCFjcmVkZW50aWFsKVxuICAgICAgICAgICAgdGhyb3cgbmV3IENyZWRlbnRpYWxSZXF1ZXN0RmFpbGVkRXJyb3IoKTtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBjcmVkZW50aWFsLnJlc3BvbnNlO1xuICAgICAgICBjb25zdCBjbGllbnREYXRhSlNPTiA9IFN0cmluZy5mcm9tQ2hhckNvZGUoLi4ubmV3IFVpbnQ4QXJyYXkocmVzcG9uc2UuY2xpZW50RGF0YUpTT04pKTtcbiAgICAgICAgY29uc3QgY2hhbGxlbmdlSW5kZXggPSBjbGllbnREYXRhSlNPTi5pbmRleE9mKCdcImNoYWxsZW5nZVwiJyk7XG4gICAgICAgIGNvbnN0IHR5cGVJbmRleCA9IGNsaWVudERhdGFKU09OLmluZGV4T2YoJ1widHlwZVwiJyk7XG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9IGludGVybmFsLnBhcnNlQXNuMVNpZ25hdHVyZShuZXcgVWludDhBcnJheShyZXNwb25zZS5zaWduYXR1cmUpKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgICAgICAgICAgYXV0aGVudGljYXRvckRhdGE6IEhleC5mcm9tQnl0ZXMobmV3IFVpbnQ4QXJyYXkocmVzcG9uc2UuYXV0aGVudGljYXRvckRhdGEpKSxcbiAgICAgICAgICAgICAgICBjbGllbnREYXRhSlNPTixcbiAgICAgICAgICAgICAgICBjaGFsbGVuZ2VJbmRleCxcbiAgICAgICAgICAgICAgICB0eXBlSW5kZXgsXG4gICAgICAgICAgICAgICAgdXNlclZlcmlmaWNhdGlvblJlcXVpcmVkOiByZXF1ZXN0T3B0aW9ucy5wdWJsaWNLZXkudXNlclZlcmlmaWNhdGlvbiA9PT0gJ3JlcXVpcmVkJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgICAgICByYXc6IGNyZWRlbnRpYWwsXG4gICAgICAgIH07XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgQ3JlZGVudGlhbFJlcXVlc3RGYWlsZWRFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyb3IsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVmVyaWZpZXMgYSBzaWduYXR1cmUgdXNpbmcgdGhlIENyZWRlbnRpYWwncyBwdWJsaWMga2V5IGFuZCB0aGUgY2hhbGxlbmdlIHdoaWNoIHdhcyBzaWduZWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBXZWJBdXRoblAyNTYgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBjcmVkZW50aWFsID0gYXdhaXQgV2ViQXV0aG5QMjU2LmNyZWF0ZUNyZWRlbnRpYWwoe1xuICogICBuYW1lOiAnRXhhbXBsZScsXG4gKiB9KVxuICpcbiAqIGNvbnN0IHsgbWV0YWRhdGEsIHNpZ25hdHVyZSB9ID0gYXdhaXQgV2ViQXV0aG5QMjU2LnNpZ24oe1xuICogICBjcmVkZW50aWFsSWQ6IGNyZWRlbnRpYWwuaWQsXG4gKiAgIGNoYWxsZW5nZTogJzB4ZGVhZGJlZWYnLFxuICogfSlcbiAqXG4gKiBjb25zdCByZXN1bHQgPSBhd2FpdCBXZWJBdXRoblAyNTYudmVyaWZ5KHsgLy8gWyFjb2RlIGZvY3VzXVxuICogICBtZXRhZGF0YSwgLy8gWyFjb2RlIGZvY3VzXVxuICogICBjaGFsbGVuZ2U6ICcweGRlYWRiZWVmJywgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwdWJsaWNLZXk6IGNyZWRlbnRpYWwucHVibGljS2V5LCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHNpZ25hdHVyZSwgLy8gWyFjb2RlIGZvY3VzXVxuICogfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogLy8gQGxvZzogdHJ1ZVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgc2lnbmF0dXJlIGlzIHZhbGlkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5KG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGNoYWxsZW5nZSwgaGFzaCA9IHRydWUsIG1ldGFkYXRhLCBwdWJsaWNLZXksIHNpZ25hdHVyZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB7IGF1dGhlbnRpY2F0b3JEYXRhLCBjaGFsbGVuZ2VJbmRleCwgY2xpZW50RGF0YUpTT04sIHR5cGVJbmRleCwgdXNlclZlcmlmaWNhdGlvblJlcXVpcmVkLCB9ID0gbWV0YWRhdGE7XG4gICAgY29uc3QgYXV0aGVudGljYXRvckRhdGFCeXRlcyA9IEJ5dGVzLmZyb21IZXgoYXV0aGVudGljYXRvckRhdGEpO1xuICAgIC8vIENoZWNrIGxlbmd0aCBvZiBgYXV0aGVudGljYXRvckRhdGFgLlxuICAgIGlmIChhdXRoZW50aWNhdG9yRGF0YUJ5dGVzLmxlbmd0aCA8IDM3KVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgZmxhZyA9IGF1dGhlbnRpY2F0b3JEYXRhQnl0ZXNbMzJdO1xuICAgIC8vIFZlcmlmeSB0aGF0IHRoZSBVUCBiaXQgb2YgdGhlIGZsYWdzIGluIGF1dGhEYXRhIGlzIHNldC5cbiAgICBpZiAoKGZsYWcgJiAweDAxKSAhPT0gMHgwMSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIC8vIElmIHVzZXIgdmVyaWZpY2F0aW9uIHdhcyBkZXRlcm1pbmVkIHRvIGJlIHJlcXVpcmVkLCB2ZXJpZnkgdGhhdFxuICAgIC8vIHRoZSBVViBiaXQgb2YgdGhlIGZsYWdzIGluIGF1dGhEYXRhIGlzIHNldC4gT3RoZXJ3aXNlLCBpZ25vcmUgdGhlXG4gICAgLy8gdmFsdWUgb2YgdGhlIFVWIGZsYWcuXG4gICAgaWYgKHVzZXJWZXJpZmljYXRpb25SZXF1aXJlZCAmJiAoZmxhZyAmIDB4MDQpICE9PSAweDA0KVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgLy8gSWYgdGhlIEJFIGJpdCBvZiB0aGUgZmxhZ3MgaW4gYXV0aERhdGEgaXMgbm90IHNldCwgdmVyaWZ5IHRoYXRcbiAgICAvLyB0aGUgQlMgYml0IGlzIG5vdCBzZXQuXG4gICAgaWYgKChmbGFnICYgMHgwOCkgIT09IDB4MDggJiYgKGZsYWcgJiAweDEwKSA9PT0gMHgxMClcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIC8vIENoZWNrIHRoYXQgcmVzcG9uc2UgaXMgZm9yIGFuIGF1dGhlbnRpY2F0aW9uIGFzc2VydGlvblxuICAgIGNvbnN0IHR5cGUgPSAnXCJ0eXBlXCI6XCJ3ZWJhdXRobi5nZXRcIic7XG4gICAgaWYgKHR5cGUgIT09IGNsaWVudERhdGFKU09OLnNsaWNlKE51bWJlcih0eXBlSW5kZXgpLCB0eXBlLmxlbmd0aCArIDEpKVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgLy8gQ2hlY2sgdGhhdCBoYXNoIGlzIGluIHRoZSBjbGllbnREYXRhSlNPTi5cbiAgICBjb25zdCBtYXRjaCA9IGNsaWVudERhdGFKU09OXG4gICAgICAgIC5zbGljZShOdW1iZXIoY2hhbGxlbmdlSW5kZXgpKVxuICAgICAgICAubWF0Y2goL15cImNoYWxsZW5nZVwiOlwiKC4qPylcIi8pO1xuICAgIGlmICghbWF0Y2gpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAvLyBWYWxpZGF0ZSB0aGUgY2hhbGxlbmdlIGluIHRoZSBjbGllbnREYXRhSlNPTi5cbiAgICBjb25zdCBbXywgY2hhbGxlbmdlX2V4dHJhY3RlZF0gPSBtYXRjaDtcbiAgICBpZiAoSGV4LmZyb21CeXRlcyhCYXNlNjQudG9CeXRlcyhjaGFsbGVuZ2VfZXh0cmFjdGVkKSkgIT09IGNoYWxsZW5nZSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IGNsaWVudERhdGFKU09OSGFzaCA9IEhhc2guc2hhMjU2KEJ5dGVzLmZyb21TdHJpbmcoY2xpZW50RGF0YUpTT04pLCB7XG4gICAgICAgIGFzOiAnQnl0ZXMnLFxuICAgIH0pO1xuICAgIGNvbnN0IHBheWxvYWQgPSBCeXRlcy5jb25jYXQoYXV0aGVudGljYXRvckRhdGFCeXRlcywgY2xpZW50RGF0YUpTT05IYXNoKTtcbiAgICByZXR1cm4gUDI1Ni52ZXJpZnkoe1xuICAgICAgICBoYXNoLFxuICAgICAgICBwYXlsb2FkLFxuICAgICAgICBwdWJsaWNLZXksXG4gICAgICAgIHNpZ25hdHVyZSxcbiAgICB9KTtcbn1cbi8qKiBUaHJvd24gd2hlbiBhIFdlYkF1dGhuIFAyNTYgY3JlZGVudGlhbCBjcmVhdGlvbiBmYWlscy4gKi9cbmV4cG9ydCBjbGFzcyBDcmVkZW50aWFsQ3JlYXRpb25GYWlsZWRFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UgfSA9IHt9KSB7XG4gICAgICAgIHN1cGVyKCdGYWlsZWQgdG8gY3JlYXRlIGNyZWRlbnRpYWwuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnV2ViQXV0aG5QMjU2LkNyZWRlbnRpYWxDcmVhdGlvbkZhaWxlZEVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKiogVGhyb3duIHdoZW4gYSBXZWJBdXRobiBQMjU2IGNyZWRlbnRpYWwgcmVxdWVzdCBmYWlscy4gKi9cbmV4cG9ydCBjbGFzcyBDcmVkZW50aWFsUmVxdWVzdEZhaWxlZEVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSB9ID0ge30pIHtcbiAgICAgICAgc3VwZXIoJ0ZhaWxlZCB0byByZXF1ZXN0IGNyZWRlbnRpYWwuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnV2ViQXV0aG5QMjU2LkNyZWRlbnRpYWxSZXF1ZXN0RmFpbGVkRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVdlYkF1dGhuUDI1Ni5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebAuthnP256.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebCryptoP256.js": /*!**************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebCryptoP256.js ***! \**************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createKeyPair: () => (/* binding */ createKeyPair),\n/* harmony export */ sign: () => (/* binding */ sign),\n/* harmony export */ verify: () => (/* binding */ verify)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_p256__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @noble/curves/p256 */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/p256.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _PublicKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PublicKey.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/PublicKey.js\");\n\n\n\n/**\n * Generates an ECDSA P256 key pair that includes:\n *\n * - a `privateKey` of type [`CryptoKey`](https://developer.mozilla.org/en-US/docs/Web/API/CryptoKey)\n *\n * - a `publicKey` of type {@link ox#Hex.Hex} or {@link ox#Bytes.Bytes}\n *\n * @example\n * ```ts twoslash\n * import { WebCryptoP256 } from 'ox'\n *\n * const { publicKey, privateKey } = await WebCryptoP256.createKeyPair()\n * // @log: {\n * // @log: privateKey: CryptoKey {},\n * // @log: publicKey: {\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: prefix: 4,\n * // @log: },\n * // @log: }\n * ```\n *\n * @param options - Options for creating the key pair.\n * @returns The key pair.\n */\nasync function createKeyPair(options = {}) {\n const { extractable = false } = options;\n const keypair = await globalThis.crypto.subtle.generateKey({\n name: 'ECDSA',\n namedCurve: 'P-256',\n }, extractable, ['sign', 'verify']);\n const publicKey_raw = await globalThis.crypto.subtle.exportKey('raw', keypair.publicKey);\n const publicKey = _PublicKey_js__WEBPACK_IMPORTED_MODULE_0__.from(new Uint8Array(publicKey_raw));\n return {\n privateKey: keypair.privateKey,\n publicKey,\n };\n}\n/**\n * Signs a payload with the provided `CryptoKey` private key and returns a P256 signature.\n *\n * @example\n * ```ts twoslash\n * import { WebCryptoP256 } from 'ox'\n *\n * const { privateKey } = await WebCryptoP256.createKeyPair()\n *\n * const signature = await WebCryptoP256.sign({ // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * privateKey, // [!code focus]\n * }) // [!code focus]\n * // @log: {\n * // @log: r: 151231...4423n,\n * // @log: s: 516123...5512n,\n * // @log: }\n * ```\n *\n * @param options - Options for signing the payload.\n * @returns The P256 ECDSA {@link ox#Signature.Signature}.\n */\nasync function sign(options) {\n const { payload, privateKey } = options;\n const signature = await globalThis.crypto.subtle.sign({\n name: 'ECDSA',\n hash: 'SHA-256',\n }, privateKey, _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(payload));\n const signature_bytes = _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.fromArray(new Uint8Array(signature));\n const r = _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.toBigInt(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.slice(signature_bytes, 0, 32));\n let s = _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.toBigInt(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.slice(signature_bytes, 32, 64));\n if (s > _noble_curves_p256__WEBPACK_IMPORTED_MODULE_2__.p256.CURVE.n / 2n)\n s = _noble_curves_p256__WEBPACK_IMPORTED_MODULE_2__.p256.CURVE.n - s;\n return { r, s };\n}\n/**\n * Verifies a payload was signed by the provided public key.\n *\n * @example\n *\n * ```ts twoslash\n * import { WebCryptoP256 } from 'ox'\n *\n * const { privateKey, publicKey } = await WebCryptoP256.createKeyPair()\n * const signature = await WebCryptoP256.sign({ payload: '0xdeadbeef', privateKey })\n *\n * const verified = await WebCryptoP256.verify({ // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * publicKey, // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * // @log: true\n * ```\n *\n * @param options - The verification options.\n * @returns Whether the payload was signed by the provided public key.\n */\nasync function verify(options) {\n const { payload, signature } = options;\n const publicKey = await globalThis.crypto.subtle.importKey('raw', _PublicKey_js__WEBPACK_IMPORTED_MODULE_0__.toBytes(options.publicKey), { name: 'ECDSA', namedCurve: 'P-256' }, true, ['verify']);\n return await globalThis.crypto.subtle.verify({\n name: 'ECDSA',\n hash: 'SHA-256',\n }, publicKey, _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.concat(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(signature.r), _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(signature.s)), _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(payload));\n}\n//# sourceMappingURL=WebCryptoP256.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL1dlYkNyeXB0b1AyNTYuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQTBDO0FBQ047QUFDUTtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLGtCQUFrQixJQUFJO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EsV0FBVyx3QkFBd0I7QUFDbkM7QUFDQSxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08seUNBQXlDO0FBQ2hELFlBQVksc0JBQXNCO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLHNCQUFzQiwrQ0FBYztBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EsV0FBVyxhQUFhO0FBQ3hCO0FBQ0EsZ0RBQWdEO0FBQ2hEO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsNkJBQTZCO0FBQ3pEO0FBQ087QUFDUCxZQUFZLHNCQUFzQjtBQUNsQztBQUNBO0FBQ0E7QUFDQSxLQUFLLGNBQWMsMkNBQVU7QUFDN0IsNEJBQTRCLGdEQUFlO0FBQzNDLGNBQWMsK0NBQWMsQ0FBQyw0Q0FBVztBQUN4QyxZQUFZLCtDQUFjLENBQUMsNENBQVc7QUFDdEMsWUFBWSxvREFBSTtBQUNoQixZQUFZLG9EQUFJO0FBQ2hCLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EsV0FBVyx3QkFBd0I7QUFDbkMsZ0RBQWdELG1DQUFtQztBQUNuRjtBQUNBLGlEQUFpRDtBQUNqRDtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLHFCQUFxQjtBQUNqQyxzRUFBc0Usa0RBQWlCLHVCQUF1QixvQ0FBb0M7QUFDbEo7QUFDQTtBQUNBO0FBQ0EsS0FBSyxhQUFhLDZDQUFZLENBQUMsaURBQWdCLGVBQWUsaURBQWdCLGdCQUFnQiwyQ0FBVTtBQUN4RztBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvV2ViQ3J5cHRvUDI1Ni5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwMjU2IH0gZnJvbSAnQG5vYmxlL2N1cnZlcy9wMjU2JztcbmltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgUHVibGljS2V5IGZyb20gJy4vUHVibGljS2V5LmpzJztcbi8qKlxuICogR2VuZXJhdGVzIGFuIEVDRFNBIFAyNTYga2V5IHBhaXIgdGhhdCBpbmNsdWRlczpcbiAqXG4gKiAtIGEgYHByaXZhdGVLZXlgIG9mIHR5cGUgW2BDcnlwdG9LZXlgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvQ3J5cHRvS2V5KVxuICpcbiAqIC0gYSBgcHVibGljS2V5YCBvZiB0eXBlIHtAbGluayBveCNIZXguSGV4fSBvciB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9XG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBXZWJDcnlwdG9QMjU2IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgeyBwdWJsaWNLZXksIHByaXZhdGVLZXkgfSA9IGF3YWl0IFdlYkNyeXB0b1AyNTYuY3JlYXRlS2V5UGFpcigpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHByaXZhdGVLZXk6IENyeXB0b0tleSB7fSxcbiAqIC8vIEBsb2c6ICAgcHVibGljS2V5OiB7XG4gKiAvLyBAbG9nOiAgICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogLy8gQGxvZzogICAgIHk6IDI0MDk5NjkxMjA5OTk2MjkwOTI1MjU5MzY3Njc4NTQwMjI3MTk4MjM1NDg0NTkzMzg5NDcwMzMwNjA1NjQxMDAzNTAwMjM4MDg4ODY5bixcbiAqIC8vIEBsb2c6ICAgICBwcmVmaXg6IDQsXG4gKiAvLyBAbG9nOiAgIH0sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMgZm9yIGNyZWF0aW5nIHRoZSBrZXkgcGFpci5cbiAqIEByZXR1cm5zIFRoZSBrZXkgcGFpci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZUtleVBhaXIob3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBleHRyYWN0YWJsZSA9IGZhbHNlIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGtleXBhaXIgPSBhd2FpdCBnbG9iYWxUaGlzLmNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe1xuICAgICAgICBuYW1lOiAnRUNEU0EnLFxuICAgICAgICBuYW1lZEN1cnZlOiAnUC0yNTYnLFxuICAgIH0sIGV4dHJhY3RhYmxlLCBbJ3NpZ24nLCAndmVyaWZ5J10pO1xuICAgIGNvbnN0IHB1YmxpY0tleV9yYXcgPSBhd2FpdCBnbG9iYWxUaGlzLmNyeXB0by5zdWJ0bGUuZXhwb3J0S2V5KCdyYXcnLCBrZXlwYWlyLnB1YmxpY0tleSk7XG4gICAgY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb20obmV3IFVpbnQ4QXJyYXkocHVibGljS2V5X3JhdykpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHByaXZhdGVLZXk6IGtleXBhaXIucHJpdmF0ZUtleSxcbiAgICAgICAgcHVibGljS2V5LFxuICAgIH07XG59XG4vKipcbiAqIFNpZ25zIGEgcGF5bG9hZCB3aXRoIHRoZSBwcm92aWRlZCBgQ3J5cHRvS2V5YCBwcml2YXRlIGtleSBhbmQgcmV0dXJucyBhIFAyNTYgc2lnbmF0dXJlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgV2ViQ3J5cHRvUDI1NiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHsgcHJpdmF0ZUtleSB9ID0gYXdhaXQgV2ViQ3J5cHRvUDI1Ni5jcmVhdGVLZXlQYWlyKClcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBhd2FpdCBXZWJDcnlwdG9QMjU2LnNpZ24oeyAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHBheWxvYWQ6ICcweGRlYWRiZWVmJywgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwcml2YXRlS2V5LCAvLyBbIWNvZGUgZm9jdXNdXG4gKiB9KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHI6IDE1MTIzMS4uLjQ0MjNuLFxuICogLy8gQGxvZzogICBzOiA1MTYxMjMuLi41NTEybixcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucyBmb3Igc2lnbmluZyB0aGUgcGF5bG9hZC5cbiAqIEByZXR1cm5zIFRoZSBQMjU2IEVDRFNBIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNpZ24ob3B0aW9ucykge1xuICAgIGNvbnN0IHsgcGF5bG9hZCwgcHJpdmF0ZUtleSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBzaWduYXR1cmUgPSBhd2FpdCBnbG9iYWxUaGlzLmNyeXB0by5zdWJ0bGUuc2lnbih7XG4gICAgICAgIG5hbWU6ICdFQ0RTQScsXG4gICAgICAgIGhhc2g6ICdTSEEtMjU2JyxcbiAgICB9LCBwcml2YXRlS2V5LCBCeXRlcy5mcm9tKHBheWxvYWQpKTtcbiAgICBjb25zdCBzaWduYXR1cmVfYnl0ZXMgPSBCeXRlcy5mcm9tQXJyYXkobmV3IFVpbnQ4QXJyYXkoc2lnbmF0dXJlKSk7XG4gICAgY29uc3QgciA9IEJ5dGVzLnRvQmlnSW50KEJ5dGVzLnNsaWNlKHNpZ25hdHVyZV9ieXRlcywgMCwgMzIpKTtcbiAgICBsZXQgcyA9IEJ5dGVzLnRvQmlnSW50KEJ5dGVzLnNsaWNlKHNpZ25hdHVyZV9ieXRlcywgMzIsIDY0KSk7XG4gICAgaWYgKHMgPiBwMjU2LkNVUlZFLm4gLyAybilcbiAgICAgICAgcyA9IHAyNTYuQ1VSVkUubiAtIHM7XG4gICAgcmV0dXJuIHsgciwgcyB9O1xufVxuLyoqXG4gKiBWZXJpZmllcyBhIHBheWxvYWQgd2FzIHNpZ25lZCBieSB0aGUgcHJvdmlkZWQgcHVibGljIGtleS5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBXZWJDcnlwdG9QMjU2IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgeyBwcml2YXRlS2V5LCBwdWJsaWNLZXkgfSA9IGF3YWl0IFdlYkNyeXB0b1AyNTYuY3JlYXRlS2V5UGFpcigpXG4gKiBjb25zdCBzaWduYXR1cmUgPSBhd2FpdCBXZWJDcnlwdG9QMjU2LnNpZ24oeyBwYXlsb2FkOiAnMHhkZWFkYmVlZicsIHByaXZhdGVLZXkgfSlcbiAqXG4gKiBjb25zdCB2ZXJpZmllZCA9IGF3YWl0IFdlYkNyeXB0b1AyNTYudmVyaWZ5KHsgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwYXlsb2FkOiAnMHhkZWFkYmVlZicsIC8vIFshY29kZSBmb2N1c11cbiAqICAgcHVibGljS2V5LCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHNpZ25hdHVyZSwgLy8gWyFjb2RlIGZvY3VzXVxuICogfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogLy8gQGxvZzogdHJ1ZVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgdmVyaWZpY2F0aW9uIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBwYXlsb2FkIHdhcyBzaWduZWQgYnkgdGhlIHByb3ZpZGVkIHB1YmxpYyBrZXkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB2ZXJpZnkob3B0aW9ucykge1xuICAgIGNvbnN0IHsgcGF5bG9hZCwgc2lnbmF0dXJlIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHB1YmxpY0tleSA9IGF3YWl0IGdsb2JhbFRoaXMuY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoJ3JhdycsIFB1YmxpY0tleS50b0J5dGVzKG9wdGlvbnMucHVibGljS2V5KSwgeyBuYW1lOiAnRUNEU0EnLCBuYW1lZEN1cnZlOiAnUC0yNTYnIH0sIHRydWUsIFsndmVyaWZ5J10pO1xuICAgIHJldHVybiBhd2FpdCBnbG9iYWxUaGlzLmNyeXB0by5zdWJ0bGUudmVyaWZ5KHtcbiAgICAgICAgbmFtZTogJ0VDRFNBJyxcbiAgICAgICAgaGFzaDogJ1NIQS0yNTYnLFxuICAgIH0sIHB1YmxpY0tleSwgQnl0ZXMuY29uY2F0KEJ5dGVzLmZyb21OdW1iZXIoc2lnbmF0dXJlLnIpLCBCeXRlcy5mcm9tTnVtYmVyKHNpZ25hdHVyZS5zKSksIEJ5dGVzLmZyb20ocGF5bG9hZCkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9V2ViQ3J5cHRvUDI1Ni5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebCryptoP256.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/bytes.js": /*!***************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/bytes.js ***! \***************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertEndOffset: () => (/* binding */ assertEndOffset),\n/* harmony export */ assertSize: () => (/* binding */ assertSize),\n/* harmony export */ assertStartOffset: () => (/* binding */ assertStartOffset),\n/* harmony export */ charCodeMap: () => (/* binding */ charCodeMap),\n/* harmony export */ charCodeToBase16: () => (/* binding */ charCodeToBase16),\n/* harmony export */ pad: () => (/* binding */ pad),\n/* harmony export */ trim: () => (/* binding */ trim)\n/* harmony export */ });\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Bytes.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Bytes.js\");\n\n/** @internal */\nfunction assertSize(bytes, size_) {\n if (_Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes) > size_)\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SizeOverflowError({\n givenSize: _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes),\n maxSize: size_,\n });\n}\n/** @internal */\nfunction assertStartOffset(value, start) {\n if (typeof start === 'number' && start > 0 && start > _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value) - 1)\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: start,\n position: 'start',\n size: _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n}\n/** @internal */\nfunction assertEndOffset(value, start, end) {\n if (typeof start === 'number' &&\n typeof end === 'number' &&\n _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value) !== end - start) {\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: end,\n position: 'end',\n size: _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n }\n}\n/** @internal */\nconst charCodeMap = {\n zero: 48,\n nine: 57,\n A: 65,\n F: 70,\n a: 97,\n f: 102,\n};\n/** @internal */\nfunction charCodeToBase16(char) {\n if (char >= charCodeMap.zero && char <= charCodeMap.nine)\n return char - charCodeMap.zero;\n if (char >= charCodeMap.A && char <= charCodeMap.F)\n return char - (charCodeMap.A - 10);\n if (char >= charCodeMap.a && char <= charCodeMap.f)\n return char - (charCodeMap.a - 10);\n return undefined;\n}\n/** @internal */\nfunction pad(bytes, options = {}) {\n const { dir, size = 32 } = options;\n if (size === 0)\n return bytes;\n if (bytes.length > size)\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SizeExceedsPaddingSizeError({\n size: bytes.length,\n targetSize: size,\n type: 'Bytes',\n });\n const paddedBytes = new Uint8Array(size);\n for (let i = 0; i < size; i++) {\n const padEnd = dir === 'right';\n paddedBytes[padEnd ? i : size - i - 1] =\n bytes[padEnd ? i : bytes.length - i - 1];\n }\n return paddedBytes;\n}\n/** @internal */\nfunction trim(value, options = {}) {\n const { dir = 'left' } = options;\n let data = value;\n let sliceLength = 0;\n for (let i = 0; i < data.length - 1; i++) {\n if (data[dir === 'left' ? i : data.length - i - 1].toString() === '0')\n sliceLength++;\n else\n break;\n }\n data =\n dir === 'left'\n ? data.slice(sliceLength)\n : data.slice(0, data.length - sliceLength);\n return data;\n}\n//# sourceMappingURL=bytes.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL2J5dGVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQXFDO0FBQ3JDO0FBQ087QUFDUCxRQUFRLDJDQUFVO0FBQ2xCLGtCQUFrQix3REFBdUI7QUFDekMsdUJBQXVCLDJDQUFVO0FBQ2pDO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTztBQUNQLDBEQUEwRCwyQ0FBVTtBQUNwRSxrQkFBa0Isa0VBQWlDO0FBQ25EO0FBQ0E7QUFDQSxrQkFBa0IsMkNBQVU7QUFDNUIsU0FBUztBQUNUO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSxRQUFRLDJDQUFVO0FBQ2xCLGtCQUFrQixrRUFBaUM7QUFDbkQ7QUFDQTtBQUNBLGtCQUFrQiwyQ0FBVTtBQUM1QixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxnQ0FBZ0M7QUFDdkMsWUFBWSxpQkFBaUI7QUFDN0I7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGtFQUFpQztBQUNuRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxvQkFBb0IsVUFBVTtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLGlDQUFpQztBQUN4QyxZQUFZLGVBQWU7QUFDM0I7QUFDQTtBQUNBLG9CQUFvQixxQkFBcUI7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvYnl0ZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQnl0ZXMgZnJvbSAnLi4vQnl0ZXMuanMnO1xuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFNpemUoYnl0ZXMsIHNpemVfKSB7XG4gICAgaWYgKEJ5dGVzLnNpemUoYnl0ZXMpID4gc2l6ZV8pXG4gICAgICAgIHRocm93IG5ldyBCeXRlcy5TaXplT3ZlcmZsb3dFcnJvcih7XG4gICAgICAgICAgICBnaXZlblNpemU6IEJ5dGVzLnNpemUoYnl0ZXMpLFxuICAgICAgICAgICAgbWF4U2l6ZTogc2l6ZV8sXG4gICAgICAgIH0pO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFN0YXJ0T2Zmc2V0KHZhbHVlLCBzdGFydCkge1xuICAgIGlmICh0eXBlb2Ygc3RhcnQgPT09ICdudW1iZXInICYmIHN0YXJ0ID4gMCAmJiBzdGFydCA+IEJ5dGVzLnNpemUodmFsdWUpIC0gMSlcbiAgICAgICAgdGhyb3cgbmV3IEJ5dGVzLlNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvcih7XG4gICAgICAgICAgICBvZmZzZXQ6IHN0YXJ0LFxuICAgICAgICAgICAgcG9zaXRpb246ICdzdGFydCcsXG4gICAgICAgICAgICBzaXplOiBCeXRlcy5zaXplKHZhbHVlKSxcbiAgICAgICAgfSk7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0RW5kT2Zmc2V0KHZhbHVlLCBzdGFydCwgZW5kKSB7XG4gICAgaWYgKHR5cGVvZiBzdGFydCA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgdHlwZW9mIGVuZCA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgQnl0ZXMuc2l6ZSh2YWx1ZSkgIT09IGVuZCAtIHN0YXJ0KSB7XG4gICAgICAgIHRocm93IG5ldyBCeXRlcy5TbGljZU9mZnNldE91dE9mQm91bmRzRXJyb3Ioe1xuICAgICAgICAgICAgb2Zmc2V0OiBlbmQsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2VuZCcsXG4gICAgICAgICAgICBzaXplOiBCeXRlcy5zaXplKHZhbHVlKSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGNvbnN0IGNoYXJDb2RlTWFwID0ge1xuICAgIHplcm86IDQ4LFxuICAgIG5pbmU6IDU3LFxuICAgIEE6IDY1LFxuICAgIEY6IDcwLFxuICAgIGE6IDk3LFxuICAgIGY6IDEwMixcbn07XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gY2hhckNvZGVUb0Jhc2UxNihjaGFyKSB7XG4gICAgaWYgKGNoYXIgPj0gY2hhckNvZGVNYXAuemVybyAmJiBjaGFyIDw9IGNoYXJDb2RlTWFwLm5pbmUpXG4gICAgICAgIHJldHVybiBjaGFyIC0gY2hhckNvZGVNYXAuemVybztcbiAgICBpZiAoY2hhciA+PSBjaGFyQ29kZU1hcC5BICYmIGNoYXIgPD0gY2hhckNvZGVNYXAuRilcbiAgICAgICAgcmV0dXJuIGNoYXIgLSAoY2hhckNvZGVNYXAuQSAtIDEwKTtcbiAgICBpZiAoY2hhciA+PSBjaGFyQ29kZU1hcC5hICYmIGNoYXIgPD0gY2hhckNvZGVNYXAuZilcbiAgICAgICAgcmV0dXJuIGNoYXIgLSAoY2hhckNvZGVNYXAuYSAtIDEwKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhZChieXRlcywgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBkaXIsIHNpemUgPSAzMiB9ID0gb3B0aW9ucztcbiAgICBpZiAoc2l6ZSA9PT0gMClcbiAgICAgICAgcmV0dXJuIGJ5dGVzO1xuICAgIGlmIChieXRlcy5sZW5ndGggPiBzaXplKVxuICAgICAgICB0aHJvdyBuZXcgQnl0ZXMuU2l6ZUV4Y2VlZHNQYWRkaW5nU2l6ZUVycm9yKHtcbiAgICAgICAgICAgIHNpemU6IGJ5dGVzLmxlbmd0aCxcbiAgICAgICAgICAgIHRhcmdldFNpemU6IHNpemUsXG4gICAgICAgICAgICB0eXBlOiAnQnl0ZXMnLFxuICAgICAgICB9KTtcbiAgICBjb25zdCBwYWRkZWRCeXRlcyA9IG5ldyBVaW50OEFycmF5KHNpemUpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHBhZEVuZCA9IGRpciA9PT0gJ3JpZ2h0JztcbiAgICAgICAgcGFkZGVkQnl0ZXNbcGFkRW5kID8gaSA6IHNpemUgLSBpIC0gMV0gPVxuICAgICAgICAgICAgYnl0ZXNbcGFkRW5kID8gaSA6IGJ5dGVzLmxlbmd0aCAtIGkgLSAxXTtcbiAgICB9XG4gICAgcmV0dXJuIHBhZGRlZEJ5dGVzO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyaW0odmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgZGlyID0gJ2xlZnQnIH0gPSBvcHRpb25zO1xuICAgIGxldCBkYXRhID0gdmFsdWU7XG4gICAgbGV0IHNsaWNlTGVuZ3RoID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGEubGVuZ3RoIC0gMTsgaSsrKSB7XG4gICAgICAgIGlmIChkYXRhW2RpciA9PT0gJ2xlZnQnID8gaSA6IGRhdGEubGVuZ3RoIC0gaSAtIDFdLnRvU3RyaW5nKCkgPT09ICcwJylcbiAgICAgICAgICAgIHNsaWNlTGVuZ3RoKys7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBkYXRhID1cbiAgICAgICAgZGlyID09PSAnbGVmdCdcbiAgICAgICAgICAgID8gZGF0YS5zbGljZShzbGljZUxlbmd0aClcbiAgICAgICAgICAgIDogZGF0YS5zbGljZSgwLCBkYXRhLmxlbmd0aCAtIHNsaWNlTGVuZ3RoKTtcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJ5dGVzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/bytes.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/entropy.js": /*!*****************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/entropy.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ extraEntropy: () => (/* binding */ extraEntropy),\n/* harmony export */ setExtraEntropy: () => (/* binding */ setExtraEntropy)\n/* harmony export */ });\nlet extraEntropy = false;\n/** @internal */\nfunction setExtraEntropy(entropy) {\n extraEntropy = entropy;\n}\n//# sourceMappingURL=entropy.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL2VudHJvcHkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBTztBQUNQO0FBQ087QUFDUDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9pbnRlcm5hbC9lbnRyb3B5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBsZXQgZXh0cmFFbnRyb3B5ID0gZmFsc2U7XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gc2V0RXh0cmFFbnRyb3B5KGVudHJvcHkpIHtcbiAgICBleHRyYUVudHJvcHkgPSBlbnRyb3B5O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZW50cm9weS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/entropy.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/errors.js": /*!****************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/errors.js ***! \****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUrl: () => (/* binding */ getUrl),\n/* harmony export */ getVersion: () => (/* binding */ getVersion),\n/* harmony export */ prettyPrint: () => (/* binding */ prettyPrint)\n/* harmony export */ });\n/* harmony import */ var _version_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../version.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/version.js\");\n\n/** @internal */\nfunction getUrl(url) {\n return url;\n}\n/** @internal */\nfunction getVersion() {\n return _version_js__WEBPACK_IMPORTED_MODULE_0__.version;\n}\n/** @internal */\nfunction prettyPrint(args) {\n if (!args)\n return '';\n const entries = Object.entries(args)\n .map(([key, value]) => {\n if (value === undefined || value === false)\n return null;\n return [key, value];\n })\n .filter(Boolean);\n const maxLength = entries.reduce((acc, [key]) => Math.max(acc, key.length), 0);\n return entries\n .map(([key, value]) => ` ${`${key}:`.padEnd(maxLength + 1)} ${value}`)\n .join('\\n');\n}\n//# sourceMappingURL=errors.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL2Vycm9ycy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQXdDO0FBQ3hDO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDTztBQUNQLFdBQVcsZ0RBQU87QUFDbEI7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLEdBQUcsSUFBSSwyQkFBMkIsRUFBRSxNQUFNO0FBQzlFO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL2Vycm9ycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB2ZXJzaW9uIH0gZnJvbSAnLi4vdmVyc2lvbi5qcyc7XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VXJsKHVybCkge1xuICAgIHJldHVybiB1cmw7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VmVyc2lvbigpIHtcbiAgICByZXR1cm4gdmVyc2lvbjtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmV0dHlQcmludChhcmdzKSB7XG4gICAgaWYgKCFhcmdzKVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgY29uc3QgZW50cmllcyA9IE9iamVjdC5lbnRyaWVzKGFyZ3MpXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gZmFsc2UpXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgcmV0dXJuIFtrZXksIHZhbHVlXTtcbiAgICB9KVxuICAgICAgICAuZmlsdGVyKEJvb2xlYW4pO1xuICAgIGNvbnN0IG1heExlbmd0aCA9IGVudHJpZXMucmVkdWNlKChhY2MsIFtrZXldKSA9PiBNYXRoLm1heChhY2MsIGtleS5sZW5ndGgpLCAwKTtcbiAgICByZXR1cm4gZW50cmllc1xuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAgICR7YCR7a2V5fTpgLnBhZEVuZChtYXhMZW5ndGggKyAxKX0gICR7dmFsdWV9YClcbiAgICAgICAgLmpvaW4oJ1xcbicpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZXJyb3JzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/errors.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/hex.js": /*!*************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/hex.js ***! \*************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertEndOffset: () => (/* binding */ assertEndOffset),\n/* harmony export */ assertSize: () => (/* binding */ assertSize),\n/* harmony export */ assertStartOffset: () => (/* binding */ assertStartOffset),\n/* harmony export */ pad: () => (/* binding */ pad),\n/* harmony export */ trim: () => (/* binding */ trim)\n/* harmony export */ });\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n\n/** @internal */\nfunction assertSize(hex, size_) {\n if (_Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(hex) > size_)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SizeOverflowError({\n givenSize: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(hex),\n maxSize: size_,\n });\n}\n/** @internal */\nfunction assertStartOffset(value, start) {\n if (typeof start === 'number' && start > 0 && start > _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value) - 1)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: start,\n position: 'start',\n size: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n}\n/** @internal */\nfunction assertEndOffset(value, start, end) {\n if (typeof start === 'number' &&\n typeof end === 'number' &&\n _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value) !== end - start) {\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: end,\n position: 'end',\n size: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n }\n}\n/** @internal */\nfunction pad(hex_, options = {}) {\n const { dir, size = 32 } = options;\n if (size === 0)\n return hex_;\n const hex = hex_.replace('0x', '');\n if (hex.length > size * 2)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SizeExceedsPaddingSizeError({\n size: Math.ceil(hex.length / 2),\n targetSize: size,\n type: 'Hex',\n });\n return `0x${hex[dir === 'right' ? 'padEnd' : 'padStart'](size * 2, '0')}`;\n}\n/** @internal */\nfunction trim(value, options = {}) {\n const { dir = 'left' } = options;\n let data = value.replace('0x', '');\n let sliceLength = 0;\n for (let i = 0; i < data.length - 1; i++) {\n if (data[dir === 'left' ? i : data.length - i - 1].toString() === '0')\n sliceLength++;\n else\n break;\n }\n data =\n dir === 'left'\n ? data.slice(sliceLength)\n : data.slice(0, data.length - sliceLength);\n if (data === '0')\n return '0x';\n if (dir === 'right' && data.length % 2 === 1)\n return `0x${data}0`;\n return `0x${data}`;\n}\n//# sourceMappingURL=hex.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL2hleC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBaUM7QUFDakM7QUFDTztBQUNQLFFBQVEseUNBQVE7QUFDaEIsa0JBQWtCLHNEQUFxQjtBQUN2Qyx1QkFBdUIseUNBQVE7QUFDL0I7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPO0FBQ1AsMERBQTBELHlDQUFRO0FBQ2xFLGtCQUFrQixnRUFBK0I7QUFDakQ7QUFDQTtBQUNBLGtCQUFrQix5Q0FBUTtBQUMxQixTQUFTO0FBQ1Q7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLFFBQVEseUNBQVE7QUFDaEIsa0JBQWtCLGdFQUErQjtBQUNqRDtBQUNBO0FBQ0Esa0JBQWtCLHlDQUFRO0FBQzFCLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTywrQkFBK0I7QUFDdEMsWUFBWSxpQkFBaUI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsZ0VBQStCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxnQkFBZ0IsNERBQTREO0FBQzVFO0FBQ0E7QUFDTyxpQ0FBaUM7QUFDeEMsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQSxvQkFBb0IscUJBQXFCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixLQUFLO0FBQ3pCLGdCQUFnQixLQUFLO0FBQ3JCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9pbnRlcm5hbC9oZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgSGV4IGZyb20gJy4uL0hleC5qcyc7XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0U2l6ZShoZXgsIHNpemVfKSB7XG4gICAgaWYgKEhleC5zaXplKGhleCkgPiBzaXplXylcbiAgICAgICAgdGhyb3cgbmV3IEhleC5TaXplT3ZlcmZsb3dFcnJvcih7XG4gICAgICAgICAgICBnaXZlblNpemU6IEhleC5zaXplKGhleCksXG4gICAgICAgICAgICBtYXhTaXplOiBzaXplXyxcbiAgICAgICAgfSk7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0U3RhcnRPZmZzZXQodmFsdWUsIHN0YXJ0KSB7XG4gICAgaWYgKHR5cGVvZiBzdGFydCA9PT0gJ251bWJlcicgJiYgc3RhcnQgPiAwICYmIHN0YXJ0ID4gSGV4LnNpemUodmFsdWUpIC0gMSlcbiAgICAgICAgdGhyb3cgbmV3IEhleC5TbGljZU9mZnNldE91dE9mQm91bmRzRXJyb3Ioe1xuICAgICAgICAgICAgb2Zmc2V0OiBzdGFydCxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnc3RhcnQnLFxuICAgICAgICAgICAgc2l6ZTogSGV4LnNpemUodmFsdWUpLFxuICAgICAgICB9KTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRFbmRPZmZzZXQodmFsdWUsIHN0YXJ0LCBlbmQpIHtcbiAgICBpZiAodHlwZW9mIHN0YXJ0ID09PSAnbnVtYmVyJyAmJlxuICAgICAgICB0eXBlb2YgZW5kID09PSAnbnVtYmVyJyAmJlxuICAgICAgICBIZXguc2l6ZSh2YWx1ZSkgIT09IGVuZCAtIHN0YXJ0KSB7XG4gICAgICAgIHRocm93IG5ldyBIZXguU2xpY2VPZmZzZXRPdXRPZkJvdW5kc0Vycm9yKHtcbiAgICAgICAgICAgIG9mZnNldDogZW5kLFxuICAgICAgICAgICAgcG9zaXRpb246ICdlbmQnLFxuICAgICAgICAgICAgc2l6ZTogSGV4LnNpemUodmFsdWUpLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gcGFkKGhleF8sIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgZGlyLCBzaXplID0gMzIgfSA9IG9wdGlvbnM7XG4gICAgaWYgKHNpemUgPT09IDApXG4gICAgICAgIHJldHVybiBoZXhfO1xuICAgIGNvbnN0IGhleCA9IGhleF8ucmVwbGFjZSgnMHgnLCAnJyk7XG4gICAgaWYgKGhleC5sZW5ndGggPiBzaXplICogMilcbiAgICAgICAgdGhyb3cgbmV3IEhleC5TaXplRXhjZWVkc1BhZGRpbmdTaXplRXJyb3Ioe1xuICAgICAgICAgICAgc2l6ZTogTWF0aC5jZWlsKGhleC5sZW5ndGggLyAyKSxcbiAgICAgICAgICAgIHRhcmdldFNpemU6IHNpemUsXG4gICAgICAgICAgICB0eXBlOiAnSGV4JyxcbiAgICAgICAgfSk7XG4gICAgcmV0dXJuIGAweCR7aGV4W2RpciA9PT0gJ3JpZ2h0JyA/ICdwYWRFbmQnIDogJ3BhZFN0YXJ0J10oc2l6ZSAqIDIsICcwJyl9YDtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiB0cmltKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGRpciA9ICdsZWZ0JyB9ID0gb3B0aW9ucztcbiAgICBsZXQgZGF0YSA9IHZhbHVlLnJlcGxhY2UoJzB4JywgJycpO1xuICAgIGxldCBzbGljZUxlbmd0aCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmxlbmd0aCAtIDE7IGkrKykge1xuICAgICAgICBpZiAoZGF0YVtkaXIgPT09ICdsZWZ0JyA/IGkgOiBkYXRhLmxlbmd0aCAtIGkgLSAxXS50b1N0cmluZygpID09PSAnMCcpXG4gICAgICAgICAgICBzbGljZUxlbmd0aCsrO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG4gICAgZGF0YSA9XG4gICAgICAgIGRpciA9PT0gJ2xlZnQnXG4gICAgICAgICAgICA/IGRhdGEuc2xpY2Uoc2xpY2VMZW5ndGgpXG4gICAgICAgICAgICA6IGRhdGEuc2xpY2UoMCwgZGF0YS5sZW5ndGggLSBzbGljZUxlbmd0aCk7XG4gICAgaWYgKGRhdGEgPT09ICcwJylcbiAgICAgICAgcmV0dXJuICcweCc7XG4gICAgaWYgKGRpciA9PT0gJ3JpZ2h0JyAmJiBkYXRhLmxlbmd0aCAlIDIgPT09IDEpXG4gICAgICAgIHJldHVybiBgMHgke2RhdGF9MGA7XG4gICAgcmV0dXJuIGAweCR7ZGF0YX1gO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aGV4LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/hex.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/webauthn.js": /*!******************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/webauthn.js ***! \******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseAsn1Signature: () => (/* binding */ parseAsn1Signature),\n/* harmony export */ parseCredentialPublicKey: () => (/* binding */ parseCredentialPublicKey)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_p256__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @noble/curves/p256 */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/p256.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Hex.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _PublicKey_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../PublicKey.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/PublicKey.js\");\n/* harmony import */ var _WebAuthnP256_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../WebAuthnP256.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/WebAuthnP256.js\");\n\n\n\n\n/**\n * Parses an ASN.1 signature into a r and s value.\n *\n * @internal\n */\nfunction parseAsn1Signature(bytes) {\n const r_start = bytes[4] === 0 ? 5 : 4;\n const r_end = r_start + 32;\n const s_start = bytes[r_end + 2] === 0 ? r_end + 3 : r_end + 2;\n const r = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromBytes(bytes.slice(r_start, r_end)));\n const s = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromBytes(bytes.slice(s_start)));\n return {\n r,\n s: s > _noble_curves_p256__WEBPACK_IMPORTED_MODULE_1__.p256.CURVE.n / 2n ? _noble_curves_p256__WEBPACK_IMPORTED_MODULE_1__.p256.CURVE.n - s : s,\n };\n}\n/**\n * Parses a public key into x and y coordinates from the public key\n * defined on the credential.\n *\n * @internal\n */\nasync function parseCredentialPublicKey(response) {\n try {\n const publicKeyBuffer = response.getPublicKey();\n if (!publicKeyBuffer)\n throw new _WebAuthnP256_js__WEBPACK_IMPORTED_MODULE_2__.CredentialCreationFailedError();\n // Converting `publicKeyBuffer` throws when credential is created by 1Password Firefox Add-on\n const publicKeyBytes = new Uint8Array(publicKeyBuffer);\n const cryptoKey = await crypto.subtle.importKey('spki', new Uint8Array(publicKeyBytes), {\n name: 'ECDSA',\n namedCurve: 'P-256',\n hash: 'SHA-256',\n }, true, ['verify']);\n const publicKey = new Uint8Array(await crypto.subtle.exportKey('raw', cryptoKey));\n return _PublicKey_js__WEBPACK_IMPORTED_MODULE_3__.from(publicKey);\n }\n catch (error) {\n // Fallback for 1Password Firefox Add-on restricts access to certain credential properties\n // so we need to use `attestationObject` to extract the public key.\n // https://github.com/passwordless-id/webauthn/issues/50#issuecomment-2072902094\n if (error.message !== 'Permission denied to access object')\n throw error;\n const data = new Uint8Array(response.attestationObject);\n const coordinateLength = 0x20;\n const cborPrefix = 0x58;\n const findStart = (key) => {\n const coordinate = new Uint8Array([key, cborPrefix, coordinateLength]);\n for (let i = 0; i < data.length - coordinate.length; i++)\n if (coordinate.every((byte, j) => data[i + j] === byte))\n return i + coordinate.length;\n throw new _WebAuthnP256_js__WEBPACK_IMPORTED_MODULE_2__.CredentialCreationFailedError();\n };\n const xStart = findStart(0x21);\n const yStart = findStart(0x22);\n return _PublicKey_js__WEBPACK_IMPORTED_MODULE_3__.from(new Uint8Array([\n 0x04,\n ...data.slice(xStart, xStart + coordinateLength),\n ...data.slice(yStart, yStart + coordinateLength),\n ]));\n }\n}\n//# sourceMappingURL=webauthn.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL3dlYmF1dGhuLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUEwQztBQUNUO0FBQ1k7QUFDc0I7QUFDbkU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLDhDQUFhO0FBQ2xDLHFCQUFxQiw4Q0FBYTtBQUNsQztBQUNBO0FBQ0EsZUFBZSxvREFBSSxnQkFBZ0Isb0RBQUk7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDJFQUE2QjtBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxlQUFlLCtDQUFjO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixxQ0FBcUM7QUFDakU7QUFDQTtBQUNBLHNCQUFzQiwyRUFBNkI7QUFDbkQ7QUFDQTtBQUNBO0FBQ0EsZUFBZSwrQ0FBYztBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL3dlYmF1dGhuLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHAyNTYgfSBmcm9tICdAbm9ibGUvY3VydmVzL3AyNTYnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4uL0hleC5qcyc7XG5pbXBvcnQgKiBhcyBQdWJsaWNLZXkgZnJvbSAnLi4vUHVibGljS2V5LmpzJztcbmltcG9ydCB7IENyZWRlbnRpYWxDcmVhdGlvbkZhaWxlZEVycm9yIH0gZnJvbSAnLi4vV2ViQXV0aG5QMjU2LmpzJztcbi8qKlxuICogUGFyc2VzIGFuIEFTTi4xIHNpZ25hdHVyZSBpbnRvIGEgciBhbmQgcyB2YWx1ZS5cbiAqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQXNuMVNpZ25hdHVyZShieXRlcykge1xuICAgIGNvbnN0IHJfc3RhcnQgPSBieXRlc1s0XSA9PT0gMCA/IDUgOiA0O1xuICAgIGNvbnN0IHJfZW5kID0gcl9zdGFydCArIDMyO1xuICAgIGNvbnN0IHNfc3RhcnQgPSBieXRlc1tyX2VuZCArIDJdID09PSAwID8gcl9lbmQgKyAzIDogcl9lbmQgKyAyO1xuICAgIGNvbnN0IHIgPSBCaWdJbnQoSGV4LmZyb21CeXRlcyhieXRlcy5zbGljZShyX3N0YXJ0LCByX2VuZCkpKTtcbiAgICBjb25zdCBzID0gQmlnSW50KEhleC5mcm9tQnl0ZXMoYnl0ZXMuc2xpY2Uoc19zdGFydCkpKTtcbiAgICByZXR1cm4ge1xuICAgICAgICByLFxuICAgICAgICBzOiBzID4gcDI1Ni5DVVJWRS5uIC8gMm4gPyBwMjU2LkNVUlZFLm4gLSBzIDogcyxcbiAgICB9O1xufVxuLyoqXG4gKiBQYXJzZXMgYSBwdWJsaWMga2V5IGludG8geCBhbmQgeSBjb29yZGluYXRlcyBmcm9tIHRoZSBwdWJsaWMga2V5XG4gKiBkZWZpbmVkIG9uIHRoZSBjcmVkZW50aWFsLlxuICpcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGFyc2VDcmVkZW50aWFsUHVibGljS2V5KHJlc3BvbnNlKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcHVibGljS2V5QnVmZmVyID0gcmVzcG9uc2UuZ2V0UHVibGljS2V5KCk7XG4gICAgICAgIGlmICghcHVibGljS2V5QnVmZmVyKVxuICAgICAgICAgICAgdGhyb3cgbmV3IENyZWRlbnRpYWxDcmVhdGlvbkZhaWxlZEVycm9yKCk7XG4gICAgICAgIC8vIENvbnZlcnRpbmcgYHB1YmxpY0tleUJ1ZmZlcmAgdGhyb3dzIHdoZW4gY3JlZGVudGlhbCBpcyBjcmVhdGVkIGJ5IDFQYXNzd29yZCBGaXJlZm94IEFkZC1vblxuICAgICAgICBjb25zdCBwdWJsaWNLZXlCeXRlcyA9IG5ldyBVaW50OEFycmF5KHB1YmxpY0tleUJ1ZmZlcik7XG4gICAgICAgIGNvbnN0IGNyeXB0b0tleSA9IGF3YWl0IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCdzcGtpJywgbmV3IFVpbnQ4QXJyYXkocHVibGljS2V5Qnl0ZXMpLCB7XG4gICAgICAgICAgICBuYW1lOiAnRUNEU0EnLFxuICAgICAgICAgICAgbmFtZWRDdXJ2ZTogJ1AtMjU2JyxcbiAgICAgICAgICAgIGhhc2g6ICdTSEEtMjU2JyxcbiAgICAgICAgfSwgdHJ1ZSwgWyd2ZXJpZnknXSk7XG4gICAgICAgIGNvbnN0IHB1YmxpY0tleSA9IG5ldyBVaW50OEFycmF5KGF3YWl0IGNyeXB0by5zdWJ0bGUuZXhwb3J0S2V5KCdyYXcnLCBjcnlwdG9LZXkpKTtcbiAgICAgICAgcmV0dXJuIFB1YmxpY0tleS5mcm9tKHB1YmxpY0tleSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAvLyBGYWxsYmFjayBmb3IgMVBhc3N3b3JkIEZpcmVmb3ggQWRkLW9uIHJlc3RyaWN0cyBhY2Nlc3MgdG8gY2VydGFpbiBjcmVkZW50aWFsIHByb3BlcnRpZXNcbiAgICAgICAgLy8gc28gd2UgbmVlZCB0byB1c2UgYGF0dGVzdGF0aW9uT2JqZWN0YCB0byBleHRyYWN0IHRoZSBwdWJsaWMga2V5LlxuICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGFzc3dvcmRsZXNzLWlkL3dlYmF1dGhuL2lzc3Vlcy81MCNpc3N1ZWNvbW1lbnQtMjA3MjkwMjA5NFxuICAgICAgICBpZiAoZXJyb3IubWVzc2FnZSAhPT0gJ1Blcm1pc3Npb24gZGVuaWVkIHRvIGFjY2VzcyBvYmplY3QnKVxuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBuZXcgVWludDhBcnJheShyZXNwb25zZS5hdHRlc3RhdGlvbk9iamVjdCk7XG4gICAgICAgIGNvbnN0IGNvb3JkaW5hdGVMZW5ndGggPSAweDIwO1xuICAgICAgICBjb25zdCBjYm9yUHJlZml4ID0gMHg1ODtcbiAgICAgICAgY29uc3QgZmluZFN0YXJ0ID0gKGtleSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29vcmRpbmF0ZSA9IG5ldyBVaW50OEFycmF5KFtrZXksIGNib3JQcmVmaXgsIGNvb3JkaW5hdGVMZW5ndGhdKTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YS5sZW5ndGggLSBjb29yZGluYXRlLmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgICAgIGlmIChjb29yZGluYXRlLmV2ZXJ5KChieXRlLCBqKSA9PiBkYXRhW2kgKyBqXSA9PT0gYnl0ZSkpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBpICsgY29vcmRpbmF0ZS5sZW5ndGg7XG4gICAgICAgICAgICB0aHJvdyBuZXcgQ3JlZGVudGlhbENyZWF0aW9uRmFpbGVkRXJyb3IoKTtcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgeFN0YXJ0ID0gZmluZFN0YXJ0KDB4MjEpO1xuICAgICAgICBjb25zdCB5U3RhcnQgPSBmaW5kU3RhcnQoMHgyMik7XG4gICAgICAgIHJldHVybiBQdWJsaWNLZXkuZnJvbShuZXcgVWludDhBcnJheShbXG4gICAgICAgICAgICAweDA0LFxuICAgICAgICAgICAgLi4uZGF0YS5zbGljZSh4U3RhcnQsIHhTdGFydCArIGNvb3JkaW5hdGVMZW5ndGgpLFxuICAgICAgICAgICAgLi4uZGF0YS5zbGljZSh5U3RhcnQsIHlTdGFydCArIGNvb3JkaW5hdGVMZW5ndGgpLFxuICAgICAgICBdKSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9d2ViYXV0aG4uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/internal/webauthn.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/version.js": /*!********************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/version.js ***! \********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ version: () => (/* binding */ version)\n/* harmony export */ });\n/** @internal */\nconst version = '0.1.1';\n//# sourceMappingURL=version.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL3ZlcnNpb24uanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ087QUFDUCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL3ZlcnNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGNvbnN0IHZlcnNpb24gPSAnMC4xLjEnO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dmVyc2lvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/_esm/core/version.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_md.js": /*!*************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_md.js ***! \*************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Chi: () => (/* binding */ Chi),\n/* harmony export */ HashMD: () => (/* binding */ HashMD),\n/* harmony export */ Maj: () => (/* binding */ Maj),\n/* harmony export */ SHA224_IV: () => (/* binding */ SHA224_IV),\n/* harmony export */ SHA256_IV: () => (/* binding */ SHA256_IV),\n/* harmony export */ SHA384_IV: () => (/* binding */ SHA384_IV),\n/* harmony export */ SHA512_IV: () => (/* binding */ SHA512_IV),\n/* harmony export */ setBigUint64: () => (/* binding */ setBigUint64)\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/utils.js\");\n/**\n * Internal Merkle-Damgard hash utils.\n * @module\n */\n\n/** Polyfill for Safari 14. https://caniuse.com/mdn-javascript_builtins_dataview_setbiguint64 */\nfunction setBigUint64(view, byteOffset, value, isLE) {\n if (typeof view.setBigUint64 === 'function')\n return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\n/** Choice: a ? b : c */\nfunction Chi(a, b, c) {\n return (a & b) ^ (~a & c);\n}\n/** Majority function, true if any two inputs is true. */\nfunction Maj(a, b, c) {\n return (a & b) ^ (a & c) ^ (b & c);\n}\n/**\n * Merkle-Damgard hash construction base class.\n * Could be used to create MD5, RIPEMD, SHA1, SHA2.\n */\nclass HashMD extends _utils_js__WEBPACK_IMPORTED_MODULE_0__.Hash {\n constructor(blockLen, outputLen, padOffset, isLE) {\n super();\n this.finished = false;\n this.length = 0;\n this.pos = 0;\n this.destroyed = false;\n this.blockLen = blockLen;\n this.outputLen = outputLen;\n this.padOffset = padOffset;\n this.isLE = isLE;\n this.buffer = new Uint8Array(blockLen);\n this.view = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.createView)(this.buffer);\n }\n update(data) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aexists)(this);\n data = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.toBytes)(data);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abytes)(data);\n const { view, buffer, blockLen } = this;\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input, cast it to view and process\n if (take === blockLen) {\n const dataView = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.createView)(data);\n for (; blockLen <= len - pos; pos += blockLen)\n this.process(dataView, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(view, 0);\n this.pos = 0;\n }\n }\n this.length += data.length;\n this.roundClean();\n return this;\n }\n digestInto(out) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aexists)(this);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aoutput)(out, this);\n this.finished = true;\n // Padding\n // We can avoid allocation of buffer for padding completely if it\n // was previously not allocated here. But it won't change performance.\n const { buffer, view, blockLen, isLE } = this;\n let { pos } = this;\n // append the bit '1' to the message\n buffer[pos++] = 0b10000000;\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.clean)(this.buffer.subarray(pos));\n // we have less than padOffset left in buffer, so we cannot put length in\n // current block, need process it and pad again\n if (this.padOffset > blockLen - pos) {\n this.process(view, 0);\n pos = 0;\n }\n // Pad until full block byte with zeros\n for (let i = pos; i < blockLen; i++)\n buffer[i] = 0;\n // Note: sha512 requires length to be 128bit integer, but length in JS will overflow before that\n // You need to write around 2 exabytes (u64_max / 8 / (1024**6)) for this to happen.\n // So we just write lowest 64 bits of that value.\n setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE);\n this.process(view, 0);\n const oview = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.createView)(out);\n const len = this.outputLen;\n // NOTE: we do division by 4 later, which should be fused in single op with modulo by JIT\n if (len % 4)\n throw new Error('_sha2: outputLen should be aligned to 32bit');\n const outLen = len / 4;\n const state = this.get();\n if (outLen > state.length)\n throw new Error('_sha2: outputLen bigger than state');\n for (let i = 0; i < outLen; i++)\n oview.setUint32(4 * i, state[i], isLE);\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n _cloneInto(to) {\n to || (to = new this.constructor());\n to.set(...this.get());\n const { blockLen, buffer, length, finished, destroyed, pos } = this;\n to.destroyed = destroyed;\n to.finished = finished;\n to.length = length;\n to.pos = pos;\n if (length % blockLen)\n to.buffer.set(buffer);\n return to;\n }\n clone() {\n return this._cloneInto();\n }\n}\n/**\n * Initial SHA-2 state: fractional parts of square roots of first 16 primes 2..53.\n * Check out `test/misc/sha2-gen-iv.js` for recomputation guide.\n */\n/** Initial SHA256 state. Bits 0..32 of frac part of sqrt of primes 2..19 */\nconst SHA256_IV = /* @__PURE__ */ Uint32Array.from([\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19,\n]);\n/** Initial SHA224 state. Bits 32..64 of frac part of sqrt of primes 23..53 */\nconst SHA224_IV = /* @__PURE__ */ Uint32Array.from([\n 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4,\n]);\n/** Initial SHA384 state. Bits 0..64 of frac part of sqrt of primes 23..53 */\nconst SHA384_IV = /* @__PURE__ */ Uint32Array.from([\n 0xcbbb9d5d, 0xc1059ed8, 0x629a292a, 0x367cd507, 0x9159015a, 0x3070dd17, 0x152fecd8, 0xf70e5939,\n 0x67332667, 0xffc00b31, 0x8eb44a87, 0x68581511, 0xdb0c2e0d, 0x64f98fa7, 0x47b5481d, 0xbefa4fa4,\n]);\n/** Initial SHA512 state. Bits 0..64 of frac part of sqrt of primes 2..19 */\nconst SHA512_IV = /* @__PURE__ */ Uint32Array.from([\n 0x6a09e667, 0xf3bcc908, 0xbb67ae85, 0x84caa73b, 0x3c6ef372, 0xfe94f82b, 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1, 0x9b05688c, 0x2b3e6c1f, 0x1f83d9ab, 0xfb41bd6b, 0x5be0cd19, 0x137e2179,\n]);\n//# sourceMappingURL=_md.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL19tZC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUN3RjtBQUN4RjtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHFCQUFxQiwyQ0FBSTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHFEQUFVO0FBQzlCO0FBQ0E7QUFDQSxRQUFRLGtEQUFPO0FBQ2YsZUFBZSxrREFBTztBQUN0QixRQUFRLGlEQUFNO0FBQ2QsZ0JBQWdCLHlCQUF5QjtBQUN6QztBQUNBLDBCQUEwQixVQUFVO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxxREFBVTtBQUMzQyx1QkFBdUIsdUJBQXVCO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxrREFBTztBQUNmLFFBQVEsa0RBQU87QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiwrQkFBK0I7QUFDL0MsY0FBYyxNQUFNO0FBQ3BCO0FBQ0E7QUFDQSxRQUFRLGdEQUFLO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsY0FBYztBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IscURBQVU7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixZQUFZO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixvQkFBb0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixxREFBcUQ7QUFDckU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL19tZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEludGVybmFsIE1lcmtsZS1EYW1nYXJkIGhhc2ggdXRpbHMuXG4gKiBAbW9kdWxlXG4gKi9cbmltcG9ydCB7IEhhc2gsIGFieXRlcywgYWV4aXN0cywgYW91dHB1dCwgY2xlYW4sIGNyZWF0ZVZpZXcsIHRvQnl0ZXMgfSBmcm9tIFwiLi91dGlscy5qc1wiO1xuLyoqIFBvbHlmaWxsIGZvciBTYWZhcmkgMTQuIGh0dHBzOi8vY2FuaXVzZS5jb20vbWRuLWphdmFzY3JpcHRfYnVpbHRpbnNfZGF0YXZpZXdfc2V0YmlndWludDY0ICovXG5leHBvcnQgZnVuY3Rpb24gc2V0QmlnVWludDY0KHZpZXcsIGJ5dGVPZmZzZXQsIHZhbHVlLCBpc0xFKSB7XG4gICAgaWYgKHR5cGVvZiB2aWV3LnNldEJpZ1VpbnQ2NCA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgcmV0dXJuIHZpZXcuc2V0QmlnVWludDY0KGJ5dGVPZmZzZXQsIHZhbHVlLCBpc0xFKTtcbiAgICBjb25zdCBfMzJuID0gQmlnSW50KDMyKTtcbiAgICBjb25zdCBfdTMyX21heCA9IEJpZ0ludCgweGZmZmZmZmZmKTtcbiAgICBjb25zdCB3aCA9IE51bWJlcigodmFsdWUgPj4gXzMybikgJiBfdTMyX21heCk7XG4gICAgY29uc3Qgd2wgPSBOdW1iZXIodmFsdWUgJiBfdTMyX21heCk7XG4gICAgY29uc3QgaCA9IGlzTEUgPyA0IDogMDtcbiAgICBjb25zdCBsID0gaXNMRSA/IDAgOiA0O1xuICAgIHZpZXcuc2V0VWludDMyKGJ5dGVPZmZzZXQgKyBoLCB3aCwgaXNMRSk7XG4gICAgdmlldy5zZXRVaW50MzIoYnl0ZU9mZnNldCArIGwsIHdsLCBpc0xFKTtcbn1cbi8qKiBDaG9pY2U6IGEgPyBiIDogYyAqL1xuZXhwb3J0IGZ1bmN0aW9uIENoaShhLCBiLCBjKSB7XG4gICAgcmV0dXJuIChhICYgYikgXiAofmEgJiBjKTtcbn1cbi8qKiBNYWpvcml0eSBmdW5jdGlvbiwgdHJ1ZSBpZiBhbnkgdHdvIGlucHV0cyBpcyB0cnVlLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIE1haihhLCBiLCBjKSB7XG4gICAgcmV0dXJuIChhICYgYikgXiAoYSAmIGMpIF4gKGIgJiBjKTtcbn1cbi8qKlxuICogTWVya2xlLURhbWdhcmQgaGFzaCBjb25zdHJ1Y3Rpb24gYmFzZSBjbGFzcy5cbiAqIENvdWxkIGJlIHVzZWQgdG8gY3JlYXRlIE1ENSwgUklQRU1ELCBTSEExLCBTSEEyLlxuICovXG5leHBvcnQgY2xhc3MgSGFzaE1EIGV4dGVuZHMgSGFzaCB7XG4gICAgY29uc3RydWN0b3IoYmxvY2tMZW4sIG91dHB1dExlbiwgcGFkT2Zmc2V0LCBpc0xFKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZmluaXNoZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sZW5ndGggPSAwO1xuICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuYmxvY2tMZW4gPSBibG9ja0xlbjtcbiAgICAgICAgdGhpcy5vdXRwdXRMZW4gPSBvdXRwdXRMZW47XG4gICAgICAgIHRoaXMucGFkT2Zmc2V0ID0gcGFkT2Zmc2V0O1xuICAgICAgICB0aGlzLmlzTEUgPSBpc0xFO1xuICAgICAgICB0aGlzLmJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KGJsb2NrTGVuKTtcbiAgICAgICAgdGhpcy52aWV3ID0gY3JlYXRlVmlldyh0aGlzLmJ1ZmZlcik7XG4gICAgfVxuICAgIHVwZGF0ZShkYXRhKSB7XG4gICAgICAgIGFleGlzdHModGhpcyk7XG4gICAgICAgIGRhdGEgPSB0b0J5dGVzKGRhdGEpO1xuICAgICAgICBhYnl0ZXMoZGF0YSk7XG4gICAgICAgIGNvbnN0IHsgdmlldywgYnVmZmVyLCBibG9ja0xlbiB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgbGVuID0gZGF0YS5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IHBvcyA9IDA7IHBvcyA8IGxlbjspIHtcbiAgICAgICAgICAgIGNvbnN0IHRha2UgPSBNYXRoLm1pbihibG9ja0xlbiAtIHRoaXMucG9zLCBsZW4gLSBwb3MpO1xuICAgICAgICAgICAgLy8gRmFzdCBwYXRoOiB3ZSBoYXZlIGF0IGxlYXN0IG9uZSBibG9jayBpbiBpbnB1dCwgY2FzdCBpdCB0byB2aWV3IGFuZCBwcm9jZXNzXG4gICAgICAgICAgICBpZiAodGFrZSA9PT0gYmxvY2tMZW4pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRhVmlldyA9IGNyZWF0ZVZpZXcoZGF0YSk7XG4gICAgICAgICAgICAgICAgZm9yICg7IGJsb2NrTGVuIDw9IGxlbiAtIHBvczsgcG9zICs9IGJsb2NrTGVuKVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3MoZGF0YVZpZXcsIHBvcyk7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBidWZmZXIuc2V0KGRhdGEuc3ViYXJyYXkocG9zLCBwb3MgKyB0YWtlKSwgdGhpcy5wb3MpO1xuICAgICAgICAgICAgdGhpcy5wb3MgKz0gdGFrZTtcbiAgICAgICAgICAgIHBvcyArPSB0YWtlO1xuICAgICAgICAgICAgaWYgKHRoaXMucG9zID09PSBibG9ja0xlbikge1xuICAgICAgICAgICAgICAgIHRoaXMucHJvY2Vzcyh2aWV3LCAwKTtcbiAgICAgICAgICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sZW5ndGggKz0gZGF0YS5sZW5ndGg7XG4gICAgICAgIHRoaXMucm91bmRDbGVhbigpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgZGlnZXN0SW50byhvdXQpIHtcbiAgICAgICAgYWV4aXN0cyh0aGlzKTtcbiAgICAgICAgYW91dHB1dChvdXQsIHRoaXMpO1xuICAgICAgICB0aGlzLmZpbmlzaGVkID0gdHJ1ZTtcbiAgICAgICAgLy8gUGFkZGluZ1xuICAgICAgICAvLyBXZSBjYW4gYXZvaWQgYWxsb2NhdGlvbiBvZiBidWZmZXIgZm9yIHBhZGRpbmcgY29tcGxldGVseSBpZiBpdFxuICAgICAgICAvLyB3YXMgcHJldmlvdXNseSBub3QgYWxsb2NhdGVkIGhlcmUuIEJ1dCBpdCB3b24ndCBjaGFuZ2UgcGVyZm9ybWFuY2UuXG4gICAgICAgIGNvbnN0IHsgYnVmZmVyLCB2aWV3LCBibG9ja0xlbiwgaXNMRSB9ID0gdGhpcztcbiAgICAgICAgbGV0IHsgcG9zIH0gPSB0aGlzO1xuICAgICAgICAvLyBhcHBlbmQgdGhlIGJpdCAnMScgdG8gdGhlIG1lc3NhZ2VcbiAgICAgICAgYnVmZmVyW3BvcysrXSA9IDBiMTAwMDAwMDA7XG4gICAgICAgIGNsZWFuKHRoaXMuYnVmZmVyLnN1YmFycmF5KHBvcykpO1xuICAgICAgICAvLyB3ZSBoYXZlIGxlc3MgdGhhbiBwYWRPZmZzZXQgbGVmdCBpbiBidWZmZXIsIHNvIHdlIGNhbm5vdCBwdXQgbGVuZ3RoIGluXG4gICAgICAgIC8vIGN1cnJlbnQgYmxvY2ssIG5lZWQgcHJvY2VzcyBpdCBhbmQgcGFkIGFnYWluXG4gICAgICAgIGlmICh0aGlzLnBhZE9mZnNldCA+IGJsb2NrTGVuIC0gcG9zKSB7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3ModmlldywgMCk7XG4gICAgICAgICAgICBwb3MgPSAwO1xuICAgICAgICB9XG4gICAgICAgIC8vIFBhZCB1bnRpbCBmdWxsIGJsb2NrIGJ5dGUgd2l0aCB6ZXJvc1xuICAgICAgICBmb3IgKGxldCBpID0gcG9zOyBpIDwgYmxvY2tMZW47IGkrKylcbiAgICAgICAgICAgIGJ1ZmZlcltpXSA9IDA7XG4gICAgICAgIC8vIE5vdGU6IHNoYTUxMiByZXF1aXJlcyBsZW5ndGggdG8gYmUgMTI4Yml0IGludGVnZXIsIGJ1dCBsZW5ndGggaW4gSlMgd2lsbCBvdmVyZmxvdyBiZWZvcmUgdGhhdFxuICAgICAgICAvLyBZb3UgbmVlZCB0byB3cml0ZSBhcm91bmQgMiBleGFieXRlcyAodTY0X21heCAvIDggLyAoMTAyNCoqNikpIGZvciB0aGlzIHRvIGhhcHBlbi5cbiAgICAgICAgLy8gU28gd2UganVzdCB3cml0ZSBsb3dlc3QgNjQgYml0cyBvZiB0aGF0IHZhbHVlLlxuICAgICAgICBzZXRCaWdVaW50NjQodmlldywgYmxvY2tMZW4gLSA4LCBCaWdJbnQodGhpcy5sZW5ndGggKiA4KSwgaXNMRSk7XG4gICAgICAgIHRoaXMucHJvY2Vzcyh2aWV3LCAwKTtcbiAgICAgICAgY29uc3Qgb3ZpZXcgPSBjcmVhdGVWaWV3KG91dCk7XG4gICAgICAgIGNvbnN0IGxlbiA9IHRoaXMub3V0cHV0TGVuO1xuICAgICAgICAvLyBOT1RFOiB3ZSBkbyBkaXZpc2lvbiBieSA0IGxhdGVyLCB3aGljaCBzaG91bGQgYmUgZnVzZWQgaW4gc2luZ2xlIG9wIHdpdGggbW9kdWxvIGJ5IEpJVFxuICAgICAgICBpZiAobGVuICUgNClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignX3NoYTI6IG91dHB1dExlbiBzaG91bGQgYmUgYWxpZ25lZCB0byAzMmJpdCcpO1xuICAgICAgICBjb25zdCBvdXRMZW4gPSBsZW4gLyA0O1xuICAgICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuZ2V0KCk7XG4gICAgICAgIGlmIChvdXRMZW4gPiBzdGF0ZS5sZW5ndGgpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ19zaGEyOiBvdXRwdXRMZW4gYmlnZ2VyIHRoYW4gc3RhdGUnKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvdXRMZW47IGkrKylcbiAgICAgICAgICAgIG92aWV3LnNldFVpbnQzMig0ICogaSwgc3RhdGVbaV0sIGlzTEUpO1xuICAgIH1cbiAgICBkaWdlc3QoKSB7XG4gICAgICAgIGNvbnN0IHsgYnVmZmVyLCBvdXRwdXRMZW4gfSA9IHRoaXM7XG4gICAgICAgIHRoaXMuZGlnZXN0SW50byhidWZmZXIpO1xuICAgICAgICBjb25zdCByZXMgPSBidWZmZXIuc2xpY2UoMCwgb3V0cHV0TGVuKTtcbiAgICAgICAgdGhpcy5kZXN0cm95KCk7XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxuICAgIF9jbG9uZUludG8odG8pIHtcbiAgICAgICAgdG8gfHwgKHRvID0gbmV3IHRoaXMuY29uc3RydWN0b3IoKSk7XG4gICAgICAgIHRvLnNldCguLi50aGlzLmdldCgpKTtcbiAgICAgICAgY29uc3QgeyBibG9ja0xlbiwgYnVmZmVyLCBsZW5ndGgsIGZpbmlzaGVkLCBkZXN0cm95ZWQsIHBvcyB9ID0gdGhpcztcbiAgICAgICAgdG8uZGVzdHJveWVkID0gZGVzdHJveWVkO1xuICAgICAgICB0by5maW5pc2hlZCA9IGZpbmlzaGVkO1xuICAgICAgICB0by5sZW5ndGggPSBsZW5ndGg7XG4gICAgICAgIHRvLnBvcyA9IHBvcztcbiAgICAgICAgaWYgKGxlbmd0aCAlIGJsb2NrTGVuKVxuICAgICAgICAgICAgdG8uYnVmZmVyLnNldChidWZmZXIpO1xuICAgICAgICByZXR1cm4gdG87XG4gICAgfVxuICAgIGNsb25lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2xvbmVJbnRvKCk7XG4gICAgfVxufVxuLyoqXG4gKiBJbml0aWFsIFNIQS0yIHN0YXRlOiBmcmFjdGlvbmFsIHBhcnRzIG9mIHNxdWFyZSByb290cyBvZiBmaXJzdCAxNiBwcmltZXMgMi4uNTMuXG4gKiBDaGVjayBvdXQgYHRlc3QvbWlzYy9zaGEyLWdlbi1pdi5qc2AgZm9yIHJlY29tcHV0YXRpb24gZ3VpZGUuXG4gKi9cbi8qKiBJbml0aWFsIFNIQTI1NiBzdGF0ZS4gQml0cyAwLi4zMiBvZiBmcmFjIHBhcnQgb2Ygc3FydCBvZiBwcmltZXMgMi4uMTkgKi9cbmV4cG9ydCBjb25zdCBTSEEyNTZfSVYgPSAvKiBAX19QVVJFX18gKi8gVWludDMyQXJyYXkuZnJvbShbXG4gICAgMHg2YTA5ZTY2NywgMHhiYjY3YWU4NSwgMHgzYzZlZjM3MiwgMHhhNTRmZjUzYSwgMHg1MTBlNTI3ZiwgMHg5YjA1Njg4YywgMHgxZjgzZDlhYiwgMHg1YmUwY2QxOSxcbl0pO1xuLyoqIEluaXRpYWwgU0hBMjI0IHN0YXRlLiBCaXRzIDMyLi42NCBvZiBmcmFjIHBhcnQgb2Ygc3FydCBvZiBwcmltZXMgMjMuLjUzICovXG5leHBvcnQgY29uc3QgU0hBMjI0X0lWID0gLyogQF9fUFVSRV9fICovIFVpbnQzMkFycmF5LmZyb20oW1xuICAgIDB4YzEwNTllZDgsIDB4MzY3Y2Q1MDcsIDB4MzA3MGRkMTcsIDB4ZjcwZTU5MzksIDB4ZmZjMDBiMzEsIDB4Njg1ODE1MTEsIDB4NjRmOThmYTcsIDB4YmVmYTRmYTQsXG5dKTtcbi8qKiBJbml0aWFsIFNIQTM4NCBzdGF0ZS4gQml0cyAwLi42NCBvZiBmcmFjIHBhcnQgb2Ygc3FydCBvZiBwcmltZXMgMjMuLjUzICovXG5leHBvcnQgY29uc3QgU0hBMzg0X0lWID0gLyogQF9fUFVSRV9fICovIFVpbnQzMkFycmF5LmZyb20oW1xuICAgIDB4Y2JiYjlkNWQsIDB4YzEwNTllZDgsIDB4NjI5YTI5MmEsIDB4MzY3Y2Q1MDcsIDB4OTE1OTAxNWEsIDB4MzA3MGRkMTcsIDB4MTUyZmVjZDgsIDB4ZjcwZTU5MzksXG4gICAgMHg2NzMzMjY2NywgMHhmZmMwMGIzMSwgMHg4ZWI0NGE4NywgMHg2ODU4MTUxMSwgMHhkYjBjMmUwZCwgMHg2NGY5OGZhNywgMHg0N2I1NDgxZCwgMHhiZWZhNGZhNCxcbl0pO1xuLyoqIEluaXRpYWwgU0hBNTEyIHN0YXRlLiBCaXRzIDAuLjY0IG9mIGZyYWMgcGFydCBvZiBzcXJ0IG9mIHByaW1lcyAyLi4xOSAqL1xuZXhwb3J0IGNvbnN0IFNIQTUxMl9JViA9IC8qIEBfX1BVUkVfXyAqLyBVaW50MzJBcnJheS5mcm9tKFtcbiAgICAweDZhMDllNjY3LCAweGYzYmNjOTA4LCAweGJiNjdhZTg1LCAweDg0Y2FhNzNiLCAweDNjNmVmMzcyLCAweGZlOTRmODJiLCAweGE1NGZmNTNhLCAweDVmMWQzNmYxLFxuICAgIDB4NTEwZTUyN2YsIDB4YWRlNjgyZDEsIDB4OWIwNTY4OGMsIDB4MmIzZTZjMWYsIDB4MWY4M2Q5YWIsIDB4ZmI0MWJkNmIsIDB4NWJlMGNkMTksIDB4MTM3ZTIxNzksXG5dKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPV9tZC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_md.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_u64.js": /*!**************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_u64.js ***! \**************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ add: () => (/* binding */ add),\n/* harmony export */ add3H: () => (/* binding */ add3H),\n/* harmony export */ add3L: () => (/* binding */ add3L),\n/* harmony export */ add4H: () => (/* binding */ add4H),\n/* harmony export */ add4L: () => (/* binding */ add4L),\n/* harmony export */ add5H: () => (/* binding */ add5H),\n/* harmony export */ add5L: () => (/* binding */ add5L),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ fromBig: () => (/* binding */ fromBig),\n/* harmony export */ rotlBH: () => (/* binding */ rotlBH),\n/* harmony export */ rotlBL: () => (/* binding */ rotlBL),\n/* harmony export */ rotlSH: () => (/* binding */ rotlSH),\n/* harmony export */ rotlSL: () => (/* binding */ rotlSL),\n/* harmony export */ rotr32H: () => (/* binding */ rotr32H),\n/* harmony export */ rotr32L: () => (/* binding */ rotr32L),\n/* harmony export */ rotrBH: () => (/* binding */ rotrBH),\n/* harmony export */ rotrBL: () => (/* binding */ rotrBL),\n/* harmony export */ rotrSH: () => (/* binding */ rotrSH),\n/* harmony export */ rotrSL: () => (/* binding */ rotrSL),\n/* harmony export */ shrSH: () => (/* binding */ shrSH),\n/* harmony export */ shrSL: () => (/* binding */ shrSL),\n/* harmony export */ split: () => (/* binding */ split),\n/* harmony export */ toBig: () => (/* binding */ toBig)\n/* harmony export */ });\n/**\n * Internal helpers for u64. BigUint64Array is too slow as per 2025, so we implement it using Uint32Array.\n * @todo re-check https://issues.chromium.org/issues/42212588\n * @module\n */\nconst U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);\nconst _32n = /* @__PURE__ */ BigInt(32);\nfunction fromBig(n, le = false) {\n if (le)\n return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) };\n return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };\n}\nfunction split(lst, le = false) {\n const len = lst.length;\n let Ah = new Uint32Array(len);\n let Al = new Uint32Array(len);\n for (let i = 0; i < len; i++) {\n const { h, l } = fromBig(lst[i], le);\n [Ah[i], Al[i]] = [h, l];\n }\n return [Ah, Al];\n}\nconst toBig = (h, l) => (BigInt(h >>> 0) << _32n) | BigInt(l >>> 0);\n// for Shift in [0, 32)\nconst shrSH = (h, _l, s) => h >>> s;\nconst shrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in [1, 32)\nconst rotrSH = (h, l, s) => (h >>> s) | (l << (32 - s));\nconst rotrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotrBH = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32));\nconst rotrBL = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s));\n// Right rotate for shift===32 (just swaps l&h)\nconst rotr32H = (_h, l) => l;\nconst rotr32L = (h, _l) => h;\n// Left rotate for Shift in [1, 32)\nconst rotlSH = (h, l, s) => (h << s) | (l >>> (32 - s));\nconst rotlSL = (h, l, s) => (l << s) | (h >>> (32 - s));\n// Left rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotlBH = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s));\nconst rotlBL = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s));\n// JS uses 32-bit signed integers for bitwise operations which means we cannot\n// simple take carry out of low bit sum by shift, we need to use division.\nfunction add(Ah, Al, Bh, Bl) {\n const l = (Al >>> 0) + (Bl >>> 0);\n return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 };\n}\n// Addition with more than 2 elements\nconst add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);\nconst add3H = (low, Ah, Bh, Ch) => (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0;\nconst add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);\nconst add4H = (low, Ah, Bh, Ch, Dh) => (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0;\nconst add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);\nconst add5H = (low, Ah, Bh, Ch, Dh, Eh) => (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0;\n// prettier-ignore\n\n// prettier-ignore\nconst u64 = {\n fromBig, split, toBig,\n shrSH, shrSL,\n rotrSH, rotrSL, rotrBH, rotrBL,\n rotr32H, rotr32L,\n rotlSH, rotlSL, rotlBH, rotlBL,\n add, add3L, add3H, add4L, add4H, add5H, add5L,\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (u64);\n//# sourceMappingURL=_u64.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL191NjQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsU0FBUztBQUM3QixnQkFBZ0IsT0FBTztBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ2dMO0FBQ2hMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlFQUFlLEdBQUcsRUFBQztBQUNuQiIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL191NjQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBJbnRlcm5hbCBoZWxwZXJzIGZvciB1NjQuIEJpZ1VpbnQ2NEFycmF5IGlzIHRvbyBzbG93IGFzIHBlciAyMDI1LCBzbyB3ZSBpbXBsZW1lbnQgaXQgdXNpbmcgVWludDMyQXJyYXkuXG4gKiBAdG9kbyByZS1jaGVjayBodHRwczovL2lzc3Vlcy5jaHJvbWl1bS5vcmcvaXNzdWVzLzQyMjEyNTg4XG4gKiBAbW9kdWxlXG4gKi9cbmNvbnN0IFUzMl9NQVNLNjQgPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDIgKiogMzIgLSAxKTtcbmNvbnN0IF8zMm4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDMyKTtcbmZ1bmN0aW9uIGZyb21CaWcobiwgbGUgPSBmYWxzZSkge1xuICAgIGlmIChsZSlcbiAgICAgICAgcmV0dXJuIHsgaDogTnVtYmVyKG4gJiBVMzJfTUFTSzY0KSwgbDogTnVtYmVyKChuID4+IF8zMm4pICYgVTMyX01BU0s2NCkgfTtcbiAgICByZXR1cm4geyBoOiBOdW1iZXIoKG4gPj4gXzMybikgJiBVMzJfTUFTSzY0KSB8IDAsIGw6IE51bWJlcihuICYgVTMyX01BU0s2NCkgfCAwIH07XG59XG5mdW5jdGlvbiBzcGxpdChsc3QsIGxlID0gZmFsc2UpIHtcbiAgICBjb25zdCBsZW4gPSBsc3QubGVuZ3RoO1xuICAgIGxldCBBaCA9IG5ldyBVaW50MzJBcnJheShsZW4pO1xuICAgIGxldCBBbCA9IG5ldyBVaW50MzJBcnJheShsZW4pO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgICAgY29uc3QgeyBoLCBsIH0gPSBmcm9tQmlnKGxzdFtpXSwgbGUpO1xuICAgICAgICBbQWhbaV0sIEFsW2ldXSA9IFtoLCBsXTtcbiAgICB9XG4gICAgcmV0dXJuIFtBaCwgQWxdO1xufVxuY29uc3QgdG9CaWcgPSAoaCwgbCkgPT4gKEJpZ0ludChoID4+PiAwKSA8PCBfMzJuKSB8IEJpZ0ludChsID4+PiAwKTtcbi8vIGZvciBTaGlmdCBpbiBbMCwgMzIpXG5jb25zdCBzaHJTSCA9IChoLCBfbCwgcykgPT4gaCA+Pj4gcztcbmNvbnN0IHNoclNMID0gKGgsIGwsIHMpID0+IChoIDw8ICgzMiAtIHMpKSB8IChsID4+PiBzKTtcbi8vIFJpZ2h0IHJvdGF0ZSBmb3IgU2hpZnQgaW4gWzEsIDMyKVxuY29uc3Qgcm90clNIID0gKGgsIGwsIHMpID0+IChoID4+PiBzKSB8IChsIDw8ICgzMiAtIHMpKTtcbmNvbnN0IHJvdHJTTCA9IChoLCBsLCBzKSA9PiAoaCA8PCAoMzIgLSBzKSkgfCAobCA+Pj4gcyk7XG4vLyBSaWdodCByb3RhdGUgZm9yIFNoaWZ0IGluICgzMiwgNjQpLCBOT1RFOiAzMiBpcyBzcGVjaWFsIGNhc2UuXG5jb25zdCByb3RyQkggPSAoaCwgbCwgcykgPT4gKGggPDwgKDY0IC0gcykpIHwgKGwgPj4+IChzIC0gMzIpKTtcbmNvbnN0IHJvdHJCTCA9IChoLCBsLCBzKSA9PiAoaCA+Pj4gKHMgLSAzMikpIHwgKGwgPDwgKDY0IC0gcykpO1xuLy8gUmlnaHQgcm90YXRlIGZvciBzaGlmdD09PTMyIChqdXN0IHN3YXBzIGwmaClcbmNvbnN0IHJvdHIzMkggPSAoX2gsIGwpID0+IGw7XG5jb25zdCByb3RyMzJMID0gKGgsIF9sKSA9PiBoO1xuLy8gTGVmdCByb3RhdGUgZm9yIFNoaWZ0IGluIFsxLCAzMilcbmNvbnN0IHJvdGxTSCA9IChoLCBsLCBzKSA9PiAoaCA8PCBzKSB8IChsID4+PiAoMzIgLSBzKSk7XG5jb25zdCByb3RsU0wgPSAoaCwgbCwgcykgPT4gKGwgPDwgcykgfCAoaCA+Pj4gKDMyIC0gcykpO1xuLy8gTGVmdCByb3RhdGUgZm9yIFNoaWZ0IGluICgzMiwgNjQpLCBOT1RFOiAzMiBpcyBzcGVjaWFsIGNhc2UuXG5jb25zdCByb3RsQkggPSAoaCwgbCwgcykgPT4gKGwgPDwgKHMgLSAzMikpIHwgKGggPj4+ICg2NCAtIHMpKTtcbmNvbnN0IHJvdGxCTCA9IChoLCBsLCBzKSA9PiAoaCA8PCAocyAtIDMyKSkgfCAobCA+Pj4gKDY0IC0gcykpO1xuLy8gSlMgdXNlcyAzMi1iaXQgc2lnbmVkIGludGVnZXJzIGZvciBiaXR3aXNlIG9wZXJhdGlvbnMgd2hpY2ggbWVhbnMgd2UgY2Fubm90XG4vLyBzaW1wbGUgdGFrZSBjYXJyeSBvdXQgb2YgbG93IGJpdCBzdW0gYnkgc2hpZnQsIHdlIG5lZWQgdG8gdXNlIGRpdmlzaW9uLlxuZnVuY3Rpb24gYWRkKEFoLCBBbCwgQmgsIEJsKSB7XG4gICAgY29uc3QgbCA9IChBbCA+Pj4gMCkgKyAoQmwgPj4+IDApO1xuICAgIHJldHVybiB7IGg6IChBaCArIEJoICsgKChsIC8gMiAqKiAzMikgfCAwKSkgfCAwLCBsOiBsIHwgMCB9O1xufVxuLy8gQWRkaXRpb24gd2l0aCBtb3JlIHRoYW4gMiBlbGVtZW50c1xuY29uc3QgYWRkM0wgPSAoQWwsIEJsLCBDbCkgPT4gKEFsID4+PiAwKSArIChCbCA+Pj4gMCkgKyAoQ2wgPj4+IDApO1xuY29uc3QgYWRkM0ggPSAobG93LCBBaCwgQmgsIENoKSA9PiAoQWggKyBCaCArIENoICsgKChsb3cgLyAyICoqIDMyKSB8IDApKSB8IDA7XG5jb25zdCBhZGQ0TCA9IChBbCwgQmwsIENsLCBEbCkgPT4gKEFsID4+PiAwKSArIChCbCA+Pj4gMCkgKyAoQ2wgPj4+IDApICsgKERsID4+PiAwKTtcbmNvbnN0IGFkZDRIID0gKGxvdywgQWgsIEJoLCBDaCwgRGgpID0+IChBaCArIEJoICsgQ2ggKyBEaCArICgobG93IC8gMiAqKiAzMikgfCAwKSkgfCAwO1xuY29uc3QgYWRkNUwgPSAoQWwsIEJsLCBDbCwgRGwsIEVsKSA9PiAoQWwgPj4+IDApICsgKEJsID4+PiAwKSArIChDbCA+Pj4gMCkgKyAoRGwgPj4+IDApICsgKEVsID4+PiAwKTtcbmNvbnN0IGFkZDVIID0gKGxvdywgQWgsIEJoLCBDaCwgRGgsIEVoKSA9PiAoQWggKyBCaCArIENoICsgRGggKyBFaCArICgobG93IC8gMiAqKiAzMikgfCAwKSkgfCAwO1xuLy8gcHJldHRpZXItaWdub3JlXG5leHBvcnQgeyBhZGQsIGFkZDNILCBhZGQzTCwgYWRkNEgsIGFkZDRMLCBhZGQ1SCwgYWRkNUwsIGZyb21CaWcsIHJvdGxCSCwgcm90bEJMLCByb3RsU0gsIHJvdGxTTCwgcm90cjMySCwgcm90cjMyTCwgcm90ckJILCByb3RyQkwsIHJvdHJTSCwgcm90clNMLCBzaHJTSCwgc2hyU0wsIHNwbGl0LCB0b0JpZyB9O1xuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCB1NjQgPSB7XG4gICAgZnJvbUJpZywgc3BsaXQsIHRvQmlnLFxuICAgIHNoclNILCBzaHJTTCxcbiAgICByb3RyU0gsIHJvdHJTTCwgcm90ckJILCByb3RyQkwsXG4gICAgcm90cjMySCwgcm90cjMyTCxcbiAgICByb3RsU0gsIHJvdGxTTCwgcm90bEJILCByb3RsQkwsXG4gICAgYWRkLCBhZGQzTCwgYWRkM0gsIGFkZDRMLCBhZGQ0SCwgYWRkNUgsIGFkZDVMLFxufTtcbmV4cG9ydCBkZWZhdWx0IHU2NDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPV91NjQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_u64.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/crypto.js": /*!****************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/crypto.js ***! \****************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ crypto: () => (/* binding */ crypto)\n/* harmony export */ });\nconst crypto = typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n//# sourceMappingURL=crypto.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL2NyeXB0by5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQU87QUFDUCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL2NyeXB0by5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgY3J5cHRvID0gdHlwZW9mIGdsb2JhbFRoaXMgPT09ICdvYmplY3QnICYmICdjcnlwdG8nIGluIGdsb2JhbFRoaXMgPyBnbG9iYWxUaGlzLmNyeXB0byA6IHVuZGVmaW5lZDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyeXB0by5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/crypto.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/legacy.js": /*!****************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/legacy.js ***! \****************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MD5: () => (/* binding */ MD5),\n/* harmony export */ RIPEMD160: () => (/* binding */ RIPEMD160),\n/* harmony export */ SHA1: () => (/* binding */ SHA1),\n/* harmony export */ md5: () => (/* binding */ md5),\n/* harmony export */ ripemd160: () => (/* binding */ ripemd160),\n/* harmony export */ sha1: () => (/* binding */ sha1)\n/* harmony export */ });\n/* harmony import */ var _md_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_md.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_md.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/utils.js\");\n/**\n\nSHA1 (RFC 3174), MD5 (RFC 1321) and RIPEMD160 (RFC 2286) legacy, weak hash functions.\nDon't use them in a new protocol. What \"weak\" means:\n\n- Collisions can be made with 2^18 effort in MD5, 2^60 in SHA1, 2^80 in RIPEMD160.\n- No practical pre-image attacks (only theoretical, 2^123.4)\n- HMAC seems kinda ok: https://datatracker.ietf.org/doc/html/rfc6151\n * @module\n */\n\n\n/** Initial SHA1 state */\nconst SHA1_IV = /* @__PURE__ */ Uint32Array.from([\n 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0,\n]);\n// Reusable temporary buffer\nconst SHA1_W = /* @__PURE__ */ new Uint32Array(80);\n/** SHA1 legacy hash class. */\nclass SHA1 extends _md_js__WEBPACK_IMPORTED_MODULE_0__.HashMD {\n constructor() {\n super(64, 20, 8, false);\n this.A = SHA1_IV[0] | 0;\n this.B = SHA1_IV[1] | 0;\n this.C = SHA1_IV[2] | 0;\n this.D = SHA1_IV[3] | 0;\n this.E = SHA1_IV[4] | 0;\n }\n get() {\n const { A, B, C, D, E } = this;\n return [A, B, C, D, E];\n }\n set(A, B, C, D, E) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n }\n process(view, offset) {\n for (let i = 0; i < 16; i++, offset += 4)\n SHA1_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 80; i++)\n SHA1_W[i] = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(SHA1_W[i - 3] ^ SHA1_W[i - 8] ^ SHA1_W[i - 14] ^ SHA1_W[i - 16], 1);\n // Compression function main loop, 80 rounds\n let { A, B, C, D, E } = this;\n for (let i = 0; i < 80; i++) {\n let F, K;\n if (i < 20) {\n F = (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Chi)(B, C, D);\n K = 0x5a827999;\n }\n else if (i < 40) {\n F = B ^ C ^ D;\n K = 0x6ed9eba1;\n }\n else if (i < 60) {\n F = (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Maj)(B, C, D);\n K = 0x8f1bbcdc;\n }\n else {\n F = B ^ C ^ D;\n K = 0xca62c1d6;\n }\n const T = ((0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(A, 5) + F + E + K + SHA1_W[i]) | 0;\n E = D;\n D = C;\n C = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(B, 30);\n B = A;\n A = T;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n this.set(A, B, C, D, E);\n }\n roundClean() {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(SHA1_W);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(this.buffer);\n }\n}\n/** SHA1 (RFC 3174) legacy hash function. It was cryptographically broken. */\nconst sha1 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new SHA1());\n/** Per-round constants */\nconst p32 = /* @__PURE__ */ Math.pow(2, 32);\nconst K = /* @__PURE__ */ Array.from({ length: 64 }, (_, i) => Math.floor(p32 * Math.abs(Math.sin(i + 1))));\n/** md5 initial state: same as sha1, but 4 u32 instead of 5. */\nconst MD5_IV = /* @__PURE__ */ SHA1_IV.slice(0, 4);\n// Reusable temporary buffer\nconst MD5_W = /* @__PURE__ */ new Uint32Array(16);\n/** MD5 legacy hash class. */\nclass MD5 extends _md_js__WEBPACK_IMPORTED_MODULE_0__.HashMD {\n constructor() {\n super(64, 16, 8, true);\n this.A = MD5_IV[0] | 0;\n this.B = MD5_IV[1] | 0;\n this.C = MD5_IV[2] | 0;\n this.D = MD5_IV[3] | 0;\n }\n get() {\n const { A, B, C, D } = this;\n return [A, B, C, D];\n }\n set(A, B, C, D) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n }\n process(view, offset) {\n for (let i = 0; i < 16; i++, offset += 4)\n MD5_W[i] = view.getUint32(offset, true);\n // Compression function main loop, 64 rounds\n let { A, B, C, D } = this;\n for (let i = 0; i < 64; i++) {\n let F, g, s;\n if (i < 16) {\n F = (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Chi)(B, C, D);\n g = i;\n s = [7, 12, 17, 22];\n }\n else if (i < 32) {\n F = (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Chi)(D, B, C);\n g = (5 * i + 1) % 16;\n s = [5, 9, 14, 20];\n }\n else if (i < 48) {\n F = B ^ C ^ D;\n g = (3 * i + 5) % 16;\n s = [4, 11, 16, 23];\n }\n else {\n F = C ^ (B | ~D);\n g = (7 * i) % 16;\n s = [6, 10, 15, 21];\n }\n F = F + A + K[i] + MD5_W[g];\n A = D;\n D = C;\n C = B;\n B = B + (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(F, s[i % 4]);\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n this.set(A, B, C, D);\n }\n roundClean() {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(MD5_W);\n }\n destroy() {\n this.set(0, 0, 0, 0);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(this.buffer);\n }\n}\n/**\n * MD5 (RFC 1321) legacy hash function. It was cryptographically broken.\n * MD5 architecture is similar to SHA1, with some differences:\n * - Reduced output length: 16 bytes (128 bit) instead of 20\n * - 64 rounds, instead of 80\n * - Little-endian: could be faster, but will require more code\n * - Non-linear index selection: huge speed-up for unroll\n * - Per round constants: more memory accesses, additional speed-up for unroll\n */\nconst md5 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new MD5());\n// RIPEMD-160\nconst Rho160 = /* @__PURE__ */ Uint8Array.from([\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n]);\nconst Id160 = /* @__PURE__ */ (() => Uint8Array.from(new Array(16).fill(0).map((_, i) => i)))();\nconst Pi160 = /* @__PURE__ */ (() => Id160.map((i) => (9 * i + 5) % 16))();\nconst idxLR = /* @__PURE__ */ (() => {\n const L = [Id160];\n const R = [Pi160];\n const res = [L, R];\n for (let i = 0; i < 4; i++)\n for (let j of res)\n j.push(j[i].map((k) => Rho160[k]));\n return res;\n})();\nconst idxL = /* @__PURE__ */ (() => idxLR[0])();\nconst idxR = /* @__PURE__ */ (() => idxLR[1])();\n// const [idxL, idxR] = idxLR;\nconst shifts160 = /* @__PURE__ */ [\n [11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8],\n [12, 13, 11, 15, 6, 9, 9, 7, 12, 15, 11, 13, 7, 8, 7, 7],\n [13, 15, 14, 11, 7, 7, 6, 8, 13, 14, 13, 12, 5, 5, 6, 9],\n [14, 11, 12, 14, 8, 6, 5, 5, 15, 12, 15, 14, 9, 9, 8, 6],\n [15, 12, 13, 13, 9, 5, 8, 6, 14, 11, 12, 11, 8, 6, 5, 5],\n].map((i) => Uint8Array.from(i));\nconst shiftsL160 = /* @__PURE__ */ idxL.map((idx, i) => idx.map((j) => shifts160[i][j]));\nconst shiftsR160 = /* @__PURE__ */ idxR.map((idx, i) => idx.map((j) => shifts160[i][j]));\nconst Kl160 = /* @__PURE__ */ Uint32Array.from([\n 0x00000000, 0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xa953fd4e,\n]);\nconst Kr160 = /* @__PURE__ */ Uint32Array.from([\n 0x50a28be6, 0x5c4dd124, 0x6d703ef3, 0x7a6d76e9, 0x00000000,\n]);\n// It's called f() in spec.\nfunction ripemd_f(group, x, y, z) {\n if (group === 0)\n return x ^ y ^ z;\n if (group === 1)\n return (x & y) | (~x & z);\n if (group === 2)\n return (x | ~y) ^ z;\n if (group === 3)\n return (x & z) | (y & ~z);\n return x ^ (y | ~z);\n}\n// Reusable temporary buffer\nconst BUF_160 = /* @__PURE__ */ new Uint32Array(16);\nclass RIPEMD160 extends _md_js__WEBPACK_IMPORTED_MODULE_0__.HashMD {\n constructor() {\n super(64, 20, 8, true);\n this.h0 = 0x67452301 | 0;\n this.h1 = 0xefcdab89 | 0;\n this.h2 = 0x98badcfe | 0;\n this.h3 = 0x10325476 | 0;\n this.h4 = 0xc3d2e1f0 | 0;\n }\n get() {\n const { h0, h1, h2, h3, h4 } = this;\n return [h0, h1, h2, h3, h4];\n }\n set(h0, h1, h2, h3, h4) {\n this.h0 = h0 | 0;\n this.h1 = h1 | 0;\n this.h2 = h2 | 0;\n this.h3 = h3 | 0;\n this.h4 = h4 | 0;\n }\n process(view, offset) {\n for (let i = 0; i < 16; i++, offset += 4)\n BUF_160[i] = view.getUint32(offset, true);\n // prettier-ignore\n let al = this.h0 | 0, ar = al, bl = this.h1 | 0, br = bl, cl = this.h2 | 0, cr = cl, dl = this.h3 | 0, dr = dl, el = this.h4 | 0, er = el;\n // Instead of iterating 0 to 80, we split it into 5 groups\n // And use the groups in constants, functions, etc. Much simpler\n for (let group = 0; group < 5; group++) {\n const rGroup = 4 - group;\n const hbl = Kl160[group], hbr = Kr160[group]; // prettier-ignore\n const rl = idxL[group], rr = idxR[group]; // prettier-ignore\n const sl = shiftsL160[group], sr = shiftsR160[group]; // prettier-ignore\n for (let i = 0; i < 16; i++) {\n const tl = ((0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(al + ripemd_f(group, bl, cl, dl) + BUF_160[rl[i]] + hbl, sl[i]) + el) | 0;\n al = el, el = dl, dl = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(cl, 10) | 0, cl = bl, bl = tl; // prettier-ignore\n }\n // 2 loops are 10% faster\n for (let i = 0; i < 16; i++) {\n const tr = ((0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(ar + ripemd_f(rGroup, br, cr, dr) + BUF_160[rr[i]] + hbr, sr[i]) + er) | 0;\n ar = er, er = dr, dr = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotl)(cr, 10) | 0, cr = br, br = tr; // prettier-ignore\n }\n }\n // Add the compressed chunk to the current hash value\n this.set((this.h1 + cl + dr) | 0, (this.h2 + dl + er) | 0, (this.h3 + el + ar) | 0, (this.h4 + al + br) | 0, (this.h0 + bl + cr) | 0);\n }\n roundClean() {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(BUF_160);\n }\n destroy() {\n this.destroyed = true;\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(this.buffer);\n this.set(0, 0, 0, 0, 0);\n }\n}\n/**\n * RIPEMD-160 - a legacy hash function from 1990s.\n * * https://homes.esat.kuleuven.be/~bosselae/ripemd160.html\n * * https://homes.esat.kuleuven.be/~bosselae/ripemd160/pdf/AB-9601/AB-9601.pdf\n */\nconst ripemd160 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new RIPEMD160());\n//# sourceMappingURL=legacy.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL2xlZ2FjeS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUM0QztBQUNXO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUJBQW1CLDBDQUFNO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixnQkFBZ0I7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsUUFBUTtBQUNoQztBQUNBLHlCQUF5QixRQUFRO0FBQ2pDLHdCQUF3QiwrQ0FBSTtBQUM1QjtBQUNBLGNBQWMsZ0JBQWdCO0FBQzlCLHdCQUF3QixRQUFRO0FBQ2hDO0FBQ0E7QUFDQSxvQkFBb0IsMkNBQUc7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsMkNBQUc7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLCtDQUFJO0FBQzNCO0FBQ0E7QUFDQSxnQkFBZ0IsK0NBQUk7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxnREFBSztBQUNiO0FBQ0E7QUFDQTtBQUNBLFFBQVEsZ0RBQUs7QUFDYjtBQUNBO0FBQ0E7QUFDTyw2QkFBNkIsdURBQVk7QUFDaEQ7QUFDQTtBQUNBLHVDQUF1QyxZQUFZO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxrQkFBa0IsMENBQU07QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixhQUFhO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixRQUFRO0FBQ2hDO0FBQ0E7QUFDQSxjQUFjLGFBQWE7QUFDM0Isd0JBQXdCLFFBQVE7QUFDaEM7QUFDQTtBQUNBLG9CQUFvQiwyQ0FBRztBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwyQ0FBRztBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLCtDQUFJO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsZ0RBQUs7QUFDYjtBQUNBO0FBQ0E7QUFDQSxRQUFRLGdEQUFLO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDRCQUE0Qix1REFBWTtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixPQUFPO0FBQzNCO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sd0JBQXdCLDBDQUFNO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixxQkFBcUI7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsUUFBUTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLFdBQVc7QUFDdkM7QUFDQSwwREFBMEQ7QUFDMUQsc0RBQXNEO0FBQ3RELGtFQUFrRTtBQUNsRSw0QkFBNEIsUUFBUTtBQUNwQyw0QkFBNEIsK0NBQUk7QUFDaEMsdUNBQXVDLCtDQUFJLGdDQUFnQztBQUMzRTtBQUNBO0FBQ0EsNEJBQTRCLFFBQVE7QUFDcEMsNEJBQTRCLCtDQUFJO0FBQ2hDLHVDQUF1QywrQ0FBSSxnQ0FBZ0M7QUFDM0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxnREFBSztBQUNiO0FBQ0E7QUFDQTtBQUNBLFFBQVEsZ0RBQUs7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sa0NBQWtDLHVEQUFZO0FBQ3JEIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9veC9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vbGVnYWN5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuXG5TSEExIChSRkMgMzE3NCksIE1ENSAoUkZDIDEzMjEpIGFuZCBSSVBFTUQxNjAgKFJGQyAyMjg2KSBsZWdhY3ksIHdlYWsgaGFzaCBmdW5jdGlvbnMuXG5Eb24ndCB1c2UgdGhlbSBpbiBhIG5ldyBwcm90b2NvbC4gV2hhdCBcIndlYWtcIiBtZWFuczpcblxuLSBDb2xsaXNpb25zIGNhbiBiZSBtYWRlIHdpdGggMl4xOCBlZmZvcnQgaW4gTUQ1LCAyXjYwIGluIFNIQTEsIDJeODAgaW4gUklQRU1EMTYwLlxuLSBObyBwcmFjdGljYWwgcHJlLWltYWdlIGF0dGFja3MgKG9ubHkgdGhlb3JldGljYWwsIDJeMTIzLjQpXG4tIEhNQUMgc2VlbXMga2luZGEgb2s6IGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjE1MVxuICogQG1vZHVsZVxuICovXG5pbXBvcnQgeyBDaGksIEhhc2hNRCwgTWFqIH0gZnJvbSBcIi4vX21kLmpzXCI7XG5pbXBvcnQgeyBjbGVhbiwgY3JlYXRlSGFzaGVyLCByb3RsIH0gZnJvbSBcIi4vdXRpbHMuanNcIjtcbi8qKiBJbml0aWFsIFNIQTEgc3RhdGUgKi9cbmNvbnN0IFNIQTFfSVYgPSAvKiBAX19QVVJFX18gKi8gVWludDMyQXJyYXkuZnJvbShbXG4gICAgMHg2NzQ1MjMwMSwgMHhlZmNkYWI4OSwgMHg5OGJhZGNmZSwgMHgxMDMyNTQ3NiwgMHhjM2QyZTFmMCxcbl0pO1xuLy8gUmV1c2FibGUgdGVtcG9yYXJ5IGJ1ZmZlclxuY29uc3QgU0hBMV9XID0gLyogQF9fUFVSRV9fICovIG5ldyBVaW50MzJBcnJheSg4MCk7XG4vKiogU0hBMSBsZWdhY3kgaGFzaCBjbGFzcy4gKi9cbmV4cG9ydCBjbGFzcyBTSEExIGV4dGVuZHMgSGFzaE1EIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoNjQsIDIwLCA4LCBmYWxzZSk7XG4gICAgICAgIHRoaXMuQSA9IFNIQTFfSVZbMF0gfCAwO1xuICAgICAgICB0aGlzLkIgPSBTSEExX0lWWzFdIHwgMDtcbiAgICAgICAgdGhpcy5DID0gU0hBMV9JVlsyXSB8IDA7XG4gICAgICAgIHRoaXMuRCA9IFNIQTFfSVZbM10gfCAwO1xuICAgICAgICB0aGlzLkUgPSBTSEExX0lWWzRdIHwgMDtcbiAgICB9XG4gICAgZ2V0KCkge1xuICAgICAgICBjb25zdCB7IEEsIEIsIEMsIEQsIEUgfSA9IHRoaXM7XG4gICAgICAgIHJldHVybiBbQSwgQiwgQywgRCwgRV07XG4gICAgfVxuICAgIHNldChBLCBCLCBDLCBELCBFKSB7XG4gICAgICAgIHRoaXMuQSA9IEEgfCAwO1xuICAgICAgICB0aGlzLkIgPSBCIHwgMDtcbiAgICAgICAgdGhpcy5DID0gQyB8IDA7XG4gICAgICAgIHRoaXMuRCA9IEQgfCAwO1xuICAgICAgICB0aGlzLkUgPSBFIHwgMDtcbiAgICB9XG4gICAgcHJvY2Vzcyh2aWV3LCBvZmZzZXQpIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxNjsgaSsrLCBvZmZzZXQgKz0gNClcbiAgICAgICAgICAgIFNIQTFfV1tpXSA9IHZpZXcuZ2V0VWludDMyKG9mZnNldCwgZmFsc2UpO1xuICAgICAgICBmb3IgKGxldCBpID0gMTY7IGkgPCA4MDsgaSsrKVxuICAgICAgICAgICAgU0hBMV9XW2ldID0gcm90bChTSEExX1dbaSAtIDNdIF4gU0hBMV9XW2kgLSA4XSBeIFNIQTFfV1tpIC0gMTRdIF4gU0hBMV9XW2kgLSAxNl0sIDEpO1xuICAgICAgICAvLyBDb21wcmVzc2lvbiBmdW5jdGlvbiBtYWluIGxvb3AsIDgwIHJvdW5kc1xuICAgICAgICBsZXQgeyBBLCBCLCBDLCBELCBFIH0gPSB0aGlzO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDgwOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBGLCBLO1xuICAgICAgICAgICAgaWYgKGkgPCAyMCkge1xuICAgICAgICAgICAgICAgIEYgPSBDaGkoQiwgQywgRCk7XG4gICAgICAgICAgICAgICAgSyA9IDB4NWE4Mjc5OTk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChpIDwgNDApIHtcbiAgICAgICAgICAgICAgICBGID0gQiBeIEMgXiBEO1xuICAgICAgICAgICAgICAgIEsgPSAweDZlZDllYmExO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaSA8IDYwKSB7XG4gICAgICAgICAgICAgICAgRiA9IE1haihCLCBDLCBEKTtcbiAgICAgICAgICAgICAgICBLID0gMHg4ZjFiYmNkYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIEYgPSBCIF4gQyBeIEQ7XG4gICAgICAgICAgICAgICAgSyA9IDB4Y2E2MmMxZDY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBUID0gKHJvdGwoQSwgNSkgKyBGICsgRSArIEsgKyBTSEExX1dbaV0pIHwgMDtcbiAgICAgICAgICAgIEUgPSBEO1xuICAgICAgICAgICAgRCA9IEM7XG4gICAgICAgICAgICBDID0gcm90bChCLCAzMCk7XG4gICAgICAgICAgICBCID0gQTtcbiAgICAgICAgICAgIEEgPSBUO1xuICAgICAgICB9XG4gICAgICAgIC8vIEFkZCB0aGUgY29tcHJlc3NlZCBjaHVuayB0byB0aGUgY3VycmVudCBoYXNoIHZhbHVlXG4gICAgICAgIEEgPSAoQSArIHRoaXMuQSkgfCAwO1xuICAgICAgICBCID0gKEIgKyB0aGlzLkIpIHwgMDtcbiAgICAgICAgQyA9IChDICsgdGhpcy5DKSB8IDA7XG4gICAgICAgIEQgPSAoRCArIHRoaXMuRCkgfCAwO1xuICAgICAgICBFID0gKEUgKyB0aGlzLkUpIHwgMDtcbiAgICAgICAgdGhpcy5zZXQoQSwgQiwgQywgRCwgRSk7XG4gICAgfVxuICAgIHJvdW5kQ2xlYW4oKSB7XG4gICAgICAgIGNsZWFuKFNIQTFfVyk7XG4gICAgfVxuICAgIGRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc2V0KDAsIDAsIDAsIDAsIDApO1xuICAgICAgICBjbGVhbih0aGlzLmJ1ZmZlcik7XG4gICAgfVxufVxuLyoqIFNIQTEgKFJGQyAzMTc0KSBsZWdhY3kgaGFzaCBmdW5jdGlvbi4gSXQgd2FzIGNyeXB0b2dyYXBoaWNhbGx5IGJyb2tlbi4gKi9cbmV4cG9ydCBjb25zdCBzaGExID0gLyogQF9fUFVSRV9fICovIGNyZWF0ZUhhc2hlcigoKSA9PiBuZXcgU0hBMSgpKTtcbi8qKiBQZXItcm91bmQgY29uc3RhbnRzICovXG5jb25zdCBwMzIgPSAvKiBAX19QVVJFX18gKi8gTWF0aC5wb3coMiwgMzIpO1xuY29uc3QgSyA9IC8qIEBfX1BVUkVfXyAqLyBBcnJheS5mcm9tKHsgbGVuZ3RoOiA2NCB9LCAoXywgaSkgPT4gTWF0aC5mbG9vcihwMzIgKiBNYXRoLmFicyhNYXRoLnNpbihpICsgMSkpKSk7XG4vKiogbWQ1IGluaXRpYWwgc3RhdGU6IHNhbWUgYXMgc2hhMSwgYnV0IDQgdTMyIGluc3RlYWQgb2YgNS4gKi9cbmNvbnN0IE1ENV9JViA9IC8qIEBfX1BVUkVfXyAqLyBTSEExX0lWLnNsaWNlKDAsIDQpO1xuLy8gUmV1c2FibGUgdGVtcG9yYXJ5IGJ1ZmZlclxuY29uc3QgTUQ1X1cgPSAvKiBAX19QVVJFX18gKi8gbmV3IFVpbnQzMkFycmF5KDE2KTtcbi8qKiBNRDUgbGVnYWN5IGhhc2ggY2xhc3MuICovXG5leHBvcnQgY2xhc3MgTUQ1IGV4dGVuZHMgSGFzaE1EIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoNjQsIDE2LCA4LCB0cnVlKTtcbiAgICAgICAgdGhpcy5BID0gTUQ1X0lWWzBdIHwgMDtcbiAgICAgICAgdGhpcy5CID0gTUQ1X0lWWzFdIHwgMDtcbiAgICAgICAgdGhpcy5DID0gTUQ1X0lWWzJdIHwgMDtcbiAgICAgICAgdGhpcy5EID0gTUQ1X0lWWzNdIHwgMDtcbiAgICB9XG4gICAgZ2V0KCkge1xuICAgICAgICBjb25zdCB7IEEsIEIsIEMsIEQgfSA9IHRoaXM7XG4gICAgICAgIHJldHVybiBbQSwgQiwgQywgRF07XG4gICAgfVxuICAgIHNldChBLCBCLCBDLCBEKSB7XG4gICAgICAgIHRoaXMuQSA9IEEgfCAwO1xuICAgICAgICB0aGlzLkIgPSBCIHwgMDtcbiAgICAgICAgdGhpcy5DID0gQyB8IDA7XG4gICAgICAgIHRoaXMuRCA9IEQgfCAwO1xuICAgIH1cbiAgICBwcm9jZXNzKHZpZXcsIG9mZnNldCkge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDE2OyBpKyssIG9mZnNldCArPSA0KVxuICAgICAgICAgICAgTUQ1X1dbaV0gPSB2aWV3LmdldFVpbnQzMihvZmZzZXQsIHRydWUpO1xuICAgICAgICAvLyBDb21wcmVzc2lvbiBmdW5jdGlvbiBtYWluIGxvb3AsIDY0IHJvdW5kc1xuICAgICAgICBsZXQgeyBBLCBCLCBDLCBEIH0gPSB0aGlzO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDY0OyBpKyspIHtcbiAgICAgICAgICAgIGxldCBGLCBnLCBzO1xuICAgICAgICAgICAgaWYgKGkgPCAxNikge1xuICAgICAgICAgICAgICAgIEYgPSBDaGkoQiwgQywgRCk7XG4gICAgICAgICAgICAgICAgZyA9IGk7XG4gICAgICAgICAgICAgICAgcyA9IFs3LCAxMiwgMTcsIDIyXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGkgPCAzMikge1xuICAgICAgICAgICAgICAgIEYgPSBDaGkoRCwgQiwgQyk7XG4gICAgICAgICAgICAgICAgZyA9ICg1ICogaSArIDEpICUgMTY7XG4gICAgICAgICAgICAgICAgcyA9IFs1LCA5LCAxNCwgMjBdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaSA8IDQ4KSB7XG4gICAgICAgICAgICAgICAgRiA9IEIgXiBDIF4gRDtcbiAgICAgICAgICAgICAgICBnID0gKDMgKiBpICsgNSkgJSAxNjtcbiAgICAgICAgICAgICAgICBzID0gWzQsIDExLCAxNiwgMjNdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgRiA9IEMgXiAoQiB8IH5EKTtcbiAgICAgICAgICAgICAgICBnID0gKDcgKiBpKSAlIDE2O1xuICAgICAgICAgICAgICAgIHMgPSBbNiwgMTAsIDE1LCAyMV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBGID0gRiArIEEgKyBLW2ldICsgTUQ1X1dbZ107XG4gICAgICAgICAgICBBID0gRDtcbiAgICAgICAgICAgIEQgPSBDO1xuICAgICAgICAgICAgQyA9IEI7XG4gICAgICAgICAgICBCID0gQiArIHJvdGwoRiwgc1tpICUgNF0pO1xuICAgICAgICB9XG4gICAgICAgIC8vIEFkZCB0aGUgY29tcHJlc3NlZCBjaHVuayB0byB0aGUgY3VycmVudCBoYXNoIHZhbHVlXG4gICAgICAgIEEgPSAoQSArIHRoaXMuQSkgfCAwO1xuICAgICAgICBCID0gKEIgKyB0aGlzLkIpIHwgMDtcbiAgICAgICAgQyA9IChDICsgdGhpcy5DKSB8IDA7XG4gICAgICAgIEQgPSAoRCArIHRoaXMuRCkgfCAwO1xuICAgICAgICB0aGlzLnNldChBLCBCLCBDLCBEKTtcbiAgICB9XG4gICAgcm91bmRDbGVhbigpIHtcbiAgICAgICAgY2xlYW4oTUQ1X1cpO1xuICAgIH1cbiAgICBkZXN0cm95KCkge1xuICAgICAgICB0aGlzLnNldCgwLCAwLCAwLCAwKTtcbiAgICAgICAgY2xlYW4odGhpcy5idWZmZXIpO1xuICAgIH1cbn1cbi8qKlxuICogTUQ1IChSRkMgMTMyMSkgbGVnYWN5IGhhc2ggZnVuY3Rpb24uIEl0IHdhcyBjcnlwdG9ncmFwaGljYWxseSBicm9rZW4uXG4gKiBNRDUgYXJjaGl0ZWN0dXJlIGlzIHNpbWlsYXIgdG8gU0hBMSwgd2l0aCBzb21lIGRpZmZlcmVuY2VzOlxuICogLSBSZWR1Y2VkIG91dHB1dCBsZW5ndGg6IDE2IGJ5dGVzICgxMjggYml0KSBpbnN0ZWFkIG9mIDIwXG4gKiAtIDY0IHJvdW5kcywgaW5zdGVhZCBvZiA4MFxuICogLSBMaXR0bGUtZW5kaWFuOiBjb3VsZCBiZSBmYXN0ZXIsIGJ1dCB3aWxsIHJlcXVpcmUgbW9yZSBjb2RlXG4gKiAtIE5vbi1saW5lYXIgaW5kZXggc2VsZWN0aW9uOiBodWdlIHNwZWVkLXVwIGZvciB1bnJvbGxcbiAqIC0gUGVyIHJvdW5kIGNvbnN0YW50czogbW9yZSBtZW1vcnkgYWNjZXNzZXMsIGFkZGl0aW9uYWwgc3BlZWQtdXAgZm9yIHVucm9sbFxuICovXG5leHBvcnQgY29uc3QgbWQ1ID0gLyogQF9fUFVSRV9fICovIGNyZWF0ZUhhc2hlcigoKSA9PiBuZXcgTUQ1KCkpO1xuLy8gUklQRU1ELTE2MFxuY29uc3QgUmhvMTYwID0gLyogQF9fUFVSRV9fICovIFVpbnQ4QXJyYXkuZnJvbShbXG4gICAgNywgNCwgMTMsIDEsIDEwLCA2LCAxNSwgMywgMTIsIDAsIDksIDUsIDIsIDE0LCAxMSwgOCxcbl0pO1xuY29uc3QgSWQxNjAgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IFVpbnQ4QXJyYXkuZnJvbShuZXcgQXJyYXkoMTYpLmZpbGwoMCkubWFwKChfLCBpKSA9PiBpKSkpKCk7XG5jb25zdCBQaTE2MCA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gSWQxNjAubWFwKChpKSA9PiAoOSAqIGkgKyA1KSAlIDE2KSkoKTtcbmNvbnN0IGlkeExSID0gLyogQF9fUFVSRV9fICovICgoKSA9PiB7XG4gICAgY29uc3QgTCA9IFtJZDE2MF07XG4gICAgY29uc3QgUiA9IFtQaTE2MF07XG4gICAgY29uc3QgcmVzID0gW0wsIFJdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNDsgaSsrKVxuICAgICAgICBmb3IgKGxldCBqIG9mIHJlcylcbiAgICAgICAgICAgIGoucHVzaChqW2ldLm1hcCgoaykgPT4gUmhvMTYwW2tdKSk7XG4gICAgcmV0dXJuIHJlcztcbn0pKCk7XG5jb25zdCBpZHhMID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBpZHhMUlswXSkoKTtcbmNvbnN0IGlkeFIgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGlkeExSWzFdKSgpO1xuLy8gY29uc3QgW2lkeEwsIGlkeFJdID0gaWR4TFI7XG5jb25zdCBzaGlmdHMxNjAgPSAvKiBAX19QVVJFX18gKi8gW1xuICAgIFsxMSwgMTQsIDE1LCAxMiwgNSwgOCwgNywgOSwgMTEsIDEzLCAxNCwgMTUsIDYsIDcsIDksIDhdLFxuICAgIFsxMiwgMTMsIDExLCAxNSwgNiwgOSwgOSwgNywgMTIsIDE1LCAxMSwgMTMsIDcsIDgsIDcsIDddLFxuICAgIFsxMywgMTUsIDE0LCAxMSwgNywgNywgNiwgOCwgMTMsIDE0LCAxMywgMTIsIDUsIDUsIDYsIDldLFxuICAgIFsxNCwgMTEsIDEyLCAxNCwgOCwgNiwgNSwgNSwgMTUsIDEyLCAxNSwgMTQsIDksIDksIDgsIDZdLFxuICAgIFsxNSwgMTIsIDEzLCAxMywgOSwgNSwgOCwgNiwgMTQsIDExLCAxMiwgMTEsIDgsIDYsIDUsIDVdLFxuXS5tYXAoKGkpID0+IFVpbnQ4QXJyYXkuZnJvbShpKSk7XG5jb25zdCBzaGlmdHNMMTYwID0gLyogQF9fUFVSRV9fICovIGlkeEwubWFwKChpZHgsIGkpID0+IGlkeC5tYXAoKGopID0+IHNoaWZ0czE2MFtpXVtqXSkpO1xuY29uc3Qgc2hpZnRzUjE2MCA9IC8qIEBfX1BVUkVfXyAqLyBpZHhSLm1hcCgoaWR4LCBpKSA9PiBpZHgubWFwKChqKSA9PiBzaGlmdHMxNjBbaV1bal0pKTtcbmNvbnN0IEtsMTYwID0gLyogQF9fUFVSRV9fICovIFVpbnQzMkFycmF5LmZyb20oW1xuICAgIDB4MDAwMDAwMDAsIDB4NWE4Mjc5OTksIDB4NmVkOWViYTEsIDB4OGYxYmJjZGMsIDB4YTk1M2ZkNGUsXG5dKTtcbmNvbnN0IEtyMTYwID0gLyogQF9fUFVSRV9fICovIFVpbnQzMkFycmF5LmZyb20oW1xuICAgIDB4NTBhMjhiZTYsIDB4NWM0ZGQxMjQsIDB4NmQ3MDNlZjMsIDB4N2E2ZDc2ZTksIDB4MDAwMDAwMDAsXG5dKTtcbi8vIEl0J3MgY2FsbGVkIGYoKSBpbiBzcGVjLlxuZnVuY3Rpb24gcmlwZW1kX2YoZ3JvdXAsIHgsIHksIHopIHtcbiAgICBpZiAoZ3JvdXAgPT09IDApXG4gICAgICAgIHJldHVybiB4IF4geSBeIHo7XG4gICAgaWYgKGdyb3VwID09PSAxKVxuICAgICAgICByZXR1cm4gKHggJiB5KSB8ICh+eCAmIHopO1xuICAgIGlmIChncm91cCA9PT0gMilcbiAgICAgICAgcmV0dXJuICh4IHwgfnkpIF4gejtcbiAgICBpZiAoZ3JvdXAgPT09IDMpXG4gICAgICAgIHJldHVybiAoeCAmIHopIHwgKHkgJiB+eik7XG4gICAgcmV0dXJuIHggXiAoeSB8IH56KTtcbn1cbi8vIFJldXNhYmxlIHRlbXBvcmFyeSBidWZmZXJcbmNvbnN0IEJVRl8xNjAgPSAvKiBAX19QVVJFX18gKi8gbmV3IFVpbnQzMkFycmF5KDE2KTtcbmV4cG9ydCBjbGFzcyBSSVBFTUQxNjAgZXh0ZW5kcyBIYXNoTUQge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcig2NCwgMjAsIDgsIHRydWUpO1xuICAgICAgICB0aGlzLmgwID0gMHg2NzQ1MjMwMSB8IDA7XG4gICAgICAgIHRoaXMuaDEgPSAweGVmY2RhYjg5IHwgMDtcbiAgICAgICAgdGhpcy5oMiA9IDB4OThiYWRjZmUgfCAwO1xuICAgICAgICB0aGlzLmgzID0gMHgxMDMyNTQ3NiB8IDA7XG4gICAgICAgIHRoaXMuaDQgPSAweGMzZDJlMWYwIHwgMDtcbiAgICB9XG4gICAgZ2V0KCkge1xuICAgICAgICBjb25zdCB7IGgwLCBoMSwgaDIsIGgzLCBoNCB9ID0gdGhpcztcbiAgICAgICAgcmV0dXJuIFtoMCwgaDEsIGgyLCBoMywgaDRdO1xuICAgIH1cbiAgICBzZXQoaDAsIGgxLCBoMiwgaDMsIGg0KSB7XG4gICAgICAgIHRoaXMuaDAgPSBoMCB8IDA7XG4gICAgICAgIHRoaXMuaDEgPSBoMSB8IDA7XG4gICAgICAgIHRoaXMuaDIgPSBoMiB8IDA7XG4gICAgICAgIHRoaXMuaDMgPSBoMyB8IDA7XG4gICAgICAgIHRoaXMuaDQgPSBoNCB8IDA7XG4gICAgfVxuICAgIHByb2Nlc3Modmlldywgb2Zmc2V0KSB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTY7IGkrKywgb2Zmc2V0ICs9IDQpXG4gICAgICAgICAgICBCVUZfMTYwW2ldID0gdmlldy5nZXRVaW50MzIob2Zmc2V0LCB0cnVlKTtcbiAgICAgICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgICAgIGxldCBhbCA9IHRoaXMuaDAgfCAwLCBhciA9IGFsLCBibCA9IHRoaXMuaDEgfCAwLCBiciA9IGJsLCBjbCA9IHRoaXMuaDIgfCAwLCBjciA9IGNsLCBkbCA9IHRoaXMuaDMgfCAwLCBkciA9IGRsLCBlbCA9IHRoaXMuaDQgfCAwLCBlciA9IGVsO1xuICAgICAgICAvLyBJbnN0ZWFkIG9mIGl0ZXJhdGluZyAwIHRvIDgwLCB3ZSBzcGxpdCBpdCBpbnRvIDUgZ3JvdXBzXG4gICAgICAgIC8vIEFuZCB1c2UgdGhlIGdyb3VwcyBpbiBjb25zdGFudHMsIGZ1bmN0aW9ucywgZXRjLiBNdWNoIHNpbXBsZXJcbiAgICAgICAgZm9yIChsZXQgZ3JvdXAgPSAwOyBncm91cCA8IDU7IGdyb3VwKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHJHcm91cCA9IDQgLSBncm91cDtcbiAgICAgICAgICAgIGNvbnN0IGhibCA9IEtsMTYwW2dyb3VwXSwgaGJyID0gS3IxNjBbZ3JvdXBdOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgICAgICAgIGNvbnN0IHJsID0gaWR4TFtncm91cF0sIHJyID0gaWR4Ultncm91cF07IC8vIHByZXR0aWVyLWlnbm9yZVxuICAgICAgICAgICAgY29uc3Qgc2wgPSBzaGlmdHNMMTYwW2dyb3VwXSwgc3IgPSBzaGlmdHNSMTYwW2dyb3VwXTsgLy8gcHJldHRpZXItaWdub3JlXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDE2OyBpKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0bCA9IChyb3RsKGFsICsgcmlwZW1kX2YoZ3JvdXAsIGJsLCBjbCwgZGwpICsgQlVGXzE2MFtybFtpXV0gKyBoYmwsIHNsW2ldKSArIGVsKSB8IDA7XG4gICAgICAgICAgICAgICAgYWwgPSBlbCwgZWwgPSBkbCwgZGwgPSByb3RsKGNsLCAxMCkgfCAwLCBjbCA9IGJsLCBibCA9IHRsOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIDIgbG9vcHMgYXJlIDEwJSBmYXN0ZXJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTY7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRyID0gKHJvdGwoYXIgKyByaXBlbWRfZihyR3JvdXAsIGJyLCBjciwgZHIpICsgQlVGXzE2MFtycltpXV0gKyBoYnIsIHNyW2ldKSArIGVyKSB8IDA7XG4gICAgICAgICAgICAgICAgYXIgPSBlciwgZXIgPSBkciwgZHIgPSByb3RsKGNyLCAxMCkgfCAwLCBjciA9IGJyLCBiciA9IHRyOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBBZGQgdGhlIGNvbXByZXNzZWQgY2h1bmsgdG8gdGhlIGN1cnJlbnQgaGFzaCB2YWx1ZVxuICAgICAgICB0aGlzLnNldCgodGhpcy5oMSArIGNsICsgZHIpIHwgMCwgKHRoaXMuaDIgKyBkbCArIGVyKSB8IDAsICh0aGlzLmgzICsgZWwgKyBhcikgfCAwLCAodGhpcy5oNCArIGFsICsgYnIpIHwgMCwgKHRoaXMuaDAgKyBibCArIGNyKSB8IDApO1xuICAgIH1cbiAgICByb3VuZENsZWFuKCkge1xuICAgICAgICBjbGVhbihCVUZfMTYwKTtcbiAgICB9XG4gICAgZGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQgPSB0cnVlO1xuICAgICAgICBjbGVhbih0aGlzLmJ1ZmZlcik7XG4gICAgICAgIHRoaXMuc2V0KDAsIDAsIDAsIDAsIDApO1xuICAgIH1cbn1cbi8qKlxuICogUklQRU1ELTE2MCAtIGEgbGVnYWN5IGhhc2ggZnVuY3Rpb24gZnJvbSAxOTkwcy5cbiAqICogaHR0cHM6Ly9ob21lcy5lc2F0Lmt1bGV1dmVuLmJlL35ib3NzZWxhZS9yaXBlbWQxNjAuaHRtbFxuICogKiBodHRwczovL2hvbWVzLmVzYXQua3VsZXV2ZW4uYmUvfmJvc3NlbGFlL3JpcGVtZDE2MC9wZGYvQUItOTYwMS9BQi05NjAxLnBkZlxuICovXG5leHBvcnQgY29uc3QgcmlwZW1kMTYwID0gLyogQF9fUFVSRV9fICovIGNyZWF0ZUhhc2hlcigoKSA9PiBuZXcgUklQRU1EMTYwKCkpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bGVnYWN5LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/legacy.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/ripemd160.js": /*!*******************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/ripemd160.js ***! \*******************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RIPEMD160: () => (/* binding */ RIPEMD160),\n/* harmony export */ ripemd160: () => (/* binding */ ripemd160)\n/* harmony export */ });\n/* harmony import */ var _legacy_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./legacy.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/legacy.js\");\n/**\n * RIPEMD-160 legacy hash function.\n * https://homes.esat.kuleuven.be/~bosselae/ripemd160.html\n * https://homes.esat.kuleuven.be/~bosselae/ripemd160/pdf/AB-9601/AB-9601.pdf\n * @module\n * @deprecated\n */\n\n/** @deprecated Use import from `noble/hashes/legacy` module */\nconst RIPEMD160 = _legacy_js__WEBPACK_IMPORTED_MODULE_0__.RIPEMD160;\n/** @deprecated Use import from `noble/hashes/legacy` module */\nconst ripemd160 = _legacy_js__WEBPACK_IMPORTED_MODULE_0__.ripemd160;\n//# sourceMappingURL=ripemd160.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3JpcGVtZDE2MC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUMrRTtBQUMvRTtBQUNPLGtCQUFrQixpREFBVTtBQUNuQztBQUNPLGtCQUFrQixpREFBVTtBQUNuQyIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3JpcGVtZDE2MC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJJUEVNRC0xNjAgbGVnYWN5IGhhc2ggZnVuY3Rpb24uXG4gKiBodHRwczovL2hvbWVzLmVzYXQua3VsZXV2ZW4uYmUvfmJvc3NlbGFlL3JpcGVtZDE2MC5odG1sXG4gKiBodHRwczovL2hvbWVzLmVzYXQua3VsZXV2ZW4uYmUvfmJvc3NlbGFlL3JpcGVtZDE2MC9wZGYvQUItOTYwMS9BQi05NjAxLnBkZlxuICogQG1vZHVsZVxuICogQGRlcHJlY2F0ZWRcbiAqL1xuaW1wb3J0IHsgUklQRU1EMTYwIGFzIFJJUEVNRDE2MG4sIHJpcGVtZDE2MCBhcyByaXBlbWQxNjBuIH0gZnJvbSBcIi4vbGVnYWN5LmpzXCI7XG4vKiogQGRlcHJlY2F0ZWQgVXNlIGltcG9ydCBmcm9tIGBub2JsZS9oYXNoZXMvbGVnYWN5YCBtb2R1bGUgKi9cbmV4cG9ydCBjb25zdCBSSVBFTUQxNjAgPSBSSVBFTUQxNjBuO1xuLyoqIEBkZXByZWNhdGVkIFVzZSBpbXBvcnQgZnJvbSBgbm9ibGUvaGFzaGVzL2xlZ2FjeWAgbW9kdWxlICovXG5leHBvcnQgY29uc3QgcmlwZW1kMTYwID0gcmlwZW1kMTYwbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXJpcGVtZDE2MC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/ripemd160.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha2.js": /*!**************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha2.js ***! \**************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SHA224: () => (/* binding */ SHA224),\n/* harmony export */ SHA256: () => (/* binding */ SHA256),\n/* harmony export */ SHA384: () => (/* binding */ SHA384),\n/* harmony export */ SHA512: () => (/* binding */ SHA512),\n/* harmony export */ SHA512_224: () => (/* binding */ SHA512_224),\n/* harmony export */ SHA512_256: () => (/* binding */ SHA512_256),\n/* harmony export */ sha224: () => (/* binding */ sha224),\n/* harmony export */ sha256: () => (/* binding */ sha256),\n/* harmony export */ sha384: () => (/* binding */ sha384),\n/* harmony export */ sha512: () => (/* binding */ sha512),\n/* harmony export */ sha512_224: () => (/* binding */ sha512_224),\n/* harmony export */ sha512_256: () => (/* binding */ sha512_256)\n/* harmony export */ });\n/* harmony import */ var _md_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_md.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_md.js\");\n/* harmony import */ var _u64_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_u64.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_u64.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/utils.js\");\n/**\n * SHA2 hash function. A.k.a. sha256, sha384, sha512, sha512_224, sha512_256.\n * SHA256 is the fastest hash implementable in JS, even faster than Blake3.\n * Check out [RFC 4634](https://datatracker.ietf.org/doc/html/rfc4634) and\n * [FIPS 180-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf).\n * @module\n */\n\n\n\n/**\n * Round constants:\n * First 32 bits of fractional parts of the cube roots of the first 64 primes 2..311)\n */\n// prettier-ignore\nconst SHA256_K = /* @__PURE__ */ Uint32Array.from([\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n]);\n/** Reusable temporary buffer. \"W\" comes straight from spec. */\nconst SHA256_W = /* @__PURE__ */ new Uint32Array(64);\nclass SHA256 extends _md_js__WEBPACK_IMPORTED_MODULE_0__.HashMD {\n constructor(outputLen = 32) {\n super(64, outputLen, 8, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n this.A = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[0] | 0;\n this.B = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[1] | 0;\n this.C = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[2] | 0;\n this.D = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[3] | 0;\n this.E = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[4] | 0;\n this.F = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[5] | 0;\n this.G = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[6] | 0;\n this.H = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA256_IV[7] | 0;\n }\n get() {\n const { A, B, C, D, E, F, G, H } = this;\n return [A, B, C, D, E, F, G, H];\n }\n // prettier-ignore\n set(A, B, C, D, E, F, G, H) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n this.F = F | 0;\n this.G = G | 0;\n this.H = H | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 48 words w[16..63] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4)\n SHA256_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 64; i++) {\n const W15 = SHA256_W[i - 15];\n const W2 = SHA256_W[i - 2];\n const s0 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W15, 7) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W15, 18) ^ (W15 >>> 3);\n const s1 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W2, 17) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(W2, 19) ^ (W2 >>> 10);\n SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0;\n }\n // Compression function main loop, 64 rounds\n let { A, B, C, D, E, F, G, H } = this;\n for (let i = 0; i < 64; i++) {\n const sigma1 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(E, 6) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(E, 11) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(E, 25);\n const T1 = (H + sigma1 + (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Chi)(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const sigma0 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(A, 2) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(A, 13) ^ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.rotr)(A, 22);\n const T2 = (sigma0 + (0,_md_js__WEBPACK_IMPORTED_MODULE_0__.Maj)(A, B, C)) | 0;\n H = G;\n G = F;\n F = E;\n E = (D + T1) | 0;\n D = C;\n C = B;\n B = A;\n A = (T1 + T2) | 0;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n F = (F + this.F) | 0;\n G = (G + this.G) | 0;\n H = (H + this.H) | 0;\n this.set(A, B, C, D, E, F, G, H);\n }\n roundClean() {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(SHA256_W);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0, 0, 0, 0);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(this.buffer);\n }\n}\nclass SHA224 extends SHA256 {\n constructor() {\n super(28);\n this.A = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[0] | 0;\n this.B = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[1] | 0;\n this.C = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[2] | 0;\n this.D = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[3] | 0;\n this.E = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[4] | 0;\n this.F = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[5] | 0;\n this.G = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[6] | 0;\n this.H = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA224_IV[7] | 0;\n }\n}\n// SHA2-512 is slower than sha256 in js because u64 operations are slow.\n// Round contants\n// First 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409\n// prettier-ignore\nconst K512 = /* @__PURE__ */ (() => _u64_js__WEBPACK_IMPORTED_MODULE_2__.split([\n '0x428a2f98d728ae22', '0x7137449123ef65cd', '0xb5c0fbcfec4d3b2f', '0xe9b5dba58189dbbc',\n '0x3956c25bf348b538', '0x59f111f1b605d019', '0x923f82a4af194f9b', '0xab1c5ed5da6d8118',\n '0xd807aa98a3030242', '0x12835b0145706fbe', '0x243185be4ee4b28c', '0x550c7dc3d5ffb4e2',\n '0x72be5d74f27b896f', '0x80deb1fe3b1696b1', '0x9bdc06a725c71235', '0xc19bf174cf692694',\n '0xe49b69c19ef14ad2', '0xefbe4786384f25e3', '0x0fc19dc68b8cd5b5', '0x240ca1cc77ac9c65',\n '0x2de92c6f592b0275', '0x4a7484aa6ea6e483', '0x5cb0a9dcbd41fbd4', '0x76f988da831153b5',\n '0x983e5152ee66dfab', '0xa831c66d2db43210', '0xb00327c898fb213f', '0xbf597fc7beef0ee4',\n '0xc6e00bf33da88fc2', '0xd5a79147930aa725', '0x06ca6351e003826f', '0x142929670a0e6e70',\n '0x27b70a8546d22ffc', '0x2e1b21385c26c926', '0x4d2c6dfc5ac42aed', '0x53380d139d95b3df',\n '0x650a73548baf63de', '0x766a0abb3c77b2a8', '0x81c2c92e47edaee6', '0x92722c851482353b',\n '0xa2bfe8a14cf10364', '0xa81a664bbc423001', '0xc24b8b70d0f89791', '0xc76c51a30654be30',\n '0xd192e819d6ef5218', '0xd69906245565a910', '0xf40e35855771202a', '0x106aa07032bbd1b8',\n '0x19a4c116b8d2d0c8', '0x1e376c085141ab53', '0x2748774cdf8eeb99', '0x34b0bcb5e19b48a8',\n '0x391c0cb3c5c95a63', '0x4ed8aa4ae3418acb', '0x5b9cca4f7763e373', '0x682e6ff3d6b2b8a3',\n '0x748f82ee5defb2fc', '0x78a5636f43172f60', '0x84c87814a1f0ab72', '0x8cc702081a6439ec',\n '0x90befffa23631e28', '0xa4506cebde82bde9', '0xbef9a3f7b2c67915', '0xc67178f2e372532b',\n '0xca273eceea26619c', '0xd186b8c721c0c207', '0xeada7dd6cde0eb1e', '0xf57d4f7fee6ed178',\n '0x06f067aa72176fba', '0x0a637dc5a2c898a6', '0x113f9804bef90dae', '0x1b710b35131c471b',\n '0x28db77f523047d84', '0x32caab7b40c72493', '0x3c9ebe0a15c9bebc', '0x431d67c49c100d4c',\n '0x4cc5d4becb3e42b6', '0x597f299cfc657e2a', '0x5fcb6fab3ad6faec', '0x6c44198c4a475817'\n].map(n => BigInt(n))))();\nconst SHA512_Kh = /* @__PURE__ */ (() => K512[0])();\nconst SHA512_Kl = /* @__PURE__ */ (() => K512[1])();\n// Reusable temporary buffers\nconst SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);\nconst SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);\nclass SHA512 extends _md_js__WEBPACK_IMPORTED_MODULE_0__.HashMD {\n constructor(outputLen = 64) {\n super(128, outputLen, 16, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n // h -- high 32 bits, l -- low 32 bits\n this.Ah = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[0] | 0;\n this.Al = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[1] | 0;\n this.Bh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[2] | 0;\n this.Bl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[3] | 0;\n this.Ch = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[4] | 0;\n this.Cl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[5] | 0;\n this.Dh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[6] | 0;\n this.Dl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[7] | 0;\n this.Eh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[8] | 0;\n this.El = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[9] | 0;\n this.Fh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[10] | 0;\n this.Fl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[11] | 0;\n this.Gh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[12] | 0;\n this.Gl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[13] | 0;\n this.Hh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[14] | 0;\n this.Hl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA512_IV[15] | 0;\n }\n // prettier-ignore\n get() {\n const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];\n }\n // prettier-ignore\n set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) {\n this.Ah = Ah | 0;\n this.Al = Al | 0;\n this.Bh = Bh | 0;\n this.Bl = Bl | 0;\n this.Ch = Ch | 0;\n this.Cl = Cl | 0;\n this.Dh = Dh | 0;\n this.Dl = Dl | 0;\n this.Eh = Eh | 0;\n this.El = El | 0;\n this.Fh = Fh | 0;\n this.Fl = Fl | 0;\n this.Gh = Gh | 0;\n this.Gl = Gl | 0;\n this.Hh = Hh | 0;\n this.Hl = Hl | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 64 words w[16..79] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) {\n SHA512_W_H[i] = view.getUint32(offset);\n SHA512_W_L[i] = view.getUint32((offset += 4));\n }\n for (let i = 16; i < 80; i++) {\n // s0 := (w[i-15] rightrotate 1) xor (w[i-15] rightrotate 8) xor (w[i-15] rightshift 7)\n const W15h = SHA512_W_H[i - 15] | 0;\n const W15l = SHA512_W_L[i - 15] | 0;\n const s0h = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSH(W15h, W15l, 1) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSH(W15h, W15l, 8) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.shrSH(W15h, W15l, 7);\n const s0l = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSL(W15h, W15l, 1) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSL(W15h, W15l, 8) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.shrSL(W15h, W15l, 7);\n // s1 := (w[i-2] rightrotate 19) xor (w[i-2] rightrotate 61) xor (w[i-2] rightshift 6)\n const W2h = SHA512_W_H[i - 2] | 0;\n const W2l = SHA512_W_L[i - 2] | 0;\n const s1h = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSH(W2h, W2l, 19) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBH(W2h, W2l, 61) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.shrSH(W2h, W2l, 6);\n const s1l = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSL(W2h, W2l, 19) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBL(W2h, W2l, 61) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.shrSL(W2h, W2l, 6);\n // SHA256_W[i] = s0 + s1 + SHA256_W[i - 7] + SHA256_W[i - 16];\n const SUMl = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]);\n const SUMh = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]);\n SHA512_W_H[i] = SUMh | 0;\n SHA512_W_L[i] = SUMl | 0;\n }\n let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n // Compression function main loop, 80 rounds\n for (let i = 0; i < 80; i++) {\n // S1 := (e rightrotate 14) xor (e rightrotate 18) xor (e rightrotate 41)\n const sigma1h = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSH(Eh, El, 14) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSH(Eh, El, 18) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBH(Eh, El, 41);\n const sigma1l = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSL(Eh, El, 14) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSL(Eh, El, 18) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBL(Eh, El, 41);\n //const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const CHIh = (Eh & Fh) ^ (~Eh & Gh);\n const CHIl = (El & Fl) ^ (~El & Gl);\n // T1 = H + sigma1 + Chi(E, F, G) + SHA512_K[i] + SHA512_W[i]\n // prettier-ignore\n const T1ll = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]);\n const T1h = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]);\n const T1l = T1ll | 0;\n // S0 := (a rightrotate 28) xor (a rightrotate 34) xor (a rightrotate 39)\n const sigma0h = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSH(Ah, Al, 28) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBH(Ah, Al, 34) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBH(Ah, Al, 39);\n const sigma0l = _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrSL(Ah, Al, 28) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBL(Ah, Al, 34) ^ _u64_js__WEBPACK_IMPORTED_MODULE_2__.rotrBL(Ah, Al, 39);\n const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch);\n const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl);\n Hh = Gh | 0;\n Hl = Gl | 0;\n Gh = Fh | 0;\n Gl = Fl | 0;\n Fh = Eh | 0;\n Fl = El | 0;\n ({ h: Eh, l: El } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(Dh | 0, Dl | 0, T1h | 0, T1l | 0));\n Dh = Ch | 0;\n Dl = Cl | 0;\n Ch = Bh | 0;\n Cl = Bl | 0;\n Bh = Ah | 0;\n Bl = Al | 0;\n const All = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add3L(T1l, sigma0l, MAJl);\n Ah = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add3H(All, T1h, sigma0h, MAJh);\n Al = All | 0;\n }\n // Add the compressed chunk to the current hash value\n ({ h: Ah, l: Al } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));\n ({ h: Bh, l: Bl } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));\n ({ h: Ch, l: Cl } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));\n ({ h: Dh, l: Dl } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));\n ({ h: Eh, l: El } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0));\n ({ h: Fh, l: Fl } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));\n ({ h: Gh, l: Gl } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));\n ({ h: Hh, l: Hl } = _u64_js__WEBPACK_IMPORTED_MODULE_2__.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));\n this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);\n }\n roundClean() {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(SHA512_W_H, SHA512_W_L);\n }\n destroy() {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(this.buffer);\n this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\n }\n}\nclass SHA384 extends SHA512 {\n constructor() {\n super(48);\n this.Ah = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[0] | 0;\n this.Al = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[1] | 0;\n this.Bh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[2] | 0;\n this.Bl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[3] | 0;\n this.Ch = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[4] | 0;\n this.Cl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[5] | 0;\n this.Dh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[6] | 0;\n this.Dl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[7] | 0;\n this.Eh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[8] | 0;\n this.El = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[9] | 0;\n this.Fh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[10] | 0;\n this.Fl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[11] | 0;\n this.Gh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[12] | 0;\n this.Gl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[13] | 0;\n this.Hh = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[14] | 0;\n this.Hl = _md_js__WEBPACK_IMPORTED_MODULE_0__.SHA384_IV[15] | 0;\n }\n}\n/**\n * Truncated SHA512/256 and SHA512/224.\n * SHA512_IV is XORed with 0xa5a5a5a5a5a5a5a5, then used as \"intermediary\" IV of SHA512/t.\n * Then t hashes string to produce result IV.\n * See `test/misc/sha2-gen-iv.js`.\n */\n/** SHA512/224 IV */\nconst T224_IV = /* @__PURE__ */ Uint32Array.from([\n 0x8c3d37c8, 0x19544da2, 0x73e19966, 0x89dcd4d6, 0x1dfab7ae, 0x32ff9c82, 0x679dd514, 0x582f9fcf,\n 0x0f6d2b69, 0x7bd44da8, 0x77e36f73, 0x04c48942, 0x3f9d85a8, 0x6a1d36c8, 0x1112e6ad, 0x91d692a1,\n]);\n/** SHA512/256 IV */\nconst T256_IV = /* @__PURE__ */ Uint32Array.from([\n 0x22312194, 0xfc2bf72c, 0x9f555fa3, 0xc84c64c2, 0x2393b86b, 0x6f53b151, 0x96387719, 0x5940eabd,\n 0x96283ee2, 0xa88effe3, 0xbe5e1e25, 0x53863992, 0x2b0199fc, 0x2c85b8aa, 0x0eb72ddc, 0x81c52ca2,\n]);\nclass SHA512_224 extends SHA512 {\n constructor() {\n super(28);\n this.Ah = T224_IV[0] | 0;\n this.Al = T224_IV[1] | 0;\n this.Bh = T224_IV[2] | 0;\n this.Bl = T224_IV[3] | 0;\n this.Ch = T224_IV[4] | 0;\n this.Cl = T224_IV[5] | 0;\n this.Dh = T224_IV[6] | 0;\n this.Dl = T224_IV[7] | 0;\n this.Eh = T224_IV[8] | 0;\n this.El = T224_IV[9] | 0;\n this.Fh = T224_IV[10] | 0;\n this.Fl = T224_IV[11] | 0;\n this.Gh = T224_IV[12] | 0;\n this.Gl = T224_IV[13] | 0;\n this.Hh = T224_IV[14] | 0;\n this.Hl = T224_IV[15] | 0;\n }\n}\nclass SHA512_256 extends SHA512 {\n constructor() {\n super(32);\n this.Ah = T256_IV[0] | 0;\n this.Al = T256_IV[1] | 0;\n this.Bh = T256_IV[2] | 0;\n this.Bl = T256_IV[3] | 0;\n this.Ch = T256_IV[4] | 0;\n this.Cl = T256_IV[5] | 0;\n this.Dh = T256_IV[6] | 0;\n this.Dl = T256_IV[7] | 0;\n this.Eh = T256_IV[8] | 0;\n this.El = T256_IV[9] | 0;\n this.Fh = T256_IV[10] | 0;\n this.Fl = T256_IV[11] | 0;\n this.Gh = T256_IV[12] | 0;\n this.Gl = T256_IV[13] | 0;\n this.Hh = T256_IV[14] | 0;\n this.Hl = T256_IV[15] | 0;\n }\n}\n/**\n * SHA2-256 hash function from RFC 4634.\n *\n * It is the fastest JS hash, even faster than Blake3.\n * To break sha256 using birthday attack, attackers need to try 2^128 hashes.\n * BTC network is doing 2^70 hashes/sec (2^95 hashes/year) as per 2025.\n */\nconst sha256 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new SHA256());\n/** SHA2-224 hash function from RFC 4634 */\nconst sha224 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new SHA224());\n/** SHA2-512 hash function from RFC 4634. */\nconst sha512 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new SHA512());\n/** SHA2-384 hash function from RFC 4634. */\nconst sha384 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new SHA384());\n/**\n * SHA2-512/256 \"truncated\" hash function, with improved resistance to length extension attacks.\n * See the paper on [truncated SHA512](https://eprint.iacr.org/2010/548.pdf).\n */\nconst sha512_256 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new SHA512_256());\n/**\n * SHA2-512/224 \"truncated\" hash function, with improved resistance to length extension attacks.\n * See the paper on [truncated SHA512](https://eprint.iacr.org/2010/548.pdf).\n */\nconst sha512_224 = /* @__PURE__ */ (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new SHA512_224());\n//# sourceMappingURL=sha2.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3NoYTIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDd0Y7QUFDdkQ7QUFDc0I7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHFCQUFxQiwwQ0FBTTtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQiw2Q0FBUztBQUMxQixpQkFBaUIsNkNBQVM7QUFDMUIsaUJBQWlCLDZDQUFTO0FBQzFCLGlCQUFpQiw2Q0FBUztBQUMxQixpQkFBaUIsNkNBQVM7QUFDMUIsaUJBQWlCLDZDQUFTO0FBQzFCLGlCQUFpQiw2Q0FBUztBQUMxQixpQkFBaUIsNkNBQVM7QUFDMUI7QUFDQTtBQUNBLGdCQUFnQix5QkFBeUI7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFFBQVE7QUFDaEM7QUFDQSx5QkFBeUIsUUFBUTtBQUNqQztBQUNBO0FBQ0EsdUJBQXVCLCtDQUFJLFdBQVcsK0NBQUk7QUFDMUMsdUJBQXVCLCtDQUFJLFdBQVcsK0NBQUk7QUFDMUM7QUFDQTtBQUNBO0FBQ0EsY0FBYyx5QkFBeUI7QUFDdkMsd0JBQXdCLFFBQVE7QUFDaEMsMkJBQTJCLCtDQUFJLFNBQVMsK0NBQUksVUFBVSwrQ0FBSTtBQUMxRCxxQ0FBcUMsMkNBQUc7QUFDeEMsMkJBQTJCLCtDQUFJLFNBQVMsK0NBQUksVUFBVSwrQ0FBSTtBQUMxRCxpQ0FBaUMsMkNBQUc7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxnREFBSztBQUNiO0FBQ0E7QUFDQTtBQUNBLFFBQVEsZ0RBQUs7QUFDYjtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0EsaUJBQWlCLDZDQUFTO0FBQzFCLGlCQUFpQiw2Q0FBUztBQUMxQixpQkFBaUIsNkNBQVM7QUFDMUIsaUJBQWlCLDZDQUFTO0FBQzFCLGlCQUFpQiw2Q0FBUztBQUMxQixpQkFBaUIsNkNBQVM7QUFDMUIsaUJBQWlCLDZDQUFTO0FBQzFCLGlCQUFpQiw2Q0FBUztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsMENBQVM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHFCQUFxQiwwQ0FBTTtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixpRUFBaUU7QUFDakY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixRQUFRO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixRQUFRO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwyQ0FBVSxrQkFBa0IsMkNBQVUsa0JBQWtCLDBDQUFTO0FBQ3pGLHdCQUF3QiwyQ0FBVSxrQkFBa0IsMkNBQVUsa0JBQWtCLDBDQUFTO0FBQ3pGO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwyQ0FBVSxpQkFBaUIsMkNBQVUsaUJBQWlCLDBDQUFTO0FBQ3ZGLHdCQUF3QiwyQ0FBVSxpQkFBaUIsMkNBQVUsaUJBQWlCLDBDQUFTO0FBQ3ZGO0FBQ0EseUJBQXlCLDBDQUFTO0FBQ2xDLHlCQUF5QiwwQ0FBUztBQUNsQztBQUNBO0FBQ0E7QUFDQSxjQUFjLGlFQUFpRTtBQUMvRTtBQUNBLHdCQUF3QixRQUFRO0FBQ2hDO0FBQ0EsNEJBQTRCLDJDQUFVLGVBQWUsMkNBQVUsZUFBZSwyQ0FBVTtBQUN4Riw0QkFBNEIsMkNBQVUsZUFBZSwyQ0FBVSxlQUFlLDJDQUFVO0FBQ3hGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsMENBQVM7QUFDbEMsd0JBQXdCLDBDQUFTO0FBQ2pDO0FBQ0E7QUFDQSw0QkFBNEIsMkNBQVUsZUFBZSwyQ0FBVSxlQUFlLDJDQUFVO0FBQ3hGLDRCQUE0QiwyQ0FBVSxlQUFlLDJDQUFVLGVBQWUsMkNBQVU7QUFDeEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsZUFBZSxFQUFFLHdDQUFPO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwwQ0FBUztBQUNqQyxpQkFBaUIsMENBQVM7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkMsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkMsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkMsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkMsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkMsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkMsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkMsV0FBVyxlQUFlLEVBQUUsd0NBQU87QUFDbkM7QUFDQTtBQUNBO0FBQ0EsUUFBUSxnREFBSztBQUNiO0FBQ0E7QUFDQSxRQUFRLGdEQUFLO0FBQ2I7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0Esa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCLGtCQUFrQiw2Q0FBUztBQUMzQixrQkFBa0IsNkNBQVM7QUFDM0Isa0JBQWtCLDZDQUFTO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sK0JBQStCLHVEQUFZO0FBQ2xEO0FBQ08sK0JBQStCLHVEQUFZO0FBQ2xEO0FBQ08sK0JBQStCLHVEQUFZO0FBQ2xEO0FBQ08sK0JBQStCLHVEQUFZO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUNBQW1DLHVEQUFZO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUNBQW1DLHVEQUFZO0FBQ3REIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bjb2luYmFzZS93YWxsZXQtc2RrL25vZGVfbW9kdWxlcy9veC9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9lc20vc2hhMi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNIQTIgaGFzaCBmdW5jdGlvbi4gQS5rLmEuIHNoYTI1Niwgc2hhMzg0LCBzaGE1MTIsIHNoYTUxMl8yMjQsIHNoYTUxMl8yNTYuXG4gKiBTSEEyNTYgaXMgdGhlIGZhc3Rlc3QgaGFzaCBpbXBsZW1lbnRhYmxlIGluIEpTLCBldmVuIGZhc3RlciB0aGFuIEJsYWtlMy5cbiAqIENoZWNrIG91dCBbUkZDIDQ2MzRdKGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNDYzNCkgYW5kXG4gKiBbRklQUyAxODAtNF0oaHR0cHM6Ly9udmxwdWJzLm5pc3QuZ292L25pc3RwdWJzL0ZJUFMvTklTVC5GSVBTLjE4MC00LnBkZikuXG4gKiBAbW9kdWxlXG4gKi9cbmltcG9ydCB7IENoaSwgSGFzaE1ELCBNYWosIFNIQTIyNF9JViwgU0hBMjU2X0lWLCBTSEEzODRfSVYsIFNIQTUxMl9JViB9IGZyb20gXCIuL19tZC5qc1wiO1xuaW1wb3J0ICogYXMgdTY0IGZyb20gXCIuL191NjQuanNcIjtcbmltcG9ydCB7IGNsZWFuLCBjcmVhdGVIYXNoZXIsIHJvdHIgfSBmcm9tIFwiLi91dGlscy5qc1wiO1xuLyoqXG4gKiBSb3VuZCBjb25zdGFudHM6XG4gKiBGaXJzdCAzMiBiaXRzIG9mIGZyYWN0aW9uYWwgcGFydHMgb2YgdGhlIGN1YmUgcm9vdHMgb2YgdGhlIGZpcnN0IDY0IHByaW1lcyAyLi4zMTEpXG4gKi9cbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgU0hBMjU2X0sgPSAvKiBAX19QVVJFX18gKi8gVWludDMyQXJyYXkuZnJvbShbXG4gICAgMHg0MjhhMmY5OCwgMHg3MTM3NDQ5MSwgMHhiNWMwZmJjZiwgMHhlOWI1ZGJhNSwgMHgzOTU2YzI1YiwgMHg1OWYxMTFmMSwgMHg5MjNmODJhNCwgMHhhYjFjNWVkNSxcbiAgICAweGQ4MDdhYTk4LCAweDEyODM1YjAxLCAweDI0MzE4NWJlLCAweDU1MGM3ZGMzLCAweDcyYmU1ZDc0LCAweDgwZGViMWZlLCAweDliZGMwNmE3LCAweGMxOWJmMTc0LFxuICAgIDB4ZTQ5YjY5YzEsIDB4ZWZiZTQ3ODYsIDB4MGZjMTlkYzYsIDB4MjQwY2ExY2MsIDB4MmRlOTJjNmYsIDB4NGE3NDg0YWEsIDB4NWNiMGE5ZGMsIDB4NzZmOTg4ZGEsXG4gICAgMHg5ODNlNTE1MiwgMHhhODMxYzY2ZCwgMHhiMDAzMjdjOCwgMHhiZjU5N2ZjNywgMHhjNmUwMGJmMywgMHhkNWE3OTE0NywgMHgwNmNhNjM1MSwgMHgxNDI5Mjk2NyxcbiAgICAweDI3YjcwYTg1LCAweDJlMWIyMTM4LCAweDRkMmM2ZGZjLCAweDUzMzgwZDEzLCAweDY1MGE3MzU0LCAweDc2NmEwYWJiLCAweDgxYzJjOTJlLCAweDkyNzIyYzg1LFxuICAgIDB4YTJiZmU4YTEsIDB4YTgxYTY2NGIsIDB4YzI0YjhiNzAsIDB4Yzc2YzUxYTMsIDB4ZDE5MmU4MTksIDB4ZDY5OTA2MjQsIDB4ZjQwZTM1ODUsIDB4MTA2YWEwNzAsXG4gICAgMHgxOWE0YzExNiwgMHgxZTM3NmMwOCwgMHgyNzQ4Nzc0YywgMHgzNGIwYmNiNSwgMHgzOTFjMGNiMywgMHg0ZWQ4YWE0YSwgMHg1YjljY2E0ZiwgMHg2ODJlNmZmMyxcbiAgICAweDc0OGY4MmVlLCAweDc4YTU2MzZmLCAweDg0Yzg3ODE0LCAweDhjYzcwMjA4LCAweDkwYmVmZmZhLCAweGE0NTA2Y2ViLCAweGJlZjlhM2Y3LCAweGM2NzE3OGYyXG5dKTtcbi8qKiBSZXVzYWJsZSB0ZW1wb3JhcnkgYnVmZmVyLiBcIldcIiBjb21lcyBzdHJhaWdodCBmcm9tIHNwZWMuICovXG5jb25zdCBTSEEyNTZfVyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoNjQpO1xuZXhwb3J0IGNsYXNzIFNIQTI1NiBleHRlbmRzIEhhc2hNRCB7XG4gICAgY29uc3RydWN0b3Iob3V0cHV0TGVuID0gMzIpIHtcbiAgICAgICAgc3VwZXIoNjQsIG91dHB1dExlbiwgOCwgZmFsc2UpO1xuICAgICAgICAvLyBXZSBjYW5ub3QgdXNlIGFycmF5IGhlcmUgc2luY2UgYXJyYXkgYWxsb3dzIGluZGV4aW5nIGJ5IHZhcmlhYmxlXG4gICAgICAgIC8vIHdoaWNoIG1lYW5zIG9wdGltaXplci9jb21waWxlciBjYW5ub3QgdXNlIHJlZ2lzdGVycy5cbiAgICAgICAgdGhpcy5BID0gU0hBMjU2X0lWWzBdIHwgMDtcbiAgICAgICAgdGhpcy5CID0gU0hBMjU2X0lWWzFdIHwgMDtcbiAgICAgICAgdGhpcy5DID0gU0hBMjU2X0lWWzJdIHwgMDtcbiAgICAgICAgdGhpcy5EID0gU0hBMjU2X0lWWzNdIHwgMDtcbiAgICAgICAgdGhpcy5FID0gU0hBMjU2X0lWWzRdIHwgMDtcbiAgICAgICAgdGhpcy5GID0gU0hBMjU2X0lWWzVdIHwgMDtcbiAgICAgICAgdGhpcy5HID0gU0hBMjU2X0lWWzZdIHwgMDtcbiAgICAgICAgdGhpcy5IID0gU0hBMjU2X0lWWzddIHwgMDtcbiAgICB9XG4gICAgZ2V0KCkge1xuICAgICAgICBjb25zdCB7IEEsIEIsIEMsIEQsIEUsIEYsIEcsIEggfSA9IHRoaXM7XG4gICAgICAgIHJldHVybiBbQSwgQiwgQywgRCwgRSwgRiwgRywgSF07XG4gICAgfVxuICAgIC8vIHByZXR0aWVyLWlnbm9yZVxuICAgIHNldChBLCBCLCBDLCBELCBFLCBGLCBHLCBIKSB7XG4gICAgICAgIHRoaXMuQSA9IEEgfCAwO1xuICAgICAgICB0aGlzLkIgPSBCIHwgMDtcbiAgICAgICAgdGhpcy5DID0gQyB8IDA7XG4gICAgICAgIHRoaXMuRCA9IEQgfCAwO1xuICAgICAgICB0aGlzLkUgPSBFIHwgMDtcbiAgICAgICAgdGhpcy5GID0gRiB8IDA7XG4gICAgICAgIHRoaXMuRyA9IEcgfCAwO1xuICAgICAgICB0aGlzLkggPSBIIHwgMDtcbiAgICB9XG4gICAgcHJvY2Vzcyh2aWV3LCBvZmZzZXQpIHtcbiAgICAgICAgLy8gRXh0ZW5kIHRoZSBmaXJzdCAxNiB3b3JkcyBpbnRvIHRoZSByZW1haW5pbmcgNDggd29yZHMgd1sxNi4uNjNdIG9mIHRoZSBtZXNzYWdlIHNjaGVkdWxlIGFycmF5XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTY7IGkrKywgb2Zmc2V0ICs9IDQpXG4gICAgICAgICAgICBTSEEyNTZfV1tpXSA9IHZpZXcuZ2V0VWludDMyKG9mZnNldCwgZmFsc2UpO1xuICAgICAgICBmb3IgKGxldCBpID0gMTY7IGkgPCA2NDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBXMTUgPSBTSEEyNTZfV1tpIC0gMTVdO1xuICAgICAgICAgICAgY29uc3QgVzIgPSBTSEEyNTZfV1tpIC0gMl07XG4gICAgICAgICAgICBjb25zdCBzMCA9IHJvdHIoVzE1LCA3KSBeIHJvdHIoVzE1LCAxOCkgXiAoVzE1ID4+PiAzKTtcbiAgICAgICAgICAgIGNvbnN0IHMxID0gcm90cihXMiwgMTcpIF4gcm90cihXMiwgMTkpIF4gKFcyID4+PiAxMCk7XG4gICAgICAgICAgICBTSEEyNTZfV1tpXSA9IChzMSArIFNIQTI1Nl9XW2kgLSA3XSArIHMwICsgU0hBMjU2X1dbaSAtIDE2XSkgfCAwO1xuICAgICAgICB9XG4gICAgICAgIC8vIENvbXByZXNzaW9uIGZ1bmN0aW9uIG1haW4gbG9vcCwgNjQgcm91bmRzXG4gICAgICAgIGxldCB7IEEsIEIsIEMsIEQsIEUsIEYsIEcsIEggfSA9IHRoaXM7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNjQ7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgc2lnbWExID0gcm90cihFLCA2KSBeIHJvdHIoRSwgMTEpIF4gcm90cihFLCAyNSk7XG4gICAgICAgICAgICBjb25zdCBUMSA9IChIICsgc2lnbWExICsgQ2hpKEUsIEYsIEcpICsgU0hBMjU2X0tbaV0gKyBTSEEyNTZfV1tpXSkgfCAwO1xuICAgICAgICAgICAgY29uc3Qgc2lnbWEwID0gcm90cihBLCAyKSBeIHJvdHIoQSwgMTMpIF4gcm90cihBLCAyMik7XG4gICAgICAgICAgICBjb25zdCBUMiA9IChzaWdtYTAgKyBNYWooQSwgQiwgQykpIHwgMDtcbiAgICAgICAgICAgIEggPSBHO1xuICAgICAgICAgICAgRyA9IEY7XG4gICAgICAgICAgICBGID0gRTtcbiAgICAgICAgICAgIEUgPSAoRCArIFQxKSB8IDA7XG4gICAgICAgICAgICBEID0gQztcbiAgICAgICAgICAgIEMgPSBCO1xuICAgICAgICAgICAgQiA9IEE7XG4gICAgICAgICAgICBBID0gKFQxICsgVDIpIHwgMDtcbiAgICAgICAgfVxuICAgICAgICAvLyBBZGQgdGhlIGNvbXByZXNzZWQgY2h1bmsgdG8gdGhlIGN1cnJlbnQgaGFzaCB2YWx1ZVxuICAgICAgICBBID0gKEEgKyB0aGlzLkEpIHwgMDtcbiAgICAgICAgQiA9IChCICsgdGhpcy5CKSB8IDA7XG4gICAgICAgIEMgPSAoQyArIHRoaXMuQykgfCAwO1xuICAgICAgICBEID0gKEQgKyB0aGlzLkQpIHwgMDtcbiAgICAgICAgRSA9IChFICsgdGhpcy5FKSB8IDA7XG4gICAgICAgIEYgPSAoRiArIHRoaXMuRikgfCAwO1xuICAgICAgICBHID0gKEcgKyB0aGlzLkcpIHwgMDtcbiAgICAgICAgSCA9IChIICsgdGhpcy5IKSB8IDA7XG4gICAgICAgIHRoaXMuc2V0KEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgpO1xuICAgIH1cbiAgICByb3VuZENsZWFuKCkge1xuICAgICAgICBjbGVhbihTSEEyNTZfVyk7XG4gICAgfVxuICAgIGRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc2V0KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApO1xuICAgICAgICBjbGVhbih0aGlzLmJ1ZmZlcik7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIFNIQTIyNCBleHRlbmRzIFNIQTI1NiB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKDI4KTtcbiAgICAgICAgdGhpcy5BID0gU0hBMjI0X0lWWzBdIHwgMDtcbiAgICAgICAgdGhpcy5CID0gU0hBMjI0X0lWWzFdIHwgMDtcbiAgICAgICAgdGhpcy5DID0gU0hBMjI0X0lWWzJdIHwgMDtcbiAgICAgICAgdGhpcy5EID0gU0hBMjI0X0lWWzNdIHwgMDtcbiAgICAgICAgdGhpcy5FID0gU0hBMjI0X0lWWzRdIHwgMDtcbiAgICAgICAgdGhpcy5GID0gU0hBMjI0X0lWWzVdIHwgMDtcbiAgICAgICAgdGhpcy5HID0gU0hBMjI0X0lWWzZdIHwgMDtcbiAgICAgICAgdGhpcy5IID0gU0hBMjI0X0lWWzddIHwgMDtcbiAgICB9XG59XG4vLyBTSEEyLTUxMiBpcyBzbG93ZXIgdGhhbiBzaGEyNTYgaW4ganMgYmVjYXVzZSB1NjQgb3BlcmF0aW9ucyBhcmUgc2xvdy5cbi8vIFJvdW5kIGNvbnRhbnRzXG4vLyBGaXJzdCAzMiBiaXRzIG9mIHRoZSBmcmFjdGlvbmFsIHBhcnRzIG9mIHRoZSBjdWJlIHJvb3RzIG9mIHRoZSBmaXJzdCA4MCBwcmltZXMgMi4uNDA5XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IEs1MTIgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IHU2NC5zcGxpdChbXG4gICAgJzB4NDI4YTJmOThkNzI4YWUyMicsICcweDcxMzc0NDkxMjNlZjY1Y2QnLCAnMHhiNWMwZmJjZmVjNGQzYjJmJywgJzB4ZTliNWRiYTU4MTg5ZGJiYycsXG4gICAgJzB4Mzk1NmMyNWJmMzQ4YjUzOCcsICcweDU5ZjExMWYxYjYwNWQwMTknLCAnMHg5MjNmODJhNGFmMTk0ZjliJywgJzB4YWIxYzVlZDVkYTZkODExOCcsXG4gICAgJzB4ZDgwN2FhOThhMzAzMDI0MicsICcweDEyODM1YjAxNDU3MDZmYmUnLCAnMHgyNDMxODViZTRlZTRiMjhjJywgJzB4NTUwYzdkYzNkNWZmYjRlMicsXG4gICAgJzB4NzJiZTVkNzRmMjdiODk2ZicsICcweDgwZGViMWZlM2IxNjk2YjEnLCAnMHg5YmRjMDZhNzI1YzcxMjM1JywgJzB4YzE5YmYxNzRjZjY5MjY5NCcsXG4gICAgJzB4ZTQ5YjY5YzE5ZWYxNGFkMicsICcweGVmYmU0Nzg2Mzg0ZjI1ZTMnLCAnMHgwZmMxOWRjNjhiOGNkNWI1JywgJzB4MjQwY2ExY2M3N2FjOWM2NScsXG4gICAgJzB4MmRlOTJjNmY1OTJiMDI3NScsICcweDRhNzQ4NGFhNmVhNmU0ODMnLCAnMHg1Y2IwYTlkY2JkNDFmYmQ0JywgJzB4NzZmOTg4ZGE4MzExNTNiNScsXG4gICAgJzB4OTgzZTUxNTJlZTY2ZGZhYicsICcweGE4MzFjNjZkMmRiNDMyMTAnLCAnMHhiMDAzMjdjODk4ZmIyMTNmJywgJzB4YmY1OTdmYzdiZWVmMGVlNCcsXG4gICAgJzB4YzZlMDBiZjMzZGE4OGZjMicsICcweGQ1YTc5MTQ3OTMwYWE3MjUnLCAnMHgwNmNhNjM1MWUwMDM4MjZmJywgJzB4MTQyOTI5NjcwYTBlNmU3MCcsXG4gICAgJzB4MjdiNzBhODU0NmQyMmZmYycsICcweDJlMWIyMTM4NWMyNmM5MjYnLCAnMHg0ZDJjNmRmYzVhYzQyYWVkJywgJzB4NTMzODBkMTM5ZDk1YjNkZicsXG4gICAgJzB4NjUwYTczNTQ4YmFmNjNkZScsICcweDc2NmEwYWJiM2M3N2IyYTgnLCAnMHg4MWMyYzkyZTQ3ZWRhZWU2JywgJzB4OTI3MjJjODUxNDgyMzUzYicsXG4gICAgJzB4YTJiZmU4YTE0Y2YxMDM2NCcsICcweGE4MWE2NjRiYmM0MjMwMDEnLCAnMHhjMjRiOGI3MGQwZjg5NzkxJywgJzB4Yzc2YzUxYTMwNjU0YmUzMCcsXG4gICAgJzB4ZDE5MmU4MTlkNmVmNTIxOCcsICcweGQ2OTkwNjI0NTU2NWE5MTAnLCAnMHhmNDBlMzU4NTU3NzEyMDJhJywgJzB4MTA2YWEwNzAzMmJiZDFiOCcsXG4gICAgJzB4MTlhNGMxMTZiOGQyZDBjOCcsICcweDFlMzc2YzA4NTE0MWFiNTMnLCAnMHgyNzQ4Nzc0Y2RmOGVlYjk5JywgJzB4MzRiMGJjYjVlMTliNDhhOCcsXG4gICAgJzB4MzkxYzBjYjNjNWM5NWE2MycsICcweDRlZDhhYTRhZTM0MThhY2InLCAnMHg1YjljY2E0Zjc3NjNlMzczJywgJzB4NjgyZTZmZjNkNmIyYjhhMycsXG4gICAgJzB4NzQ4ZjgyZWU1ZGVmYjJmYycsICcweDc4YTU2MzZmNDMxNzJmNjAnLCAnMHg4NGM4NzgxNGExZjBhYjcyJywgJzB4OGNjNzAyMDgxYTY0MzllYycsXG4gICAgJzB4OTBiZWZmZmEyMzYzMWUyOCcsICcweGE0NTA2Y2ViZGU4MmJkZTknLCAnMHhiZWY5YTNmN2IyYzY3OTE1JywgJzB4YzY3MTc4ZjJlMzcyNTMyYicsXG4gICAgJzB4Y2EyNzNlY2VlYTI2NjE5YycsICcweGQxODZiOGM3MjFjMGMyMDcnLCAnMHhlYWRhN2RkNmNkZTBlYjFlJywgJzB4ZjU3ZDRmN2ZlZTZlZDE3OCcsXG4gICAgJzB4MDZmMDY3YWE3MjE3NmZiYScsICcweDBhNjM3ZGM1YTJjODk4YTYnLCAnMHgxMTNmOTgwNGJlZjkwZGFlJywgJzB4MWI3MTBiMzUxMzFjNDcxYicsXG4gICAgJzB4MjhkYjc3ZjUyMzA0N2Q4NCcsICcweDMyY2FhYjdiNDBjNzI0OTMnLCAnMHgzYzllYmUwYTE1YzliZWJjJywgJzB4NDMxZDY3YzQ5YzEwMGQ0YycsXG4gICAgJzB4NGNjNWQ0YmVjYjNlNDJiNicsICcweDU5N2YyOTljZmM2NTdlMmEnLCAnMHg1ZmNiNmZhYjNhZDZmYWVjJywgJzB4NmM0NDE5OGM0YTQ3NTgxNydcbl0ubWFwKG4gPT4gQmlnSW50KG4pKSkpKCk7XG5jb25zdCBTSEE1MTJfS2ggPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IEs1MTJbMF0pKCk7XG5jb25zdCBTSEE1MTJfS2wgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IEs1MTJbMV0pKCk7XG4vLyBSZXVzYWJsZSB0ZW1wb3JhcnkgYnVmZmVyc1xuY29uc3QgU0hBNTEyX1dfSCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoODApO1xuY29uc3QgU0hBNTEyX1dfTCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoODApO1xuZXhwb3J0IGNsYXNzIFNIQTUxMiBleHRlbmRzIEhhc2hNRCB7XG4gICAgY29uc3RydWN0b3Iob3V0cHV0TGVuID0gNjQpIHtcbiAgICAgICAgc3VwZXIoMTI4LCBvdXRwdXRMZW4sIDE2LCBmYWxzZSk7XG4gICAgICAgIC8vIFdlIGNhbm5vdCB1c2UgYXJyYXkgaGVyZSBzaW5jZSBhcnJheSBhbGxvd3MgaW5kZXhpbmcgYnkgdmFyaWFibGVcbiAgICAgICAgLy8gd2hpY2ggbWVhbnMgb3B0aW1pemVyL2NvbXBpbGVyIGNhbm5vdCB1c2UgcmVnaXN0ZXJzLlxuICAgICAgICAvLyBoIC0tIGhpZ2ggMzIgYml0cywgbCAtLSBsb3cgMzIgYml0c1xuICAgICAgICB0aGlzLkFoID0gU0hBNTEyX0lWWzBdIHwgMDtcbiAgICAgICAgdGhpcy5BbCA9IFNIQTUxMl9JVlsxXSB8IDA7XG4gICAgICAgIHRoaXMuQmggPSBTSEE1MTJfSVZbMl0gfCAwO1xuICAgICAgICB0aGlzLkJsID0gU0hBNTEyX0lWWzNdIHwgMDtcbiAgICAgICAgdGhpcy5DaCA9IFNIQTUxMl9JVls0XSB8IDA7XG4gICAgICAgIHRoaXMuQ2wgPSBTSEE1MTJfSVZbNV0gfCAwO1xuICAgICAgICB0aGlzLkRoID0gU0hBNTEyX0lWWzZdIHwgMDtcbiAgICAgICAgdGhpcy5EbCA9IFNIQTUxMl9JVls3XSB8IDA7XG4gICAgICAgIHRoaXMuRWggPSBTSEE1MTJfSVZbOF0gfCAwO1xuICAgICAgICB0aGlzLkVsID0gU0hBNTEyX0lWWzldIHwgMDtcbiAgICAgICAgdGhpcy5GaCA9IFNIQTUxMl9JVlsxMF0gfCAwO1xuICAgICAgICB0aGlzLkZsID0gU0hBNTEyX0lWWzExXSB8IDA7XG4gICAgICAgIHRoaXMuR2ggPSBTSEE1MTJfSVZbMTJdIHwgMDtcbiAgICAgICAgdGhpcy5HbCA9IFNIQTUxMl9JVlsxM10gfCAwO1xuICAgICAgICB0aGlzLkhoID0gU0hBNTEyX0lWWzE0XSB8IDA7XG4gICAgICAgIHRoaXMuSGwgPSBTSEE1MTJfSVZbMTVdIHwgMDtcbiAgICB9XG4gICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgZ2V0KCkge1xuICAgICAgICBjb25zdCB7IEFoLCBBbCwgQmgsIEJsLCBDaCwgQ2wsIERoLCBEbCwgRWgsIEVsLCBGaCwgRmwsIEdoLCBHbCwgSGgsIEhsIH0gPSB0aGlzO1xuICAgICAgICByZXR1cm4gW0FoLCBBbCwgQmgsIEJsLCBDaCwgQ2wsIERoLCBEbCwgRWgsIEVsLCBGaCwgRmwsIEdoLCBHbCwgSGgsIEhsXTtcbiAgICB9XG4gICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgc2V0KEFoLCBBbCwgQmgsIEJsLCBDaCwgQ2wsIERoLCBEbCwgRWgsIEVsLCBGaCwgRmwsIEdoLCBHbCwgSGgsIEhsKSB7XG4gICAgICAgIHRoaXMuQWggPSBBaCB8IDA7XG4gICAgICAgIHRoaXMuQWwgPSBBbCB8IDA7XG4gICAgICAgIHRoaXMuQmggPSBCaCB8IDA7XG4gICAgICAgIHRoaXMuQmwgPSBCbCB8IDA7XG4gICAgICAgIHRoaXMuQ2ggPSBDaCB8IDA7XG4gICAgICAgIHRoaXMuQ2wgPSBDbCB8IDA7XG4gICAgICAgIHRoaXMuRGggPSBEaCB8IDA7XG4gICAgICAgIHRoaXMuRGwgPSBEbCB8IDA7XG4gICAgICAgIHRoaXMuRWggPSBFaCB8IDA7XG4gICAgICAgIHRoaXMuRWwgPSBFbCB8IDA7XG4gICAgICAgIHRoaXMuRmggPSBGaCB8IDA7XG4gICAgICAgIHRoaXMuRmwgPSBGbCB8IDA7XG4gICAgICAgIHRoaXMuR2ggPSBHaCB8IDA7XG4gICAgICAgIHRoaXMuR2wgPSBHbCB8IDA7XG4gICAgICAgIHRoaXMuSGggPSBIaCB8IDA7XG4gICAgICAgIHRoaXMuSGwgPSBIbCB8IDA7XG4gICAgfVxuICAgIHByb2Nlc3Modmlldywgb2Zmc2V0KSB7XG4gICAgICAgIC8vIEV4dGVuZCB0aGUgZmlyc3QgMTYgd29yZHMgaW50byB0aGUgcmVtYWluaW5nIDY0IHdvcmRzIHdbMTYuLjc5XSBvZiB0aGUgbWVzc2FnZSBzY2hlZHVsZSBhcnJheVxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDE2OyBpKyssIG9mZnNldCArPSA0KSB7XG4gICAgICAgICAgICBTSEE1MTJfV19IW2ldID0gdmlldy5nZXRVaW50MzIob2Zmc2V0KTtcbiAgICAgICAgICAgIFNIQTUxMl9XX0xbaV0gPSB2aWV3LmdldFVpbnQzMigob2Zmc2V0ICs9IDQpKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBpID0gMTY7IGkgPCA4MDsgaSsrKSB7XG4gICAgICAgICAgICAvLyBzMCA6PSAod1tpLTE1XSByaWdodHJvdGF0ZSAxKSB4b3IgKHdbaS0xNV0gcmlnaHRyb3RhdGUgOCkgeG9yICh3W2ktMTVdIHJpZ2h0c2hpZnQgNylcbiAgICAgICAgICAgIGNvbnN0IFcxNWggPSBTSEE1MTJfV19IW2kgLSAxNV0gfCAwO1xuICAgICAgICAgICAgY29uc3QgVzE1bCA9IFNIQTUxMl9XX0xbaSAtIDE1XSB8IDA7XG4gICAgICAgICAgICBjb25zdCBzMGggPSB1NjQucm90clNIKFcxNWgsIFcxNWwsIDEpIF4gdTY0LnJvdHJTSChXMTVoLCBXMTVsLCA4KSBeIHU2NC5zaHJTSChXMTVoLCBXMTVsLCA3KTtcbiAgICAgICAgICAgIGNvbnN0IHMwbCA9IHU2NC5yb3RyU0woVzE1aCwgVzE1bCwgMSkgXiB1NjQucm90clNMKFcxNWgsIFcxNWwsIDgpIF4gdTY0LnNoclNMKFcxNWgsIFcxNWwsIDcpO1xuICAgICAgICAgICAgLy8gczEgOj0gKHdbaS0yXSByaWdodHJvdGF0ZSAxOSkgeG9yICh3W2ktMl0gcmlnaHRyb3RhdGUgNjEpIHhvciAod1tpLTJdIHJpZ2h0c2hpZnQgNilcbiAgICAgICAgICAgIGNvbnN0IFcyaCA9IFNIQTUxMl9XX0hbaSAtIDJdIHwgMDtcbiAgICAgICAgICAgIGNvbnN0IFcybCA9IFNIQTUxMl9XX0xbaSAtIDJdIHwgMDtcbiAgICAgICAgICAgIGNvbnN0IHMxaCA9IHU2NC5yb3RyU0goVzJoLCBXMmwsIDE5KSBeIHU2NC5yb3RyQkgoVzJoLCBXMmwsIDYxKSBeIHU2NC5zaHJTSChXMmgsIFcybCwgNik7XG4gICAgICAgICAgICBjb25zdCBzMWwgPSB1NjQucm90clNMKFcyaCwgVzJsLCAxOSkgXiB1NjQucm90ckJMKFcyaCwgVzJsLCA2MSkgXiB1NjQuc2hyU0woVzJoLCBXMmwsIDYpO1xuICAgICAgICAgICAgLy8gU0hBMjU2X1dbaV0gPSBzMCArIHMxICsgU0hBMjU2X1dbaSAtIDddICsgU0hBMjU2X1dbaSAtIDE2XTtcbiAgICAgICAgICAgIGNvbnN0IFNVTWwgPSB1NjQuYWRkNEwoczBsLCBzMWwsIFNIQTUxMl9XX0xbaSAtIDddLCBTSEE1MTJfV19MW2kgLSAxNl0pO1xuICAgICAgICAgICAgY29uc3QgU1VNaCA9IHU2NC5hZGQ0SChTVU1sLCBzMGgsIHMxaCwgU0hBNTEyX1dfSFtpIC0gN10sIFNIQTUxMl9XX0hbaSAtIDE2XSk7XG4gICAgICAgICAgICBTSEE1MTJfV19IW2ldID0gU1VNaCB8IDA7XG4gICAgICAgICAgICBTSEE1MTJfV19MW2ldID0gU1VNbCB8IDA7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IHsgQWgsIEFsLCBCaCwgQmwsIENoLCBDbCwgRGgsIERsLCBFaCwgRWwsIEZoLCBGbCwgR2gsIEdsLCBIaCwgSGwgfSA9IHRoaXM7XG4gICAgICAgIC8vIENvbXByZXNzaW9uIGZ1bmN0aW9uIG1haW4gbG9vcCwgODAgcm91bmRzXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgODA7IGkrKykge1xuICAgICAgICAgICAgLy8gUzEgOj0gKGUgcmlnaHRyb3RhdGUgMTQpIHhvciAoZSByaWdodHJvdGF0ZSAxOCkgeG9yIChlIHJpZ2h0cm90YXRlIDQxKVxuICAgICAgICAgICAgY29uc3Qgc2lnbWExaCA9IHU2NC5yb3RyU0goRWgsIEVsLCAxNCkgXiB1NjQucm90clNIKEVoLCBFbCwgMTgpIF4gdTY0LnJvdHJCSChFaCwgRWwsIDQxKTtcbiAgICAgICAgICAgIGNvbnN0IHNpZ21hMWwgPSB1NjQucm90clNMKEVoLCBFbCwgMTQpIF4gdTY0LnJvdHJTTChFaCwgRWwsIDE4KSBeIHU2NC5yb3RyQkwoRWgsIEVsLCA0MSk7XG4gICAgICAgICAgICAvL2NvbnN0IFQxID0gKEggKyBzaWdtYTEgKyBDaGkoRSwgRiwgRykgKyBTSEEyNTZfS1tpXSArIFNIQTI1Nl9XW2ldKSB8IDA7XG4gICAgICAgICAgICBjb25zdCBDSEloID0gKEVoICYgRmgpIF4gKH5FaCAmIEdoKTtcbiAgICAgICAgICAgIGNvbnN0IENISWwgPSAoRWwgJiBGbCkgXiAofkVsICYgR2wpO1xuICAgICAgICAgICAgLy8gVDEgPSBIICsgc2lnbWExICsgQ2hpKEUsIEYsIEcpICsgU0hBNTEyX0tbaV0gKyBTSEE1MTJfV1tpXVxuICAgICAgICAgICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgICAgICAgICBjb25zdCBUMWxsID0gdTY0LmFkZDVMKEhsLCBzaWdtYTFsLCBDSElsLCBTSEE1MTJfS2xbaV0sIFNIQTUxMl9XX0xbaV0pO1xuICAgICAgICAgICAgY29uc3QgVDFoID0gdTY0LmFkZDVIKFQxbGwsIEhoLCBzaWdtYTFoLCBDSEloLCBTSEE1MTJfS2hbaV0sIFNIQTUxMl9XX0hbaV0pO1xuICAgICAgICAgICAgY29uc3QgVDFsID0gVDFsbCB8IDA7XG4gICAgICAgICAgICAvLyBTMCA6PSAoYSByaWdodHJvdGF0ZSAyOCkgeG9yIChhIHJpZ2h0cm90YXRlIDM0KSB4b3IgKGEgcmlnaHRyb3RhdGUgMzkpXG4gICAgICAgICAgICBjb25zdCBzaWdtYTBoID0gdTY0LnJvdHJTSChBaCwgQWwsIDI4KSBeIHU2NC5yb3RyQkgoQWgsIEFsLCAzNCkgXiB1NjQucm90ckJIKEFoLCBBbCwgMzkpO1xuICAgICAgICAgICAgY29uc3Qgc2lnbWEwbCA9IHU2NC5yb3RyU0woQWgsIEFsLCAyOCkgXiB1NjQucm90ckJMKEFoLCBBbCwgMzQpIF4gdTY0LnJvdHJCTChBaCwgQWwsIDM5KTtcbiAgICAgICAgICAgIGNvbnN0IE1BSmggPSAoQWggJiBCaCkgXiAoQWggJiBDaCkgXiAoQmggJiBDaCk7XG4gICAgICAgICAgICBjb25zdCBNQUpsID0gKEFsICYgQmwpIF4gKEFsICYgQ2wpIF4gKEJsICYgQ2wpO1xuICAgICAgICAgICAgSGggPSBHaCB8IDA7XG4gICAgICAgICAgICBIbCA9IEdsIHwgMDtcbiAgICAgICAgICAgIEdoID0gRmggfCAwO1xuICAgICAgICAgICAgR2wgPSBGbCB8IDA7XG4gICAgICAgICAgICBGaCA9IEVoIHwgMDtcbiAgICAgICAgICAgIEZsID0gRWwgfCAwO1xuICAgICAgICAgICAgKHsgaDogRWgsIGw6IEVsIH0gPSB1NjQuYWRkKERoIHwgMCwgRGwgfCAwLCBUMWggfCAwLCBUMWwgfCAwKSk7XG4gICAgICAgICAgICBEaCA9IENoIHwgMDtcbiAgICAgICAgICAgIERsID0gQ2wgfCAwO1xuICAgICAgICAgICAgQ2ggPSBCaCB8IDA7XG4gICAgICAgICAgICBDbCA9IEJsIHwgMDtcbiAgICAgICAgICAgIEJoID0gQWggfCAwO1xuICAgICAgICAgICAgQmwgPSBBbCB8IDA7XG4gICAgICAgICAgICBjb25zdCBBbGwgPSB1NjQuYWRkM0woVDFsLCBzaWdtYTBsLCBNQUpsKTtcbiAgICAgICAgICAgIEFoID0gdTY0LmFkZDNIKEFsbCwgVDFoLCBzaWdtYTBoLCBNQUpoKTtcbiAgICAgICAgICAgIEFsID0gQWxsIHwgMDtcbiAgICAgICAgfVxuICAgICAgICAvLyBBZGQgdGhlIGNvbXByZXNzZWQgY2h1bmsgdG8gdGhlIGN1cnJlbnQgaGFzaCB2YWx1ZVxuICAgICAgICAoeyBoOiBBaCwgbDogQWwgfSA9IHU2NC5hZGQodGhpcy5BaCB8IDAsIHRoaXMuQWwgfCAwLCBBaCB8IDAsIEFsIHwgMCkpO1xuICAgICAgICAoeyBoOiBCaCwgbDogQmwgfSA9IHU2NC5hZGQodGhpcy5CaCB8IDAsIHRoaXMuQmwgfCAwLCBCaCB8IDAsIEJsIHwgMCkpO1xuICAgICAgICAoeyBoOiBDaCwgbDogQ2wgfSA9IHU2NC5hZGQodGhpcy5DaCB8IDAsIHRoaXMuQ2wgfCAwLCBDaCB8IDAsIENsIHwgMCkpO1xuICAgICAgICAoeyBoOiBEaCwgbDogRGwgfSA9IHU2NC5hZGQodGhpcy5EaCB8IDAsIHRoaXMuRGwgfCAwLCBEaCB8IDAsIERsIHwgMCkpO1xuICAgICAgICAoeyBoOiBFaCwgbDogRWwgfSA9IHU2NC5hZGQodGhpcy5FaCB8IDAsIHRoaXMuRWwgfCAwLCBFaCB8IDAsIEVsIHwgMCkpO1xuICAgICAgICAoeyBoOiBGaCwgbDogRmwgfSA9IHU2NC5hZGQodGhpcy5GaCB8IDAsIHRoaXMuRmwgfCAwLCBGaCB8IDAsIEZsIHwgMCkpO1xuICAgICAgICAoeyBoOiBHaCwgbDogR2wgfSA9IHU2NC5hZGQodGhpcy5HaCB8IDAsIHRoaXMuR2wgfCAwLCBHaCB8IDAsIEdsIHwgMCkpO1xuICAgICAgICAoeyBoOiBIaCwgbDogSGwgfSA9IHU2NC5hZGQodGhpcy5IaCB8IDAsIHRoaXMuSGwgfCAwLCBIaCB8IDAsIEhsIHwgMCkpO1xuICAgICAgICB0aGlzLnNldChBaCwgQWwsIEJoLCBCbCwgQ2gsIENsLCBEaCwgRGwsIEVoLCBFbCwgRmgsIEZsLCBHaCwgR2wsIEhoLCBIbCk7XG4gICAgfVxuICAgIHJvdW5kQ2xlYW4oKSB7XG4gICAgICAgIGNsZWFuKFNIQTUxMl9XX0gsIFNIQTUxMl9XX0wpO1xuICAgIH1cbiAgICBkZXN0cm95KCkge1xuICAgICAgICBjbGVhbih0aGlzLmJ1ZmZlcik7XG4gICAgICAgIHRoaXMuc2V0KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBTSEEzODQgZXh0ZW5kcyBTSEE1MTIge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcig0OCk7XG4gICAgICAgIHRoaXMuQWggPSBTSEEzODRfSVZbMF0gfCAwO1xuICAgICAgICB0aGlzLkFsID0gU0hBMzg0X0lWWzFdIHwgMDtcbiAgICAgICAgdGhpcy5CaCA9IFNIQTM4NF9JVlsyXSB8IDA7XG4gICAgICAgIHRoaXMuQmwgPSBTSEEzODRfSVZbM10gfCAwO1xuICAgICAgICB0aGlzLkNoID0gU0hBMzg0X0lWWzRdIHwgMDtcbiAgICAgICAgdGhpcy5DbCA9IFNIQTM4NF9JVls1XSB8IDA7XG4gICAgICAgIHRoaXMuRGggPSBTSEEzODRfSVZbNl0gfCAwO1xuICAgICAgICB0aGlzLkRsID0gU0hBMzg0X0lWWzddIHwgMDtcbiAgICAgICAgdGhpcy5FaCA9IFNIQTM4NF9JVls4XSB8IDA7XG4gICAgICAgIHRoaXMuRWwgPSBTSEEzODRfSVZbOV0gfCAwO1xuICAgICAgICB0aGlzLkZoID0gU0hBMzg0X0lWWzEwXSB8IDA7XG4gICAgICAgIHRoaXMuRmwgPSBTSEEzODRfSVZbMTFdIHwgMDtcbiAgICAgICAgdGhpcy5HaCA9IFNIQTM4NF9JVlsxMl0gfCAwO1xuICAgICAgICB0aGlzLkdsID0gU0hBMzg0X0lWWzEzXSB8IDA7XG4gICAgICAgIHRoaXMuSGggPSBTSEEzODRfSVZbMTRdIHwgMDtcbiAgICAgICAgdGhpcy5IbCA9IFNIQTM4NF9JVlsxNV0gfCAwO1xuICAgIH1cbn1cbi8qKlxuICogVHJ1bmNhdGVkIFNIQTUxMi8yNTYgYW5kIFNIQTUxMi8yMjQuXG4gKiBTSEE1MTJfSVYgaXMgWE9SZWQgd2l0aCAweGE1YTVhNWE1YTVhNWE1YTUsIHRoZW4gdXNlZCBhcyBcImludGVybWVkaWFyeVwiIElWIG9mIFNIQTUxMi90LlxuICogVGhlbiB0IGhhc2hlcyBzdHJpbmcgdG8gcHJvZHVjZSByZXN1bHQgSVYuXG4gKiBTZWUgYHRlc3QvbWlzYy9zaGEyLWdlbi1pdi5qc2AuXG4gKi9cbi8qKiBTSEE1MTIvMjI0IElWICovXG5jb25zdCBUMjI0X0lWID0gLyogQF9fUFVSRV9fICovIFVpbnQzMkFycmF5LmZyb20oW1xuICAgIDB4OGMzZDM3YzgsIDB4MTk1NDRkYTIsIDB4NzNlMTk5NjYsIDB4ODlkY2Q0ZDYsIDB4MWRmYWI3YWUsIDB4MzJmZjljODIsIDB4Njc5ZGQ1MTQsIDB4NTgyZjlmY2YsXG4gICAgMHgwZjZkMmI2OSwgMHg3YmQ0NGRhOCwgMHg3N2UzNmY3MywgMHgwNGM0ODk0MiwgMHgzZjlkODVhOCwgMHg2YTFkMzZjOCwgMHgxMTEyZTZhZCwgMHg5MWQ2OTJhMSxcbl0pO1xuLyoqIFNIQTUxMi8yNTYgSVYgKi9cbmNvbnN0IFQyNTZfSVYgPSAvKiBAX19QVVJFX18gKi8gVWludDMyQXJyYXkuZnJvbShbXG4gICAgMHgyMjMxMjE5NCwgMHhmYzJiZjcyYywgMHg5ZjU1NWZhMywgMHhjODRjNjRjMiwgMHgyMzkzYjg2YiwgMHg2ZjUzYjE1MSwgMHg5NjM4NzcxOSwgMHg1OTQwZWFiZCxcbiAgICAweDk2MjgzZWUyLCAweGE4OGVmZmUzLCAweGJlNWUxZTI1LCAweDUzODYzOTkyLCAweDJiMDE5OWZjLCAweDJjODViOGFhLCAweDBlYjcyZGRjLCAweDgxYzUyY2EyLFxuXSk7XG5leHBvcnQgY2xhc3MgU0hBNTEyXzIyNCBleHRlbmRzIFNIQTUxMiB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKDI4KTtcbiAgICAgICAgdGhpcy5BaCA9IFQyMjRfSVZbMF0gfCAwO1xuICAgICAgICB0aGlzLkFsID0gVDIyNF9JVlsxXSB8IDA7XG4gICAgICAgIHRoaXMuQmggPSBUMjI0X0lWWzJdIHwgMDtcbiAgICAgICAgdGhpcy5CbCA9IFQyMjRfSVZbM10gfCAwO1xuICAgICAgICB0aGlzLkNoID0gVDIyNF9JVls0XSB8IDA7XG4gICAgICAgIHRoaXMuQ2wgPSBUMjI0X0lWWzVdIHwgMDtcbiAgICAgICAgdGhpcy5EaCA9IFQyMjRfSVZbNl0gfCAwO1xuICAgICAgICB0aGlzLkRsID0gVDIyNF9JVls3XSB8IDA7XG4gICAgICAgIHRoaXMuRWggPSBUMjI0X0lWWzhdIHwgMDtcbiAgICAgICAgdGhpcy5FbCA9IFQyMjRfSVZbOV0gfCAwO1xuICAgICAgICB0aGlzLkZoID0gVDIyNF9JVlsxMF0gfCAwO1xuICAgICAgICB0aGlzLkZsID0gVDIyNF9JVlsxMV0gfCAwO1xuICAgICAgICB0aGlzLkdoID0gVDIyNF9JVlsxMl0gfCAwO1xuICAgICAgICB0aGlzLkdsID0gVDIyNF9JVlsxM10gfCAwO1xuICAgICAgICB0aGlzLkhoID0gVDIyNF9JVlsxNF0gfCAwO1xuICAgICAgICB0aGlzLkhsID0gVDIyNF9JVlsxNV0gfCAwO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBTSEE1MTJfMjU2IGV4dGVuZHMgU0hBNTEyIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoMzIpO1xuICAgICAgICB0aGlzLkFoID0gVDI1Nl9JVlswXSB8IDA7XG4gICAgICAgIHRoaXMuQWwgPSBUMjU2X0lWWzFdIHwgMDtcbiAgICAgICAgdGhpcy5CaCA9IFQyNTZfSVZbMl0gfCAwO1xuICAgICAgICB0aGlzLkJsID0gVDI1Nl9JVlszXSB8IDA7XG4gICAgICAgIHRoaXMuQ2ggPSBUMjU2X0lWWzRdIHwgMDtcbiAgICAgICAgdGhpcy5DbCA9IFQyNTZfSVZbNV0gfCAwO1xuICAgICAgICB0aGlzLkRoID0gVDI1Nl9JVls2XSB8IDA7XG4gICAgICAgIHRoaXMuRGwgPSBUMjU2X0lWWzddIHwgMDtcbiAgICAgICAgdGhpcy5FaCA9IFQyNTZfSVZbOF0gfCAwO1xuICAgICAgICB0aGlzLkVsID0gVDI1Nl9JVls5XSB8IDA7XG4gICAgICAgIHRoaXMuRmggPSBUMjU2X0lWWzEwXSB8IDA7XG4gICAgICAgIHRoaXMuRmwgPSBUMjU2X0lWWzExXSB8IDA7XG4gICAgICAgIHRoaXMuR2ggPSBUMjU2X0lWWzEyXSB8IDA7XG4gICAgICAgIHRoaXMuR2wgPSBUMjU2X0lWWzEzXSB8IDA7XG4gICAgICAgIHRoaXMuSGggPSBUMjU2X0lWWzE0XSB8IDA7XG4gICAgICAgIHRoaXMuSGwgPSBUMjU2X0lWWzE1XSB8IDA7XG4gICAgfVxufVxuLyoqXG4gKiBTSEEyLTI1NiBoYXNoIGZ1bmN0aW9uIGZyb20gUkZDIDQ2MzQuXG4gKlxuICogSXQgaXMgdGhlIGZhc3Rlc3QgSlMgaGFzaCwgZXZlbiBmYXN0ZXIgdGhhbiBCbGFrZTMuXG4gKiBUbyBicmVhayBzaGEyNTYgdXNpbmcgYmlydGhkYXkgYXR0YWNrLCBhdHRhY2tlcnMgbmVlZCB0byB0cnkgMl4xMjggaGFzaGVzLlxuICogQlRDIG5ldHdvcmsgaXMgZG9pbmcgMl43MCBoYXNoZXMvc2VjICgyXjk1IGhhc2hlcy95ZWFyKSBhcyBwZXIgMjAyNS5cbiAqL1xuZXhwb3J0IGNvbnN0IHNoYTI1NiA9IC8qIEBfX1BVUkVfXyAqLyBjcmVhdGVIYXNoZXIoKCkgPT4gbmV3IFNIQTI1NigpKTtcbi8qKiBTSEEyLTIyNCBoYXNoIGZ1bmN0aW9uIGZyb20gUkZDIDQ2MzQgKi9cbmV4cG9ydCBjb25zdCBzaGEyMjQgPSAvKiBAX19QVVJFX18gKi8gY3JlYXRlSGFzaGVyKCgpID0+IG5ldyBTSEEyMjQoKSk7XG4vKiogU0hBMi01MTIgaGFzaCBmdW5jdGlvbiBmcm9tIFJGQyA0NjM0LiAqL1xuZXhwb3J0IGNvbnN0IHNoYTUxMiA9IC8qIEBfX1BVUkVfXyAqLyBjcmVhdGVIYXNoZXIoKCkgPT4gbmV3IFNIQTUxMigpKTtcbi8qKiBTSEEyLTM4NCBoYXNoIGZ1bmN0aW9uIGZyb20gUkZDIDQ2MzQuICovXG5leHBvcnQgY29uc3Qgc2hhMzg0ID0gLyogQF9fUFVSRV9fICovIGNyZWF0ZUhhc2hlcigoKSA9PiBuZXcgU0hBMzg0KCkpO1xuLyoqXG4gKiBTSEEyLTUxMi8yNTYgXCJ0cnVuY2F0ZWRcIiBoYXNoIGZ1bmN0aW9uLCB3aXRoIGltcHJvdmVkIHJlc2lzdGFuY2UgdG8gbGVuZ3RoIGV4dGVuc2lvbiBhdHRhY2tzLlxuICogU2VlIHRoZSBwYXBlciBvbiBbdHJ1bmNhdGVkIFNIQTUxMl0oaHR0cHM6Ly9lcHJpbnQuaWFjci5vcmcvMjAxMC81NDgucGRmKS5cbiAqL1xuZXhwb3J0IGNvbnN0IHNoYTUxMl8yNTYgPSAvKiBAX19QVVJFX18gKi8gY3JlYXRlSGFzaGVyKCgpID0+IG5ldyBTSEE1MTJfMjU2KCkpO1xuLyoqXG4gKiBTSEEyLTUxMi8yMjQgXCJ0cnVuY2F0ZWRcIiBoYXNoIGZ1bmN0aW9uLCB3aXRoIGltcHJvdmVkIHJlc2lzdGFuY2UgdG8gbGVuZ3RoIGV4dGVuc2lvbiBhdHRhY2tzLlxuICogU2VlIHRoZSBwYXBlciBvbiBbdHJ1bmNhdGVkIFNIQTUxMl0oaHR0cHM6Ly9lcHJpbnQuaWFjci5vcmcvMjAxMC81NDgucGRmKS5cbiAqL1xuZXhwb3J0IGNvbnN0IHNoYTUxMl8yMjQgPSAvKiBAX19QVVJFX18gKi8gY3JlYXRlSGFzaGVyKCgpID0+IG5ldyBTSEE1MTJfMjI0KCkpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c2hhMi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha2.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha256.js": /*!****************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha256.js ***! \****************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SHA224: () => (/* binding */ SHA224),\n/* harmony export */ SHA256: () => (/* binding */ SHA256),\n/* harmony export */ sha224: () => (/* binding */ sha224),\n/* harmony export */ sha256: () => (/* binding */ sha256)\n/* harmony export */ });\n/* harmony import */ var _sha2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sha2.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha2.js\");\n/**\n * SHA2-256 a.k.a. sha256. In JS, it is the fastest hash, even faster than Blake3.\n *\n * To break sha256 using birthday attack, attackers need to try 2^128 hashes.\n * BTC network is doing 2^70 hashes/sec (2^95 hashes/year) as per 2025.\n *\n * Check out [FIPS 180-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf).\n * @module\n * @deprecated\n */\n\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst SHA256 = _sha2_js__WEBPACK_IMPORTED_MODULE_0__.SHA256;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha256 = _sha2_js__WEBPACK_IMPORTED_MODULE_0__.sha256;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst SHA224 = _sha2_js__WEBPACK_IMPORTED_MODULE_0__.SHA224;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha224 = _sha2_js__WEBPACK_IMPORTED_MODULE_0__.sha224;\n//# sourceMappingURL=sha256.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3NoYTI1Ni5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ3dHO0FBQ3hHO0FBQ08sZUFBZSw0Q0FBTztBQUM3QjtBQUNPLGVBQWUsNENBQU87QUFDN0I7QUFDTyxlQUFlLDRDQUFPO0FBQzdCO0FBQ08sZUFBZSw0Q0FBTztBQUM3QiIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3NoYTI1Ni5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNIQTItMjU2IGEuay5hLiBzaGEyNTYuIEluIEpTLCBpdCBpcyB0aGUgZmFzdGVzdCBoYXNoLCBldmVuIGZhc3RlciB0aGFuIEJsYWtlMy5cbiAqXG4gKiBUbyBicmVhayBzaGEyNTYgdXNpbmcgYmlydGhkYXkgYXR0YWNrLCBhdHRhY2tlcnMgbmVlZCB0byB0cnkgMl4xMjggaGFzaGVzLlxuICogQlRDIG5ldHdvcmsgaXMgZG9pbmcgMl43MCBoYXNoZXMvc2VjICgyXjk1IGhhc2hlcy95ZWFyKSBhcyBwZXIgMjAyNS5cbiAqXG4gKiBDaGVjayBvdXQgW0ZJUFMgMTgwLTRdKGh0dHBzOi8vbnZscHVicy5uaXN0Lmdvdi9uaXN0cHVicy9GSVBTL05JU1QuRklQUy4xODAtNC5wZGYpLlxuICogQG1vZHVsZVxuICogQGRlcHJlY2F0ZWRcbiAqL1xuaW1wb3J0IHsgU0hBMjI0IGFzIFNIQTIyNG4sIHNoYTIyNCBhcyBzaGEyMjRuLCBTSEEyNTYgYXMgU0hBMjU2biwgc2hhMjU2IGFzIHNoYTI1Nm4sIH0gZnJvbSBcIi4vc2hhMi5qc1wiO1xuLyoqIEBkZXByZWNhdGVkIFVzZSBpbXBvcnQgZnJvbSBgbm9ibGUvaGFzaGVzL3NoYTJgIG1vZHVsZSAqL1xuZXhwb3J0IGNvbnN0IFNIQTI1NiA9IFNIQTI1Nm47XG4vKiogQGRlcHJlY2F0ZWQgVXNlIGltcG9ydCBmcm9tIGBub2JsZS9oYXNoZXMvc2hhMmAgbW9kdWxlICovXG5leHBvcnQgY29uc3Qgc2hhMjU2ID0gc2hhMjU2bjtcbi8qKiBAZGVwcmVjYXRlZCBVc2UgaW1wb3J0IGZyb20gYG5vYmxlL2hhc2hlcy9zaGEyYCBtb2R1bGUgKi9cbmV4cG9ydCBjb25zdCBTSEEyMjQgPSBTSEEyMjRuO1xuLyoqIEBkZXByZWNhdGVkIFVzZSBpbXBvcnQgZnJvbSBgbm9ibGUvaGFzaGVzL3NoYTJgIG1vZHVsZSAqL1xuZXhwb3J0IGNvbnN0IHNoYTIyNCA9IHNoYTIyNG47XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zaGEyNTYuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha256.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha3.js": /*!**************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha3.js ***! \**************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Keccak: () => (/* binding */ Keccak),\n/* harmony export */ keccakP: () => (/* binding */ keccakP),\n/* harmony export */ keccak_224: () => (/* binding */ keccak_224),\n/* harmony export */ keccak_256: () => (/* binding */ keccak_256),\n/* harmony export */ keccak_384: () => (/* binding */ keccak_384),\n/* harmony export */ keccak_512: () => (/* binding */ keccak_512),\n/* harmony export */ sha3_224: () => (/* binding */ sha3_224),\n/* harmony export */ sha3_256: () => (/* binding */ sha3_256),\n/* harmony export */ sha3_384: () => (/* binding */ sha3_384),\n/* harmony export */ sha3_512: () => (/* binding */ sha3_512),\n/* harmony export */ shake128: () => (/* binding */ shake128),\n/* harmony export */ shake256: () => (/* binding */ shake256)\n/* harmony export */ });\n/* harmony import */ var _u64_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_u64.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/_u64.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/utils.js\");\n/**\n * SHA3 (keccak) hash function, based on a new \"Sponge function\" design.\n * Different from older hashes, the internal state is bigger than output size.\n *\n * Check out [FIPS-202](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf),\n * [Website](https://keccak.team/keccak.html),\n * [the differences between SHA-3 and Keccak](https://crypto.stackexchange.com/questions/15727/what-are-the-key-differences-between-the-draft-sha-3-standard-and-the-keccak-sub).\n *\n * Check out `sha3-addons` module for cSHAKE, k12, and others.\n * @module\n */\n\n// prettier-ignore\n\n// No __PURE__ annotations in sha3 header:\n// EVERYTHING is in fact used on every export.\n// Various per round constants calculations\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nconst _7n = BigInt(7);\nconst _256n = BigInt(256);\nconst _0x71n = BigInt(0x71);\nconst SHA3_PI = [];\nconst SHA3_ROTL = [];\nconst _SHA3_IOTA = [];\nfor (let round = 0, R = _1n, x = 1, y = 0; round < 24; round++) {\n // Pi\n [x, y] = [y, (2 * x + 3 * y) % 5];\n SHA3_PI.push(2 * (5 * y + x));\n // Rotational\n SHA3_ROTL.push((((round + 1) * (round + 2)) / 2) % 64);\n // Iota\n let t = _0n;\n for (let j = 0; j < 7; j++) {\n R = ((R << _1n) ^ ((R >> _7n) * _0x71n)) % _256n;\n if (R & _2n)\n t ^= _1n << ((_1n << /* @__PURE__ */ BigInt(j)) - _1n);\n }\n _SHA3_IOTA.push(t);\n}\nconst IOTAS = (0,_u64_js__WEBPACK_IMPORTED_MODULE_0__.split)(_SHA3_IOTA, true);\nconst SHA3_IOTA_H = IOTAS[0];\nconst SHA3_IOTA_L = IOTAS[1];\n// Left rotation (without 0, 32, 64)\nconst rotlH = (h, l, s) => (s > 32 ? (0,_u64_js__WEBPACK_IMPORTED_MODULE_0__.rotlBH)(h, l, s) : (0,_u64_js__WEBPACK_IMPORTED_MODULE_0__.rotlSH)(h, l, s));\nconst rotlL = (h, l, s) => (s > 32 ? (0,_u64_js__WEBPACK_IMPORTED_MODULE_0__.rotlBL)(h, l, s) : (0,_u64_js__WEBPACK_IMPORTED_MODULE_0__.rotlSL)(h, l, s));\n/** `keccakf1600` internal function, additionally allows to adjust round count. */\nfunction keccakP(s, rounds = 24) {\n const B = new Uint32Array(5 * 2);\n // NOTE: all indices are x2 since we store state as u32 instead of u64 (bigints to slow in js)\n for (let round = 24 - rounds; round < 24; round++) {\n // Theta θ\n for (let x = 0; x < 10; x++)\n B[x] = s[x] ^ s[x + 10] ^ s[x + 20] ^ s[x + 30] ^ s[x + 40];\n for (let x = 0; x < 10; x += 2) {\n const idx1 = (x + 8) % 10;\n const idx0 = (x + 2) % 10;\n const B0 = B[idx0];\n const B1 = B[idx0 + 1];\n const Th = rotlH(B0, B1, 1) ^ B[idx1];\n const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];\n for (let y = 0; y < 50; y += 10) {\n s[x + y] ^= Th;\n s[x + y + 1] ^= Tl;\n }\n }\n // Rho (ρ) and Pi (π)\n let curH = s[2];\n let curL = s[3];\n for (let t = 0; t < 24; t++) {\n const shift = SHA3_ROTL[t];\n const Th = rotlH(curH, curL, shift);\n const Tl = rotlL(curH, curL, shift);\n const PI = SHA3_PI[t];\n curH = s[PI];\n curL = s[PI + 1];\n s[PI] = Th;\n s[PI + 1] = Tl;\n }\n // Chi (χ)\n for (let y = 0; y < 50; y += 10) {\n for (let x = 0; x < 10; x++)\n B[x] = s[y + x];\n for (let x = 0; x < 10; x++)\n s[y + x] ^= ~B[(x + 2) % 10] & B[(x + 4) % 10];\n }\n // Iota (ι)\n s[0] ^= SHA3_IOTA_H[round];\n s[1] ^= SHA3_IOTA_L[round];\n }\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(B);\n}\n/** Keccak sponge function. */\nclass Keccak extends _utils_js__WEBPACK_IMPORTED_MODULE_1__.Hash {\n // NOTE: we accept arguments in bytes instead of bits here.\n constructor(blockLen, suffix, outputLen, enableXOF = false, rounds = 24) {\n super();\n this.pos = 0;\n this.posOut = 0;\n this.finished = false;\n this.destroyed = false;\n this.enableXOF = false;\n this.blockLen = blockLen;\n this.suffix = suffix;\n this.outputLen = outputLen;\n this.enableXOF = enableXOF;\n this.rounds = rounds;\n // Can be passed from user as dkLen\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.anumber)(outputLen);\n // 1600 = 5x5 matrix of 64bit. 1600 bits === 200 bytes\n // 0 < blockLen < 200\n if (!(0 < blockLen && blockLen < 200))\n throw new Error('only keccak-f1600 function is supported');\n this.state = new Uint8Array(200);\n this.state32 = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.u32)(this.state);\n }\n clone() {\n return this._cloneInto();\n }\n keccak() {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.swap32IfBE)(this.state32);\n keccakP(this.state32, this.rounds);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.swap32IfBE)(this.state32);\n this.posOut = 0;\n this.pos = 0;\n }\n update(data) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.aexists)(this);\n data = (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.toBytes)(data);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.abytes)(data);\n const { blockLen, state } = this;\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n for (let i = 0; i < take; i++)\n state[this.pos++] ^= data[pos++];\n if (this.pos === blockLen)\n this.keccak();\n }\n return this;\n }\n finish() {\n if (this.finished)\n return;\n this.finished = true;\n const { state, suffix, pos, blockLen } = this;\n // Do the padding\n state[pos] ^= suffix;\n if ((suffix & 0x80) !== 0 && pos === blockLen - 1)\n this.keccak();\n state[blockLen - 1] ^= 0x80;\n this.keccak();\n }\n writeInto(out) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.aexists)(this, false);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.abytes)(out);\n this.finish();\n const bufferOut = this.state;\n const { blockLen } = this;\n for (let pos = 0, len = out.length; pos < len;) {\n if (this.posOut >= blockLen)\n this.keccak();\n const take = Math.min(blockLen - this.posOut, len - pos);\n out.set(bufferOut.subarray(this.posOut, this.posOut + take), pos);\n this.posOut += take;\n pos += take;\n }\n return out;\n }\n xofInto(out) {\n // Sha3/Keccak usage with XOF is probably mistake, only SHAKE instances can do XOF\n if (!this.enableXOF)\n throw new Error('XOF is not possible for this instance');\n return this.writeInto(out);\n }\n xof(bytes) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.anumber)(bytes);\n return this.xofInto(new Uint8Array(bytes));\n }\n digestInto(out) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.aoutput)(out, this);\n if (this.finished)\n throw new Error('digest() was already called');\n this.writeInto(out);\n this.destroy();\n return out;\n }\n digest() {\n return this.digestInto(new Uint8Array(this.outputLen));\n }\n destroy() {\n this.destroyed = true;\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.clean)(this.state);\n }\n _cloneInto(to) {\n const { blockLen, suffix, outputLen, rounds, enableXOF } = this;\n to || (to = new Keccak(blockLen, suffix, outputLen, enableXOF, rounds));\n to.state32.set(this.state32);\n to.pos = this.pos;\n to.posOut = this.posOut;\n to.finished = this.finished;\n to.rounds = rounds;\n // Suffix can change in cSHAKE\n to.suffix = suffix;\n to.outputLen = outputLen;\n to.enableXOF = enableXOF;\n to.destroyed = this.destroyed;\n return to;\n }\n}\nconst gen = (suffix, blockLen, outputLen) => (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createHasher)(() => new Keccak(blockLen, suffix, outputLen));\n/** SHA3-224 hash function. */\nconst sha3_224 = /* @__PURE__ */ (() => gen(0x06, 144, 224 / 8))();\n/** SHA3-256 hash function. Different from keccak-256. */\nconst sha3_256 = /* @__PURE__ */ (() => gen(0x06, 136, 256 / 8))();\n/** SHA3-384 hash function. */\nconst sha3_384 = /* @__PURE__ */ (() => gen(0x06, 104, 384 / 8))();\n/** SHA3-512 hash function. */\nconst sha3_512 = /* @__PURE__ */ (() => gen(0x06, 72, 512 / 8))();\n/** keccak-224 hash function. */\nconst keccak_224 = /* @__PURE__ */ (() => gen(0x01, 144, 224 / 8))();\n/** keccak-256 hash function. Different from SHA3-256. */\nconst keccak_256 = /* @__PURE__ */ (() => gen(0x01, 136, 256 / 8))();\n/** keccak-384 hash function. */\nconst keccak_384 = /* @__PURE__ */ (() => gen(0x01, 104, 384 / 8))();\n/** keccak-512 hash function. */\nconst keccak_512 = /* @__PURE__ */ (() => gen(0x01, 72, 512 / 8))();\nconst genShake = (suffix, blockLen, outputLen) => (0,_utils_js__WEBPACK_IMPORTED_MODULE_1__.createXOFer)((opts = {}) => new Keccak(blockLen, suffix, opts.dkLen === undefined ? outputLen : opts.dkLen, true));\n/** SHAKE128 XOF with 128-bit security. */\nconst shake128 = /* @__PURE__ */ (() => genShake(0x1f, 168, 128 / 8))();\n/** SHAKE256 XOF with 256-bit security. */\nconst shake256 = /* @__PURE__ */ (() => genShake(0x1f, 136, 256 / 8))();\n//# sourceMappingURL=sha3.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3NoYTMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ2tFO0FBQ2xFO0FBQ2lJO0FBQ2pJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQyxZQUFZO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLE9BQU87QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyw4Q0FBSztBQUNuQjtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsK0NBQU0sWUFBWSwrQ0FBTTtBQUM3RCxxQ0FBcUMsK0NBQU0sWUFBWSwrQ0FBTTtBQUM3RDtBQUNPO0FBQ1A7QUFDQTtBQUNBLGtDQUFrQyxZQUFZO0FBQzlDO0FBQ0Esd0JBQXdCLFFBQVE7QUFDaEM7QUFDQSx3QkFBd0IsUUFBUTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsUUFBUTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixRQUFRO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFFBQVE7QUFDaEMsNEJBQTRCLFFBQVE7QUFDcEM7QUFDQSw0QkFBNEIsUUFBUTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJLGdEQUFLO0FBQ1Q7QUFDQTtBQUNPLHFCQUFxQiwyQ0FBSTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxrREFBTztBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsOENBQUc7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEscURBQVU7QUFDbEI7QUFDQSxRQUFRLHFEQUFVO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxrREFBTztBQUNmLGVBQWUsa0RBQU87QUFDdEIsUUFBUSxpREFBTTtBQUNkLGdCQUFnQixrQkFBa0I7QUFDbEM7QUFDQSwwQkFBMEIsVUFBVTtBQUNwQztBQUNBLDRCQUE0QixVQUFVO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLCtCQUErQjtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxrREFBTztBQUNmLFFBQVEsaURBQU07QUFDZDtBQUNBO0FBQ0EsZ0JBQWdCLFdBQVc7QUFDM0IsNENBQTRDLFVBQVU7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLGtEQUFPO0FBQ2Y7QUFDQTtBQUNBO0FBQ0EsUUFBUSxrREFBTztBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLGdEQUFLO0FBQ2I7QUFDQTtBQUNBLGdCQUFnQixpREFBaUQ7QUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZDQUE2Qyx1REFBWTtBQUN6RDtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ087QUFDUDtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ087QUFDUDtBQUNPO0FBQ1A7QUFDTztBQUNQLGtEQUFrRCxzREFBVyxXQUFXO0FBQ3hFO0FBQ087QUFDUDtBQUNPO0FBQ1AiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL2VzbS9zaGEzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU0hBMyAoa2VjY2FrKSBoYXNoIGZ1bmN0aW9uLCBiYXNlZCBvbiBhIG5ldyBcIlNwb25nZSBmdW5jdGlvblwiIGRlc2lnbi5cbiAqIERpZmZlcmVudCBmcm9tIG9sZGVyIGhhc2hlcywgdGhlIGludGVybmFsIHN0YXRlIGlzIGJpZ2dlciB0aGFuIG91dHB1dCBzaXplLlxuICpcbiAqIENoZWNrIG91dCBbRklQUy0yMDJdKGh0dHBzOi8vbnZscHVicy5uaXN0Lmdvdi9uaXN0cHVicy9GSVBTL05JU1QuRklQUy4yMDIucGRmKSxcbiAqIFtXZWJzaXRlXShodHRwczovL2tlY2Nhay50ZWFtL2tlY2Nhay5odG1sKSxcbiAqIFt0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiBTSEEtMyBhbmQgS2VjY2FrXShodHRwczovL2NyeXB0by5zdGFja2V4Y2hhbmdlLmNvbS9xdWVzdGlvbnMvMTU3Mjcvd2hhdC1hcmUtdGhlLWtleS1kaWZmZXJlbmNlcy1iZXR3ZWVuLXRoZS1kcmFmdC1zaGEtMy1zdGFuZGFyZC1hbmQtdGhlLWtlY2Nhay1zdWIpLlxuICpcbiAqIENoZWNrIG91dCBgc2hhMy1hZGRvbnNgIG1vZHVsZSBmb3IgY1NIQUtFLCBrMTIsIGFuZCBvdGhlcnMuXG4gKiBAbW9kdWxlXG4gKi9cbmltcG9ydCB7IHJvdGxCSCwgcm90bEJMLCByb3RsU0gsIHJvdGxTTCwgc3BsaXQgfSBmcm9tIFwiLi9fdTY0LmpzXCI7XG4vLyBwcmV0dGllci1pZ25vcmVcbmltcG9ydCB7IGFieXRlcywgYWV4aXN0cywgYW51bWJlciwgYW91dHB1dCwgY2xlYW4sIGNyZWF0ZUhhc2hlciwgY3JlYXRlWE9GZXIsIEhhc2gsIHN3YXAzMklmQkUsIHRvQnl0ZXMsIHUzMiB9IGZyb20gXCIuL3V0aWxzLmpzXCI7XG4vLyBObyBfX1BVUkVfXyBhbm5vdGF0aW9ucyBpbiBzaGEzIGhlYWRlcjpcbi8vIEVWRVJZVEhJTkcgaXMgaW4gZmFjdCB1c2VkIG9uIGV2ZXJ5IGV4cG9ydC5cbi8vIFZhcmlvdXMgcGVyIHJvdW5kIGNvbnN0YW50cyBjYWxjdWxhdGlvbnNcbmNvbnN0IF8wbiA9IEJpZ0ludCgwKTtcbmNvbnN0IF8xbiA9IEJpZ0ludCgxKTtcbmNvbnN0IF8ybiA9IEJpZ0ludCgyKTtcbmNvbnN0IF83biA9IEJpZ0ludCg3KTtcbmNvbnN0IF8yNTZuID0gQmlnSW50KDI1Nik7XG5jb25zdCBfMHg3MW4gPSBCaWdJbnQoMHg3MSk7XG5jb25zdCBTSEEzX1BJID0gW107XG5jb25zdCBTSEEzX1JPVEwgPSBbXTtcbmNvbnN0IF9TSEEzX0lPVEEgPSBbXTtcbmZvciAobGV0IHJvdW5kID0gMCwgUiA9IF8xbiwgeCA9IDEsIHkgPSAwOyByb3VuZCA8IDI0OyByb3VuZCsrKSB7XG4gICAgLy8gUGlcbiAgICBbeCwgeV0gPSBbeSwgKDIgKiB4ICsgMyAqIHkpICUgNV07XG4gICAgU0hBM19QSS5wdXNoKDIgKiAoNSAqIHkgKyB4KSk7XG4gICAgLy8gUm90YXRpb25hbFxuICAgIFNIQTNfUk9UTC5wdXNoKCgoKHJvdW5kICsgMSkgKiAocm91bmQgKyAyKSkgLyAyKSAlIDY0KTtcbiAgICAvLyBJb3RhXG4gICAgbGV0IHQgPSBfMG47XG4gICAgZm9yIChsZXQgaiA9IDA7IGogPCA3OyBqKyspIHtcbiAgICAgICAgUiA9ICgoUiA8PCBfMW4pIF4gKChSID4+IF83bikgKiBfMHg3MW4pKSAlIF8yNTZuO1xuICAgICAgICBpZiAoUiAmIF8ybilcbiAgICAgICAgICAgIHQgXj0gXzFuIDw8ICgoXzFuIDw8IC8qIEBfX1BVUkVfXyAqLyBCaWdJbnQoaikpIC0gXzFuKTtcbiAgICB9XG4gICAgX1NIQTNfSU9UQS5wdXNoKHQpO1xufVxuY29uc3QgSU9UQVMgPSBzcGxpdChfU0hBM19JT1RBLCB0cnVlKTtcbmNvbnN0IFNIQTNfSU9UQV9IID0gSU9UQVNbMF07XG5jb25zdCBTSEEzX0lPVEFfTCA9IElPVEFTWzFdO1xuLy8gTGVmdCByb3RhdGlvbiAod2l0aG91dCAwLCAzMiwgNjQpXG5jb25zdCByb3RsSCA9IChoLCBsLCBzKSA9PiAocyA+IDMyID8gcm90bEJIKGgsIGwsIHMpIDogcm90bFNIKGgsIGwsIHMpKTtcbmNvbnN0IHJvdGxMID0gKGgsIGwsIHMpID0+IChzID4gMzIgPyByb3RsQkwoaCwgbCwgcykgOiByb3RsU0woaCwgbCwgcykpO1xuLyoqIGBrZWNjYWtmMTYwMGAgaW50ZXJuYWwgZnVuY3Rpb24sIGFkZGl0aW9uYWxseSBhbGxvd3MgdG8gYWRqdXN0IHJvdW5kIGNvdW50LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGtlY2Nha1Aocywgcm91bmRzID0gMjQpIHtcbiAgICBjb25zdCBCID0gbmV3IFVpbnQzMkFycmF5KDUgKiAyKTtcbiAgICAvLyBOT1RFOiBhbGwgaW5kaWNlcyBhcmUgeDIgc2luY2Ugd2Ugc3RvcmUgc3RhdGUgYXMgdTMyIGluc3RlYWQgb2YgdTY0IChiaWdpbnRzIHRvIHNsb3cgaW4ganMpXG4gICAgZm9yIChsZXQgcm91bmQgPSAyNCAtIHJvdW5kczsgcm91bmQgPCAyNDsgcm91bmQrKykge1xuICAgICAgICAvLyBUaGV0YSDOuFxuICAgICAgICBmb3IgKGxldCB4ID0gMDsgeCA8IDEwOyB4KyspXG4gICAgICAgICAgICBCW3hdID0gc1t4XSBeIHNbeCArIDEwXSBeIHNbeCArIDIwXSBeIHNbeCArIDMwXSBeIHNbeCArIDQwXTtcbiAgICAgICAgZm9yIChsZXQgeCA9IDA7IHggPCAxMDsgeCArPSAyKSB7XG4gICAgICAgICAgICBjb25zdCBpZHgxID0gKHggKyA4KSAlIDEwO1xuICAgICAgICAgICAgY29uc3QgaWR4MCA9ICh4ICsgMikgJSAxMDtcbiAgICAgICAgICAgIGNvbnN0IEIwID0gQltpZHgwXTtcbiAgICAgICAgICAgIGNvbnN0IEIxID0gQltpZHgwICsgMV07XG4gICAgICAgICAgICBjb25zdCBUaCA9IHJvdGxIKEIwLCBCMSwgMSkgXiBCW2lkeDFdO1xuICAgICAgICAgICAgY29uc3QgVGwgPSByb3RsTChCMCwgQjEsIDEpIF4gQltpZHgxICsgMV07XG4gICAgICAgICAgICBmb3IgKGxldCB5ID0gMDsgeSA8IDUwOyB5ICs9IDEwKSB7XG4gICAgICAgICAgICAgICAgc1t4ICsgeV0gXj0gVGg7XG4gICAgICAgICAgICAgICAgc1t4ICsgeSArIDFdIF49IFRsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIFJobyAoz4EpIGFuZCBQaSAoz4ApXG4gICAgICAgIGxldCBjdXJIID0gc1syXTtcbiAgICAgICAgbGV0IGN1ckwgPSBzWzNdO1xuICAgICAgICBmb3IgKGxldCB0ID0gMDsgdCA8IDI0OyB0KyspIHtcbiAgICAgICAgICAgIGNvbnN0IHNoaWZ0ID0gU0hBM19ST1RMW3RdO1xuICAgICAgICAgICAgY29uc3QgVGggPSByb3RsSChjdXJILCBjdXJMLCBzaGlmdCk7XG4gICAgICAgICAgICBjb25zdCBUbCA9IHJvdGxMKGN1ckgsIGN1ckwsIHNoaWZ0KTtcbiAgICAgICAgICAgIGNvbnN0IFBJID0gU0hBM19QSVt0XTtcbiAgICAgICAgICAgIGN1ckggPSBzW1BJXTtcbiAgICAgICAgICAgIGN1ckwgPSBzW1BJICsgMV07XG4gICAgICAgICAgICBzW1BJXSA9IFRoO1xuICAgICAgICAgICAgc1tQSSArIDFdID0gVGw7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQ2hpICjPhylcbiAgICAgICAgZm9yIChsZXQgeSA9IDA7IHkgPCA1MDsgeSArPSAxMCkge1xuICAgICAgICAgICAgZm9yIChsZXQgeCA9IDA7IHggPCAxMDsgeCsrKVxuICAgICAgICAgICAgICAgIEJbeF0gPSBzW3kgKyB4XTtcbiAgICAgICAgICAgIGZvciAobGV0IHggPSAwOyB4IDwgMTA7IHgrKylcbiAgICAgICAgICAgICAgICBzW3kgKyB4XSBePSB+QlsoeCArIDIpICUgMTBdICYgQlsoeCArIDQpICUgMTBdO1xuICAgICAgICB9XG4gICAgICAgIC8vIElvdGEgKM65KVxuICAgICAgICBzWzBdIF49IFNIQTNfSU9UQV9IW3JvdW5kXTtcbiAgICAgICAgc1sxXSBePSBTSEEzX0lPVEFfTFtyb3VuZF07XG4gICAgfVxuICAgIGNsZWFuKEIpO1xufVxuLyoqIEtlY2NhayBzcG9uZ2UgZnVuY3Rpb24uICovXG5leHBvcnQgY2xhc3MgS2VjY2FrIGV4dGVuZHMgSGFzaCB7XG4gICAgLy8gTk9URTogd2UgYWNjZXB0IGFyZ3VtZW50cyBpbiBieXRlcyBpbnN0ZWFkIG9mIGJpdHMgaGVyZS5cbiAgICBjb25zdHJ1Y3RvcihibG9ja0xlbiwgc3VmZml4LCBvdXRwdXRMZW4sIGVuYWJsZVhPRiA9IGZhbHNlLCByb3VuZHMgPSAyNCkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgICAgIHRoaXMucG9zT3V0ID0gMDtcbiAgICAgICAgdGhpcy5maW5pc2hlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmVuYWJsZVhPRiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmJsb2NrTGVuID0gYmxvY2tMZW47XG4gICAgICAgIHRoaXMuc3VmZml4ID0gc3VmZml4O1xuICAgICAgICB0aGlzLm91dHB1dExlbiA9IG91dHB1dExlbjtcbiAgICAgICAgdGhpcy5lbmFibGVYT0YgPSBlbmFibGVYT0Y7XG4gICAgICAgIHRoaXMucm91bmRzID0gcm91bmRzO1xuICAgICAgICAvLyBDYW4gYmUgcGFzc2VkIGZyb20gdXNlciBhcyBka0xlblxuICAgICAgICBhbnVtYmVyKG91dHB1dExlbik7XG4gICAgICAgIC8vIDE2MDAgPSA1eDUgbWF0cml4IG9mIDY0Yml0LiAgMTYwMCBiaXRzID09PSAyMDAgYnl0ZXNcbiAgICAgICAgLy8gMCA8IGJsb2NrTGVuIDwgMjAwXG4gICAgICAgIGlmICghKDAgPCBibG9ja0xlbiAmJiBibG9ja0xlbiA8IDIwMCkpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ29ubHkga2VjY2FrLWYxNjAwIGZ1bmN0aW9uIGlzIHN1cHBvcnRlZCcpO1xuICAgICAgICB0aGlzLnN0YXRlID0gbmV3IFVpbnQ4QXJyYXkoMjAwKTtcbiAgICAgICAgdGhpcy5zdGF0ZTMyID0gdTMyKHRoaXMuc3RhdGUpO1xuICAgIH1cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Nsb25lSW50bygpO1xuICAgIH1cbiAgICBrZWNjYWsoKSB7XG4gICAgICAgIHN3YXAzMklmQkUodGhpcy5zdGF0ZTMyKTtcbiAgICAgICAga2VjY2FrUCh0aGlzLnN0YXRlMzIsIHRoaXMucm91bmRzKTtcbiAgICAgICAgc3dhcDMySWZCRSh0aGlzLnN0YXRlMzIpO1xuICAgICAgICB0aGlzLnBvc091dCA9IDA7XG4gICAgICAgIHRoaXMucG9zID0gMDtcbiAgICB9XG4gICAgdXBkYXRlKGRhdGEpIHtcbiAgICAgICAgYWV4aXN0cyh0aGlzKTtcbiAgICAgICAgZGF0YSA9IHRvQnl0ZXMoZGF0YSk7XG4gICAgICAgIGFieXRlcyhkYXRhKTtcbiAgICAgICAgY29uc3QgeyBibG9ja0xlbiwgc3RhdGUgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoO1xuICAgICAgICBmb3IgKGxldCBwb3MgPSAwOyBwb3MgPCBsZW47KSB7XG4gICAgICAgICAgICBjb25zdCB0YWtlID0gTWF0aC5taW4oYmxvY2tMZW4gLSB0aGlzLnBvcywgbGVuIC0gcG9zKTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGFrZTsgaSsrKVxuICAgICAgICAgICAgICAgIHN0YXRlW3RoaXMucG9zKytdIF49IGRhdGFbcG9zKytdO1xuICAgICAgICAgICAgaWYgKHRoaXMucG9zID09PSBibG9ja0xlbilcbiAgICAgICAgICAgICAgICB0aGlzLmtlY2NhaygpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiAgICBmaW5pc2goKSB7XG4gICAgICAgIGlmICh0aGlzLmZpbmlzaGVkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB0aGlzLmZpbmlzaGVkID0gdHJ1ZTtcbiAgICAgICAgY29uc3QgeyBzdGF0ZSwgc3VmZml4LCBwb3MsIGJsb2NrTGVuIH0gPSB0aGlzO1xuICAgICAgICAvLyBEbyB0aGUgcGFkZGluZ1xuICAgICAgICBzdGF0ZVtwb3NdIF49IHN1ZmZpeDtcbiAgICAgICAgaWYgKChzdWZmaXggJiAweDgwKSAhPT0gMCAmJiBwb3MgPT09IGJsb2NrTGVuIC0gMSlcbiAgICAgICAgICAgIHRoaXMua2VjY2FrKCk7XG4gICAgICAgIHN0YXRlW2Jsb2NrTGVuIC0gMV0gXj0gMHg4MDtcbiAgICAgICAgdGhpcy5rZWNjYWsoKTtcbiAgICB9XG4gICAgd3JpdGVJbnRvKG91dCkge1xuICAgICAgICBhZXhpc3RzKHRoaXMsIGZhbHNlKTtcbiAgICAgICAgYWJ5dGVzKG91dCk7XG4gICAgICAgIHRoaXMuZmluaXNoKCk7XG4gICAgICAgIGNvbnN0IGJ1ZmZlck91dCA9IHRoaXMuc3RhdGU7XG4gICAgICAgIGNvbnN0IHsgYmxvY2tMZW4gfSA9IHRoaXM7XG4gICAgICAgIGZvciAobGV0IHBvcyA9IDAsIGxlbiA9IG91dC5sZW5ndGg7IHBvcyA8IGxlbjspIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnBvc091dCA+PSBibG9ja0xlbilcbiAgICAgICAgICAgICAgICB0aGlzLmtlY2NhaygpO1xuICAgICAgICAgICAgY29uc3QgdGFrZSA9IE1hdGgubWluKGJsb2NrTGVuIC0gdGhpcy5wb3NPdXQsIGxlbiAtIHBvcyk7XG4gICAgICAgICAgICBvdXQuc2V0KGJ1ZmZlck91dC5zdWJhcnJheSh0aGlzLnBvc091dCwgdGhpcy5wb3NPdXQgKyB0YWtlKSwgcG9zKTtcbiAgICAgICAgICAgIHRoaXMucG9zT3V0ICs9IHRha2U7XG4gICAgICAgICAgICBwb3MgKz0gdGFrZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb3V0O1xuICAgIH1cbiAgICB4b2ZJbnRvKG91dCkge1xuICAgICAgICAvLyBTaGEzL0tlY2NhayB1c2FnZSB3aXRoIFhPRiBpcyBwcm9iYWJseSBtaXN0YWtlLCBvbmx5IFNIQUtFIGluc3RhbmNlcyBjYW4gZG8gWE9GXG4gICAgICAgIGlmICghdGhpcy5lbmFibGVYT0YpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1hPRiBpcyBub3QgcG9zc2libGUgZm9yIHRoaXMgaW5zdGFuY2UnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMud3JpdGVJbnRvKG91dCk7XG4gICAgfVxuICAgIHhvZihieXRlcykge1xuICAgICAgICBhbnVtYmVyKGJ5dGVzKTtcbiAgICAgICAgcmV0dXJuIHRoaXMueG9mSW50byhuZXcgVWludDhBcnJheShieXRlcykpO1xuICAgIH1cbiAgICBkaWdlc3RJbnRvKG91dCkge1xuICAgICAgICBhb3V0cHV0KG91dCwgdGhpcyk7XG4gICAgICAgIGlmICh0aGlzLmZpbmlzaGVkKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdkaWdlc3QoKSB3YXMgYWxyZWFkeSBjYWxsZWQnKTtcbiAgICAgICAgdGhpcy53cml0ZUludG8ob3V0KTtcbiAgICAgICAgdGhpcy5kZXN0cm95KCk7XG4gICAgICAgIHJldHVybiBvdXQ7XG4gICAgfVxuICAgIGRpZ2VzdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlnZXN0SW50byhuZXcgVWludDhBcnJheSh0aGlzLm91dHB1dExlbikpO1xuICAgIH1cbiAgICBkZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgIGNsZWFuKHRoaXMuc3RhdGUpO1xuICAgIH1cbiAgICBfY2xvbmVJbnRvKHRvKSB7XG4gICAgICAgIGNvbnN0IHsgYmxvY2tMZW4sIHN1ZmZpeCwgb3V0cHV0TGVuLCByb3VuZHMsIGVuYWJsZVhPRiB9ID0gdGhpcztcbiAgICAgICAgdG8gfHwgKHRvID0gbmV3IEtlY2NhayhibG9ja0xlbiwgc3VmZml4LCBvdXRwdXRMZW4sIGVuYWJsZVhPRiwgcm91bmRzKSk7XG4gICAgICAgIHRvLnN0YXRlMzIuc2V0KHRoaXMuc3RhdGUzMik7XG4gICAgICAgIHRvLnBvcyA9IHRoaXMucG9zO1xuICAgICAgICB0by5wb3NPdXQgPSB0aGlzLnBvc091dDtcbiAgICAgICAgdG8uZmluaXNoZWQgPSB0aGlzLmZpbmlzaGVkO1xuICAgICAgICB0by5yb3VuZHMgPSByb3VuZHM7XG4gICAgICAgIC8vIFN1ZmZpeCBjYW4gY2hhbmdlIGluIGNTSEFLRVxuICAgICAgICB0by5zdWZmaXggPSBzdWZmaXg7XG4gICAgICAgIHRvLm91dHB1dExlbiA9IG91dHB1dExlbjtcbiAgICAgICAgdG8uZW5hYmxlWE9GID0gZW5hYmxlWE9GO1xuICAgICAgICB0by5kZXN0cm95ZWQgPSB0aGlzLmRlc3Ryb3llZDtcbiAgICAgICAgcmV0dXJuIHRvO1xuICAgIH1cbn1cbmNvbnN0IGdlbiA9IChzdWZmaXgsIGJsb2NrTGVuLCBvdXRwdXRMZW4pID0+IGNyZWF0ZUhhc2hlcigoKSA9PiBuZXcgS2VjY2FrKGJsb2NrTGVuLCBzdWZmaXgsIG91dHB1dExlbikpO1xuLyoqIFNIQTMtMjI0IGhhc2ggZnVuY3Rpb24uICovXG5leHBvcnQgY29uc3Qgc2hhM18yMjQgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGdlbigweDA2LCAxNDQsIDIyNCAvIDgpKSgpO1xuLyoqIFNIQTMtMjU2IGhhc2ggZnVuY3Rpb24uIERpZmZlcmVudCBmcm9tIGtlY2Nhay0yNTYuICovXG5leHBvcnQgY29uc3Qgc2hhM18yNTYgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGdlbigweDA2LCAxMzYsIDI1NiAvIDgpKSgpO1xuLyoqIFNIQTMtMzg0IGhhc2ggZnVuY3Rpb24uICovXG5leHBvcnQgY29uc3Qgc2hhM18zODQgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGdlbigweDA2LCAxMDQsIDM4NCAvIDgpKSgpO1xuLyoqIFNIQTMtNTEyIGhhc2ggZnVuY3Rpb24uICovXG5leHBvcnQgY29uc3Qgc2hhM181MTIgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGdlbigweDA2LCA3MiwgNTEyIC8gOCkpKCk7XG4vKioga2VjY2FrLTIyNCBoYXNoIGZ1bmN0aW9uLiAqL1xuZXhwb3J0IGNvbnN0IGtlY2Nha18yMjQgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGdlbigweDAxLCAxNDQsIDIyNCAvIDgpKSgpO1xuLyoqIGtlY2Nhay0yNTYgaGFzaCBmdW5jdGlvbi4gRGlmZmVyZW50IGZyb20gU0hBMy0yNTYuICovXG5leHBvcnQgY29uc3Qga2VjY2FrXzI1NiA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gZ2VuKDB4MDEsIDEzNiwgMjU2IC8gOCkpKCk7XG4vKioga2VjY2FrLTM4NCBoYXNoIGZ1bmN0aW9uLiAqL1xuZXhwb3J0IGNvbnN0IGtlY2Nha18zODQgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGdlbigweDAxLCAxMDQsIDM4NCAvIDgpKSgpO1xuLyoqIGtlY2Nhay01MTIgaGFzaCBmdW5jdGlvbi4gKi9cbmV4cG9ydCBjb25zdCBrZWNjYWtfNTEyID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBnZW4oMHgwMSwgNzIsIDUxMiAvIDgpKSgpO1xuY29uc3QgZ2VuU2hha2UgPSAoc3VmZml4LCBibG9ja0xlbiwgb3V0cHV0TGVuKSA9PiBjcmVhdGVYT0Zlcigob3B0cyA9IHt9KSA9PiBuZXcgS2VjY2FrKGJsb2NrTGVuLCBzdWZmaXgsIG9wdHMuZGtMZW4gPT09IHVuZGVmaW5lZCA/IG91dHB1dExlbiA6IG9wdHMuZGtMZW4sIHRydWUpKTtcbi8qKiBTSEFLRTEyOCBYT0Ygd2l0aCAxMjgtYml0IHNlY3VyaXR5LiAqL1xuZXhwb3J0IGNvbnN0IHNoYWtlMTI4ID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBnZW5TaGFrZSgweDFmLCAxNjgsIDEyOCAvIDgpKSgpO1xuLyoqIFNIQUtFMjU2IFhPRiB3aXRoIDI1Ni1iaXQgc2VjdXJpdHkuICovXG5leHBvcnQgY29uc3Qgc2hha2UyNTYgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGdlblNoYWtlKDB4MWYsIDEzNiwgMjU2IC8gOCkpKCk7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zaGEzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/sha3.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/utils.js": /*!***************************************************************************************************!*\ !*** ./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/utils.js ***! \***************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Hash: () => (/* binding */ Hash),\n/* harmony export */ abytes: () => (/* binding */ abytes),\n/* harmony export */ aexists: () => (/* binding */ aexists),\n/* harmony export */ ahash: () => (/* binding */ ahash),\n/* harmony export */ anumber: () => (/* binding */ anumber),\n/* harmony export */ aoutput: () => (/* binding */ aoutput),\n/* harmony export */ asyncLoop: () => (/* binding */ asyncLoop),\n/* harmony export */ byteSwap: () => (/* binding */ byteSwap),\n/* harmony export */ byteSwap32: () => (/* binding */ byteSwap32),\n/* harmony export */ byteSwapIfBE: () => (/* binding */ byteSwapIfBE),\n/* harmony export */ bytesToHex: () => (/* binding */ bytesToHex),\n/* harmony export */ bytesToUtf8: () => (/* binding */ bytesToUtf8),\n/* harmony export */ checkOpts: () => (/* binding */ checkOpts),\n/* harmony export */ clean: () => (/* binding */ clean),\n/* harmony export */ concatBytes: () => (/* binding */ concatBytes),\n/* harmony export */ createHasher: () => (/* binding */ createHasher),\n/* harmony export */ createOptHasher: () => (/* binding */ createOptHasher),\n/* harmony export */ createView: () => (/* binding */ createView),\n/* harmony export */ createXOFer: () => (/* binding */ createXOFer),\n/* harmony export */ hexToBytes: () => (/* binding */ hexToBytes),\n/* harmony export */ isBytes: () => (/* binding */ isBytes),\n/* harmony export */ isLE: () => (/* binding */ isLE),\n/* harmony export */ kdfInputToBytes: () => (/* binding */ kdfInputToBytes),\n/* harmony export */ nextTick: () => (/* binding */ nextTick),\n/* harmony export */ randomBytes: () => (/* binding */ randomBytes),\n/* harmony export */ rotl: () => (/* binding */ rotl),\n/* harmony export */ rotr: () => (/* binding */ rotr),\n/* harmony export */ swap32IfBE: () => (/* binding */ swap32IfBE),\n/* harmony export */ swap8IfBE: () => (/* binding */ swap8IfBE),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ u32: () => (/* binding */ u32),\n/* harmony export */ u8: () => (/* binding */ u8),\n/* harmony export */ utf8ToBytes: () => (/* binding */ utf8ToBytes),\n/* harmony export */ wrapConstructor: () => (/* binding */ wrapConstructor),\n/* harmony export */ wrapConstructorWithOpts: () => (/* binding */ wrapConstructorWithOpts),\n/* harmony export */ wrapXOFConstructorWithOpts: () => (/* binding */ wrapXOFConstructorWithOpts)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/hashes/crypto */ \"(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/crypto.js\");\n/**\n * Utilities for hex, bytes, CSPRNG.\n * @module\n */\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.\n// node.js versions earlier than v19 don't declare it in global scope.\n// For node.js, package.json#exports field mapping rewrites import\n// from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated (2025-04-30), we can just drop the import.\n\n/** Checks if something is Uint8Array. Be careful: nodejs Buffer will return true. */\nfunction isBytes(a) {\n return a instanceof Uint8Array || (ArrayBuffer.isView(a) && a.constructor.name === 'Uint8Array');\n}\n/** Asserts something is positive integer. */\nfunction anumber(n) {\n if (!Number.isSafeInteger(n) || n < 0)\n throw new Error('positive integer expected, got ' + n);\n}\n/** Asserts something is Uint8Array. */\nfunction abytes(b, ...lengths) {\n if (!isBytes(b))\n throw new Error('Uint8Array expected');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new Error('Uint8Array expected of length ' + lengths + ', got length=' + b.length);\n}\n/** Asserts something is hash */\nfunction ahash(h) {\n if (typeof h !== 'function' || typeof h.create !== 'function')\n throw new Error('Hash should be wrapped by utils.createHasher');\n anumber(h.outputLen);\n anumber(h.blockLen);\n}\n/** Asserts a hash instance has not been destroyed / finished */\nfunction aexists(instance, checkFinished = true) {\n if (instance.destroyed)\n throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished)\n throw new Error('Hash#digest() has already been called');\n}\n/** Asserts output is properly-sized byte array */\nfunction aoutput(out, instance) {\n abytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error('digestInto() expects output buffer of length at least ' + min);\n }\n}\n/** Cast u8 / u16 / u32 to u8. */\nfunction u8(arr) {\n return new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);\n}\n/** Cast u8 / u16 / u32 to u32. */\nfunction u32(arr) {\n return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\n}\n/** Zeroize a byte array. Warning: JS provides no guarantees. */\nfunction clean(...arrays) {\n for (let i = 0; i < arrays.length; i++) {\n arrays[i].fill(0);\n }\n}\n/** Create DataView of an array for easy byte-level manipulation. */\nfunction createView(arr) {\n return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\n}\n/** The rotate right (circular right shift) operation for uint32 */\nfunction rotr(word, shift) {\n return (word << (32 - shift)) | (word >>> shift);\n}\n/** The rotate left (circular left shift) operation for uint32 */\nfunction rotl(word, shift) {\n return (word << shift) | ((word >>> (32 - shift)) >>> 0);\n}\n/** Is current platform little-endian? Most are. Big-Endian platform: IBM */\nconst isLE = /* @__PURE__ */ (() => new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44)();\n/** The byte swap operation for uint32 */\nfunction byteSwap(word) {\n return (((word << 24) & 0xff000000) |\n ((word << 8) & 0xff0000) |\n ((word >>> 8) & 0xff00) |\n ((word >>> 24) & 0xff));\n}\n/** Conditionally byte swap if on a big-endian platform */\nconst swap8IfBE = isLE\n ? (n) => n\n : (n) => byteSwap(n);\n/** @deprecated */\nconst byteSwapIfBE = swap8IfBE;\n/** In place byte swap for Uint32Array */\nfunction byteSwap32(arr) {\n for (let i = 0; i < arr.length; i++) {\n arr[i] = byteSwap(arr[i]);\n }\n return arr;\n}\nconst swap32IfBE = isLE\n ? (u) => u\n : byteSwap32;\n// Built-in hex conversion https://caniuse.com/mdn-javascript_builtins_uint8array_fromhex\nconst hasHexBuiltin = /* @__PURE__ */ (() => \n// @ts-ignore\ntypeof Uint8Array.from([]).toHex === 'function' && typeof Uint8Array.fromHex === 'function')();\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * Convert byte array to hex string. Uses built-in function, when available.\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n abytes(bytes);\n // @ts-ignore\n if (hasHexBuiltin)\n return bytes.toHex();\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, A: 65, F: 70, a: 97, f: 102 };\nfunction asciiToBase16(ch) {\n if (ch >= asciis._0 && ch <= asciis._9)\n return ch - asciis._0; // '2' => 50-48\n if (ch >= asciis.A && ch <= asciis.F)\n return ch - (asciis.A - 10); // 'B' => 66-(65-10)\n if (ch >= asciis.a && ch <= asciis.f)\n return ch - (asciis.a - 10); // 'b' => 98-(97-10)\n return;\n}\n/**\n * Convert hex string to byte array. Uses built-in function, when available.\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // @ts-ignore\n if (hasHexBuiltin)\n return Uint8Array.fromHex(hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2; // multiply first octet, e.g. 'a3' => 10*16+3 => 160 + 3 => 163\n }\n return array;\n}\n/**\n * There is no setImmediate in browser and setTimeout is slow.\n * Call of async fn will return Promise, which will be fullfiled only on\n * next scheduler queue processing step and this is exactly what we need.\n */\nconst nextTick = async () => { };\n/** Returns control to thread each 'tick' ms to avoid blocking. */\nasync function asyncLoop(iters, tick, cb) {\n let ts = Date.now();\n for (let i = 0; i < iters; i++) {\n cb(i);\n // Date.now() is not monotonic, so in case if clock goes backwards we return return control too\n const diff = Date.now() - ts;\n if (diff >= 0 && diff < tick)\n continue;\n await nextTick();\n ts += diff;\n }\n}\n/**\n * Converts string to bytes using UTF8 encoding.\n * @example utf8ToBytes('abc') // Uint8Array.from([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error('string expected');\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n/**\n * Converts bytes to string using UTF8 encoding.\n * @example bytesToUtf8(Uint8Array.from([97, 98, 99])) // 'abc'\n */\nfunction bytesToUtf8(bytes) {\n return new TextDecoder().decode(bytes);\n}\n/**\n * Normalizes (non-hex) string or Uint8Array to Uint8Array.\n * Warning: when Uint8Array is passed, it would NOT get copied.\n * Keep in mind for future mutable operations.\n */\nfunction toBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n abytes(data);\n return data;\n}\n/**\n * Helper for KDFs: consumes uint8array or string.\n * When string is passed, does utf8 decoding, using TextDecoder.\n */\nfunction kdfInputToBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n abytes(data);\n return data;\n}\n/** Copies several Uint8Arrays into one. */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n abytes(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\nfunction checkOpts(defaults, opts) {\n if (opts !== undefined && {}.toString.call(opts) !== '[object Object]')\n throw new Error('options should be object or undefined');\n const merged = Object.assign(defaults, opts);\n return merged;\n}\n/** For runtime check if class implements interface */\nclass Hash {\n}\n/** Wraps hash function, creating an interface on top of it */\nfunction createHasher(hashCons) {\n const hashC = (msg) => hashCons().update(toBytes(msg)).digest();\n const tmp = hashCons();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashCons();\n return hashC;\n}\nfunction createOptHasher(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nfunction createXOFer(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nconst wrapConstructor = createHasher;\nconst wrapConstructorWithOpts = createOptHasher;\nconst wrapXOFConstructorWithOpts = createXOFer;\n/** Cryptographically secure PRNG. Uses internal OS-level `crypto.getRandomValues`. */\nfunction randomBytes(bytesLength = 32) {\n if (_noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_0__.crypto && typeof _noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_0__.crypto.getRandomValues === 'function') {\n return _noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_0__.crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n // Legacy Node.js compatibility\n if (_noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_0__.crypto && typeof _noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_0__.crypto.randomBytes === 'function') {\n return Uint8Array.from(_noble_hashes_crypto__WEBPACK_IMPORTED_MODULE_0__.crypto.randomBytes(bytesLength));\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AY29pbmJhc2Uvd2FsbGV0LXNkay9ub2RlX21vZHVsZXMvb3gvbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvZXNtL3V0aWxzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQzhDO0FBQzlDO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDTztBQUNQLG9CQUFvQixtQkFBbUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDTztBQUNQLG9CQUFvQixnQkFBZ0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDLGFBQWE7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixrQkFBa0I7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CO0FBQ0EscUNBQXFDO0FBQ3JDO0FBQ0EscUNBQXFDO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsU0FBUztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0M7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ0Esb0JBQW9CLFdBQVc7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSwwREFBMEQ7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLG9CQUFvQixtQkFBbUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixtQkFBbUI7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxnQ0FBZ0M7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNBO0FBQ0E7QUFDUDtBQUNPO0FBQ1AsUUFBUSx3REFBTSxXQUFXLHdEQUFNO0FBQy9CLGVBQWUsd0RBQU07QUFDckI7QUFDQTtBQUNBLFFBQVEsd0RBQU0sV0FBVyx3REFBTTtBQUMvQiwrQkFBK0Isd0RBQU07QUFDckM7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvQGNvaW5iYXNlL3dhbGxldC1zZGsvbm9kZV9tb2R1bGVzL294L25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL2VzbS91dGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFV0aWxpdGllcyBmb3IgaGV4LCBieXRlcywgQ1NQUk5HLlxuICogQG1vZHVsZVxuICovXG4vKiEgbm9ibGUtaGFzaGVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG4vLyBXZSB1c2UgV2ViQ3J5cHRvIGFrYSBnbG9iYWxUaGlzLmNyeXB0bywgd2hpY2ggZXhpc3RzIGluIGJyb3dzZXJzIGFuZCBub2RlLmpzIDE2Ky5cbi8vIG5vZGUuanMgdmVyc2lvbnMgZWFybGllciB0aGFuIHYxOSBkb24ndCBkZWNsYXJlIGl0IGluIGdsb2JhbCBzY29wZS5cbi8vIEZvciBub2RlLmpzLCBwYWNrYWdlLmpzb24jZXhwb3J0cyBmaWVsZCBtYXBwaW5nIHJld3JpdGVzIGltcG9ydFxuLy8gZnJvbSBgY3J5cHRvYCB0byBgY3J5cHRvTm9kZWAsIHdoaWNoIGltcG9ydHMgbmF0aXZlIG1vZHVsZS5cbi8vIE1ha2VzIHRoZSB1dGlscyB1bi1pbXBvcnRhYmxlIGluIGJyb3dzZXJzIHdpdGhvdXQgYSBidW5kbGVyLlxuLy8gT25jZSBub2RlLmpzIDE4IGlzIGRlcHJlY2F0ZWQgKDIwMjUtMDQtMzApLCB3ZSBjYW4ganVzdCBkcm9wIHRoZSBpbXBvcnQuXG5pbXBvcnQgeyBjcnlwdG8gfSBmcm9tICdAbm9ibGUvaGFzaGVzL2NyeXB0byc7XG4vKiogQ2hlY2tzIGlmIHNvbWV0aGluZyBpcyBVaW50OEFycmF5LiBCZSBjYXJlZnVsOiBub2RlanMgQnVmZmVyIHdpbGwgcmV0dXJuIHRydWUuICovXG5leHBvcnQgZnVuY3Rpb24gaXNCeXRlcyhhKSB7XG4gICAgcmV0dXJuIGEgaW5zdGFuY2VvZiBVaW50OEFycmF5IHx8IChBcnJheUJ1ZmZlci5pc1ZpZXcoYSkgJiYgYS5jb25zdHJ1Y3Rvci5uYW1lID09PSAnVWludDhBcnJheScpO1xufVxuLyoqIEFzc2VydHMgc29tZXRoaW5nIGlzIHBvc2l0aXZlIGludGVnZXIuICovXG5leHBvcnQgZnVuY3Rpb24gYW51bWJlcihuKSB7XG4gICAgaWYgKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihuKSB8fCBuIDwgMClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdwb3NpdGl2ZSBpbnRlZ2VyIGV4cGVjdGVkLCBnb3QgJyArIG4pO1xufVxuLyoqIEFzc2VydHMgc29tZXRoaW5nIGlzIFVpbnQ4QXJyYXkuICovXG5leHBvcnQgZnVuY3Rpb24gYWJ5dGVzKGIsIC4uLmxlbmd0aHMpIHtcbiAgICBpZiAoIWlzQnl0ZXMoYikpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVWludDhBcnJheSBleHBlY3RlZCcpO1xuICAgIGlmIChsZW5ndGhzLmxlbmd0aCA+IDAgJiYgIWxlbmd0aHMuaW5jbHVkZXMoYi5sZW5ndGgpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VpbnQ4QXJyYXkgZXhwZWN0ZWQgb2YgbGVuZ3RoICcgKyBsZW5ndGhzICsgJywgZ290IGxlbmd0aD0nICsgYi5sZW5ndGgpO1xufVxuLyoqIEFzc2VydHMgc29tZXRoaW5nIGlzIGhhc2ggKi9cbmV4cG9ydCBmdW5jdGlvbiBhaGFzaChoKSB7XG4gICAgaWYgKHR5cGVvZiBoICE9PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBoLmNyZWF0ZSAhPT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdIYXNoIHNob3VsZCBiZSB3cmFwcGVkIGJ5IHV0aWxzLmNyZWF0ZUhhc2hlcicpO1xuICAgIGFudW1iZXIoaC5vdXRwdXRMZW4pO1xuICAgIGFudW1iZXIoaC5ibG9ja0xlbik7XG59XG4vKiogQXNzZXJ0cyBhIGhhc2ggaW5zdGFuY2UgaGFzIG5vdCBiZWVuIGRlc3Ryb3llZCAvIGZpbmlzaGVkICovXG5leHBvcnQgZnVuY3Rpb24gYWV4aXN0cyhpbnN0YW5jZSwgY2hlY2tGaW5pc2hlZCA9IHRydWUpIHtcbiAgICBpZiAoaW5zdGFuY2UuZGVzdHJveWVkKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0hhc2ggaW5zdGFuY2UgaGFzIGJlZW4gZGVzdHJveWVkJyk7XG4gICAgaWYgKGNoZWNrRmluaXNoZWQgJiYgaW5zdGFuY2UuZmluaXNoZWQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSGFzaCNkaWdlc3QoKSBoYXMgYWxyZWFkeSBiZWVuIGNhbGxlZCcpO1xufVxuLyoqIEFzc2VydHMgb3V0cHV0IGlzIHByb3Blcmx5LXNpemVkIGJ5dGUgYXJyYXkgKi9cbmV4cG9ydCBmdW5jdGlvbiBhb3V0cHV0KG91dCwgaW5zdGFuY2UpIHtcbiAgICBhYnl0ZXMob3V0KTtcbiAgICBjb25zdCBtaW4gPSBpbnN0YW5jZS5vdXRwdXRMZW47XG4gICAgaWYgKG91dC5sZW5ndGggPCBtaW4pIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdkaWdlc3RJbnRvKCkgZXhwZWN0cyBvdXRwdXQgYnVmZmVyIG9mIGxlbmd0aCBhdCBsZWFzdCAnICsgbWluKTtcbiAgICB9XG59XG4vKiogQ2FzdCB1OCAvIHUxNiAvIHUzMiB0byB1OC4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1OChhcnIpIHtcbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIGFyci5ieXRlTGVuZ3RoKTtcbn1cbi8qKiBDYXN0IHU4IC8gdTE2IC8gdTMyIHRvIHUzMi4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1MzIoYXJyKSB7XG4gICAgcmV0dXJuIG5ldyBVaW50MzJBcnJheShhcnIuYnVmZmVyLCBhcnIuYnl0ZU9mZnNldCwgTWF0aC5mbG9vcihhcnIuYnl0ZUxlbmd0aCAvIDQpKTtcbn1cbi8qKiBaZXJvaXplIGEgYnl0ZSBhcnJheS4gV2FybmluZzogSlMgcHJvdmlkZXMgbm8gZ3VhcmFudGVlcy4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjbGVhbiguLi5hcnJheXMpIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBhcnJheXNbaV0uZmlsbCgwKTtcbiAgICB9XG59XG4vKiogQ3JlYXRlIERhdGFWaWV3IG9mIGFuIGFycmF5IGZvciBlYXN5IGJ5dGUtbGV2ZWwgbWFuaXB1bGF0aW9uLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVZpZXcoYXJyKSB7XG4gICAgcmV0dXJuIG5ldyBEYXRhVmlldyhhcnIuYnVmZmVyLCBhcnIuYnl0ZU9mZnNldCwgYXJyLmJ5dGVMZW5ndGgpO1xufVxuLyoqIFRoZSByb3RhdGUgcmlnaHQgKGNpcmN1bGFyIHJpZ2h0IHNoaWZ0KSBvcGVyYXRpb24gZm9yIHVpbnQzMiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJvdHIod29yZCwgc2hpZnQpIHtcbiAgICByZXR1cm4gKHdvcmQgPDwgKDMyIC0gc2hpZnQpKSB8ICh3b3JkID4+PiBzaGlmdCk7XG59XG4vKiogVGhlIHJvdGF0ZSBsZWZ0IChjaXJjdWxhciBsZWZ0IHNoaWZ0KSBvcGVyYXRpb24gZm9yIHVpbnQzMiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJvdGwod29yZCwgc2hpZnQpIHtcbiAgICByZXR1cm4gKHdvcmQgPDwgc2hpZnQpIHwgKCh3b3JkID4+PiAoMzIgLSBzaGlmdCkpID4+PiAwKTtcbn1cbi8qKiBJcyBjdXJyZW50IHBsYXRmb3JtIGxpdHRsZS1lbmRpYW4/IE1vc3QgYXJlLiBCaWctRW5kaWFuIHBsYXRmb3JtOiBJQk0gKi9cbmV4cG9ydCBjb25zdCBpc0xFID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBuZXcgVWludDhBcnJheShuZXcgVWludDMyQXJyYXkoWzB4MTEyMjMzNDRdKS5idWZmZXIpWzBdID09PSAweDQ0KSgpO1xuLyoqIFRoZSBieXRlIHN3YXAgb3BlcmF0aW9uIGZvciB1aW50MzIgKi9cbmV4cG9ydCBmdW5jdGlvbiBieXRlU3dhcCh3b3JkKSB7XG4gICAgcmV0dXJuICgoKHdvcmQgPDwgMjQpICYgMHhmZjAwMDAwMCkgfFxuICAgICAgICAoKHdvcmQgPDwgOCkgJiAweGZmMDAwMCkgfFxuICAgICAgICAoKHdvcmQgPj4+IDgpICYgMHhmZjAwKSB8XG4gICAgICAgICgod29yZCA+Pj4gMjQpICYgMHhmZikpO1xufVxuLyoqIENvbmRpdGlvbmFsbHkgYnl0ZSBzd2FwIGlmIG9uIGEgYmlnLWVuZGlhbiBwbGF0Zm9ybSAqL1xuZXhwb3J0IGNvbnN0IHN3YXA4SWZCRSA9IGlzTEVcbiAgICA/IChuKSA9PiBuXG4gICAgOiAobikgPT4gYnl0ZVN3YXAobik7XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCBjb25zdCBieXRlU3dhcElmQkUgPSBzd2FwOElmQkU7XG4vKiogSW4gcGxhY2UgYnl0ZSBzd2FwIGZvciBVaW50MzJBcnJheSAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVTd2FwMzIoYXJyKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgYXJyW2ldID0gYnl0ZVN3YXAoYXJyW2ldKTtcbiAgICB9XG4gICAgcmV0dXJuIGFycjtcbn1cbmV4cG9ydCBjb25zdCBzd2FwMzJJZkJFID0gaXNMRVxuICAgID8gKHUpID0+IHVcbiAgICA6IGJ5dGVTd2FwMzI7XG4vLyBCdWlsdC1pbiBoZXggY29udmVyc2lvbiBodHRwczovL2Nhbml1c2UuY29tL21kbi1qYXZhc2NyaXB0X2J1aWx0aW5zX3VpbnQ4YXJyYXlfZnJvbWhleFxuY29uc3QgaGFzSGV4QnVpbHRpbiA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gXG4vLyBAdHMtaWdub3JlXG50eXBlb2YgVWludDhBcnJheS5mcm9tKFtdKS50b0hleCA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgVWludDhBcnJheS5mcm9tSGV4ID09PSAnZnVuY3Rpb24nKSgpO1xuLy8gQXJyYXkgd2hlcmUgaW5kZXggMHhmMCAoMjQwKSBpcyBtYXBwZWQgdG8gc3RyaW5nICdmMCdcbmNvbnN0IGhleGVzID0gLyogQF9fUFVSRV9fICovIEFycmF5LmZyb20oeyBsZW5ndGg6IDI1NiB9LCAoXywgaSkgPT4gaS50b1N0cmluZygxNikucGFkU3RhcnQoMiwgJzAnKSk7XG4vKipcbiAqIENvbnZlcnQgYnl0ZSBhcnJheSB0byBoZXggc3RyaW5nLiBVc2VzIGJ1aWx0LWluIGZ1bmN0aW9uLCB3aGVuIGF2YWlsYWJsZS5cbiAqIEBleGFtcGxlIGJ5dGVzVG9IZXgoVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSkpIC8vICdjYWZlMDEyMydcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9IZXgoYnl0ZXMpIHtcbiAgICBhYnl0ZXMoYnl0ZXMpO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAoaGFzSGV4QnVpbHRpbilcbiAgICAgICAgcmV0dXJuIGJ5dGVzLnRvSGV4KCk7XG4gICAgLy8gcHJlLWNhY2hpbmcgaW1wcm92ZXMgdGhlIHNwZWVkIDZ4XG4gICAgbGV0IGhleCA9ICcnO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaGV4ICs9IGhleGVzW2J5dGVzW2ldXTtcbiAgICB9XG4gICAgcmV0dXJuIGhleDtcbn1cbi8vIFdlIHVzZSBvcHRpbWl6ZWQgdGVjaG5pcXVlIHRvIGNvbnZlcnQgaGV4IHN0cmluZyB0byBieXRlIGFycmF5XG5jb25zdCBhc2NpaXMgPSB7IF8wOiA0OCwgXzk6IDU3LCBBOiA2NSwgRjogNzAsIGE6IDk3LCBmOiAxMDIgfTtcbmZ1bmN0aW9uIGFzY2lpVG9CYXNlMTYoY2gpIHtcbiAgICBpZiAoY2ggPj0gYXNjaWlzLl8wICYmIGNoIDw9IGFzY2lpcy5fOSlcbiAgICAgICAgcmV0dXJuIGNoIC0gYXNjaWlzLl8wOyAvLyAnMicgPT4gNTAtNDhcbiAgICBpZiAoY2ggPj0gYXNjaWlzLkEgJiYgY2ggPD0gYXNjaWlzLkYpXG4gICAgICAgIHJldHVybiBjaCAtIChhc2NpaXMuQSAtIDEwKTsgLy8gJ0InID0+IDY2LSg2NS0xMClcbiAgICBpZiAoY2ggPj0gYXNjaWlzLmEgJiYgY2ggPD0gYXNjaWlzLmYpXG4gICAgICAgIHJldHVybiBjaCAtIChhc2NpaXMuYSAtIDEwKTsgLy8gJ2InID0+IDk4LSg5Ny0xMClcbiAgICByZXR1cm47XG59XG4vKipcbiAqIENvbnZlcnQgaGV4IHN0cmluZyB0byBieXRlIGFycmF5LiBVc2VzIGJ1aWx0LWluIGZ1bmN0aW9uLCB3aGVuIGF2YWlsYWJsZS5cbiAqIEBleGFtcGxlIGhleFRvQnl0ZXMoJ2NhZmUwMTIzJykgLy8gVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhleFRvQnl0ZXMoaGV4KSB7XG4gICAgaWYgKHR5cGVvZiBoZXggIT09ICdzdHJpbmcnKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2hleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCAnICsgdHlwZW9mIGhleCk7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGlmIChoYXNIZXhCdWlsdGluKVxuICAgICAgICByZXR1cm4gVWludDhBcnJheS5mcm9tSGV4KGhleCk7XG4gICAgY29uc3QgaGwgPSBoZXgubGVuZ3RoO1xuICAgIGNvbnN0IGFsID0gaGwgLyAyO1xuICAgIGlmIChobCAlIDIpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaGV4IHN0cmluZyBleHBlY3RlZCwgZ290IHVucGFkZGVkIGhleCBvZiBsZW5ndGggJyArIGhsKTtcbiAgICBjb25zdCBhcnJheSA9IG5ldyBVaW50OEFycmF5KGFsKTtcbiAgICBmb3IgKGxldCBhaSA9IDAsIGhpID0gMDsgYWkgPCBhbDsgYWkrKywgaGkgKz0gMikge1xuICAgICAgICBjb25zdCBuMSA9IGFzY2lpVG9CYXNlMTYoaGV4LmNoYXJDb2RlQXQoaGkpKTtcbiAgICAgICAgY29uc3QgbjIgPSBhc2NpaVRvQmFzZTE2KGhleC5jaGFyQ29kZUF0KGhpICsgMSkpO1xuICAgICAgICBpZiAobjEgPT09IHVuZGVmaW5lZCB8fCBuMiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25zdCBjaGFyID0gaGV4W2hpXSArIGhleFtoaSArIDFdO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3Qgbm9uLWhleCBjaGFyYWN0ZXIgXCInICsgY2hhciArICdcIiBhdCBpbmRleCAnICsgaGkpO1xuICAgICAgICB9XG4gICAgICAgIGFycmF5W2FpXSA9IG4xICogMTYgKyBuMjsgLy8gbXVsdGlwbHkgZmlyc3Qgb2N0ZXQsIGUuZy4gJ2EzJyA9PiAxMCoxNiszID0+IDE2MCArIDMgPT4gMTYzXG4gICAgfVxuICAgIHJldHVybiBhcnJheTtcbn1cbi8qKlxuICogVGhlcmUgaXMgbm8gc2V0SW1tZWRpYXRlIGluIGJyb3dzZXIgYW5kIHNldFRpbWVvdXQgaXMgc2xvdy5cbiAqIENhbGwgb2YgYXN5bmMgZm4gd2lsbCByZXR1cm4gUHJvbWlzZSwgd2hpY2ggd2lsbCBiZSBmdWxsZmlsZWQgb25seSBvblxuICogbmV4dCBzY2hlZHVsZXIgcXVldWUgcHJvY2Vzc2luZyBzdGVwIGFuZCB0aGlzIGlzIGV4YWN0bHkgd2hhdCB3ZSBuZWVkLlxuICovXG5leHBvcnQgY29uc3QgbmV4dFRpY2sgPSBhc3luYyAoKSA9PiB7IH07XG4vKiogUmV0dXJucyBjb250cm9sIHRvIHRocmVhZCBlYWNoICd0aWNrJyBtcyB0byBhdm9pZCBibG9ja2luZy4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc3luY0xvb3AoaXRlcnMsIHRpY2ssIGNiKSB7XG4gICAgbGV0IHRzID0gRGF0ZS5ub3coKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZXJzOyBpKyspIHtcbiAgICAgICAgY2IoaSk7XG4gICAgICAgIC8vIERhdGUubm93KCkgaXMgbm90IG1vbm90b25pYywgc28gaW4gY2FzZSBpZiBjbG9jayBnb2VzIGJhY2t3YXJkcyB3ZSByZXR1cm4gcmV0dXJuIGNvbnRyb2wgdG9vXG4gICAgICAgIGNvbnN0IGRpZmYgPSBEYXRlLm5vdygpIC0gdHM7XG4gICAgICAgIGlmIChkaWZmID49IDAgJiYgZGlmZiA8IHRpY2spXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgYXdhaXQgbmV4dFRpY2soKTtcbiAgICAgICAgdHMgKz0gZGlmZjtcbiAgICB9XG59XG4vKipcbiAqIENvbnZlcnRzIHN0cmluZyB0byBieXRlcyB1c2luZyBVVEY4IGVuY29kaW5nLlxuICogQGV4YW1wbGUgdXRmOFRvQnl0ZXMoJ2FiYycpIC8vIFVpbnQ4QXJyYXkuZnJvbShbOTcsIDk4LCA5OV0pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1dGY4VG9CeXRlcyhzdHIpIHtcbiAgICBpZiAodHlwZW9mIHN0ciAhPT0gJ3N0cmluZycpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignc3RyaW5nIGV4cGVjdGVkJyk7XG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KG5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShzdHIpKTsgLy8gaHR0cHM6Ly9idWd6aWwubGEvMTY4MTgwOVxufVxuLyoqXG4gKiBDb252ZXJ0cyBieXRlcyB0byBzdHJpbmcgdXNpbmcgVVRGOCBlbmNvZGluZy5cbiAqIEBleGFtcGxlIGJ5dGVzVG9VdGY4KFVpbnQ4QXJyYXkuZnJvbShbOTcsIDk4LCA5OV0pKSAvLyAnYWJjJ1xuICovXG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNUb1V0ZjgoYnl0ZXMpIHtcbiAgICByZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGJ5dGVzKTtcbn1cbi8qKlxuICogTm9ybWFsaXplcyAobm9uLWhleCkgc3RyaW5nIG9yIFVpbnQ4QXJyYXkgdG8gVWludDhBcnJheS5cbiAqIFdhcm5pbmc6IHdoZW4gVWludDhBcnJheSBpcyBwYXNzZWQsIGl0IHdvdWxkIE5PVCBnZXQgY29waWVkLlxuICogS2VlcCBpbiBtaW5kIGZvciBmdXR1cmUgbXV0YWJsZSBvcGVyYXRpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9CeXRlcyhkYXRhKSB7XG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJylcbiAgICAgICAgZGF0YSA9IHV0ZjhUb0J5dGVzKGRhdGEpO1xuICAgIGFieXRlcyhkYXRhKTtcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8qKlxuICogSGVscGVyIGZvciBLREZzOiBjb25zdW1lcyB1aW50OGFycmF5IG9yIHN0cmluZy5cbiAqIFdoZW4gc3RyaW5nIGlzIHBhc3NlZCwgZG9lcyB1dGY4IGRlY29kaW5nLCB1c2luZyBUZXh0RGVjb2Rlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGtkZklucHV0VG9CeXRlcyhkYXRhKSB7XG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJylcbiAgICAgICAgZGF0YSA9IHV0ZjhUb0J5dGVzKGRhdGEpO1xuICAgIGFieXRlcyhkYXRhKTtcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8qKiBDb3BpZXMgc2V2ZXJhbCBVaW50OEFycmF5cyBpbnRvIG9uZS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25jYXRCeXRlcyguLi5hcnJheXMpIHtcbiAgICBsZXQgc3VtID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhID0gYXJyYXlzW2ldO1xuICAgICAgICBhYnl0ZXMoYSk7XG4gICAgICAgIHN1bSArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgY29uc3QgcmVzID0gbmV3IFVpbnQ4QXJyYXkoc3VtKTtcbiAgICBmb3IgKGxldCBpID0gMCwgcGFkID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhID0gYXJyYXlzW2ldO1xuICAgICAgICByZXMuc2V0KGEsIHBhZCk7XG4gICAgICAgIHBhZCArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbmV4cG9ydCBmdW5jdGlvbiBjaGVja09wdHMoZGVmYXVsdHMsIG9wdHMpIHtcbiAgICBpZiAob3B0cyAhPT0gdW5kZWZpbmVkICYmIHt9LnRvU3RyaW5nLmNhbGwob3B0cykgIT09ICdbb2JqZWN0IE9iamVjdF0nKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ29wdGlvbnMgc2hvdWxkIGJlIG9iamVjdCBvciB1bmRlZmluZWQnKTtcbiAgICBjb25zdCBtZXJnZWQgPSBPYmplY3QuYXNzaWduKGRlZmF1bHRzLCBvcHRzKTtcbiAgICByZXR1cm4gbWVyZ2VkO1xufVxuLyoqIEZvciBydW50aW1lIGNoZWNrIGlmIGNsYXNzIGltcGxlbWVudHMgaW50ZXJmYWNlICovXG5leHBvcnQgY2xhc3MgSGFzaCB7XG59XG4vKiogV3JhcHMgaGFzaCBmdW5jdGlvbiwgY3JlYXRpbmcgYW4gaW50ZXJmYWNlIG9uIHRvcCBvZiBpdCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUhhc2hlcihoYXNoQ29ucykge1xuICAgIGNvbnN0IGhhc2hDID0gKG1zZykgPT4gaGFzaENvbnMoKS51cGRhdGUodG9CeXRlcyhtc2cpKS5kaWdlc3QoKTtcbiAgICBjb25zdCB0bXAgPSBoYXNoQ29ucygpO1xuICAgIGhhc2hDLm91dHB1dExlbiA9IHRtcC5vdXRwdXRMZW47XG4gICAgaGFzaEMuYmxvY2tMZW4gPSB0bXAuYmxvY2tMZW47XG4gICAgaGFzaEMuY3JlYXRlID0gKCkgPT4gaGFzaENvbnMoKTtcbiAgICByZXR1cm4gaGFzaEM7XG59XG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlT3B0SGFzaGVyKGhhc2hDb25zKSB7XG4gICAgY29uc3QgaGFzaEMgPSAobXNnLCBvcHRzKSA9PiBoYXNoQ29ucyhvcHRzKS51cGRhdGUodG9CeXRlcyhtc2cpKS5kaWdlc3QoKTtcbiAgICBjb25zdCB0bXAgPSBoYXNoQ29ucyh7fSk7XG4gICAgaGFzaEMub3V0cHV0TGVuID0gdG1wLm91dHB1dExlbjtcbiAgICBoYXNoQy5ibG9ja0xlbiA9IHRtcC5ibG9ja0xlbjtcbiAgICBoYXNoQy5jcmVhdGUgPSAob3B0cykgPT4gaGFzaENvbnMob3B0cyk7XG4gICAgcmV0dXJuIGhhc2hDO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVhPRmVyKGhhc2hDb25zKSB7XG4gICAgY29uc3QgaGFzaEMgPSAobXNnLCBvcHRzKSA9PiBoYXNoQ29ucyhvcHRzKS51cGRhdGUodG9CeXRlcyhtc2cpKS5kaWdlc3QoKTtcbiAgICBjb25zdCB0bXAgPSBoYXNoQ29ucyh7fSk7XG4gICAgaGFzaEMub3V0cHV0TGVuID0gdG1wLm91dHB1dExlbjtcbiAgICBoYXNoQy5ibG9ja0xlbiA9IHRtcC5ibG9ja0xlbjtcbiAgICBoYXNoQy5jcmVhdGUgPSAob3B0cykgPT4gaGFzaENvbnMob3B0cyk7XG4gICAgcmV0dXJuIGhhc2hDO1xufVxuZXhwb3J0IGNvbnN0IHdyYXBDb25zdHJ1Y3RvciA9IGNyZWF0ZUhhc2hlcjtcbmV4cG9ydCBjb25zdCB3cmFwQ29uc3RydWN0b3JXaXRoT3B0cyA9IGNyZWF0ZU9wdEhhc2hlcjtcbmV4cG9ydCBjb25zdCB3cmFwWE9GQ29uc3RydWN0b3JXaXRoT3B0cyA9IGNyZWF0ZVhPRmVyO1xuLyoqIENyeXB0b2dyYXBoaWNhbGx5IHNlY3VyZSBQUk5HLiBVc2VzIGludGVybmFsIE9TLWxldmVsIGBjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzYC4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYW5kb21CeXRlcyhieXRlc0xlbmd0aCA9IDMyKSB7XG4gICAgaWYgKGNyeXB0byAmJiB0eXBlb2YgY3J5cHRvLmdldFJhbmRvbVZhbHVlcyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXR1cm4gY3J5cHRvLmdldFJhbmRvbVZhbHVlcyhuZXcgVWludDhBcnJheShieXRlc0xlbmd0aCkpO1xuICAgIH1cbiAgICAvLyBMZWdhY3kgTm9kZS5qcyBjb21wYXRpYmlsaXR5XG4gICAgaWYgKGNyeXB0byAmJiB0eXBlb2YgY3J5cHRvLnJhbmRvbUJ5dGVzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBVaW50OEFycmF5LmZyb20oY3J5cHRvLnJhbmRvbUJ5dGVzKGJ5dGVzTGVuZ3RoKSk7XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignY3J5cHRvLmdldFJhbmRvbVZhbHVlcyBtdXN0IGJlIGRlZmluZWQnKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWxzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@coinbase/wallet-sdk/node_modules/ox/node_modules/@noble/hashes/esm/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@noble/curves/esm/nist.js": /*!************************************************!*\ !*** ./node_modules/@noble/curves/esm/nist.js ***! \************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ p256: () => (/* binding */ p256),\n/* harmony export */ p256_hasher: () => (/* binding */ p256_hasher),\n/* harmony export */ p384: () => (/* binding */ p384),\n/* harmony export */ p384_hasher: () => (/* binding */ p384_hasher),\n/* harmony export */ p521: () => (/* binding */ p521),\n/* harmony export */ p521_hasher: () => (/* binding */ p521_hasher),\n/* harmony export */ secp256r1: () => (/* binding */ secp256r1),\n/* harmony export */ secp384r1: () => (/* binding */ secp384r1),\n/* harmony export */ secp521r1: () => (/* binding */ secp521r1)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_sha2_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @noble/hashes/sha2.js */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/sha2.js\");\n/* harmony import */ var _shortw_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_shortw_utils.js */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/_shortw_utils.js\");\n/* harmony import */ var _abstract_hash_to_curve_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./abstract/hash-to-curve.js */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/abstract/hash-to-curve.js\");\n/* harmony import */ var _abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstract/modular.js */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/abstract/modular.js\");\n/* harmony import */ var _abstract_weierstrass_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./abstract/weierstrass.js */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/abstract/weierstrass.js\");\n/**\n * Internal module for NIST P256, P384, P521 curves.\n * Do not use for now.\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n\n\n\n\n// p = 2n**224n * (2n**32n-1n) + 2n**192n + 2n**96n - 1n\n// a = Fp256.create(BigInt('-3'));\nconst p256_CURVE = {\n p: BigInt('0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff'),\n n: BigInt('0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551'),\n h: BigInt(1),\n a: BigInt('0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc'),\n b: BigInt('0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b'),\n Gx: BigInt('0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296'),\n Gy: BigInt('0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5'),\n};\n// p = 2n**384n - 2n**128n - 2n**96n + 2n**32n - 1n\nconst p384_CURVE = {\n p: BigInt('0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff'),\n n: BigInt('0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973'),\n h: BigInt(1),\n a: BigInt('0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc'),\n b: BigInt('0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef'),\n Gx: BigInt('0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7'),\n Gy: BigInt('0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f'),\n};\n// p = 2n**521n - 1n\nconst p521_CURVE = {\n p: BigInt('0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff'),\n n: BigInt('0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409'),\n h: BigInt(1),\n a: BigInt('0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc'),\n b: BigInt('0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00'),\n Gx: BigInt('0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66'),\n Gy: BigInt('0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650'),\n};\nconst Fp256 = (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.Field)(p256_CURVE.p);\nconst Fp384 = (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.Field)(p384_CURVE.p);\nconst Fp521 = (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.Field)(p521_CURVE.p);\nfunction createSWU(Point, opts) {\n const map = (0,_abstract_weierstrass_js__WEBPACK_IMPORTED_MODULE_1__.mapToCurveSimpleSWU)(Point.Fp, opts);\n return (scalars) => map(scalars[0]);\n}\n/** NIST P256 (aka secp256r1, prime256v1) curve, ECDSA and ECDH methods. */\nconst p256 = (0,_shortw_utils_js__WEBPACK_IMPORTED_MODULE_2__.createCurve)({ ...p256_CURVE, Fp: Fp256, lowS: false }, _noble_hashes_sha2_js__WEBPACK_IMPORTED_MODULE_3__.sha256);\n/** Hashing / encoding to p256 points / field. RFC 9380 methods. */\nconst p256_hasher = /* @__PURE__ */ (() => {\n return (0,_abstract_hash_to_curve_js__WEBPACK_IMPORTED_MODULE_4__.createHasher)(p256.Point, createSWU(p256.Point, {\n A: p256_CURVE.a,\n B: p256_CURVE.b,\n Z: p256.Point.Fp.create(BigInt('-10')),\n }), {\n DST: 'P256_XMD:SHA-256_SSWU_RO_',\n encodeDST: 'P256_XMD:SHA-256_SSWU_NU_',\n p: p256_CURVE.p,\n m: 1,\n k: 128,\n expand: 'xmd',\n hash: _noble_hashes_sha2_js__WEBPACK_IMPORTED_MODULE_3__.sha256,\n });\n})();\n// export const p256_oprf: OPRF = createORPF({\n// name: 'P256-SHA256',\n// Point: p256.Point,\n// hash: sha256,\n// hashToGroup: p256_hasher.hashToCurve,\n// hashToScalar: p256_hasher.hashToScalar,\n// });\n/** NIST P384 (aka secp384r1) curve, ECDSA and ECDH methods. */\nconst p384 = (0,_shortw_utils_js__WEBPACK_IMPORTED_MODULE_2__.createCurve)({ ...p384_CURVE, Fp: Fp384, lowS: false }, _noble_hashes_sha2_js__WEBPACK_IMPORTED_MODULE_3__.sha384);\n/** Hashing / encoding to p384 points / field. RFC 9380 methods. */\nconst p384_hasher = /* @__PURE__ */ (() => {\n return (0,_abstract_hash_to_curve_js__WEBPACK_IMPORTED_MODULE_4__.createHasher)(p384.Point, createSWU(p384.Point, {\n A: p384_CURVE.a,\n B: p384_CURVE.b,\n Z: p384.Point.Fp.create(BigInt('-12')),\n }), {\n DST: 'P384_XMD:SHA-384_SSWU_RO_',\n encodeDST: 'P384_XMD:SHA-384_SSWU_NU_',\n p: p384_CURVE.p,\n m: 1,\n k: 192,\n expand: 'xmd',\n hash: _noble_hashes_sha2_js__WEBPACK_IMPORTED_MODULE_3__.sha384,\n });\n})();\n// export const p384_oprf: OPRF = createORPF({\n// name: 'P384-SHA384',\n// Point: p384.Point,\n// hash: sha384,\n// hashToGroup: p384_hasher.hashToCurve,\n// hashToScalar: p384_hasher.hashToScalar,\n// });\n// const Fn521 = Field(p521_CURVE.n, { allowedScalarLengths: [65, 66] });\n/** NIST P521 (aka secp521r1) curve, ECDSA and ECDH methods. */\nconst p521 = (0,_shortw_utils_js__WEBPACK_IMPORTED_MODULE_2__.createCurve)({ ...p521_CURVE, Fp: Fp521, lowS: false, allowedPrivateKeyLengths: [130, 131, 132] }, _noble_hashes_sha2_js__WEBPACK_IMPORTED_MODULE_3__.sha512);\n/** @deprecated use `p256` for consistency with `p256_hasher` */\nconst secp256r1 = p256;\n/** @deprecated use `p384` for consistency with `p384_hasher` */\nconst secp384r1 = p384;\n/** @deprecated use `p521` for consistency with `p521_hasher` */\nconst secp521r1 = p521;\n/** Hashing / encoding to p521 points / field. RFC 9380 methods. */\nconst p521_hasher = /* @__PURE__ */ (() => {\n return (0,_abstract_hash_to_curve_js__WEBPACK_IMPORTED_MODULE_4__.createHasher)(p521.Point, createSWU(p521.Point, {\n A: p521_CURVE.a,\n B: p521_CURVE.b,\n Z: p521.Point.Fp.create(BigInt('-4')),\n }), {\n DST: 'P521_XMD:SHA-512_SSWU_RO_',\n encodeDST: 'P521_XMD:SHA-512_SSWU_NU_',\n p: p521_CURVE.p,\n m: 1,\n k: 256,\n expand: 'xmd',\n hash: _noble_hashes_sha2_js__WEBPACK_IMPORTED_MODULE_3__.sha512,\n });\n})();\n// export const p521_oprf: OPRF = createORPF({\n// name: 'P521-SHA512',\n// Point: p521.Point,\n// hash: sha512,\n// hashToGroup: p521_hasher.hashToCurve,\n// hashToScalar: p521_hasher.hashToScalar, // produces L=98 just like in RFC\n// });\n//# sourceMappingURL=nist.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9uaXN0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQytEO0FBQ2Q7QUFDVTtBQUNiO0FBQ21CO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYywyREFBSztBQUNuQixjQUFjLDJEQUFLO0FBQ25CLGNBQWMsMkRBQUs7QUFDbkI7QUFDQSxnQkFBZ0IsNkVBQW1CO0FBQ25DO0FBQ0E7QUFDQTtBQUNPLGFBQWEsNkRBQVcsR0FBRyx1Q0FBdUMsRUFBRSx5REFBTTtBQUNqRjtBQUNPO0FBQ1AsV0FBVyx3RUFBWTtBQUN2QjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyx5REFBTTtBQUNwQixLQUFLO0FBQ0wsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPLGFBQWEsNkRBQVcsR0FBRyx1Q0FBdUMsRUFBRSx5REFBTTtBQUNqRjtBQUNPO0FBQ1AsV0FBVyx3RUFBWTtBQUN2QjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyx5REFBTTtBQUNwQixLQUFLO0FBQ0wsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSix1Q0FBdUMsZ0NBQWdDO0FBQ3ZFO0FBQ08sYUFBYSw2REFBVyxHQUFHLGtGQUFrRixFQUFFLHlEQUFNO0FBQzVIO0FBQ087QUFDUDtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ087QUFDUCxXQUFXLHdFQUFZO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHlEQUFNO0FBQ3BCLEtBQUs7QUFDTCxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvZXNtL25pc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBJbnRlcm5hbCBtb2R1bGUgZm9yIE5JU1QgUDI1NiwgUDM4NCwgUDUyMSBjdXJ2ZXMuXG4gKiBEbyBub3QgdXNlIGZvciBub3cuXG4gKiBAbW9kdWxlXG4gKi9cbi8qISBub2JsZS1jdXJ2ZXMgLSBNSVQgTGljZW5zZSAoYykgMjAyMiBQYXVsIE1pbGxlciAocGF1bG1pbGxyLmNvbSkgKi9cbmltcG9ydCB7IHNoYTI1Niwgc2hhMzg0LCBzaGE1MTIgfSBmcm9tICdAbm9ibGUvaGFzaGVzL3NoYTIuanMnO1xuaW1wb3J0IHsgY3JlYXRlQ3VydmUgfSBmcm9tIFwiLi9fc2hvcnR3X3V0aWxzLmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVIYXNoZXIgfSBmcm9tIFwiLi9hYnN0cmFjdC9oYXNoLXRvLWN1cnZlLmpzXCI7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gXCIuL2Fic3RyYWN0L21vZHVsYXIuanNcIjtcbmltcG9ydCB7IG1hcFRvQ3VydmVTaW1wbGVTV1UsIH0gZnJvbSBcIi4vYWJzdHJhY3Qvd2VpZXJzdHJhc3MuanNcIjtcbi8vIHAgPSAybioqMjI0biAqICgybioqMzJuLTFuKSArIDJuKioxOTJuICsgMm4qKjk2biAtIDFuXG4vLyBhID0gRnAyNTYuY3JlYXRlKEJpZ0ludCgnLTMnKSk7XG5jb25zdCBwMjU2X0NVUlZFID0ge1xuICAgIHA6IEJpZ0ludCgnMHhmZmZmZmZmZjAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmJyksXG4gICAgbjogQmlnSW50KCcweGZmZmZmZmZmMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmYmNlNmZhYWRhNzE3OWU4NGYzYjljYWMyZmM2MzI1NTEnKSxcbiAgICBoOiBCaWdJbnQoMSksXG4gICAgYTogQmlnSW50KCcweGZmZmZmZmZmMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMnKSxcbiAgICBiOiBCaWdJbnQoJzB4NWFjNjM1ZDhhYTNhOTNlN2IzZWJiZDU1NzY5ODg2YmM2NTFkMDZiMGNjNTNiMGY2M2JjZTNjM2UyN2QyNjA0YicpLFxuICAgIEd4OiBCaWdJbnQoJzB4NmIxN2QxZjJlMTJjNDI0N2Y4YmNlNmU1NjNhNDQwZjI3NzAzN2Q4MTJkZWIzM2EwZjRhMTM5NDVkODk4YzI5NicpLFxuICAgIEd5OiBCaWdJbnQoJzB4NGZlMzQyZTJmZTFhN2Y5YjhlZTdlYjRhN2MwZjllMTYyYmNlMzM1NzZiMzE1ZWNlY2JiNjQwNjgzN2JmNTFmNScpLFxufTtcbi8vIHAgPSAybioqMzg0biAtIDJuKioxMjhuIC0gMm4qKjk2biArIDJuKiozMm4gLSAxblxuY29uc3QgcDM4NF9DVVJWRSA9IHtcbiAgICBwOiBCaWdJbnQoJzB4ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmMDAwMDAwMDAwMDAwMDAwMGZmZmZmZmZmJyksXG4gICAgbjogQmlnSW50KCcweGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmM3NjM0ZDgxZjQzNzJkZGY1ODFhMGRiMjQ4YjBhNzdhZWNlYzE5NmFjY2M1Mjk3MycpLFxuICAgIGg6IEJpZ0ludCgxKSxcbiAgICBhOiBCaWdJbnQoJzB4ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmMDAwMDAwMDAwMDAwMDAwMGZmZmZmZmZjJyksXG4gICAgYjogQmlnSW50KCcweGIzMzEyZmE3ZTIzZWU3ZTQ5ODhlMDU2YmUzZjgyZDE5MTgxZDljNmVmZTgxNDExMjAzMTQwODhmNTAxMzg3NWFjNjU2Mzk4ZDhhMmVkMTlkMmE4NWM4ZWRkM2VjMmFlZicpLFxuICAgIEd4OiBCaWdJbnQoJzB4YWE4N2NhMjJiZThiMDUzNzhlYjFjNzFlZjMyMGFkNzQ2ZTFkM2I2MjhiYTc5Yjk4NTlmNzQxZTA4MjU0MmEzODU1MDJmMjVkYmY1NTI5NmMzYTU0NWUzODcyNzYwYWI3JyksXG4gICAgR3k6IEJpZ0ludCgnMHgzNjE3ZGU0YTk2MjYyYzZmNWQ5ZTk4YmY5MjkyZGMyOWY4ZjQxZGJkMjg5YTE0N2NlOWRhMzExM2I1ZjBiOGMwMGE2MGIxY2UxZDdlODE5ZDdhNDMxZDdjOTBlYTBlNWYnKSxcbn07XG4vLyBwID0gMm4qKjUyMW4gLSAxblxuY29uc3QgcDUyMV9DVVJWRSA9IHtcbiAgICBwOiBCaWdJbnQoJzB4MWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnKSxcbiAgICBuOiBCaWdJbnQoJzB4MDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmE1MTg2ODc4M2JmMmY5NjZiN2ZjYzAxNDhmNzA5YTVkMDNiYjVjOWI4ODk5YzQ3YWViYjZmYjcxZTkxMzg2NDA5JyksXG4gICAgaDogQmlnSW50KDEpLFxuICAgIGE6IEJpZ0ludCgnMHgxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYycpLFxuICAgIGI6IEJpZ0ludCgnMHgwMDUxOTUzZWI5NjE4ZTFjOWExZjkyOWEyMWEwYjY4NTQwZWVhMmRhNzI1Yjk5YjMxNWYzYjhiNDg5OTE4ZWYxMDllMTU2MTkzOTUxZWM3ZTkzN2IxNjUyYzBiZDNiYjFiZjA3MzU3M2RmODgzZDJjMzRmMWVmNDUxZmQ0NmI1MDNmMDAnKSxcbiAgICBHeDogQmlnSW50KCcweDAwYzY4NThlMDZiNzA0MDRlOWNkOWUzZWNiNjYyMzk1YjQ0MjljNjQ4MTM5MDUzZmI1MjFmODI4YWY2MDZiNGQzZGJhYTE0YjVlNzdlZmU3NTkyOGZlMWRjMTI3YTJmZmE4ZGUzMzQ4YjNjMTg1NmE0MjliZjk3ZTdlMzFjMmU1YmQ2NicpLFxuICAgIEd5OiBCaWdJbnQoJzB4MDExODM5Mjk2YTc4OWEzYmMwMDQ1YzhhNWZiNDJjN2QxYmQ5OThmNTQ0NDk1NzliNDQ2ODE3YWZiZDE3MjczZTY2MmM5N2VlNzI5OTVlZjQyNjQwYzU1MGI5MDEzZmFkMDc2MTM1M2M3MDg2YTI3MmMyNDA4OGJlOTQ3NjlmZDE2NjUwJyksXG59O1xuY29uc3QgRnAyNTYgPSBGaWVsZChwMjU2X0NVUlZFLnApO1xuY29uc3QgRnAzODQgPSBGaWVsZChwMzg0X0NVUlZFLnApO1xuY29uc3QgRnA1MjEgPSBGaWVsZChwNTIxX0NVUlZFLnApO1xuZnVuY3Rpb24gY3JlYXRlU1dVKFBvaW50LCBvcHRzKSB7XG4gICAgY29uc3QgbWFwID0gbWFwVG9DdXJ2ZVNpbXBsZVNXVShQb2ludC5GcCwgb3B0cyk7XG4gICAgcmV0dXJuIChzY2FsYXJzKSA9PiBtYXAoc2NhbGFyc1swXSk7XG59XG4vKiogTklTVCBQMjU2IChha2Egc2VjcDI1NnIxLCBwcmltZTI1NnYxKSBjdXJ2ZSwgRUNEU0EgYW5kIEVDREggbWV0aG9kcy4gKi9cbmV4cG9ydCBjb25zdCBwMjU2ID0gY3JlYXRlQ3VydmUoeyAuLi5wMjU2X0NVUlZFLCBGcDogRnAyNTYsIGxvd1M6IGZhbHNlIH0sIHNoYTI1Nik7XG4vKiogSGFzaGluZyAvIGVuY29kaW5nIHRvIHAyNTYgcG9pbnRzIC8gZmllbGQuIFJGQyA5MzgwIG1ldGhvZHMuICovXG5leHBvcnQgY29uc3QgcDI1Nl9oYXNoZXIgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IHtcbiAgICByZXR1cm4gY3JlYXRlSGFzaGVyKHAyNTYuUG9pbnQsIGNyZWF0ZVNXVShwMjU2LlBvaW50LCB7XG4gICAgICAgIEE6IHAyNTZfQ1VSVkUuYSxcbiAgICAgICAgQjogcDI1Nl9DVVJWRS5iLFxuICAgICAgICBaOiBwMjU2LlBvaW50LkZwLmNyZWF0ZShCaWdJbnQoJy0xMCcpKSxcbiAgICB9KSwge1xuICAgICAgICBEU1Q6ICdQMjU2X1hNRDpTSEEtMjU2X1NTV1VfUk9fJyxcbiAgICAgICAgZW5jb2RlRFNUOiAnUDI1Nl9YTUQ6U0hBLTI1Nl9TU1dVX05VXycsXG4gICAgICAgIHA6IHAyNTZfQ1VSVkUucCxcbiAgICAgICAgbTogMSxcbiAgICAgICAgazogMTI4LFxuICAgICAgICBleHBhbmQ6ICd4bWQnLFxuICAgICAgICBoYXNoOiBzaGEyNTYsXG4gICAgfSk7XG59KSgpO1xuLy8gZXhwb3J0IGNvbnN0IHAyNTZfb3ByZjogT1BSRiA9IGNyZWF0ZU9SUEYoe1xuLy8gICBuYW1lOiAnUDI1Ni1TSEEyNTYnLFxuLy8gICBQb2ludDogcDI1Ni5Qb2ludCxcbi8vICAgaGFzaDogc2hhMjU2LFxuLy8gICBoYXNoVG9Hcm91cDogcDI1Nl9oYXNoZXIuaGFzaFRvQ3VydmUsXG4vLyAgIGhhc2hUb1NjYWxhcjogcDI1Nl9oYXNoZXIuaGFzaFRvU2NhbGFyLFxuLy8gfSk7XG4vKiogTklTVCBQMzg0IChha2Egc2VjcDM4NHIxKSBjdXJ2ZSwgRUNEU0EgYW5kIEVDREggbWV0aG9kcy4gKi9cbmV4cG9ydCBjb25zdCBwMzg0ID0gY3JlYXRlQ3VydmUoeyAuLi5wMzg0X0NVUlZFLCBGcDogRnAzODQsIGxvd1M6IGZhbHNlIH0sIHNoYTM4NCk7XG4vKiogSGFzaGluZyAvIGVuY29kaW5nIHRvIHAzODQgcG9pbnRzIC8gZmllbGQuIFJGQyA5MzgwIG1ldGhvZHMuICovXG5leHBvcnQgY29uc3QgcDM4NF9oYXNoZXIgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IHtcbiAgICByZXR1cm4gY3JlYXRlSGFzaGVyKHAzODQuUG9pbnQsIGNyZWF0ZVNXVShwMzg0LlBvaW50LCB7XG4gICAgICAgIEE6IHAzODRfQ1VSVkUuYSxcbiAgICAgICAgQjogcDM4NF9DVVJWRS5iLFxuICAgICAgICBaOiBwMzg0LlBvaW50LkZwLmNyZWF0ZShCaWdJbnQoJy0xMicpKSxcbiAgICB9KSwge1xuICAgICAgICBEU1Q6ICdQMzg0X1hNRDpTSEEtMzg0X1NTV1VfUk9fJyxcbiAgICAgICAgZW5jb2RlRFNUOiAnUDM4NF9YTUQ6U0hBLTM4NF9TU1dVX05VXycsXG4gICAgICAgIHA6IHAzODRfQ1VSVkUucCxcbiAgICAgICAgbTogMSxcbiAgICAgICAgazogMTkyLFxuICAgICAgICBleHBhbmQ6ICd4bWQnLFxuICAgICAgICBoYXNoOiBzaGEzODQsXG4gICAgfSk7XG59KSgpO1xuLy8gZXhwb3J0IGNvbnN0IHAzODRfb3ByZjogT1BSRiA9IGNyZWF0ZU9SUEYoe1xuLy8gICBuYW1lOiAnUDM4NC1TSEEzODQnLFxuLy8gICBQb2ludDogcDM4NC5Qb2ludCxcbi8vICAgaGFzaDogc2hhMzg0LFxuLy8gICBoYXNoVG9Hcm91cDogcDM4NF9oYXNoZXIuaGFzaFRvQ3VydmUsXG4vLyAgIGhhc2hUb1NjYWxhcjogcDM4NF9oYXNoZXIuaGFzaFRvU2NhbGFyLFxuLy8gfSk7XG4vLyBjb25zdCBGbjUyMSA9IEZpZWxkKHA1MjFfQ1VSVkUubiwgeyBhbGxvd2VkU2NhbGFyTGVuZ3RoczogWzY1LCA2Nl0gfSk7XG4vKiogTklTVCBQNTIxIChha2Egc2VjcDUyMXIxKSBjdXJ2ZSwgRUNEU0EgYW5kIEVDREggbWV0aG9kcy4gKi9cbmV4cG9ydCBjb25zdCBwNTIxID0gY3JlYXRlQ3VydmUoeyAuLi5wNTIxX0NVUlZFLCBGcDogRnA1MjEsIGxvd1M6IGZhbHNlLCBhbGxvd2VkUHJpdmF0ZUtleUxlbmd0aHM6IFsxMzAsIDEzMSwgMTMyXSB9LCBzaGE1MTIpO1xuLyoqIEBkZXByZWNhdGVkIHVzZSBgcDI1NmAgZm9yIGNvbnNpc3RlbmN5IHdpdGggYHAyNTZfaGFzaGVyYCAqL1xuZXhwb3J0IGNvbnN0IHNlY3AyNTZyMSA9IHAyNTY7XG4vKiogQGRlcHJlY2F0ZWQgdXNlIGBwMzg0YCBmb3IgY29uc2lzdGVuY3kgd2l0aCBgcDM4NF9oYXNoZXJgICovXG5leHBvcnQgY29uc3Qgc2VjcDM4NHIxID0gcDM4NDtcbi8qKiBAZGVwcmVjYXRlZCB1c2UgYHA1MjFgIGZvciBjb25zaXN0ZW5jeSB3aXRoIGBwNTIxX2hhc2hlcmAgKi9cbmV4cG9ydCBjb25zdCBzZWNwNTIxcjEgPSBwNTIxO1xuLyoqIEhhc2hpbmcgLyBlbmNvZGluZyB0byBwNTIxIHBvaW50cyAvIGZpZWxkLiBSRkMgOTM4MCBtZXRob2RzLiAqL1xuZXhwb3J0IGNvbnN0IHA1MjFfaGFzaGVyID0gLyogQF9fUFVSRV9fICovICgoKSA9PiB7XG4gICAgcmV0dXJuIGNyZWF0ZUhhc2hlcihwNTIxLlBvaW50LCBjcmVhdGVTV1UocDUyMS5Qb2ludCwge1xuICAgICAgICBBOiBwNTIxX0NVUlZFLmEsXG4gICAgICAgIEI6IHA1MjFfQ1VSVkUuYixcbiAgICAgICAgWjogcDUyMS5Qb2ludC5GcC5jcmVhdGUoQmlnSW50KCctNCcpKSxcbiAgICB9KSwge1xuICAgICAgICBEU1Q6ICdQNTIxX1hNRDpTSEEtNTEyX1NTV1VfUk9fJyxcbiAgICAgICAgZW5jb2RlRFNUOiAnUDUyMV9YTUQ6U0hBLTUxMl9TU1dVX05VXycsXG4gICAgICAgIHA6IHA1MjFfQ1VSVkUucCxcbiAgICAgICAgbTogMSxcbiAgICAgICAgazogMjU2LFxuICAgICAgICBleHBhbmQ6ICd4bWQnLFxuICAgICAgICBoYXNoOiBzaGE1MTIsXG4gICAgfSk7XG59KSgpO1xuLy8gZXhwb3J0IGNvbnN0IHA1MjFfb3ByZjogT1BSRiA9IGNyZWF0ZU9SUEYoe1xuLy8gICBuYW1lOiAnUDUyMS1TSEE1MTInLFxuLy8gICBQb2ludDogcDUyMS5Qb2ludCxcbi8vICAgaGFzaDogc2hhNTEyLFxuLy8gICBoYXNoVG9Hcm91cDogcDUyMV9oYXNoZXIuaGFzaFRvQ3VydmUsXG4vLyAgIGhhc2hUb1NjYWxhcjogcDUyMV9oYXNoZXIuaGFzaFRvU2NhbGFyLCAvLyBwcm9kdWNlcyBMPTk4IGp1c3QgbGlrZSBpbiBSRkNcbi8vIH0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bmlzdC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@noble/curves/esm/nist.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/@noble/curves/esm/p256.js": /*!************************************************!*\ !*** ./node_modules/@noble/curves/esm/p256.js ***! \************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeToCurve: () => (/* binding */ encodeToCurve),\n/* harmony export */ hashToCurve: () => (/* binding */ hashToCurve),\n/* harmony export */ p256: () => (/* binding */ p256),\n/* harmony export */ secp256r1: () => (/* binding */ secp256r1)\n/* harmony export */ });\n/* harmony import */ var _nist_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./nist.js */ \"(app-pages-browser)/./node_modules/@noble/curves/esm/nist.js\");\n/**\n * NIST secp256r1 aka p256.\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n\n/** @deprecated use `import { p256 } from '@noble/curves/nist.js';` */\nconst p256 = _nist_js__WEBPACK_IMPORTED_MODULE_0__.p256;\n/** @deprecated use `import { p256 } from '@noble/curves/nist.js';` */\nconst secp256r1 = _nist_js__WEBPACK_IMPORTED_MODULE_0__.p256;\n/** @deprecated use `import { p256_hasher } from '@noble/curves/nist.js';` */\nconst hashToCurve = /* @__PURE__ */ (() => _nist_js__WEBPACK_IMPORTED_MODULE_0__.p256_hasher.hashToCurve)();\n/** @deprecated use `import { p256_hasher } from '@noble/curves/nist.js';` */\nconst encodeToCurve = /* @__PURE__ */ (() => _nist_js__WEBPACK_IMPORTED_MODULE_0__.p256_hasher.encodeToCurve)();\n//# sourceMappingURL=p256.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9wMjU2LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUM2QztBQUNVO0FBQ3ZELDhCQUE4QixPQUFPLDZCQUE2QjtBQUMzRCxhQUFhLDBDQUFLO0FBQ3pCLDhCQUE4QixPQUFPLDZCQUE2QjtBQUMzRCxrQkFBa0IsMENBQUs7QUFDOUIsOEJBQThCLGNBQWMsNkJBQTZCO0FBQ2xFLDJDQUEyQyxpREFBVztBQUM3RCw4QkFBOEIsY0FBYyw2QkFBNkI7QUFDbEUsNkNBQTZDLGlEQUFXO0FBQy9EIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvZXNtL3AyNTYuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBOSVNUIHNlY3AyNTZyMSBha2EgcDI1Ni5cbiAqIEBtb2R1bGVcbiAqL1xuLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuaW1wb3J0IHt9IGZyb20gXCIuL2Fic3RyYWN0L2hhc2gtdG8tY3VydmUuanNcIjtcbmltcG9ydCB7IHAyNTZfaGFzaGVyLCBwMjU2IGFzIHAyNTZuIH0gZnJvbSBcIi4vbmlzdC5qc1wiO1xuLyoqIEBkZXByZWNhdGVkIHVzZSBgaW1wb3J0IHsgcDI1NiB9IGZyb20gJ0Bub2JsZS9jdXJ2ZXMvbmlzdC5qcyc7YCAqL1xuZXhwb3J0IGNvbnN0IHAyNTYgPSBwMjU2bjtcbi8qKiBAZGVwcmVjYXRlZCB1c2UgYGltcG9ydCB7IHAyNTYgfSBmcm9tICdAbm9ibGUvY3VydmVzL25pc3QuanMnO2AgKi9cbmV4cG9ydCBjb25zdCBzZWNwMjU2cjEgPSBwMjU2bjtcbi8qKiBAZGVwcmVjYXRlZCB1c2UgYGltcG9ydCB7IHAyNTZfaGFzaGVyIH0gZnJvbSAnQG5vYmxlL2N1cnZlcy9uaXN0LmpzJztgICovXG5leHBvcnQgY29uc3QgaGFzaFRvQ3VydmUgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IHAyNTZfaGFzaGVyLmhhc2hUb0N1cnZlKSgpO1xuLyoqIEBkZXByZWNhdGVkIHVzZSBgaW1wb3J0IHsgcDI1Nl9oYXNoZXIgfSBmcm9tICdAbm9ibGUvY3VydmVzL25pc3QuanMnO2AgKi9cbmV4cG9ydCBjb25zdCBlbmNvZGVUb0N1cnZlID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBwMjU2X2hhc2hlci5lbmNvZGVUb0N1cnZlKSgpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cDI1Ni5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@noble/curves/esm/p256.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/idb-keyval/dist/index.js": /*!***********************************************!*\ !*** ./node_modules/idb-keyval/dist/index.js ***! \***********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clear: () => (/* binding */ clear),\n/* harmony export */ createStore: () => (/* binding */ createStore),\n/* harmony export */ del: () => (/* binding */ del),\n/* harmony export */ delMany: () => (/* binding */ delMany),\n/* harmony export */ entries: () => (/* binding */ entries),\n/* harmony export */ get: () => (/* binding */ get),\n/* harmony export */ getMany: () => (/* binding */ getMany),\n/* harmony export */ keys: () => (/* binding */ keys),\n/* harmony export */ promisifyRequest: () => (/* binding */ promisifyRequest),\n/* harmony export */ set: () => (/* binding */ set),\n/* harmony export */ setMany: () => (/* binding */ setMany),\n/* harmony export */ update: () => (/* binding */ update),\n/* harmony export */ values: () => (/* binding */ values)\n/* harmony export */ });\nfunction promisifyRequest(request) {\n return new Promise((resolve, reject) => {\n // @ts-ignore - file size hacks\n request.oncomplete = request.onsuccess = () => resolve(request.result);\n // @ts-ignore - file size hacks\n request.onabort = request.onerror = () => reject(request.error);\n });\n}\nfunction createStore(dbName, storeName) {\n const request = indexedDB.open(dbName);\n request.onupgradeneeded = () => request.result.createObjectStore(storeName);\n const dbp = promisifyRequest(request);\n return (txMode, callback) => dbp.then((db) => callback(db.transaction(storeName, txMode).objectStore(storeName)));\n}\nlet defaultGetStoreFunc;\nfunction defaultGetStore() {\n if (!defaultGetStoreFunc) {\n defaultGetStoreFunc = createStore('keyval-store', 'keyval');\n }\n return defaultGetStoreFunc;\n}\n/**\n * Get a value by its key.\n *\n * @param key\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction get(key, customStore = defaultGetStore()) {\n return customStore('readonly', (store) => promisifyRequest(store.get(key)));\n}\n/**\n * Set a value with a key.\n *\n * @param key\n * @param value\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction set(key, value, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.put(value, key);\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Set multiple values at once. This is faster than calling set() multiple times.\n * It's also atomic – if one of the pairs can't be added, none will be added.\n *\n * @param entries Array of entries, where each entry is an array of `[key, value]`.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction setMany(entries, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n entries.forEach((entry) => store.put(entry[1], entry[0]));\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Get multiple values by their keys\n *\n * @param keys\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction getMany(keys, customStore = defaultGetStore()) {\n return customStore('readonly', (store) => Promise.all(keys.map((key) => promisifyRequest(store.get(key)))));\n}\n/**\n * Update a value. This lets you see the old value and update it as an atomic operation.\n *\n * @param key\n * @param updater A callback that takes the old value and returns a new value.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction update(key, updater, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => \n // Need to create the promise manually.\n // If I try to chain promises, the transaction closes in browsers\n // that use a promise polyfill (IE10/11).\n new Promise((resolve, reject) => {\n store.get(key).onsuccess = function () {\n try {\n store.put(updater(this.result), key);\n resolve(promisifyRequest(store.transaction));\n }\n catch (err) {\n reject(err);\n }\n };\n }));\n}\n/**\n * Delete a particular key from the store.\n *\n * @param key\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction del(key, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.delete(key);\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Delete multiple keys at once.\n *\n * @param keys List of keys to delete.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction delMany(keys, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n keys.forEach((key) => store.delete(key));\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Clear all values in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction clear(customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.clear();\n return promisifyRequest(store.transaction);\n });\n}\nfunction eachCursor(store, callback) {\n store.openCursor().onsuccess = function () {\n if (!this.result)\n return;\n callback(this.result);\n this.result.continue();\n };\n return promisifyRequest(store.transaction);\n}\n/**\n * Get all keys in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction keys(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n if (store.getAllKeys) {\n return promisifyRequest(store.getAllKeys());\n }\n const items = [];\n return eachCursor(store, (cursor) => items.push(cursor.key)).then(() => items);\n });\n}\n/**\n * Get all values in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction values(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n if (store.getAll) {\n return promisifyRequest(store.getAll());\n }\n const items = [];\n return eachCursor(store, (cursor) => items.push(cursor.value)).then(() => items);\n });\n}\n/**\n * Get all entries in the store. Each entry is an array of `[key, value]`.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction entries(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n // (although, hopefully we'll get a simpler path some day)\n if (store.getAll && store.getAllKeys) {\n return Promise.all([\n promisifyRequest(store.getAllKeys()),\n promisifyRequest(store.getAll()),\n ]).then(([keys, values]) => keys.map((key, i) => [key, values[i]]));\n }\n const items = [];\n return customStore('readonly', (store) => eachCursor(store, (cursor) => items.push([cursor.key, cursor.value])).then(() => items));\n });\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9pZGIta2V5dmFsL2Rpc3QvaW5kZXguanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFeUgiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvaWRiLWtleXZhbC9kaXN0L2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIHByb21pc2lmeVJlcXVlc3QocmVxdWVzdCkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmUgLSBmaWxlIHNpemUgaGFja3NcbiAgICAgICAgcmVxdWVzdC5vbmNvbXBsZXRlID0gcmVxdWVzdC5vbnN1Y2Nlc3MgPSAoKSA9PiByZXNvbHZlKHJlcXVlc3QucmVzdWx0KTtcbiAgICAgICAgLy8gQHRzLWlnbm9yZSAtIGZpbGUgc2l6ZSBoYWNrc1xuICAgICAgICByZXF1ZXN0Lm9uYWJvcnQgPSByZXF1ZXN0Lm9uZXJyb3IgPSAoKSA9PiByZWplY3QocmVxdWVzdC5lcnJvcik7XG4gICAgfSk7XG59XG5mdW5jdGlvbiBjcmVhdGVTdG9yZShkYk5hbWUsIHN0b3JlTmFtZSkge1xuICAgIGNvbnN0IHJlcXVlc3QgPSBpbmRleGVkREIub3BlbihkYk5hbWUpO1xuICAgIHJlcXVlc3Qub251cGdyYWRlbmVlZGVkID0gKCkgPT4gcmVxdWVzdC5yZXN1bHQuY3JlYXRlT2JqZWN0U3RvcmUoc3RvcmVOYW1lKTtcbiAgICBjb25zdCBkYnAgPSBwcm9taXNpZnlSZXF1ZXN0KHJlcXVlc3QpO1xuICAgIHJldHVybiAodHhNb2RlLCBjYWxsYmFjaykgPT4gZGJwLnRoZW4oKGRiKSA9PiBjYWxsYmFjayhkYi50cmFuc2FjdGlvbihzdG9yZU5hbWUsIHR4TW9kZSkub2JqZWN0U3RvcmUoc3RvcmVOYW1lKSkpO1xufVxubGV0IGRlZmF1bHRHZXRTdG9yZUZ1bmM7XG5mdW5jdGlvbiBkZWZhdWx0R2V0U3RvcmUoKSB7XG4gICAgaWYgKCFkZWZhdWx0R2V0U3RvcmVGdW5jKSB7XG4gICAgICAgIGRlZmF1bHRHZXRTdG9yZUZ1bmMgPSBjcmVhdGVTdG9yZSgna2V5dmFsLXN0b3JlJywgJ2tleXZhbCcpO1xuICAgIH1cbiAgICByZXR1cm4gZGVmYXVsdEdldFN0b3JlRnVuYztcbn1cbi8qKlxuICogR2V0IGEgdmFsdWUgYnkgaXRzIGtleS5cbiAqXG4gKiBAcGFyYW0ga2V5XG4gKiBAcGFyYW0gY3VzdG9tU3RvcmUgTWV0aG9kIHRvIGdldCBhIGN1c3RvbSBzdG9yZS4gVXNlIHdpdGggY2F1dGlvbiAoc2VlIHRoZSBkb2NzKS5cbiAqL1xuZnVuY3Rpb24gZ2V0KGtleSwgY3VzdG9tU3RvcmUgPSBkZWZhdWx0R2V0U3RvcmUoKSkge1xuICAgIHJldHVybiBjdXN0b21TdG9yZSgncmVhZG9ubHknLCAoc3RvcmUpID0+IHByb21pc2lmeVJlcXVlc3Qoc3RvcmUuZ2V0KGtleSkpKTtcbn1cbi8qKlxuICogU2V0IGEgdmFsdWUgd2l0aCBhIGtleS5cbiAqXG4gKiBAcGFyYW0ga2V5XG4gKiBAcGFyYW0gdmFsdWVcbiAqIEBwYXJhbSBjdXN0b21TdG9yZSBNZXRob2QgdG8gZ2V0IGEgY3VzdG9tIHN0b3JlLiBVc2Ugd2l0aCBjYXV0aW9uIChzZWUgdGhlIGRvY3MpLlxuICovXG5mdW5jdGlvbiBzZXQoa2V5LCB2YWx1ZSwgY3VzdG9tU3RvcmUgPSBkZWZhdWx0R2V0U3RvcmUoKSkge1xuICAgIHJldHVybiBjdXN0b21TdG9yZSgncmVhZHdyaXRlJywgKHN0b3JlKSA9PiB7XG4gICAgICAgIHN0b3JlLnB1dCh2YWx1ZSwga2V5KTtcbiAgICAgICAgcmV0dXJuIHByb21pc2lmeVJlcXVlc3Qoc3RvcmUudHJhbnNhY3Rpb24pO1xuICAgIH0pO1xufVxuLyoqXG4gKiBTZXQgbXVsdGlwbGUgdmFsdWVzIGF0IG9uY2UuIFRoaXMgaXMgZmFzdGVyIHRoYW4gY2FsbGluZyBzZXQoKSBtdWx0aXBsZSB0aW1lcy5cbiAqIEl0J3MgYWxzbyBhdG9taWMg4oCTIGlmIG9uZSBvZiB0aGUgcGFpcnMgY2FuJ3QgYmUgYWRkZWQsIG5vbmUgd2lsbCBiZSBhZGRlZC5cbiAqXG4gKiBAcGFyYW0gZW50cmllcyBBcnJheSBvZiBlbnRyaWVzLCB3aGVyZSBlYWNoIGVudHJ5IGlzIGFuIGFycmF5IG9mIGBba2V5LCB2YWx1ZV1gLlxuICogQHBhcmFtIGN1c3RvbVN0b3JlIE1ldGhvZCB0byBnZXQgYSBjdXN0b20gc3RvcmUuIFVzZSB3aXRoIGNhdXRpb24gKHNlZSB0aGUgZG9jcykuXG4gKi9cbmZ1bmN0aW9uIHNldE1hbnkoZW50cmllcywgY3VzdG9tU3RvcmUgPSBkZWZhdWx0R2V0U3RvcmUoKSkge1xuICAgIHJldHVybiBjdXN0b21TdG9yZSgncmVhZHdyaXRlJywgKHN0b3JlKSA9PiB7XG4gICAgICAgIGVudHJpZXMuZm9yRWFjaCgoZW50cnkpID0+IHN0b3JlLnB1dChlbnRyeVsxXSwgZW50cnlbMF0pKTtcbiAgICAgICAgcmV0dXJuIHByb21pc2lmeVJlcXVlc3Qoc3RvcmUudHJhbnNhY3Rpb24pO1xuICAgIH0pO1xufVxuLyoqXG4gKiBHZXQgbXVsdGlwbGUgdmFsdWVzIGJ5IHRoZWlyIGtleXNcbiAqXG4gKiBAcGFyYW0ga2V5c1xuICogQHBhcmFtIGN1c3RvbVN0b3JlIE1ldGhvZCB0byBnZXQgYSBjdXN0b20gc3RvcmUuIFVzZSB3aXRoIGNhdXRpb24gKHNlZSB0aGUgZG9jcykuXG4gKi9cbmZ1bmN0aW9uIGdldE1hbnkoa2V5cywgY3VzdG9tU3RvcmUgPSBkZWZhdWx0R2V0U3RvcmUoKSkge1xuICAgIHJldHVybiBjdXN0b21TdG9yZSgncmVhZG9ubHknLCAoc3RvcmUpID0+IFByb21pc2UuYWxsKGtleXMubWFwKChrZXkpID0+IHByb21pc2lmeVJlcXVlc3Qoc3RvcmUuZ2V0KGtleSkpKSkpO1xufVxuLyoqXG4gKiBVcGRhdGUgYSB2YWx1ZS4gVGhpcyBsZXRzIHlvdSBzZWUgdGhlIG9sZCB2YWx1ZSBhbmQgdXBkYXRlIGl0IGFzIGFuIGF0b21pYyBvcGVyYXRpb24uXG4gKlxuICogQHBhcmFtIGtleVxuICogQHBhcmFtIHVwZGF0ZXIgQSBjYWxsYmFjayB0aGF0IHRha2VzIHRoZSBvbGQgdmFsdWUgYW5kIHJldHVybnMgYSBuZXcgdmFsdWUuXG4gKiBAcGFyYW0gY3VzdG9tU3RvcmUgTWV0aG9kIHRvIGdldCBhIGN1c3RvbSBzdG9yZS4gVXNlIHdpdGggY2F1dGlvbiAoc2VlIHRoZSBkb2NzKS5cbiAqL1xuZnVuY3Rpb24gdXBkYXRlKGtleSwgdXBkYXRlciwgY3VzdG9tU3RvcmUgPSBkZWZhdWx0R2V0U3RvcmUoKSkge1xuICAgIHJldHVybiBjdXN0b21TdG9yZSgncmVhZHdyaXRlJywgKHN0b3JlKSA9PiBcbiAgICAvLyBOZWVkIHRvIGNyZWF0ZSB0aGUgcHJvbWlzZSBtYW51YWxseS5cbiAgICAvLyBJZiBJIHRyeSB0byBjaGFpbiBwcm9taXNlcywgdGhlIHRyYW5zYWN0aW9uIGNsb3NlcyBpbiBicm93c2Vyc1xuICAgIC8vIHRoYXQgdXNlIGEgcHJvbWlzZSBwb2x5ZmlsbCAoSUUxMC8xMSkuXG4gICAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBzdG9yZS5nZXQoa2V5KS5vbnN1Y2Nlc3MgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHN0b3JlLnB1dCh1cGRhdGVyKHRoaXMucmVzdWx0KSwga2V5KTtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHByb21pc2lmeVJlcXVlc3Qoc3RvcmUudHJhbnNhY3Rpb24pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9KSk7XG59XG4vKipcbiAqIERlbGV0ZSBhIHBhcnRpY3VsYXIga2V5IGZyb20gdGhlIHN0b3JlLlxuICpcbiAqIEBwYXJhbSBrZXlcbiAqIEBwYXJhbSBjdXN0b21TdG9yZSBNZXRob2QgdG8gZ2V0IGEgY3VzdG9tIHN0b3JlLiBVc2Ugd2l0aCBjYXV0aW9uIChzZWUgdGhlIGRvY3MpLlxuICovXG5mdW5jdGlvbiBkZWwoa2V5LCBjdXN0b21TdG9yZSA9IGRlZmF1bHRHZXRTdG9yZSgpKSB7XG4gICAgcmV0dXJuIGN1c3RvbVN0b3JlKCdyZWFkd3JpdGUnLCAoc3RvcmUpID0+IHtcbiAgICAgICAgc3RvcmUuZGVsZXRlKGtleSk7XG4gICAgICAgIHJldHVybiBwcm9taXNpZnlSZXF1ZXN0KHN0b3JlLnRyYW5zYWN0aW9uKTtcbiAgICB9KTtcbn1cbi8qKlxuICogRGVsZXRlIG11bHRpcGxlIGtleXMgYXQgb25jZS5cbiAqXG4gKiBAcGFyYW0ga2V5cyBMaXN0IG9mIGtleXMgdG8gZGVsZXRlLlxuICogQHBhcmFtIGN1c3RvbVN0b3JlIE1ldGhvZCB0byBnZXQgYSBjdXN0b20gc3RvcmUuIFVzZSB3aXRoIGNhdXRpb24gKHNlZSB0aGUgZG9jcykuXG4gKi9cbmZ1bmN0aW9uIGRlbE1hbnkoa2V5cywgY3VzdG9tU3RvcmUgPSBkZWZhdWx0R2V0U3RvcmUoKSkge1xuICAgIHJldHVybiBjdXN0b21TdG9yZSgncmVhZHdyaXRlJywgKHN0b3JlKSA9PiB7XG4gICAgICAgIGtleXMuZm9yRWFjaCgoa2V5KSA9PiBzdG9yZS5kZWxldGUoa2V5KSk7XG4gICAgICAgIHJldHVybiBwcm9taXNpZnlSZXF1ZXN0KHN0b3JlLnRyYW5zYWN0aW9uKTtcbiAgICB9KTtcbn1cbi8qKlxuICogQ2xlYXIgYWxsIHZhbHVlcyBpbiB0aGUgc3RvcmUuXG4gKlxuICogQHBhcmFtIGN1c3RvbVN0b3JlIE1ldGhvZCB0byBnZXQgYSBjdXN0b20gc3RvcmUuIFVzZSB3aXRoIGNhdXRpb24gKHNlZSB0aGUgZG9jcykuXG4gKi9cbmZ1bmN0aW9uIGNsZWFyKGN1c3RvbVN0b3JlID0gZGVmYXVsdEdldFN0b3JlKCkpIHtcbiAgICByZXR1cm4gY3VzdG9tU3RvcmUoJ3JlYWR3cml0ZScsIChzdG9yZSkgPT4ge1xuICAgICAgICBzdG9yZS5jbGVhcigpO1xuICAgICAgICByZXR1cm4gcHJvbWlzaWZ5UmVxdWVzdChzdG9yZS50cmFuc2FjdGlvbik7XG4gICAgfSk7XG59XG5mdW5jdGlvbiBlYWNoQ3Vyc29yKHN0b3JlLCBjYWxsYmFjaykge1xuICAgIHN0b3JlLm9wZW5DdXJzb3IoKS5vbnN1Y2Nlc3MgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghdGhpcy5yZXN1bHQpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNhbGxiYWNrKHRoaXMucmVzdWx0KTtcbiAgICAgICAgdGhpcy5yZXN1bHQuY29udGludWUoKTtcbiAgICB9O1xuICAgIHJldHVybiBwcm9taXNpZnlSZXF1ZXN0KHN0b3JlLnRyYW5zYWN0aW9uKTtcbn1cbi8qKlxuICogR2V0IGFsbCBrZXlzIGluIHRoZSBzdG9yZS5cbiAqXG4gKiBAcGFyYW0gY3VzdG9tU3RvcmUgTWV0aG9kIHRvIGdldCBhIGN1c3RvbSBzdG9yZS4gVXNlIHdpdGggY2F1dGlvbiAoc2VlIHRoZSBkb2NzKS5cbiAqL1xuZnVuY3Rpb24ga2V5cyhjdXN0b21TdG9yZSA9IGRlZmF1bHRHZXRTdG9yZSgpKSB7XG4gICAgcmV0dXJuIGN1c3RvbVN0b3JlKCdyZWFkb25seScsIChzdG9yZSkgPT4ge1xuICAgICAgICAvLyBGYXN0IHBhdGggZm9yIG1vZGVybiBicm93c2Vyc1xuICAgICAgICBpZiAoc3RvcmUuZ2V0QWxsS2V5cykge1xuICAgICAgICAgICAgcmV0dXJuIHByb21pc2lmeVJlcXVlc3Qoc3RvcmUuZ2V0QWxsS2V5cygpKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpdGVtcyA9IFtdO1xuICAgICAgICByZXR1cm4gZWFjaEN1cnNvcihzdG9yZSwgKGN1cnNvcikgPT4gaXRlbXMucHVzaChjdXJzb3Iua2V5KSkudGhlbigoKSA9PiBpdGVtcyk7XG4gICAgfSk7XG59XG4vKipcbiAqIEdldCBhbGwgdmFsdWVzIGluIHRoZSBzdG9yZS5cbiAqXG4gKiBAcGFyYW0gY3VzdG9tU3RvcmUgTWV0aG9kIHRvIGdldCBhIGN1c3RvbSBzdG9yZS4gVXNlIHdpdGggY2F1dGlvbiAoc2VlIHRoZSBkb2NzKS5cbiAqL1xuZnVuY3Rpb24gdmFsdWVzKGN1c3RvbVN0b3JlID0gZGVmYXVsdEdldFN0b3JlKCkpIHtcbiAgICByZXR1cm4gY3VzdG9tU3RvcmUoJ3JlYWRvbmx5JywgKHN0b3JlKSA9PiB7XG4gICAgICAgIC8vIEZhc3QgcGF0aCBmb3IgbW9kZXJuIGJyb3dzZXJzXG4gICAgICAgIGlmIChzdG9yZS5nZXRBbGwpIHtcbiAgICAgICAgICAgIHJldHVybiBwcm9taXNpZnlSZXF1ZXN0KHN0b3JlLmdldEFsbCgpKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpdGVtcyA9IFtdO1xuICAgICAgICByZXR1cm4gZWFjaEN1cnNvcihzdG9yZSwgKGN1cnNvcikgPT4gaXRlbXMucHVzaChjdXJzb3IudmFsdWUpKS50aGVuKCgpID0+IGl0ZW1zKTtcbiAgICB9KTtcbn1cbi8qKlxuICogR2V0IGFsbCBlbnRyaWVzIGluIHRoZSBzdG9yZS4gRWFjaCBlbnRyeSBpcyBhbiBhcnJheSBvZiBgW2tleSwgdmFsdWVdYC5cbiAqXG4gKiBAcGFyYW0gY3VzdG9tU3RvcmUgTWV0aG9kIHRvIGdldCBhIGN1c3RvbSBzdG9yZS4gVXNlIHdpdGggY2F1dGlvbiAoc2VlIHRoZSBkb2NzKS5cbiAqL1xuZnVuY3Rpb24gZW50cmllcyhjdXN0b21TdG9yZSA9IGRlZmF1bHRHZXRTdG9yZSgpKSB7XG4gICAgcmV0dXJuIGN1c3RvbVN0b3JlKCdyZWFkb25seScsIChzdG9yZSkgPT4ge1xuICAgICAgICAvLyBGYXN0IHBhdGggZm9yIG1vZGVybiBicm93c2Vyc1xuICAgICAgICAvLyAoYWx0aG91Z2gsIGhvcGVmdWxseSB3ZSdsbCBnZXQgYSBzaW1wbGVyIHBhdGggc29tZSBkYXkpXG4gICAgICAgIGlmIChzdG9yZS5nZXRBbGwgJiYgc3RvcmUuZ2V0QWxsS2V5cykge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgICAgICBwcm9taXNpZnlSZXF1ZXN0KHN0b3JlLmdldEFsbEtleXMoKSksXG4gICAgICAgICAgICAgICAgcHJvbWlzaWZ5UmVxdWVzdChzdG9yZS5nZXRBbGwoKSksXG4gICAgICAgICAgICBdKS50aGVuKChba2V5cywgdmFsdWVzXSkgPT4ga2V5cy5tYXAoKGtleSwgaSkgPT4gW2tleSwgdmFsdWVzW2ldXSkpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gW107XG4gICAgICAgIHJldHVybiBjdXN0b21TdG9yZSgncmVhZG9ubHknLCAoc3RvcmUpID0+IGVhY2hDdXJzb3Ioc3RvcmUsIChjdXJzb3IpID0+IGl0ZW1zLnB1c2goW2N1cnNvci5rZXksIGN1cnNvci52YWx1ZV0pKS50aGVuKCgpID0+IGl0ZW1zKSk7XG4gICAgfSk7XG59XG5cbmV4cG9ydCB7IGNsZWFyLCBjcmVhdGVTdG9yZSwgZGVsLCBkZWxNYW55LCBlbnRyaWVzLCBnZXQsIGdldE1hbnksIGtleXMsIHByb21pc2lmeVJlcXVlc3QsIHNldCwgc2V0TWFueSwgdXBkYXRlLCB2YWx1ZXMgfTtcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/idb-keyval/dist/index.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/preact/dist/preact.module.js": /*!***************************************************!*\ !*** ./node_modules/preact/dist/preact.module.js ***! \***************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Component: () => (/* binding */ k),\n/* harmony export */ Fragment: () => (/* binding */ b),\n/* harmony export */ cloneElement: () => (/* binding */ E),\n/* harmony export */ createContext: () => (/* binding */ G),\n/* harmony export */ createElement: () => (/* binding */ _),\n/* harmony export */ createRef: () => (/* binding */ m),\n/* harmony export */ h: () => (/* binding */ _),\n/* harmony export */ hydrate: () => (/* binding */ D),\n/* harmony export */ isValidElement: () => (/* binding */ t),\n/* harmony export */ options: () => (/* binding */ l),\n/* harmony export */ render: () => (/* binding */ B),\n/* harmony export */ toChildArray: () => (/* binding */ H)\n/* harmony export */ });\nvar n,l,u,t,i,o,r,f,e,c,s,a,h={},v=[],p=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y=Array.isArray;function d(n,l){for(var u in l)n[u]=l[u];return n}function w(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function _(l,u,t){var i,o,r,f={};for(r in u)\"key\"==r?i=u[r]:\"ref\"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),\"function\"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return g(l,f,i,o,null)}function g(n,t,i,o,r){var f={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(f),f}function m(){return{current:null}}function b(n){return n.children}function k(n,l){this.props=n,this.context=l}function x(n,l){if(null==l)return n.__?x(n.__,n.__i+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return\"function\"==typeof n.type?x(n):null}function C(n){var l,u;if(null!=(n=n.__)&&null!=n.__c){for(n.__e=n.__c.base=null,l=0;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e){n.__e=n.__c.base=u.__e;break}return C(n)}}function M(n){(!n.__d&&(n.__d=!0)&&i.push(n)&&!P.__r++||o!==l.debounceRendering)&&((o=l.debounceRendering)||r)(P)}function P(){var n,u,t,o,r,e,c,s;for(i.sort(f);n=i.shift();)n.__d&&(u=i.length,o=void 0,e=(r=(t=n).__v).__e,c=[],s=[],t.__P&&((o=d({},r)).__v=r.__v+1,l.vnode&&l.vnode(o),O(t.__P,o,r,t.__n,t.__P.namespaceURI,32&r.__u?[e]:null,c,null==e?x(r):e,!!(32&r.__u),s),o.__v=r.__v,o.__.__k[o.__i]=o,j(c,o,s),o.__e!=e&&C(o)),i.length>u&&i.sort(f));P.__r=0}function S(n,l,u,t,i,o,r,f,e,c,s){var a,p,y,d,w,_=t&&t.__k||v,g=l.length;for(u.__d=e,$(u,l,_),e=u.__d,a=0;a<g;a++)null!=(y=u.__k[a])&&(p=-1===y.__i?h:_[y.__i]||h,y.__i=a,O(n,y,p,i,o,r,f,e,c,s),d=y.__e,y.ref&&p.ref!=y.ref&&(p.ref&&N(p.ref,null,y),s.push(y.ref,y.__c||d,y)),null==w&&null!=d&&(w=d),65536&y.__u||p.__k===y.__k?e=I(y,e,n):\"function\"==typeof y.type&&void 0!==y.__d?e=y.__d:d&&(e=d.nextSibling),y.__d=void 0,y.__u&=-196609);u.__d=e,u.__e=w}function $(n,l,u){var t,i,o,r,f,e=l.length,c=u.length,s=c,a=0;for(n.__k=[],t=0;t<e;t++)null!=(i=l[t])&&\"boolean\"!=typeof i&&\"function\"!=typeof i?(r=t+a,(i=n.__k[t]=\"string\"==typeof i||\"number\"==typeof i||\"bigint\"==typeof i||i.constructor==String?g(null,i,null,null,null):y(i)?g(b,{children:i},null,null,null):void 0===i.constructor&&i.__b>0?g(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i).__=n,i.__b=n.__b+1,o=null,-1!==(f=i.__i=L(i,u,r,s))&&(s--,(o=u[f])&&(o.__u|=131072)),null==o||null===o.__v?(-1==f&&a--,\"function\"!=typeof i.type&&(i.__u|=65536)):f!==r&&(f==r-1?a--:f==r+1?a++:(f>r?a--:a++,i.__u|=65536))):i=n.__k[t]=null;if(s)for(t=0;t<c;t++)null!=(o=u[t])&&0==(131072&o.__u)&&(o.__e==n.__d&&(n.__d=x(o)),V(o,o))}function I(n,l,u){var t,i;if(\"function\"==typeof n.type){for(t=n.__k,i=0;t&&i<t.length;i++)t[i]&&(t[i].__=n,l=I(t[i],l,u));return l}n.__e!=l&&(l&&n.type&&!u.contains(l)&&(l=x(n)),u.insertBefore(n.__e,l||null),l=n.__e);do{l=l&&l.nextSibling}while(null!=l&&8===l.nodeType);return l}function H(n,l){return l=l||[],null==n||\"boolean\"==typeof n||(y(n)?n.some(function(n){H(n,l)}):l.push(n)),l}function L(n,l,u,t){var i=n.key,o=n.type,r=u-1,f=u+1,e=l[u];if(null===e||e&&i==e.key&&o===e.type&&0==(131072&e.__u))return u;if(t>(null!=e&&0==(131072&e.__u)?1:0))for(;r>=0||f<l.length;){if(r>=0){if((e=l[r])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return r;r--}if(f<l.length){if((e=l[f])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return f;f++}}return-1}function T(n,l,u){\"-\"===l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":\"number\"!=typeof u||p.test(l)?u:u+\"px\"}function A(n,l,u,t,i){var o;n:if(\"style\"===l)if(\"string\"==typeof u)n.style.cssText=u;else{if(\"string\"==typeof t&&(n.style.cssText=t=\"\"),t)for(l in t)u&&l in u||T(n.style,l,\"\");if(u)for(l in u)t&&u[l]===t[l]||T(n.style,l,u[l])}else if(\"o\"===l[0]&&\"n\"===l[1])o=l!==(l=l.replace(/(PointerCapture)$|Capture$/i,\"$1\")),l=l.toLowerCase()in n||\"onFocusOut\"===l||\"onFocusIn\"===l?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?t?u.u=t.u:(u.u=e,n.addEventListener(l,o?s:c,o)):n.removeEventListener(l,o?s:c,o);else{if(\"http://www.w3.org/2000/svg\"==i)l=l.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(\"width\"!=l&&\"height\"!=l&&\"href\"!=l&&\"list\"!=l&&\"form\"!=l&&\"tabIndex\"!=l&&\"download\"!=l&&\"rowSpan\"!=l&&\"colSpan\"!=l&&\"role\"!=l&&\"popover\"!=l&&l in n)try{n[l]=null==u?\"\":u;break n}catch(n){}\"function\"==typeof u||(null==u||!1===u&&\"-\"!==l[4]?n.removeAttribute(l):n.setAttribute(l,\"popover\"==l&&1==u?\"\":u))}}function F(n){return function(u){if(this.l){var t=this.l[u.type+n];if(null==u.t)u.t=e++;else if(u.t<t.u)return;return t(l.event?l.event(u):u)}}}function O(n,u,t,i,o,r,f,e,c,s){var a,h,v,p,w,_,g,m,x,C,M,P,$,I,H,L,T=u.type;if(void 0!==u.constructor)return null;128&t.__u&&(c=!!(32&t.__u),r=[e=u.__e=t.__e]),(a=l.__b)&&a(u);n:if(\"function\"==typeof T)try{if(m=u.props,x=\"prototype\"in T&&T.prototype.render,C=(a=T.contextType)&&i[a.__c],M=a?C?C.props.value:a.__:i,t.__c?g=(h=u.__c=t.__c).__=h.__E:(x?u.__c=h=new T(m,M):(u.__c=h=new k(m,M),h.constructor=T,h.render=q),C&&C.sub(h),h.props=m,h.state||(h.state={}),h.context=M,h.__n=i,v=h.__d=!0,h.__h=[],h._sb=[]),x&&null==h.__s&&(h.__s=h.state),x&&null!=T.getDerivedStateFromProps&&(h.__s==h.state&&(h.__s=d({},h.__s)),d(h.__s,T.getDerivedStateFromProps(m,h.__s))),p=h.props,w=h.state,h.__v=u,v)x&&null==T.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),x&&null!=h.componentDidMount&&h.__h.push(h.componentDidMount);else{if(x&&null==T.getDerivedStateFromProps&&m!==p&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(m,M),!h.__e&&(null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(m,h.__s,M)||u.__v===t.__v)){for(u.__v!==t.__v&&(h.props=m,h.state=h.__s,h.__d=!1),u.__e=t.__e,u.__k=t.__k,u.__k.some(function(n){n&&(n.__=u)}),P=0;P<h._sb.length;P++)h.__h.push(h._sb[P]);h._sb=[],h.__h.length&&f.push(h);break n}null!=h.componentWillUpdate&&h.componentWillUpdate(m,h.__s,M),x&&null!=h.componentDidUpdate&&h.__h.push(function(){h.componentDidUpdate(p,w,_)})}if(h.context=M,h.props=m,h.__P=n,h.__e=!1,$=l.__r,I=0,x){for(h.state=h.__s,h.__d=!1,$&&$(u),a=h.render(h.props,h.state,h.context),H=0;H<h._sb.length;H++)h.__h.push(h._sb[H]);h._sb=[]}else do{h.__d=!1,$&&$(u),a=h.render(h.props,h.state,h.context),h.state=h.__s}while(h.__d&&++I<25);h.state=h.__s,null!=h.getChildContext&&(i=d(d({},i),h.getChildContext())),x&&!v&&null!=h.getSnapshotBeforeUpdate&&(_=h.getSnapshotBeforeUpdate(p,w)),S(n,y(L=null!=a&&a.type===b&&null==a.key?a.props.children:a)?L:[L],u,t,i,o,r,f,e,c,s),h.base=u.__e,u.__u&=-161,h.__h.length&&f.push(h),g&&(h.__E=h.__=null)}catch(n){if(u.__v=null,c||null!=r){for(u.__u|=c?160:32;e&&8===e.nodeType&&e.nextSibling;)e=e.nextSibling;r[r.indexOf(e)]=null,u.__e=e}else u.__e=t.__e,u.__k=t.__k;l.__e(n,u,t)}else null==r&&u.__v===t.__v?(u.__k=t.__k,u.__e=t.__e):u.__e=z(t.__e,u,t,i,o,r,f,c,s);(a=l.diffed)&&a(u)}function j(n,u,t){u.__d=void 0;for(var i=0;i<t.length;i++)N(t[i],t[++i],t[++i]);l.__c&&l.__c(u,n),n.some(function(u){try{n=u.__h,u.__h=[],n.some(function(n){n.call(u)})}catch(n){l.__e(n,u.__v)}})}function z(u,t,i,o,r,f,e,c,s){var a,v,p,d,_,g,m,b=i.props,k=t.props,C=t.type;if(\"svg\"===C?r=\"http://www.w3.org/2000/svg\":\"math\"===C?r=\"http://www.w3.org/1998/Math/MathML\":r||(r=\"http://www.w3.org/1999/xhtml\"),null!=f)for(a=0;a<f.length;a++)if((_=f[a])&&\"setAttribute\"in _==!!C&&(C?_.localName===C:3===_.nodeType)){u=_,f[a]=null;break}if(null==u){if(null===C)return document.createTextNode(k);u=document.createElementNS(r,C,k.is&&k),c&&(l.__m&&l.__m(t,f),c=!1),f=null}if(null===C)b===k||c&&u.data===k||(u.data=k);else{if(f=f&&n.call(u.childNodes),b=i.props||h,!c&&null!=f)for(b={},a=0;a<u.attributes.length;a++)b[(_=u.attributes[a]).name]=_.value;for(a in b)if(_=b[a],\"children\"==a);else if(\"dangerouslySetInnerHTML\"==a)p=_;else if(!(a in k)){if(\"value\"==a&&\"defaultValue\"in k||\"checked\"==a&&\"defaultChecked\"in k)continue;A(u,a,null,_,r)}for(a in k)_=k[a],\"children\"==a?d=_:\"dangerouslySetInnerHTML\"==a?v=_:\"value\"==a?g=_:\"checked\"==a?m=_:c&&\"function\"!=typeof _||b[a]===_||A(u,a,_,b[a],r);if(v)c||p&&(v.__html===p.__html||v.__html===u.innerHTML)||(u.innerHTML=v.__html),t.__k=[];else if(p&&(u.innerHTML=\"\"),S(u,y(d)?d:[d],t,i,o,\"foreignObject\"===C?\"http://www.w3.org/1999/xhtml\":r,f,e,f?f[0]:i.__k&&x(i,0),c,s),null!=f)for(a=f.length;a--;)w(f[a]);c||(a=\"value\",\"progress\"===C&&null==g?u.removeAttribute(\"value\"):void 0!==g&&(g!==u[a]||\"progress\"===C&&!g||\"option\"===C&&g!==b[a])&&A(u,a,g,b[a],r),a=\"checked\",void 0!==m&&m!==u[a]&&A(u,a,m,b[a],r))}return u}function N(n,u,t){try{if(\"function\"==typeof n){var i=\"function\"==typeof n.__u;i&&n.__u(),i&&null==u||(n.__u=n(u))}else n.current=u}catch(n){l.__e(n,t)}}function V(n,u,t){var i,o;if(l.unmount&&l.unmount(n),(i=n.ref)&&(i.current&&i.current!==n.__e||N(i,null,u)),null!=(i=n.__c)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(n){l.__e(n,u)}i.base=i.__P=null}if(i=n.__k)for(o=0;o<i.length;o++)i[o]&&V(i[o],u,t||\"function\"!=typeof n.type);t||w(n.__e),n.__c=n.__=n.__e=n.__d=void 0}function q(n,l,u){return this.constructor(n,u)}function B(u,t,i){var o,r,f,e;l.__&&l.__(u,t),r=(o=\"function\"==typeof i)?null:i&&i.__k||t.__k,f=[],e=[],O(t,u=(!o&&i||t).__k=_(b,null,[u]),r||h,h,t.namespaceURI,!o&&i?[i]:r?null:t.firstChild?n.call(t.childNodes):null,f,!o&&i?i:r?r.__e:t.firstChild,o,e),j(f,u,e)}function D(n,l){B(n,l,D)}function E(l,u,t){var i,o,r,f,e=d({},l.props);for(r in l.type&&l.type.defaultProps&&(f=l.type.defaultProps),u)\"key\"==r?i=u[r]:\"ref\"==r?o=u[r]:e[r]=void 0===u[r]&&void 0!==f?f[r]:u[r];return arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),g(l.type,e,i||l.key,o||l.ref,null)}function G(n,l){var u={__c:l=\"__cC\"+a++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=[],(t={})[l]=this,this.getChildContext=function(){return t},this.componentWillUnmount=function(){u=null},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(function(n){n.__e=!0,M(n)})},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u&&u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=v.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},k.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=d({},this.state),\"function\"==typeof n&&(n=n(d({},u),this.props)),n&&d(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),M(this))},k.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),M(this))},k.prototype.render=b,i=[],r=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},P.__r=0,e=0,c=F(!1),s=F(!0),a=0;\n//# sourceMappingURL=preact.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9wcmVhY3QvZGlzdC9wcmVhY3QubW9kdWxlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdDQUFnQyw0RkFBNEYsZ0JBQWdCLHlCQUF5QixTQUFTLGNBQWMsNkNBQTZDLGtCQUFrQixlQUFlLHFEQUFxRCx3TEFBd0wsdUJBQXVCLHNCQUFzQixPQUFPLGtJQUFrSSw0Q0FBNEMsYUFBYSxPQUFPLGNBQWMsY0FBYyxrQkFBa0IsZ0JBQWdCLDRCQUE0QixnQkFBZ0IsNENBQTRDLFVBQVUsZUFBZSxvREFBb0QsMENBQTBDLGNBQWMsUUFBUSxnQ0FBZ0MsOEJBQThCLGVBQWUsd0NBQXdDLHVCQUF1QixNQUFNLGFBQWEsY0FBYyxvR0FBb0csYUFBYSxvQkFBb0IsY0FBYyxZQUFZLDBFQUEwRSwyTUFBMk0sUUFBUSxrQ0FBa0MsdUNBQXVDLGlDQUFpQyxJQUFJLG9VQUFvVSxnQkFBZ0Isa0JBQWtCLDRDQUE0QyxpQkFBaUIsSUFBSSxzTUFBc00sV0FBVyxnVkFBZ1YsYUFBYSxJQUFJLDJFQUEyRSxrQkFBa0IsUUFBUSw4QkFBOEIsZ0JBQWdCLGNBQWMsb0NBQW9DLFNBQVMsc0ZBQXNGLEdBQUcsbUJBQW1CLCtCQUErQixTQUFTLGdCQUFnQixzRUFBc0UsT0FBTyxlQUFlLG9CQUFvQix3Q0FBd0MsaUVBQWlFLDJDQUEyQyxpQkFBaUIsRUFBRSxTQUFTLDhEQUE4RCxJQUFJLGVBQWUsOERBQThELEtBQUssU0FBUyxrQkFBa0IsZ0dBQWdHLHNCQUFzQixNQUFNLHlEQUF5RCxLQUFLLHNGQUFzRixrREFBa0QsZ01BQWdNLGdHQUFnRyxLQUFLLHdGQUF3RixnS0FBZ0ssa0JBQWtCLFFBQVEsVUFBVSxvSEFBb0gsY0FBYyxtQkFBbUIsV0FBVyx1QkFBdUIscUJBQXFCLHVCQUF1QixpQ0FBaUMsZ0NBQWdDLDZDQUE2QyxzQ0FBc0MsOERBQThELDhCQUE4Qiw2UEFBNlAscUpBQXFKLDJPQUEyTyxLQUFLLG9OQUFvTixxR0FBcUcsWUFBWSxNQUFNLGVBQWUseUJBQXlCLGlDQUFpQyxRQUFRLG1IQUFtSCw0QkFBNEIsRUFBRSx5REFBeUQsNkVBQTZFLGVBQWUseUJBQXlCLFNBQVMsUUFBUSxxRUFBcUUscUJBQXFCLGdEQUFnRCxpUUFBaVEsU0FBUywwQkFBMEIsb0JBQW9CLGlDQUFpQyxpQkFBaUIsNkJBQTZCLDZCQUE2QixhQUFhLHFGQUFxRixtQkFBbUIsa0JBQWtCLGFBQWEsWUFBWSxXQUFXLDBCQUEwQixxQ0FBcUMsSUFBSSxvQ0FBb0MsVUFBVSxFQUFFLFNBQVMsZ0JBQWdCLEVBQUUsOEJBQThCLCtDQUErQyxvSkFBb0osV0FBVyw4RUFBOEUsY0FBYyxNQUFNLFlBQVksOENBQThDLDJFQUEyRSw2Q0FBNkMsS0FBSyw4REFBOEQsS0FBSyxzQkFBc0Isd0NBQXdDLG9DQUFvQyx5Q0FBeUMsbUJBQW1CLCtFQUErRSxnQkFBZ0Isd0pBQXdKLDBGQUEwRiwySkFBMkosSUFBSSxTQUFTLHdNQUF3TSxTQUFTLGtCQUFrQixJQUFJLHlCQUF5QiwrQkFBK0Isb0NBQW9DLGlCQUFpQixTQUFTLFlBQVksa0JBQWtCLFFBQVEsbUdBQW1HLDhCQUE4Qix5QkFBeUIsU0FBUyxXQUFXLGtCQUFrQixtQkFBbUIsV0FBVyxpREFBaUQsMENBQTBDLGtCQUFrQiw2QkFBNkIsa0JBQWtCLFlBQVksd09BQXdPLGdCQUFnQixTQUFTLGtCQUFrQixrQkFBa0IsVUFBVSx5SUFBeUksb0hBQW9ILGdCQUFnQixPQUFPLDZDQUE2QyxxQkFBcUIsc0JBQXNCLFFBQVEsd0NBQXdDLDBDQUEwQyxTQUFTLHNDQUFzQyxPQUFPLHdDQUF3QywrQ0FBK0MsY0FBYyxFQUFFLHNCQUFzQixVQUFVLDZCQUE2QixrQ0FBa0MsMENBQTBDLGVBQWUsOENBQThDLGFBQWEsc0JBQXNCLGNBQWMsT0FBTyx5QkFBeUIsbUtBQW1LLDRCQUE0QixTQUFTLElBQUksU0FBUyxtQkFBbUIsb0NBQW9DLG9DQUFvQyxNQUFNLDhEQUE4RCw0Q0FBNEMsNEVBQTRFLHFDQUFxQyxvREFBb0Qsa0lBQWtJLDJCQUEyQixpQ0FBZ087QUFDL25XIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ByZWFjdC9kaXN0L3ByZWFjdC5tb2R1bGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIG4sbCx1LHQsaSxvLHIsZixlLGMscyxhLGg9e30sdj1bXSxwPS9hY2l0fGV4KD86c3xnfG58cHwkKXxycGh8Z3JpZHxvd3N8bW5jfG50d3xpbmVbY2hdfHpvb3xeb3JkfGl0ZXJhL2kseT1BcnJheS5pc0FycmF5O2Z1bmN0aW9uIGQobixsKXtmb3IodmFyIHUgaW4gbCluW3VdPWxbdV07cmV0dXJuIG59ZnVuY3Rpb24gdyhuKXtuJiZuLnBhcmVudE5vZGUmJm4ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChuKX1mdW5jdGlvbiBfKGwsdSx0KXt2YXIgaSxvLHIsZj17fTtmb3IociBpbiB1KVwia2V5XCI9PXI/aT11W3JdOlwicmVmXCI9PXI/bz11W3JdOmZbcl09dVtyXTtpZihhcmd1bWVudHMubGVuZ3RoPjImJihmLmNoaWxkcmVuPWFyZ3VtZW50cy5sZW5ndGg+Mz9uLmNhbGwoYXJndW1lbnRzLDIpOnQpLFwiZnVuY3Rpb25cIj09dHlwZW9mIGwmJm51bGwhPWwuZGVmYXVsdFByb3BzKWZvcihyIGluIGwuZGVmYXVsdFByb3BzKXZvaWQgMD09PWZbcl0mJihmW3JdPWwuZGVmYXVsdFByb3BzW3JdKTtyZXR1cm4gZyhsLGYsaSxvLG51bGwpfWZ1bmN0aW9uIGcobix0LGksbyxyKXt2YXIgZj17dHlwZTpuLHByb3BzOnQsa2V5OmkscmVmOm8sX19rOm51bGwsX186bnVsbCxfX2I6MCxfX2U6bnVsbCxfX2Q6dm9pZCAwLF9fYzpudWxsLGNvbnN0cnVjdG9yOnZvaWQgMCxfX3Y6bnVsbD09cj8rK3U6cixfX2k6LTEsX191OjB9O3JldHVybiBudWxsPT1yJiZudWxsIT1sLnZub2RlJiZsLnZub2RlKGYpLGZ9ZnVuY3Rpb24gbSgpe3JldHVybntjdXJyZW50Om51bGx9fWZ1bmN0aW9uIGIobil7cmV0dXJuIG4uY2hpbGRyZW59ZnVuY3Rpb24gayhuLGwpe3RoaXMucHJvcHM9bix0aGlzLmNvbnRleHQ9bH1mdW5jdGlvbiB4KG4sbCl7aWYobnVsbD09bClyZXR1cm4gbi5fXz94KG4uX18sbi5fX2krMSk6bnVsbDtmb3IodmFyIHU7bDxuLl9fay5sZW5ndGg7bCsrKWlmKG51bGwhPSh1PW4uX19rW2xdKSYmbnVsbCE9dS5fX2UpcmV0dXJuIHUuX19lO3JldHVyblwiZnVuY3Rpb25cIj09dHlwZW9mIG4udHlwZT94KG4pOm51bGx9ZnVuY3Rpb24gQyhuKXt2YXIgbCx1O2lmKG51bGwhPShuPW4uX18pJiZudWxsIT1uLl9fYyl7Zm9yKG4uX19lPW4uX19jLmJhc2U9bnVsbCxsPTA7bDxuLl9fay5sZW5ndGg7bCsrKWlmKG51bGwhPSh1PW4uX19rW2xdKSYmbnVsbCE9dS5fX2Upe24uX19lPW4uX19jLmJhc2U9dS5fX2U7YnJlYWt9cmV0dXJuIEMobil9fWZ1bmN0aW9uIE0obil7KCFuLl9fZCYmKG4uX19kPSEwKSYmaS5wdXNoKG4pJiYhUC5fX3IrK3x8byE9PWwuZGVib3VuY2VSZW5kZXJpbmcpJiYoKG89bC5kZWJvdW5jZVJlbmRlcmluZyl8fHIpKFApfWZ1bmN0aW9uIFAoKXt2YXIgbix1LHQsbyxyLGUsYyxzO2ZvcihpLnNvcnQoZik7bj1pLnNoaWZ0KCk7KW4uX19kJiYodT1pLmxlbmd0aCxvPXZvaWQgMCxlPShyPSh0PW4pLl9fdikuX19lLGM9W10scz1bXSx0Ll9fUCYmKChvPWQoe30scikpLl9fdj1yLl9fdisxLGwudm5vZGUmJmwudm5vZGUobyksTyh0Ll9fUCxvLHIsdC5fX24sdC5fX1AubmFtZXNwYWNlVVJJLDMyJnIuX191P1tlXTpudWxsLGMsbnVsbD09ZT94KHIpOmUsISEoMzImci5fX3UpLHMpLG8uX192PXIuX192LG8uX18uX19rW28uX19pXT1vLGooYyxvLHMpLG8uX19lIT1lJiZDKG8pKSxpLmxlbmd0aD51JiZpLnNvcnQoZikpO1AuX19yPTB9ZnVuY3Rpb24gUyhuLGwsdSx0LGksbyxyLGYsZSxjLHMpe3ZhciBhLHAseSxkLHcsXz10JiZ0Ll9fa3x8dixnPWwubGVuZ3RoO2Zvcih1Ll9fZD1lLCQodSxsLF8pLGU9dS5fX2QsYT0wO2E8ZzthKyspbnVsbCE9KHk9dS5fX2tbYV0pJiYocD0tMT09PXkuX19pP2g6X1t5Ll9faV18fGgseS5fX2k9YSxPKG4seSxwLGksbyxyLGYsZSxjLHMpLGQ9eS5fX2UseS5yZWYmJnAucmVmIT15LnJlZiYmKHAucmVmJiZOKHAucmVmLG51bGwseSkscy5wdXNoKHkucmVmLHkuX19jfHxkLHkpKSxudWxsPT13JiZudWxsIT1kJiYodz1kKSw2NTUzNiZ5Ll9fdXx8cC5fX2s9PT15Ll9faz9lPUkoeSxlLG4pOlwiZnVuY3Rpb25cIj09dHlwZW9mIHkudHlwZSYmdm9pZCAwIT09eS5fX2Q/ZT15Ll9fZDpkJiYoZT1kLm5leHRTaWJsaW5nKSx5Ll9fZD12b2lkIDAseS5fX3UmPS0xOTY2MDkpO3UuX19kPWUsdS5fX2U9d31mdW5jdGlvbiAkKG4sbCx1KXt2YXIgdCxpLG8scixmLGU9bC5sZW5ndGgsYz11Lmxlbmd0aCxzPWMsYT0wO2ZvcihuLl9faz1bXSx0PTA7dDxlO3QrKyludWxsIT0oaT1sW3RdKSYmXCJib29sZWFuXCIhPXR5cGVvZiBpJiZcImZ1bmN0aW9uXCIhPXR5cGVvZiBpPyhyPXQrYSwoaT1uLl9fa1t0XT1cInN0cmluZ1wiPT10eXBlb2YgaXx8XCJudW1iZXJcIj09dHlwZW9mIGl8fFwiYmlnaW50XCI9PXR5cGVvZiBpfHxpLmNvbnN0cnVjdG9yPT1TdHJpbmc/ZyhudWxsLGksbnVsbCxudWxsLG51bGwpOnkoaSk/ZyhiLHtjaGlsZHJlbjppfSxudWxsLG51bGwsbnVsbCk6dm9pZCAwPT09aS5jb25zdHJ1Y3RvciYmaS5fX2I+MD9nKGkudHlwZSxpLnByb3BzLGkua2V5LGkucmVmP2kucmVmOm51bGwsaS5fX3YpOmkpLl9fPW4saS5fX2I9bi5fX2IrMSxvPW51bGwsLTEhPT0oZj1pLl9faT1MKGksdSxyLHMpKSYmKHMtLSwobz11W2ZdKSYmKG8uX191fD0xMzEwNzIpKSxudWxsPT1vfHxudWxsPT09by5fX3Y/KC0xPT1mJiZhLS0sXCJmdW5jdGlvblwiIT10eXBlb2YgaS50eXBlJiYoaS5fX3V8PTY1NTM2KSk6ZiE9PXImJihmPT1yLTE/YS0tOmY9PXIrMT9hKys6KGY+cj9hLS06YSsrLGkuX191fD02NTUzNikpKTppPW4uX19rW3RdPW51bGw7aWYocylmb3IodD0wO3Q8Yzt0KyspbnVsbCE9KG89dVt0XSkmJjA9PSgxMzEwNzImby5fX3UpJiYoby5fX2U9PW4uX19kJiYobi5fX2Q9eChvKSksVihvLG8pKX1mdW5jdGlvbiBJKG4sbCx1KXt2YXIgdCxpO2lmKFwiZnVuY3Rpb25cIj09dHlwZW9mIG4udHlwZSl7Zm9yKHQ9bi5fX2ssaT0wO3QmJmk8dC5sZW5ndGg7aSsrKXRbaV0mJih0W2ldLl9fPW4sbD1JKHRbaV0sbCx1KSk7cmV0dXJuIGx9bi5fX2UhPWwmJihsJiZuLnR5cGUmJiF1LmNvbnRhaW5zKGwpJiYobD14KG4pKSx1Lmluc2VydEJlZm9yZShuLl9fZSxsfHxudWxsKSxsPW4uX19lKTtkb3tsPWwmJmwubmV4dFNpYmxpbmd9d2hpbGUobnVsbCE9bCYmOD09PWwubm9kZVR5cGUpO3JldHVybiBsfWZ1bmN0aW9uIEgobixsKXtyZXR1cm4gbD1sfHxbXSxudWxsPT1ufHxcImJvb2xlYW5cIj09dHlwZW9mIG58fCh5KG4pP24uc29tZShmdW5jdGlvbihuKXtIKG4sbCl9KTpsLnB1c2gobikpLGx9ZnVuY3Rpb24gTChuLGwsdSx0KXt2YXIgaT1uLmtleSxvPW4udHlwZSxyPXUtMSxmPXUrMSxlPWxbdV07aWYobnVsbD09PWV8fGUmJmk9PWUua2V5JiZvPT09ZS50eXBlJiYwPT0oMTMxMDcyJmUuX191KSlyZXR1cm4gdTtpZih0PihudWxsIT1lJiYwPT0oMTMxMDcyJmUuX191KT8xOjApKWZvcig7cj49MHx8ZjxsLmxlbmd0aDspe2lmKHI+PTApe2lmKChlPWxbcl0pJiYwPT0oMTMxMDcyJmUuX191KSYmaT09ZS5rZXkmJm89PT1lLnR5cGUpcmV0dXJuIHI7ci0tfWlmKGY8bC5sZW5ndGgpe2lmKChlPWxbZl0pJiYwPT0oMTMxMDcyJmUuX191KSYmaT09ZS5rZXkmJm89PT1lLnR5cGUpcmV0dXJuIGY7ZisrfX1yZXR1cm4tMX1mdW5jdGlvbiBUKG4sbCx1KXtcIi1cIj09PWxbMF0/bi5zZXRQcm9wZXJ0eShsLG51bGw9PXU/XCJcIjp1KTpuW2xdPW51bGw9PXU/XCJcIjpcIm51bWJlclwiIT10eXBlb2YgdXx8cC50ZXN0KGwpP3U6dStcInB4XCJ9ZnVuY3Rpb24gQShuLGwsdSx0LGkpe3ZhciBvO246aWYoXCJzdHlsZVwiPT09bClpZihcInN0cmluZ1wiPT10eXBlb2YgdSluLnN0eWxlLmNzc1RleHQ9dTtlbHNle2lmKFwic3RyaW5nXCI9PXR5cGVvZiB0JiYobi5zdHlsZS5jc3NUZXh0PXQ9XCJcIiksdClmb3IobCBpbiB0KXUmJmwgaW4gdXx8VChuLnN0eWxlLGwsXCJcIik7aWYodSlmb3IobCBpbiB1KXQmJnVbbF09PT10W2xdfHxUKG4uc3R5bGUsbCx1W2xdKX1lbHNlIGlmKFwib1wiPT09bFswXSYmXCJuXCI9PT1sWzFdKW89bCE9PShsPWwucmVwbGFjZSgvKFBvaW50ZXJDYXB0dXJlKSR8Q2FwdHVyZSQvaSxcIiQxXCIpKSxsPWwudG9Mb3dlckNhc2UoKWluIG58fFwib25Gb2N1c091dFwiPT09bHx8XCJvbkZvY3VzSW5cIj09PWw/bC50b0xvd2VyQ2FzZSgpLnNsaWNlKDIpOmwuc2xpY2UoMiksbi5sfHwobi5sPXt9KSxuLmxbbCtvXT11LHU/dD91LnU9dC51Oih1LnU9ZSxuLmFkZEV2ZW50TGlzdGVuZXIobCxvP3M6YyxvKSk6bi5yZW1vdmVFdmVudExpc3RlbmVyKGwsbz9zOmMsbyk7ZWxzZXtpZihcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI9PWkpbD1sLnJlcGxhY2UoL3hsaW5rKEh8OmgpLyxcImhcIikucmVwbGFjZSgvc05hbWUkLyxcInNcIik7ZWxzZSBpZihcIndpZHRoXCIhPWwmJlwiaGVpZ2h0XCIhPWwmJlwiaHJlZlwiIT1sJiZcImxpc3RcIiE9bCYmXCJmb3JtXCIhPWwmJlwidGFiSW5kZXhcIiE9bCYmXCJkb3dubG9hZFwiIT1sJiZcInJvd1NwYW5cIiE9bCYmXCJjb2xTcGFuXCIhPWwmJlwicm9sZVwiIT1sJiZcInBvcG92ZXJcIiE9bCYmbCBpbiBuKXRyeXtuW2xdPW51bGw9PXU/XCJcIjp1O2JyZWFrIG59Y2F0Y2gobil7fVwiZnVuY3Rpb25cIj09dHlwZW9mIHV8fChudWxsPT11fHwhMT09PXUmJlwiLVwiIT09bFs0XT9uLnJlbW92ZUF0dHJpYnV0ZShsKTpuLnNldEF0dHJpYnV0ZShsLFwicG9wb3ZlclwiPT1sJiYxPT11P1wiXCI6dSkpfX1mdW5jdGlvbiBGKG4pe3JldHVybiBmdW5jdGlvbih1KXtpZih0aGlzLmwpe3ZhciB0PXRoaXMubFt1LnR5cGUrbl07aWYobnVsbD09dS50KXUudD1lKys7ZWxzZSBpZih1LnQ8dC51KXJldHVybjtyZXR1cm4gdChsLmV2ZW50P2wuZXZlbnQodSk6dSl9fX1mdW5jdGlvbiBPKG4sdSx0LGksbyxyLGYsZSxjLHMpe3ZhciBhLGgsdixwLHcsXyxnLG0seCxDLE0sUCwkLEksSCxMLFQ9dS50eXBlO2lmKHZvaWQgMCE9PXUuY29uc3RydWN0b3IpcmV0dXJuIG51bGw7MTI4JnQuX191JiYoYz0hISgzMiZ0Ll9fdSkscj1bZT11Ll9fZT10Ll9fZV0pLChhPWwuX19iKSYmYSh1KTtuOmlmKFwiZnVuY3Rpb25cIj09dHlwZW9mIFQpdHJ5e2lmKG09dS5wcm9wcyx4PVwicHJvdG90eXBlXCJpbiBUJiZULnByb3RvdHlwZS5yZW5kZXIsQz0oYT1ULmNvbnRleHRUeXBlKSYmaVthLl9fY10sTT1hP0M/Qy5wcm9wcy52YWx1ZTphLl9fOmksdC5fX2M/Zz0oaD11Ll9fYz10Ll9fYykuX189aC5fX0U6KHg/dS5fX2M9aD1uZXcgVChtLE0pOih1Ll9fYz1oPW5ldyBrKG0sTSksaC5jb25zdHJ1Y3Rvcj1ULGgucmVuZGVyPXEpLEMmJkMuc3ViKGgpLGgucHJvcHM9bSxoLnN0YXRlfHwoaC5zdGF0ZT17fSksaC5jb250ZXh0PU0saC5fX249aSx2PWguX19kPSEwLGguX19oPVtdLGguX3NiPVtdKSx4JiZudWxsPT1oLl9fcyYmKGguX19zPWguc3RhdGUpLHgmJm51bGwhPVQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzJiYoaC5fX3M9PWguc3RhdGUmJihoLl9fcz1kKHt9LGguX19zKSksZChoLl9fcyxULmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhtLGguX19zKSkpLHA9aC5wcm9wcyx3PWguc3RhdGUsaC5fX3Y9dSx2KXgmJm51bGw9PVQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzJiZudWxsIT1oLmNvbXBvbmVudFdpbGxNb3VudCYmaC5jb21wb25lbnRXaWxsTW91bnQoKSx4JiZudWxsIT1oLmNvbXBvbmVudERpZE1vdW50JiZoLl9faC5wdXNoKGguY29tcG9uZW50RGlkTW91bnQpO2Vsc2V7aWYoeCYmbnVsbD09VC5nZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMmJm0hPT1wJiZudWxsIT1oLmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJmguY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyhtLE0pLCFoLl9fZSYmKG51bGwhPWguc2hvdWxkQ29tcG9uZW50VXBkYXRlJiYhMT09PWguc2hvdWxkQ29tcG9uZW50VXBkYXRlKG0saC5fX3MsTSl8fHUuX192PT09dC5fX3YpKXtmb3IodS5fX3YhPT10Ll9fdiYmKGgucHJvcHM9bSxoLnN0YXRlPWguX19zLGguX19kPSExKSx1Ll9fZT10Ll9fZSx1Ll9faz10Ll9fayx1Ll9fay5zb21lKGZ1bmN0aW9uKG4pe24mJihuLl9fPXUpfSksUD0wO1A8aC5fc2IubGVuZ3RoO1ArKyloLl9faC5wdXNoKGguX3NiW1BdKTtoLl9zYj1bXSxoLl9faC5sZW5ndGgmJmYucHVzaChoKTticmVhayBufW51bGwhPWguY29tcG9uZW50V2lsbFVwZGF0ZSYmaC5jb21wb25lbnRXaWxsVXBkYXRlKG0saC5fX3MsTSkseCYmbnVsbCE9aC5jb21wb25lbnREaWRVcGRhdGUmJmguX19oLnB1c2goZnVuY3Rpb24oKXtoLmNvbXBvbmVudERpZFVwZGF0ZShwLHcsXyl9KX1pZihoLmNvbnRleHQ9TSxoLnByb3BzPW0saC5fX1A9bixoLl9fZT0hMSwkPWwuX19yLEk9MCx4KXtmb3IoaC5zdGF0ZT1oLl9fcyxoLl9fZD0hMSwkJiYkKHUpLGE9aC5yZW5kZXIoaC5wcm9wcyxoLnN0YXRlLGguY29udGV4dCksSD0wO0g8aC5fc2IubGVuZ3RoO0grKyloLl9faC5wdXNoKGguX3NiW0hdKTtoLl9zYj1bXX1lbHNlIGRve2guX19kPSExLCQmJiQodSksYT1oLnJlbmRlcihoLnByb3BzLGguc3RhdGUsaC5jb250ZXh0KSxoLnN0YXRlPWguX19zfXdoaWxlKGguX19kJiYrK0k8MjUpO2guc3RhdGU9aC5fX3MsbnVsbCE9aC5nZXRDaGlsZENvbnRleHQmJihpPWQoZCh7fSxpKSxoLmdldENoaWxkQ29udGV4dCgpKSkseCYmIXYmJm51bGwhPWguZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUmJihfPWguZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUocCx3KSksUyhuLHkoTD1udWxsIT1hJiZhLnR5cGU9PT1iJiZudWxsPT1hLmtleT9hLnByb3BzLmNoaWxkcmVuOmEpP0w6W0xdLHUsdCxpLG8scixmLGUsYyxzKSxoLmJhc2U9dS5fX2UsdS5fX3UmPS0xNjEsaC5fX2gubGVuZ3RoJiZmLnB1c2goaCksZyYmKGguX19FPWguX189bnVsbCl9Y2F0Y2gobil7aWYodS5fX3Y9bnVsbCxjfHxudWxsIT1yKXtmb3IodS5fX3V8PWM/MTYwOjMyO2UmJjg9PT1lLm5vZGVUeXBlJiZlLm5leHRTaWJsaW5nOyllPWUubmV4dFNpYmxpbmc7cltyLmluZGV4T2YoZSldPW51bGwsdS5fX2U9ZX1lbHNlIHUuX19lPXQuX19lLHUuX19rPXQuX19rO2wuX19lKG4sdSx0KX1lbHNlIG51bGw9PXImJnUuX192PT09dC5fX3Y/KHUuX19rPXQuX19rLHUuX19lPXQuX19lKTp1Ll9fZT16KHQuX19lLHUsdCxpLG8scixmLGMscyk7KGE9bC5kaWZmZWQpJiZhKHUpfWZ1bmN0aW9uIGoobix1LHQpe3UuX19kPXZvaWQgMDtmb3IodmFyIGk9MDtpPHQubGVuZ3RoO2krKylOKHRbaV0sdFsrK2ldLHRbKytpXSk7bC5fX2MmJmwuX19jKHUsbiksbi5zb21lKGZ1bmN0aW9uKHUpe3RyeXtuPXUuX19oLHUuX19oPVtdLG4uc29tZShmdW5jdGlvbihuKXtuLmNhbGwodSl9KX1jYXRjaChuKXtsLl9fZShuLHUuX192KX19KX1mdW5jdGlvbiB6KHUsdCxpLG8scixmLGUsYyxzKXt2YXIgYSx2LHAsZCxfLGcsbSxiPWkucHJvcHMsaz10LnByb3BzLEM9dC50eXBlO2lmKFwic3ZnXCI9PT1DP3I9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiOlwibWF0aFwiPT09Qz9yPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTFwiOnJ8fChyPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbFwiKSxudWxsIT1mKWZvcihhPTA7YTxmLmxlbmd0aDthKyspaWYoKF89ZlthXSkmJlwic2V0QXR0cmlidXRlXCJpbiBfPT0hIUMmJihDP18ubG9jYWxOYW1lPT09QzozPT09Xy5ub2RlVHlwZSkpe3U9XyxmW2FdPW51bGw7YnJlYWt9aWYobnVsbD09dSl7aWYobnVsbD09PUMpcmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGspO3U9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKHIsQyxrLmlzJiZrKSxjJiYobC5fX20mJmwuX19tKHQsZiksYz0hMSksZj1udWxsfWlmKG51bGw9PT1DKWI9PT1rfHxjJiZ1LmRhdGE9PT1rfHwodS5kYXRhPWspO2Vsc2V7aWYoZj1mJiZuLmNhbGwodS5jaGlsZE5vZGVzKSxiPWkucHJvcHN8fGgsIWMmJm51bGwhPWYpZm9yKGI9e30sYT0wO2E8dS5hdHRyaWJ1dGVzLmxlbmd0aDthKyspYlsoXz11LmF0dHJpYnV0ZXNbYV0pLm5hbWVdPV8udmFsdWU7Zm9yKGEgaW4gYilpZihfPWJbYV0sXCJjaGlsZHJlblwiPT1hKTtlbHNlIGlmKFwiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUxcIj09YSlwPV87ZWxzZSBpZighKGEgaW4gaykpe2lmKFwidmFsdWVcIj09YSYmXCJkZWZhdWx0VmFsdWVcImluIGt8fFwiY2hlY2tlZFwiPT1hJiZcImRlZmF1bHRDaGVja2VkXCJpbiBrKWNvbnRpbnVlO0EodSxhLG51bGwsXyxyKX1mb3IoYSBpbiBrKV89a1thXSxcImNoaWxkcmVuXCI9PWE/ZD1fOlwiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUxcIj09YT92PV86XCJ2YWx1ZVwiPT1hP2c9XzpcImNoZWNrZWRcIj09YT9tPV86YyYmXCJmdW5jdGlvblwiIT10eXBlb2YgX3x8YlthXT09PV98fEEodSxhLF8sYlthXSxyKTtpZih2KWN8fHAmJih2Ll9faHRtbD09PXAuX19odG1sfHx2Ll9faHRtbD09PXUuaW5uZXJIVE1MKXx8KHUuaW5uZXJIVE1MPXYuX19odG1sKSx0Ll9faz1bXTtlbHNlIGlmKHAmJih1LmlubmVySFRNTD1cIlwiKSxTKHUseShkKT9kOltkXSx0LGksbyxcImZvcmVpZ25PYmplY3RcIj09PUM/XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sXCI6cixmLGUsZj9mWzBdOmkuX19rJiZ4KGksMCksYyxzKSxudWxsIT1mKWZvcihhPWYubGVuZ3RoO2EtLTspdyhmW2FdKTtjfHwoYT1cInZhbHVlXCIsXCJwcm9ncmVzc1wiPT09QyYmbnVsbD09Zz91LnJlbW92ZUF0dHJpYnV0ZShcInZhbHVlXCIpOnZvaWQgMCE9PWcmJihnIT09dVthXXx8XCJwcm9ncmVzc1wiPT09QyYmIWd8fFwib3B0aW9uXCI9PT1DJiZnIT09YlthXSkmJkEodSxhLGcsYlthXSxyKSxhPVwiY2hlY2tlZFwiLHZvaWQgMCE9PW0mJm0hPT11W2FdJiZBKHUsYSxtLGJbYV0scikpfXJldHVybiB1fWZ1bmN0aW9uIE4obix1LHQpe3RyeXtpZihcImZ1bmN0aW9uXCI9PXR5cGVvZiBuKXt2YXIgaT1cImZ1bmN0aW9uXCI9PXR5cGVvZiBuLl9fdTtpJiZuLl9fdSgpLGkmJm51bGw9PXV8fChuLl9fdT1uKHUpKX1lbHNlIG4uY3VycmVudD11fWNhdGNoKG4pe2wuX19lKG4sdCl9fWZ1bmN0aW9uIFYobix1LHQpe3ZhciBpLG87aWYobC51bm1vdW50JiZsLnVubW91bnQobiksKGk9bi5yZWYpJiYoaS5jdXJyZW50JiZpLmN1cnJlbnQhPT1uLl9fZXx8TihpLG51bGwsdSkpLG51bGwhPShpPW4uX19jKSl7aWYoaS5jb21wb25lbnRXaWxsVW5tb3VudCl0cnl7aS5jb21wb25lbnRXaWxsVW5tb3VudCgpfWNhdGNoKG4pe2wuX19lKG4sdSl9aS5iYXNlPWkuX19QPW51bGx9aWYoaT1uLl9faylmb3Iobz0wO288aS5sZW5ndGg7bysrKWlbb10mJlYoaVtvXSx1LHR8fFwiZnVuY3Rpb25cIiE9dHlwZW9mIG4udHlwZSk7dHx8dyhuLl9fZSksbi5fX2M9bi5fXz1uLl9fZT1uLl9fZD12b2lkIDB9ZnVuY3Rpb24gcShuLGwsdSl7cmV0dXJuIHRoaXMuY29uc3RydWN0b3Iobix1KX1mdW5jdGlvbiBCKHUsdCxpKXt2YXIgbyxyLGYsZTtsLl9fJiZsLl9fKHUsdCkscj0obz1cImZ1bmN0aW9uXCI9PXR5cGVvZiBpKT9udWxsOmkmJmkuX19rfHx0Ll9fayxmPVtdLGU9W10sTyh0LHU9KCFvJiZpfHx0KS5fX2s9XyhiLG51bGwsW3VdKSxyfHxoLGgsdC5uYW1lc3BhY2VVUkksIW8mJmk/W2ldOnI/bnVsbDp0LmZpcnN0Q2hpbGQ/bi5jYWxsKHQuY2hpbGROb2Rlcyk6bnVsbCxmLCFvJiZpP2k6cj9yLl9fZTp0LmZpcnN0Q2hpbGQsbyxlKSxqKGYsdSxlKX1mdW5jdGlvbiBEKG4sbCl7QihuLGwsRCl9ZnVuY3Rpb24gRShsLHUsdCl7dmFyIGksbyxyLGYsZT1kKHt9LGwucHJvcHMpO2ZvcihyIGluIGwudHlwZSYmbC50eXBlLmRlZmF1bHRQcm9wcyYmKGY9bC50eXBlLmRlZmF1bHRQcm9wcyksdSlcImtleVwiPT1yP2k9dVtyXTpcInJlZlwiPT1yP289dVtyXTplW3JdPXZvaWQgMD09PXVbcl0mJnZvaWQgMCE9PWY/ZltyXTp1W3JdO3JldHVybiBhcmd1bWVudHMubGVuZ3RoPjImJihlLmNoaWxkcmVuPWFyZ3VtZW50cy5sZW5ndGg+Mz9uLmNhbGwoYXJndW1lbnRzLDIpOnQpLGcobC50eXBlLGUsaXx8bC5rZXksb3x8bC5yZWYsbnVsbCl9ZnVuY3Rpb24gRyhuLGwpe3ZhciB1PXtfX2M6bD1cIl9fY0NcIithKyssX186bixDb25zdW1lcjpmdW5jdGlvbihuLGwpe3JldHVybiBuLmNoaWxkcmVuKGwpfSxQcm92aWRlcjpmdW5jdGlvbihuKXt2YXIgdSx0O3JldHVybiB0aGlzLmdldENoaWxkQ29udGV4dHx8KHU9W10sKHQ9e30pW2xdPXRoaXMsdGhpcy5nZXRDaGlsZENvbnRleHQ9ZnVuY3Rpb24oKXtyZXR1cm4gdH0sdGhpcy5jb21wb25lbnRXaWxsVW5tb3VudD1mdW5jdGlvbigpe3U9bnVsbH0sdGhpcy5zaG91bGRDb21wb25lbnRVcGRhdGU9ZnVuY3Rpb24obil7dGhpcy5wcm9wcy52YWx1ZSE9PW4udmFsdWUmJnUuc29tZShmdW5jdGlvbihuKXtuLl9fZT0hMCxNKG4pfSl9LHRoaXMuc3ViPWZ1bmN0aW9uKG4pe3UucHVzaChuKTt2YXIgbD1uLmNvbXBvbmVudFdpbGxVbm1vdW50O24uY29tcG9uZW50V2lsbFVubW91bnQ9ZnVuY3Rpb24oKXt1JiZ1LnNwbGljZSh1LmluZGV4T2YobiksMSksbCYmbC5jYWxsKG4pfX0pLG4uY2hpbGRyZW59fTtyZXR1cm4gdS5Qcm92aWRlci5fXz11LkNvbnN1bWVyLmNvbnRleHRUeXBlPXV9bj12LnNsaWNlLGw9e19fZTpmdW5jdGlvbihuLGwsdSx0KXtmb3IodmFyIGksbyxyO2w9bC5fXzspaWYoKGk9bC5fX2MpJiYhaS5fXyl0cnl7aWYoKG89aS5jb25zdHJ1Y3RvcikmJm51bGwhPW8uZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yJiYoaS5zZXRTdGF0ZShvLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcihuKSkscj1pLl9fZCksbnVsbCE9aS5jb21wb25lbnREaWRDYXRjaCYmKGkuY29tcG9uZW50RGlkQ2F0Y2gobix0fHx7fSkscj1pLl9fZCkscilyZXR1cm4gaS5fX0U9aX1jYXRjaChsKXtuPWx9dGhyb3cgbn19LHU9MCx0PWZ1bmN0aW9uKG4pe3JldHVybiBudWxsIT1uJiZudWxsPT1uLmNvbnN0cnVjdG9yfSxrLnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihuLGwpe3ZhciB1O3U9bnVsbCE9dGhpcy5fX3MmJnRoaXMuX19zIT09dGhpcy5zdGF0ZT90aGlzLl9fczp0aGlzLl9fcz1kKHt9LHRoaXMuc3RhdGUpLFwiZnVuY3Rpb25cIj09dHlwZW9mIG4mJihuPW4oZCh7fSx1KSx0aGlzLnByb3BzKSksbiYmZCh1LG4pLG51bGwhPW4mJnRoaXMuX192JiYobCYmdGhpcy5fc2IucHVzaChsKSxNKHRoaXMpKX0say5wcm90b3R5cGUuZm9yY2VVcGRhdGU9ZnVuY3Rpb24obil7dGhpcy5fX3YmJih0aGlzLl9fZT0hMCxuJiZ0aGlzLl9faC5wdXNoKG4pLE0odGhpcykpfSxrLnByb3RvdHlwZS5yZW5kZXI9YixpPVtdLHI9XCJmdW5jdGlvblwiPT10eXBlb2YgUHJvbWlzZT9Qcm9taXNlLnByb3RvdHlwZS50aGVuLmJpbmQoUHJvbWlzZS5yZXNvbHZlKCkpOnNldFRpbWVvdXQsZj1mdW5jdGlvbihuLGwpe3JldHVybiBuLl9fdi5fX2ItbC5fX3YuX19ifSxQLl9fcj0wLGU9MCxjPUYoITEpLHM9RighMCksYT0wO2V4cG9ydHtrIGFzIENvbXBvbmVudCxiIGFzIEZyYWdtZW50LEUgYXMgY2xvbmVFbGVtZW50LEcgYXMgY3JlYXRlQ29udGV4dCxfIGFzIGNyZWF0ZUVsZW1lbnQsbSBhcyBjcmVhdGVSZWYsXyBhcyBoLEQgYXMgaHlkcmF0ZSx0IGFzIGlzVmFsaWRFbGVtZW50LGwgYXMgb3B0aW9ucyxCIGFzIHJlbmRlcixIIGFzIHRvQ2hpbGRBcnJheX07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wcmVhY3QubW9kdWxlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/preact/dist/preact.module.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/preact/hooks/dist/hooks.module.js": /*!********************************************************!*\ !*** ./node_modules/preact/hooks/dist/hooks.module.js ***! \********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useCallback: () => (/* binding */ q),\n/* harmony export */ useContext: () => (/* binding */ x),\n/* harmony export */ useDebugValue: () => (/* binding */ P),\n/* harmony export */ useEffect: () => (/* binding */ y),\n/* harmony export */ useErrorBoundary: () => (/* binding */ b),\n/* harmony export */ useId: () => (/* binding */ g),\n/* harmony export */ useImperativeHandle: () => (/* binding */ F),\n/* harmony export */ useLayoutEffect: () => (/* binding */ _),\n/* harmony export */ useMemo: () => (/* binding */ T),\n/* harmony export */ useReducer: () => (/* binding */ p),\n/* harmony export */ useRef: () => (/* binding */ A),\n/* harmony export */ useState: () => (/* binding */ h)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"(app-pages-browser)/./node_modules/preact/dist/preact.module.js\");\nvar t,r,u,i,o=0,f=[],c=preact__WEBPACK_IMPORTED_MODULE_0__.options,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function d(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function h(n){return o=1,p(D,n)}function p(n,u,i){var o=d(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=!1;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),!(!i&&o.__c.props===n)&&(!c||c.call(this,n,t,r))};r.u=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=d(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__H.__h.push(i))}function _(n,u){var i=d(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){return\"function\"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))}function T(n,r){var u=d(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=d(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=d(t++,10),i=h();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=d(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__=\"P\"+i[0]+\"-\"+i[1]++}return n.__}function j(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(z),n.__H.__h.forEach(B),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.i=n.__N=void 0})):(i.__h.forEach(z),i.__h.forEach(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.i=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k=\"function\"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;\"function\"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return\"function\"==typeof t?t(n):t}\n//# sourceMappingURL=hooks.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9wcmVhY3QvaG9va3MvZGlzdC9ob29rcy5tb2R1bGUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFpQyx1QkFBdUIsMkNBQUMsdURBQXVELGdCQUFnQiwyQkFBMkIscUJBQXFCLGFBQWEsRUFBRSxtQ0FBbUMsVUFBVSxjQUFjLGtCQUFrQixrQkFBa0IsZUFBZSx1REFBdUQsd0NBQXdDLDJDQUEyQyxHQUFHLGlCQUFpQixzQkFBc0IsdUJBQXVCLHNDQUFzQyxjQUFjLEVBQUUsdUJBQXVCLGFBQWEsK0JBQStCLFNBQVMsNkJBQTZCLFVBQVUsY0FBYyw2Q0FBNkMsb0RBQW9ELE9BQU8sc0RBQXNELHNDQUFzQyxhQUFhLFFBQVEsc0JBQXNCLHNCQUFzQiwyQkFBMkIsbUJBQW1CLGdCQUFnQixlQUFlLHFEQUFxRCxnQkFBZ0IsZUFBZSxpREFBaUQsY0FBYyx3QkFBd0IsT0FBTyxXQUFXLEtBQUssa0JBQWtCLGlCQUFpQiw4Q0FBOEMsZUFBZSw4QkFBOEIsc0JBQXNCLFNBQVMsd0JBQXdCLGdCQUFnQixlQUFlLG1EQUFtRCxnQkFBZ0Isd0JBQXdCLFNBQVMsSUFBSSxjQUFjLGtDQUFrQyxtRUFBbUUsZ0JBQWdCLDJDQUEyQyxjQUFjLHNCQUFzQixzRUFBc0Usd0JBQXdCLG1CQUFtQixhQUFhLEVBQUUsYUFBYSxnQkFBZ0IsVUFBVSxnQkFBZ0IsOEJBQThCLFFBQVEsMkJBQTJCLHlCQUF5QixZQUFZLGFBQWEsVUFBVSxZQUFZLHFCQUFxQix1REFBdUQsU0FBUyw2QkFBNkIsa0JBQWtCLGVBQWUsb0JBQW9CLGlEQUFpRCxtQkFBbUIsWUFBWSxvQkFBb0Isc0RBQXNELHFDQUFxQyx5REFBeUQsc0JBQXNCLFFBQVEsWUFBWSw0SUFBNEksNEJBQTRCLFlBQVkscUJBQXFCLG1CQUFtQixJQUFJLGdEQUFnRCxrQkFBa0IsRUFBRSxTQUFTLG1CQUFtQixrQkFBa0IsdUJBQXVCLFlBQVksdUJBQXVCLFFBQVEsY0FBYyx3Q0FBd0MsSUFBSSxLQUFLLFNBQVMsS0FBSyxtQ0FBbUMsK0NBQStDLGNBQWMsbUJBQW1CLHlEQUF5RCxxQkFBcUIsZ0NBQWdDLGNBQWMsZ0JBQWdCLDZDQUE2QyxjQUFjLFFBQVEsaUJBQWlCLGdCQUFnQixvREFBb0QsZ0JBQWdCLEVBQUUsZ0JBQWdCLGtDQUFtUDtBQUN2bUgiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvcHJlYWN0L2hvb2tzL2Rpc3QvaG9va3MubW9kdWxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHtvcHRpb25zIGFzIG59ZnJvbVwicHJlYWN0XCI7dmFyIHQscix1LGksbz0wLGY9W10sYz1uLGU9Yy5fX2IsYT1jLl9fcix2PWMuZGlmZmVkLGw9Yy5fX2MsbT1jLnVubW91bnQscz1jLl9fO2Z1bmN0aW9uIGQobix0KXtjLl9faCYmYy5fX2gocixuLG98fHQpLG89MDt2YXIgdT1yLl9fSHx8KHIuX19IPXtfXzpbXSxfX2g6W119KTtyZXR1cm4gbj49dS5fXy5sZW5ndGgmJnUuX18ucHVzaCh7fSksdS5fX1tuXX1mdW5jdGlvbiBoKG4pe3JldHVybiBvPTEscChELG4pfWZ1bmN0aW9uIHAobix1LGkpe3ZhciBvPWQodCsrLDIpO2lmKG8udD1uLCFvLl9fYyYmKG8uX189W2k/aSh1KTpEKHZvaWQgMCx1KSxmdW5jdGlvbihuKXt2YXIgdD1vLl9fTj9vLl9fTlswXTpvLl9fWzBdLHI9by50KHQsbik7dCE9PXImJihvLl9fTj1bcixvLl9fWzFdXSxvLl9fYy5zZXRTdGF0ZSh7fSkpfV0sby5fX2M9ciwhci51KSl7dmFyIGY9ZnVuY3Rpb24obix0LHIpe2lmKCFvLl9fYy5fX0gpcmV0dXJuITA7dmFyIHU9by5fX2MuX19ILl9fLmZpbHRlcihmdW5jdGlvbihuKXtyZXR1cm4hIW4uX19jfSk7aWYodS5ldmVyeShmdW5jdGlvbihuKXtyZXR1cm4hbi5fX059KSlyZXR1cm4hY3x8Yy5jYWxsKHRoaXMsbix0LHIpO3ZhciBpPSExO3JldHVybiB1LmZvckVhY2goZnVuY3Rpb24obil7aWYobi5fX04pe3ZhciB0PW4uX19bMF07bi5fXz1uLl9fTixuLl9fTj12b2lkIDAsdCE9PW4uX19bMF0mJihpPSEwKX19KSwhKCFpJiZvLl9fYy5wcm9wcz09PW4pJiYoIWN8fGMuY2FsbCh0aGlzLG4sdCxyKSl9O3IudT0hMDt2YXIgYz1yLnNob3VsZENvbXBvbmVudFVwZGF0ZSxlPXIuY29tcG9uZW50V2lsbFVwZGF0ZTtyLmNvbXBvbmVudFdpbGxVcGRhdGU9ZnVuY3Rpb24obix0LHIpe2lmKHRoaXMuX19lKXt2YXIgdT1jO2M9dm9pZCAwLGYobix0LHIpLGM9dX1lJiZlLmNhbGwodGhpcyxuLHQscil9LHIuc2hvdWxkQ29tcG9uZW50VXBkYXRlPWZ9cmV0dXJuIG8uX19OfHxvLl9ffWZ1bmN0aW9uIHkobix1KXt2YXIgaT1kKHQrKywzKTshYy5fX3MmJkMoaS5fX0gsdSkmJihpLl9fPW4saS5pPXUsci5fX0guX19oLnB1c2goaSkpfWZ1bmN0aW9uIF8obix1KXt2YXIgaT1kKHQrKyw0KTshYy5fX3MmJkMoaS5fX0gsdSkmJihpLl9fPW4saS5pPXUsci5fX2gucHVzaChpKSl9ZnVuY3Rpb24gQShuKXtyZXR1cm4gbz01LFQoZnVuY3Rpb24oKXtyZXR1cm57Y3VycmVudDpufX0sW10pfWZ1bmN0aW9uIEYobix0LHIpe289NixfKGZ1bmN0aW9uKCl7cmV0dXJuXCJmdW5jdGlvblwiPT10eXBlb2Ygbj8obih0KCkpLGZ1bmN0aW9uKCl7cmV0dXJuIG4obnVsbCl9KTpuPyhuLmN1cnJlbnQ9dCgpLGZ1bmN0aW9uKCl7cmV0dXJuIG4uY3VycmVudD1udWxsfSk6dm9pZCAwfSxudWxsPT1yP3I6ci5jb25jYXQobikpfWZ1bmN0aW9uIFQobixyKXt2YXIgdT1kKHQrKyw3KTtyZXR1cm4gQyh1Ll9fSCxyKSYmKHUuX189bigpLHUuX19IPXIsdS5fX2g9biksdS5fX31mdW5jdGlvbiBxKG4sdCl7cmV0dXJuIG89OCxUKGZ1bmN0aW9uKCl7cmV0dXJuIG59LHQpfWZ1bmN0aW9uIHgobil7dmFyIHU9ci5jb250ZXh0W24uX19jXSxpPWQodCsrLDkpO3JldHVybiBpLmM9bix1PyhudWxsPT1pLl9fJiYoaS5fXz0hMCx1LnN1YihyKSksdS5wcm9wcy52YWx1ZSk6bi5fX31mdW5jdGlvbiBQKG4sdCl7Yy51c2VEZWJ1Z1ZhbHVlJiZjLnVzZURlYnVnVmFsdWUodD90KG4pOm4pfWZ1bmN0aW9uIGIobil7dmFyIHU9ZCh0KyssMTApLGk9aCgpO3JldHVybiB1Ll9fPW4sci5jb21wb25lbnREaWRDYXRjaHx8KHIuY29tcG9uZW50RGlkQ2F0Y2g9ZnVuY3Rpb24obix0KXt1Ll9fJiZ1Ll9fKG4sdCksaVsxXShuKX0pLFtpWzBdLGZ1bmN0aW9uKCl7aVsxXSh2b2lkIDApfV19ZnVuY3Rpb24gZygpe3ZhciBuPWQodCsrLDExKTtpZighbi5fXyl7Zm9yKHZhciB1PXIuX192O251bGwhPT11JiYhdS5fX20mJm51bGwhPT11Ll9fOyl1PXUuX187dmFyIGk9dS5fX218fCh1Ll9fbT1bMCwwXSk7bi5fXz1cIlBcIitpWzBdK1wiLVwiK2lbMV0rK31yZXR1cm4gbi5fX31mdW5jdGlvbiBqKCl7Zm9yKHZhciBuO249Zi5zaGlmdCgpOylpZihuLl9fUCYmbi5fX0gpdHJ5e24uX19ILl9faC5mb3JFYWNoKHopLG4uX19ILl9faC5mb3JFYWNoKEIpLG4uX19ILl9faD1bXX1jYXRjaCh0KXtuLl9fSC5fX2g9W10sYy5fX2UodCxuLl9fdil9fWMuX19iPWZ1bmN0aW9uKG4pe3I9bnVsbCxlJiZlKG4pfSxjLl9fPWZ1bmN0aW9uKG4sdCl7biYmdC5fX2smJnQuX19rLl9fbSYmKG4uX19tPXQuX19rLl9fbSkscyYmcyhuLHQpfSxjLl9fcj1mdW5jdGlvbihuKXthJiZhKG4pLHQ9MDt2YXIgaT0ocj1uLl9fYykuX19IO2kmJih1PT09cj8oaS5fX2g9W10sci5fX2g9W10saS5fXy5mb3JFYWNoKGZ1bmN0aW9uKG4pe24uX19OJiYobi5fXz1uLl9fTiksbi5pPW4uX19OPXZvaWQgMH0pKTooaS5fX2guZm9yRWFjaCh6KSxpLl9faC5mb3JFYWNoKEIpLGkuX19oPVtdLHQ9MCkpLHU9cn0sYy5kaWZmZWQ9ZnVuY3Rpb24obil7diYmdihuKTt2YXIgdD1uLl9fYzt0JiZ0Ll9fSCYmKHQuX19ILl9faC5sZW5ndGgmJigxIT09Zi5wdXNoKHQpJiZpPT09Yy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fCgoaT1jLnJlcXVlc3RBbmltYXRpb25GcmFtZSl8fHcpKGopKSx0Ll9fSC5fXy5mb3JFYWNoKGZ1bmN0aW9uKG4pe24uaSYmKG4uX19IPW4uaSksbi5pPXZvaWQgMH0pKSx1PXI9bnVsbH0sYy5fX2M9ZnVuY3Rpb24obix0KXt0LnNvbWUoZnVuY3Rpb24obil7dHJ5e24uX19oLmZvckVhY2goeiksbi5fX2g9bi5fX2guZmlsdGVyKGZ1bmN0aW9uKG4pe3JldHVybiFuLl9ffHxCKG4pfSl9Y2F0Y2gocil7dC5zb21lKGZ1bmN0aW9uKG4pe24uX19oJiYobi5fX2g9W10pfSksdD1bXSxjLl9fZShyLG4uX192KX19KSxsJiZsKG4sdCl9LGMudW5tb3VudD1mdW5jdGlvbihuKXttJiZtKG4pO3ZhciB0LHI9bi5fX2M7ciYmci5fX0gmJihyLl9fSC5fXy5mb3JFYWNoKGZ1bmN0aW9uKG4pe3RyeXt6KG4pfWNhdGNoKG4pe3Q9bn19KSxyLl9fSD12b2lkIDAsdCYmYy5fX2UodCxyLl9fdikpfTt2YXIgaz1cImZ1bmN0aW9uXCI9PXR5cGVvZiByZXF1ZXN0QW5pbWF0aW9uRnJhbWU7ZnVuY3Rpb24gdyhuKXt2YXIgdCxyPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHUpLGsmJmNhbmNlbEFuaW1hdGlvbkZyYW1lKHQpLHNldFRpbWVvdXQobil9LHU9c2V0VGltZW91dChyLDEwMCk7ayYmKHQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKHIpKX1mdW5jdGlvbiB6KG4pe3ZhciB0PXIsdT1uLl9fYztcImZ1bmN0aW9uXCI9PXR5cGVvZiB1JiYobi5fX2M9dm9pZCAwLHUoKSkscj10fWZ1bmN0aW9uIEIobil7dmFyIHQ9cjtuLl9fYz1uLl9fKCkscj10fWZ1bmN0aW9uIEMobix0KXtyZXR1cm4hbnx8bi5sZW5ndGghPT10Lmxlbmd0aHx8dC5zb21lKGZ1bmN0aW9uKHQscil7cmV0dXJuIHQhPT1uW3JdfSl9ZnVuY3Rpb24gRChuLHQpe3JldHVyblwiZnVuY3Rpb25cIj09dHlwZW9mIHQ/dChuKTp0fWV4cG9ydHtxIGFzIHVzZUNhbGxiYWNrLHggYXMgdXNlQ29udGV4dCxQIGFzIHVzZURlYnVnVmFsdWUseSBhcyB1c2VFZmZlY3QsYiBhcyB1c2VFcnJvckJvdW5kYXJ5LGcgYXMgdXNlSWQsRiBhcyB1c2VJbXBlcmF0aXZlSGFuZGxlLF8gYXMgdXNlTGF5b3V0RWZmZWN0LFQgYXMgdXNlTWVtbyxwIGFzIHVzZVJlZHVjZXIsQSBhcyB1c2VSZWYsaCBhcyB1c2VTdGF0ZX07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1ob29rcy5tb2R1bGUuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/preact/hooks/dist/hooks.module.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/accounts/toSmartAccount.js": /*!*******************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/accounts/toSmartAccount.js ***! \*******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toSmartAccount: () => (/* binding */ toSmartAccount)\n/* harmony export */ });\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbi.js\");\n/* harmony import */ var _actions_public_getCode_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../actions/public/getCode.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getCode.js\");\n/* harmony import */ var _actions_public_readContract_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../actions/public/readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_nonceManager_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/nonceManager.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/nonceManager.js\");\n/* harmony import */ var _utils_signature_serializeErc6492Signature_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/signature/serializeErc6492Signature.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/serializeErc6492Signature.js\");\n\n\n\n\n\n\n/**\n * @description Creates a Smart Account with a provided account implementation.\n *\n * @param parameters - {@link ToSmartAccountParameters}\n * @returns A Smart Account. {@link ToSmartAccountReturnType}\n */\nasync function toSmartAccount(implementation) {\n const { extend, nonceKeyManager = (0,_utils_nonceManager_js__WEBPACK_IMPORTED_MODULE_0__.createNonceManager)({\n source: {\n get() {\n return Date.now();\n },\n set() { },\n },\n }), ...rest } = implementation;\n let deployed = false;\n const address = await implementation.getAddress();\n return {\n ...extend,\n ...rest,\n address,\n async getFactoryArgs() {\n if ('isDeployed' in this && (await this.isDeployed()))\n return { factory: undefined, factoryData: undefined };\n return implementation.getFactoryArgs();\n },\n async getNonce(parameters) {\n const key = parameters?.key ??\n BigInt(await nonceKeyManager.consume({\n address,\n chainId: implementation.client.chain.id,\n client: implementation.client,\n }));\n if (implementation.getNonce)\n return await implementation.getNonce({ ...parameters, key });\n const nonce = await (0,_actions_public_readContract_js__WEBPACK_IMPORTED_MODULE_1__.readContract)(implementation.client, {\n abi: (0,abitype__WEBPACK_IMPORTED_MODULE_2__.parseAbi)([\n 'function getNonce(address, uint192) pure returns (uint256)',\n ]),\n address: implementation.entryPoint.address,\n functionName: 'getNonce',\n args: [address, key],\n });\n return nonce;\n },\n async isDeployed() {\n if (deployed)\n return true;\n const code = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(implementation.client, _actions_public_getCode_js__WEBPACK_IMPORTED_MODULE_4__.getCode, 'getCode')({\n address,\n });\n deployed = Boolean(code);\n return deployed;\n },\n ...(implementation.sign\n ? {\n async sign(parameters) {\n const [{ factory, factoryData }, signature] = await Promise.all([\n this.getFactoryArgs(),\n implementation.sign(parameters),\n ]);\n if (factory && factoryData)\n return (0,_utils_signature_serializeErc6492Signature_js__WEBPACK_IMPORTED_MODULE_5__.serializeErc6492Signature)({\n address: factory,\n data: factoryData,\n signature,\n });\n return signature;\n },\n }\n : {}),\n async signMessage(parameters) {\n const [{ factory, factoryData }, signature] = await Promise.all([\n this.getFactoryArgs(),\n implementation.signMessage(parameters),\n ]);\n if (factory && factoryData && factory !== '0x7702')\n return (0,_utils_signature_serializeErc6492Signature_js__WEBPACK_IMPORTED_MODULE_5__.serializeErc6492Signature)({\n address: factory,\n data: factoryData,\n signature,\n });\n return signature;\n },\n async signTypedData(parameters) {\n const [{ factory, factoryData }, signature] = await Promise.all([\n this.getFactoryArgs(),\n implementation.signTypedData(parameters),\n ]);\n if (factory && factoryData && factory !== '0x7702')\n return (0,_utils_signature_serializeErc6492Signature_js__WEBPACK_IMPORTED_MODULE_5__.serializeErc6492Signature)({\n address: factory,\n data: factoryData,\n signature,\n });\n return signature;\n },\n type: 'smart',\n };\n}\n//# sourceMappingURL=toSmartAccount.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY2NvdW50cy90b1NtYXJ0QWNjb3VudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQW1DO0FBQ3VCO0FBQ1U7QUFDZjtBQUNZO0FBQzhCO0FBQy9GO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4Qiw4QkFBOEI7QUFDOUI7QUFDTztBQUNQLFlBQVksMEJBQTBCLDBFQUFrQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IscUJBQXFCO0FBQ3JCLFNBQVM7QUFDVCxLQUFLLGFBQWE7QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSx1REFBdUQsb0JBQW9CO0FBQzNFLGdDQUFnQyw2RUFBWTtBQUM1QyxxQkFBcUIsaURBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSwrQkFBK0IsOERBQVMsd0JBQXdCLCtEQUFPO0FBQ3ZFO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLHNCQUFzQjtBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQix3R0FBeUI7QUFDeEQ7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsZ0JBQWdCO0FBQ2hCO0FBQ0EscUJBQXFCLHNCQUFzQjtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qix3R0FBeUI7QUFDaEQ7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsU0FBUztBQUNUO0FBQ0EscUJBQXFCLHNCQUFzQjtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qix3R0FBeUI7QUFDaEQ7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL2FjY291bnRzL3RvU21hcnRBY2NvdW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWJpIH0gZnJvbSAnYWJpdHlwZSc7XG5pbXBvcnQgeyBnZXRDb2RlIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0Q29kZS5qcyc7XG5pbXBvcnQgeyByZWFkQ29udHJhY3QgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9yZWFkQ29udHJhY3QuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGNyZWF0ZU5vbmNlTWFuYWdlciB9IGZyb20gJy4uLy4uL3V0aWxzL25vbmNlTWFuYWdlci5qcyc7XG5pbXBvcnQgeyBzZXJpYWxpemVFcmM2NDkyU2lnbmF0dXJlIH0gZnJvbSAnLi4vLi4vdXRpbHMvc2lnbmF0dXJlL3NlcmlhbGl6ZUVyYzY0OTJTaWduYXR1cmUuanMnO1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhIFNtYXJ0IEFjY291bnQgd2l0aCBhIHByb3ZpZGVkIGFjY291bnQgaW1wbGVtZW50YXRpb24uXG4gKlxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgVG9TbWFydEFjY291bnRQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQSBTbWFydCBBY2NvdW50LiB7QGxpbmsgVG9TbWFydEFjY291bnRSZXR1cm5UeXBlfVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdG9TbWFydEFjY291bnQoaW1wbGVtZW50YXRpb24pIHtcbiAgICBjb25zdCB7IGV4dGVuZCwgbm9uY2VLZXlNYW5hZ2VyID0gY3JlYXRlTm9uY2VNYW5hZ2VyKHtcbiAgICAgICAgc291cmNlOiB7XG4gICAgICAgICAgICBnZXQoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIERhdGUubm93KCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2V0KCkgeyB9LFxuICAgICAgICB9LFxuICAgIH0pLCAuLi5yZXN0IH0gPSBpbXBsZW1lbnRhdGlvbjtcbiAgICBsZXQgZGVwbG95ZWQgPSBmYWxzZTtcbiAgICBjb25zdCBhZGRyZXNzID0gYXdhaXQgaW1wbGVtZW50YXRpb24uZ2V0QWRkcmVzcygpO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLmV4dGVuZCxcbiAgICAgICAgLi4ucmVzdCxcbiAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgYXN5bmMgZ2V0RmFjdG9yeUFyZ3MoKSB7XG4gICAgICAgICAgICBpZiAoJ2lzRGVwbG95ZWQnIGluIHRoaXMgJiYgKGF3YWl0IHRoaXMuaXNEZXBsb3llZCgpKSlcbiAgICAgICAgICAgICAgICByZXR1cm4geyBmYWN0b3J5OiB1bmRlZmluZWQsIGZhY3RvcnlEYXRhOiB1bmRlZmluZWQgfTtcbiAgICAgICAgICAgIHJldHVybiBpbXBsZW1lbnRhdGlvbi5nZXRGYWN0b3J5QXJncygpO1xuICAgICAgICB9LFxuICAgICAgICBhc3luYyBnZXROb25jZShwYXJhbWV0ZXJzKSB7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBwYXJhbWV0ZXJzPy5rZXkgPz9cbiAgICAgICAgICAgICAgICBCaWdJbnQoYXdhaXQgbm9uY2VLZXlNYW5hZ2VyLmNvbnN1bWUoe1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICBjaGFpbklkOiBpbXBsZW1lbnRhdGlvbi5jbGllbnQuY2hhaW4uaWQsXG4gICAgICAgICAgICAgICAgICAgIGNsaWVudDogaW1wbGVtZW50YXRpb24uY2xpZW50LFxuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGlmIChpbXBsZW1lbnRhdGlvbi5nZXROb25jZSlcbiAgICAgICAgICAgICAgICByZXR1cm4gYXdhaXQgaW1wbGVtZW50YXRpb24uZ2V0Tm9uY2UoeyAuLi5wYXJhbWV0ZXJzLCBrZXkgfSk7XG4gICAgICAgICAgICBjb25zdCBub25jZSA9IGF3YWl0IHJlYWRDb250cmFjdChpbXBsZW1lbnRhdGlvbi5jbGllbnQsIHtcbiAgICAgICAgICAgICAgICBhYmk6IHBhcnNlQWJpKFtcbiAgICAgICAgICAgICAgICAgICAgJ2Z1bmN0aW9uIGdldE5vbmNlKGFkZHJlc3MsIHVpbnQxOTIpIHB1cmUgcmV0dXJucyAodWludDI1NiknLFxuICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIGFkZHJlc3M6IGltcGxlbWVudGF0aW9uLmVudHJ5UG9pbnQuYWRkcmVzcyxcbiAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWU6ICdnZXROb25jZScsXG4gICAgICAgICAgICAgICAgYXJnczogW2FkZHJlc3MsIGtleV0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiBub25jZTtcbiAgICAgICAgfSxcbiAgICAgICAgYXN5bmMgaXNEZXBsb3llZCgpIHtcbiAgICAgICAgICAgIGlmIChkZXBsb3llZClcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIGNvbnN0IGNvZGUgPSBhd2FpdCBnZXRBY3Rpb24oaW1wbGVtZW50YXRpb24uY2xpZW50LCBnZXRDb2RlLCAnZ2V0Q29kZScpKHtcbiAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBkZXBsb3llZCA9IEJvb2xlYW4oY29kZSk7XG4gICAgICAgICAgICByZXR1cm4gZGVwbG95ZWQ7XG4gICAgICAgIH0sXG4gICAgICAgIC4uLihpbXBsZW1lbnRhdGlvbi5zaWduXG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBhc3luYyBzaWduKHBhcmFtZXRlcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgW3sgZmFjdG9yeSwgZmFjdG9yeURhdGEgfSwgc2lnbmF0dXJlXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0RmFjdG9yeUFyZ3MoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGltcGxlbWVudGF0aW9uLnNpZ24ocGFyYW1ldGVycyksXG4gICAgICAgICAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmFjdG9yeSAmJiBmYWN0b3J5RGF0YSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZXJpYWxpemVFcmM2NDkyU2lnbmF0dXJlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiBmYWN0b3J5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IGZhY3RvcnlEYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2lnbmF0dXJlO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgYXN5bmMgc2lnbk1lc3NhZ2UocGFyYW1ldGVycykge1xuICAgICAgICAgICAgY29uc3QgW3sgZmFjdG9yeSwgZmFjdG9yeURhdGEgfSwgc2lnbmF0dXJlXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgICAgICB0aGlzLmdldEZhY3RvcnlBcmdzKCksXG4gICAgICAgICAgICAgICAgaW1wbGVtZW50YXRpb24uc2lnbk1lc3NhZ2UocGFyYW1ldGVycyksXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICAgIGlmIChmYWN0b3J5ICYmIGZhY3RvcnlEYXRhICYmIGZhY3RvcnkgIT09ICcweDc3MDInKVxuICAgICAgICAgICAgICAgIHJldHVybiBzZXJpYWxpemVFcmM2NDkyU2lnbmF0dXJlKHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogZmFjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogZmFjdG9yeURhdGEsXG4gICAgICAgICAgICAgICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiBzaWduYXR1cmU7XG4gICAgICAgIH0sXG4gICAgICAgIGFzeW5jIHNpZ25UeXBlZERhdGEocGFyYW1ldGVycykge1xuICAgICAgICAgICAgY29uc3QgW3sgZmFjdG9yeSwgZmFjdG9yeURhdGEgfSwgc2lnbmF0dXJlXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgICAgICB0aGlzLmdldEZhY3RvcnlBcmdzKCksXG4gICAgICAgICAgICAgICAgaW1wbGVtZW50YXRpb24uc2lnblR5cGVkRGF0YShwYXJhbWV0ZXJzKSxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgaWYgKGZhY3RvcnkgJiYgZmFjdG9yeURhdGEgJiYgZmFjdG9yeSAhPT0gJzB4NzcwMicpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlcmlhbGl6ZUVyYzY0OTJTaWduYXR1cmUoe1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiBmYWN0b3J5LFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBmYWN0b3J5RGF0YSxcbiAgICAgICAgICAgICAgICAgICAgc2lnbmF0dXJlLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHNpZ25hdHVyZTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ3NtYXJ0JyxcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dG9TbWFydEFjY291bnQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/accounts/toSmartAccount.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js": /*!************************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js ***! \************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ estimateUserOperationGas: () => (/* binding */ estimateUserOperationGas)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _errors_account_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../errors/account.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/account.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/stateOverride.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stateOverride.js\");\n/* harmony import */ var _utils_errors_getUserOperationError_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/errors/getUserOperationError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/errors/getUserOperationError.js\");\n/* harmony import */ var _utils_formatters_userOperationGas_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/formatters/userOperationGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationGas.js\");\n/* harmony import */ var _utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/formatters/userOperationRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationRequest.js\");\n/* harmony import */ var _prepareUserOperation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./prepareUserOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/prepareUserOperation.js\");\n\n\n\n\n\n\n\n\n/**\n * Returns an estimate of gas values necessary to execute the User Operation.\n *\n * - Docs: https://viem.sh/actions/bundler/estimateUserOperationGas\n *\n * @param client - Client to use\n * @param parameters - {@link EstimateUserOperationGasParameters}\n * @returns The gas estimate (in wei). {@link EstimateUserOperationGasReturnType}\n *\n * @example\n * import { createBundlerClient, http, parseEther } from 'viem'\n * import { toSmartAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { estimateUserOperationGas } from 'viem/actions'\n *\n * const account = await toSmartAccount({ ... })\n *\n * const bundlerClient = createBundlerClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const values = await estimateUserOperationGas(bundlerClient, {\n * account,\n * calls: [{ to: '0x...', value: parseEther('1') }],\n * })\n */\nasync function estimateUserOperationGas(client, parameters) {\n const { account: account_ = client.account, entryPointAddress, stateOverride, } = parameters;\n if (!account_ && !parameters.sender)\n throw new _errors_account_js__WEBPACK_IMPORTED_MODULE_0__.AccountNotFoundError();\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(account_) : undefined;\n const rpcStateOverride = (0,_utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_2__.serializeStateOverride)(stateOverride);\n const request = account\n ? await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _prepareUserOperation_js__WEBPACK_IMPORTED_MODULE_4__.prepareUserOperation, 'prepareUserOperation')({\n ...parameters,\n parameters: [\n 'authorization',\n 'factory',\n 'nonce',\n 'paymaster',\n 'signature',\n ],\n })\n : parameters;\n try {\n const params = [\n (0,_utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_5__.formatUserOperationRequest)(request),\n (entryPointAddress ?? account?.entryPoint?.address),\n ];\n const result = await client.request({\n method: 'eth_estimateUserOperationGas',\n params: rpcStateOverride ? [...params, rpcStateOverride] : [...params],\n });\n return (0,_utils_formatters_userOperationGas_js__WEBPACK_IMPORTED_MODULE_6__.formatUserOperationGas)(result);\n }\n catch (error) {\n const calls = parameters.calls;\n throw (0,_utils_errors_getUserOperationError_js__WEBPACK_IMPORTED_MODULE_7__.getUserOperationError)(error, {\n ...request,\n ...(calls ? { calls } : {}),\n });\n }\n}\n//# sourceMappingURL=estimateUserOperationGas.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvZXN0aW1hdGVVc2VyT3BlcmF0aW9uR2FzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUF3RTtBQUNOO0FBQ1Y7QUFDaUI7QUFDVztBQUNDO0FBQ1E7QUFDM0I7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHdDQUF3QztBQUN4QztBQUNBO0FBQ0EsWUFBWSx3Q0FBd0M7QUFDcEQsWUFBWSxpQkFBaUI7QUFDN0IsWUFBWSxVQUFVO0FBQ3RCLFlBQVksMkJBQTJCO0FBQ3ZDO0FBQ0EsMENBQTBDLEtBQUs7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsZUFBZSxxQ0FBcUM7QUFDcEQsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLHdFQUF3RTtBQUNwRjtBQUNBLGtCQUFrQixvRUFBb0I7QUFDdEMsK0JBQStCLDZFQUFZO0FBQzNDLDZCQUE2QiwrRUFBc0I7QUFDbkQ7QUFDQSxnQkFBZ0IsOERBQVMsU0FBUywwRUFBb0I7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxZQUFZLHFHQUEwQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULGVBQWUsNkZBQXNCO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBLGNBQWMsNkZBQXFCO0FBQ25DO0FBQ0EsMEJBQTBCLFFBQVEsSUFBSTtBQUN0QyxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL2FjdGlvbnMvYnVuZGxlci9lc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VBY2NvdW50LCB9IGZyb20gJy4uLy4uLy4uL2FjY291bnRzL3V0aWxzL3BhcnNlQWNjb3VudC5qcyc7XG5pbXBvcnQgeyBBY2NvdW50Tm90Rm91bmRFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycy9hY2NvdW50LmpzJztcbmltcG9ydCB7IGdldEFjdGlvbiB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2dldEFjdGlvbi5qcyc7XG5pbXBvcnQgeyBzZXJpYWxpemVTdGF0ZU92ZXJyaWRlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvc3RhdGVPdmVycmlkZS5qcyc7XG5pbXBvcnQgeyBnZXRVc2VyT3BlcmF0aW9uRXJyb3IgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcnMvZ2V0VXNlck9wZXJhdGlvbkVycm9yLmpzJztcbmltcG9ydCB7IGZvcm1hdFVzZXJPcGVyYXRpb25HYXMsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy91c2VyT3BlcmF0aW9uR2FzLmpzJztcbmltcG9ydCB7IGZvcm1hdFVzZXJPcGVyYXRpb25SZXF1ZXN0LCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvdXNlck9wZXJhdGlvblJlcXVlc3QuanMnO1xuaW1wb3J0IHsgcHJlcGFyZVVzZXJPcGVyYXRpb24sIH0gZnJvbSAnLi9wcmVwYXJlVXNlck9wZXJhdGlvbi5qcyc7XG4vKipcbiAqIFJldHVybnMgYW4gZXN0aW1hdGUgb2YgZ2FzIHZhbHVlcyBuZWNlc3NhcnkgdG8gZXhlY3V0ZSB0aGUgVXNlciBPcGVyYXRpb24uXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvYWN0aW9ucy9idW5kbGVyL2VzdGltYXRlVXNlck9wZXJhdGlvbkdhc1xuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBFc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXNQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIGdhcyBlc3RpbWF0ZSAoaW4gd2VpKS4ge0BsaW5rIEVzdGltYXRlVXNlck9wZXJhdGlvbkdhc1JldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZUJ1bmRsZXJDbGllbnQsIGh0dHAsIHBhcnNlRXRoZXIgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgdG9TbWFydEFjY291bnQgfSBmcm9tICd2aWVtL2FjY291bnRzJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZXN0aW1hdGVVc2VyT3BlcmF0aW9uR2FzIH0gZnJvbSAndmllbS9hY3Rpb25zJ1xuICpcbiAqIGNvbnN0IGFjY291bnQgPSBhd2FpdCB0b1NtYXJ0QWNjb3VudCh7IC4uLiB9KVxuICpcbiAqIGNvbnN0IGJ1bmRsZXJDbGllbnQgPSBjcmVhdGVCdW5kbGVyQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqXG4gKiBjb25zdCB2YWx1ZXMgPSBhd2FpdCBlc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXMoYnVuZGxlckNsaWVudCwge1xuICogICBhY2NvdW50LFxuICogICBjYWxsczogW3sgdG86ICcweC4uLicsIHZhbHVlOiBwYXJzZUV0aGVyKCcxJykgfV0sXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXN0aW1hdGVVc2VyT3BlcmF0aW9uR2FzKGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudF8gPSBjbGllbnQuYWNjb3VudCwgZW50cnlQb2ludEFkZHJlc3MsIHN0YXRlT3ZlcnJpZGUsIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGlmICghYWNjb3VudF8gJiYgIXBhcmFtZXRlcnMuc2VuZGVyKVxuICAgICAgICB0aHJvdyBuZXcgQWNjb3VudE5vdEZvdW5kRXJyb3IoKTtcbiAgICBjb25zdCBhY2NvdW50ID0gYWNjb3VudF8gPyBwYXJzZUFjY291bnQoYWNjb3VudF8pIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IHJwY1N0YXRlT3ZlcnJpZGUgPSBzZXJpYWxpemVTdGF0ZU92ZXJyaWRlKHN0YXRlT3ZlcnJpZGUpO1xuICAgIGNvbnN0IHJlcXVlc3QgPSBhY2NvdW50XG4gICAgICAgID8gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgcHJlcGFyZVVzZXJPcGVyYXRpb24sICdwcmVwYXJlVXNlck9wZXJhdGlvbicpKHtcbiAgICAgICAgICAgIC4uLnBhcmFtZXRlcnMsXG4gICAgICAgICAgICBwYXJhbWV0ZXJzOiBbXG4gICAgICAgICAgICAgICAgJ2F1dGhvcml6YXRpb24nLFxuICAgICAgICAgICAgICAgICdmYWN0b3J5JyxcbiAgICAgICAgICAgICAgICAnbm9uY2UnLFxuICAgICAgICAgICAgICAgICdwYXltYXN0ZXInLFxuICAgICAgICAgICAgICAgICdzaWduYXR1cmUnLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSlcbiAgICAgICAgOiBwYXJhbWV0ZXJzO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IFtcbiAgICAgICAgICAgIGZvcm1hdFVzZXJPcGVyYXRpb25SZXF1ZXN0KHJlcXVlc3QpLFxuICAgICAgICAgICAgKGVudHJ5UG9pbnRBZGRyZXNzID8/IGFjY291bnQ/LmVudHJ5UG9pbnQ/LmFkZHJlc3MpLFxuICAgICAgICBdO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfZXN0aW1hdGVVc2VyT3BlcmF0aW9uR2FzJyxcbiAgICAgICAgICAgIHBhcmFtczogcnBjU3RhdGVPdmVycmlkZSA/IFsuLi5wYXJhbXMsIHJwY1N0YXRlT3ZlcnJpZGVdIDogWy4uLnBhcmFtc10sXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gZm9ybWF0VXNlck9wZXJhdGlvbkdhcyhyZXN1bHQpO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc3QgY2FsbHMgPSBwYXJhbWV0ZXJzLmNhbGxzO1xuICAgICAgICB0aHJvdyBnZXRVc2VyT3BlcmF0aW9uRXJyb3IoZXJyb3IsIHtcbiAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgICAuLi4oY2FsbHMgPyB7IGNhbGxzIH0gOiB7fSksXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVzdGltYXRlVXNlck9wZXJhdGlvbkdhcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js": /*!***********************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js ***! \***********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getSupportedEntryPoints: () => (/* binding */ getSupportedEntryPoints)\n/* harmony export */ });\n/**\n * Returns the EntryPoints that the bundler supports.\n *\n * - Docs: https://viem.sh/actions/bundler/getSupportedEntryPoints\n *\n * @param client - Client to use\n * @param parameters - {@link GetSupportedEntryPointsParameters}\n * @returns Supported Entry Points. {@link GetSupportedEntryPointsReturnType}\n *\n * @example\n * import { createBundlerClient, http, parseEther } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getSupportedEntryPoints } from 'viem/actions'\n *\n * const bundlerClient = createBundlerClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const addresses = await getSupportedEntryPoints(bundlerClient)\n */\nfunction getSupportedEntryPoints(client) {\n return client.request({ method: 'eth_supportedEntryPoints' });\n}\n//# sourceMappingURL=getSupportedEntryPoints.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvZ2V0U3VwcG9ydGVkRW50cnlQb2ludHMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixxQ0FBcUM7QUFDckM7QUFDQTtBQUNBLFlBQVksd0NBQXdDO0FBQ3BELFlBQVksVUFBVTtBQUN0QixZQUFZLDBCQUEwQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDTztBQUNQLDRCQUE0QixvQ0FBb0M7QUFDaEU7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvZ2V0U3VwcG9ydGVkRW50cnlQb2ludHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXR1cm5zIHRoZSBFbnRyeVBvaW50cyB0aGF0IHRoZSBidW5kbGVyIHN1cHBvcnRzLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2FjdGlvbnMvYnVuZGxlci9nZXRTdXBwb3J0ZWRFbnRyeVBvaW50c1xuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRTdXBwb3J0ZWRFbnRyeVBvaW50c1BhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBTdXBwb3J0ZWQgRW50cnkgUG9pbnRzLiB7QGxpbmsgR2V0U3VwcG9ydGVkRW50cnlQb2ludHNSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVCdW5kbGVyQ2xpZW50LCBodHRwLCBwYXJzZUV0aGVyIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldFN1cHBvcnRlZEVudHJ5UG9pbnRzIH0gZnJvbSAndmllbS9hY3Rpb25zJ1xuICpcbiAqIGNvbnN0IGJ1bmRsZXJDbGllbnQgPSBjcmVhdGVCdW5kbGVyQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqXG4gKiBjb25zdCBhZGRyZXNzZXMgPSBhd2FpdCBnZXRTdXBwb3J0ZWRFbnRyeVBvaW50cyhidW5kbGVyQ2xpZW50KVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3VwcG9ydGVkRW50cnlQb2ludHMoY2xpZW50KSB7XG4gICAgcmV0dXJuIGNsaWVudC5yZXF1ZXN0KHsgbWV0aG9kOiAnZXRoX3N1cHBvcnRlZEVudHJ5UG9pbnRzJyB9KTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldFN1cHBvcnRlZEVudHJ5UG9pbnRzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperation.js": /*!****************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperation.js ***! \****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUserOperation: () => (/* binding */ getUserOperation)\n/* harmony export */ });\n/* harmony import */ var _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/userOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/userOperation.js\");\n/* harmony import */ var _utils_formatters_userOperation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/formatters/userOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperation.js\");\n\n\n/**\n * Retrieves information about a User Operation given a hash.\n *\n * - Docs: https://viem.sh/account-abstraction/actions/bundler/getUserOperation\n *\n * @param client - Client to use\n * @param parameters - {@link GetUserOperationParameters}\n * @returns The receipt. {@link GetUserOperationReturnType}\n *\n * @example\n * import { createBundlerClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getUserOperation } from 'viem/actions\n *\n * const client = createBundlerClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const receipt = await getUserOperation(client, {\n * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nasync function getUserOperation(client, { hash }) {\n const result = await client.request({\n method: 'eth_getUserOperationByHash',\n params: [hash],\n }, { dedupe: true });\n if (!result)\n throw new _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationNotFoundError({ hash });\n const { blockHash, blockNumber, entryPoint, transactionHash, userOperation } = result;\n return {\n blockHash,\n blockNumber: BigInt(blockNumber),\n entryPoint,\n transactionHash,\n userOperation: (0,_utils_formatters_userOperation_js__WEBPACK_IMPORTED_MODULE_1__.formatUserOperation)(userOperation),\n };\n}\n//# sourceMappingURL=getUserOperation.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvZ2V0VXNlck9wZXJhdGlvbi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBNEU7QUFDRTtBQUM5RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsMEJBQTBCO0FBQzFCO0FBQ0E7QUFDQSxZQUFZLDRCQUE0QjtBQUN4QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ08sMENBQTBDLE1BQU07QUFDdkQ7QUFDQTtBQUNBO0FBQ0EsS0FBSyxJQUFJLGNBQWM7QUFDdkI7QUFDQSxrQkFBa0IsZ0ZBQTBCLEdBQUcsTUFBTTtBQUNyRCxZQUFZLHFFQUFxRTtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHVGQUFtQjtBQUMxQztBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vYWN0aW9ucy9idW5kbGVyL2dldFVzZXJPcGVyYXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlck9wZXJhdGlvbk5vdEZvdW5kRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL3VzZXJPcGVyYXRpb24uanMnO1xuaW1wb3J0IHsgZm9ybWF0VXNlck9wZXJhdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvdXNlck9wZXJhdGlvbi5qcyc7XG4vKipcbiAqIFJldHJpZXZlcyBpbmZvcm1hdGlvbiBhYm91dCBhIFVzZXIgT3BlcmF0aW9uIGdpdmVuIGEgaGFzaC5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9hY2NvdW50LWFic3RyYWN0aW9uL2FjdGlvbnMvYnVuZGxlci9nZXRVc2VyT3BlcmF0aW9uXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIEdldFVzZXJPcGVyYXRpb25QYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIHJlY2VpcHQuIHtAbGluayBHZXRVc2VyT3BlcmF0aW9uUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlQnVuZGxlckNsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRVc2VyT3BlcmF0aW9uIH0gZnJvbSAndmllbS9hY3Rpb25zXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlQnVuZGxlckNsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKlxuICogY29uc3QgcmVjZWlwdCA9IGF3YWl0IGdldFVzZXJPcGVyYXRpb24oY2xpZW50LCB7XG4gKiAgIGhhc2g6ICcweDRjYTdlZTY1MmQ1NzY3OGYyNmU4ODdjMTQ5YWIwNzM1ZjQxZGUzN2JjYWQ1OGM5ZjZkM2VkNTgyNGYxNWI3NGQnLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFVzZXJPcGVyYXRpb24oY2xpZW50LCB7IGhhc2ggfSkge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX2dldFVzZXJPcGVyYXRpb25CeUhhc2gnLFxuICAgICAgICBwYXJhbXM6IFtoYXNoXSxcbiAgICB9LCB7IGRlZHVwZTogdHJ1ZSB9KTtcbiAgICBpZiAoIXJlc3VsdClcbiAgICAgICAgdGhyb3cgbmV3IFVzZXJPcGVyYXRpb25Ob3RGb3VuZEVycm9yKHsgaGFzaCB9KTtcbiAgICBjb25zdCB7IGJsb2NrSGFzaCwgYmxvY2tOdW1iZXIsIGVudHJ5UG9pbnQsIHRyYW5zYWN0aW9uSGFzaCwgdXNlck9wZXJhdGlvbiB9ID0gcmVzdWx0O1xuICAgIHJldHVybiB7XG4gICAgICAgIGJsb2NrSGFzaCxcbiAgICAgICAgYmxvY2tOdW1iZXI6IEJpZ0ludChibG9ja051bWJlciksXG4gICAgICAgIGVudHJ5UG9pbnQsXG4gICAgICAgIHRyYW5zYWN0aW9uSGFzaCxcbiAgICAgICAgdXNlck9wZXJhdGlvbjogZm9ybWF0VXNlck9wZXJhdGlvbih1c2VyT3BlcmF0aW9uKSxcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0VXNlck9wZXJhdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperation.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js": /*!***********************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js ***! \***********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUserOperationReceipt: () => (/* binding */ getUserOperationReceipt)\n/* harmony export */ });\n/* harmony import */ var _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/userOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/userOperation.js\");\n/* harmony import */ var _utils_formatters_userOperationReceipt_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/formatters/userOperationReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationReceipt.js\");\n\n\n/**\n * Returns the User Operation Receipt given a User Operation hash.\n *\n * - Docs: https://viem.sh/docs/actions/bundler/getUserOperationReceipt\n *\n * @param client - Client to use\n * @param parameters - {@link GetUserOperationReceiptParameters}\n * @returns The receipt. {@link GetUserOperationReceiptReturnType}\n *\n * @example\n * import { createBundlerClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getUserOperationReceipt } from 'viem/actions\n *\n * const client = createBundlerClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const receipt = await getUserOperationReceipt(client, {\n * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nasync function getUserOperationReceipt(client, { hash }) {\n const receipt = await client.request({\n method: 'eth_getUserOperationReceipt',\n params: [hash],\n }, { dedupe: true });\n if (!receipt)\n throw new _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationReceiptNotFoundError({ hash });\n return (0,_utils_formatters_userOperationReceipt_js__WEBPACK_IMPORTED_MODULE_1__.formatUserOperationReceipt)(receipt);\n}\n//# sourceMappingURL=getUserOperationReceipt.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvZ2V0VXNlck9wZXJhdGlvblJlY2VpcHQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQW1GO0FBQ1M7QUFDNUY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDBCQUEwQjtBQUMxQjtBQUNBO0FBQ0EsWUFBWSw0QkFBNEI7QUFDeEMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksMEJBQTBCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPLGlEQUFpRCxNQUFNO0FBQzlEO0FBQ0E7QUFDQTtBQUNBLEtBQUssSUFBSSxjQUFjO0FBQ3ZCO0FBQ0Esa0JBQWtCLHVGQUFpQyxHQUFHLE1BQU07QUFDNUQsV0FBVyxxR0FBMEI7QUFDckM7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvZ2V0VXNlck9wZXJhdGlvblJlY2VpcHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlck9wZXJhdGlvblJlY2VpcHROb3RGb3VuZEVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy91c2VyT3BlcmF0aW9uLmpzJztcbmltcG9ydCB7IGZvcm1hdFVzZXJPcGVyYXRpb25SZWNlaXB0IH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy91c2VyT3BlcmF0aW9uUmVjZWlwdC5qcyc7XG4vKipcbiAqIFJldHVybnMgdGhlIFVzZXIgT3BlcmF0aW9uIFJlY2VpcHQgZ2l2ZW4gYSBVc2VyIE9wZXJhdGlvbiBoYXNoLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9idW5kbGVyL2dldFVzZXJPcGVyYXRpb25SZWNlaXB0XG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIEdldFVzZXJPcGVyYXRpb25SZWNlaXB0UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSByZWNlaXB0LiB7QGxpbmsgR2V0VXNlck9wZXJhdGlvblJlY2VpcHRSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVCdW5kbGVyQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldFVzZXJPcGVyYXRpb25SZWNlaXB0IH0gZnJvbSAndmllbS9hY3Rpb25zXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlQnVuZGxlckNsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKlxuICogY29uc3QgcmVjZWlwdCA9IGF3YWl0IGdldFVzZXJPcGVyYXRpb25SZWNlaXB0KGNsaWVudCwge1xuICogICBoYXNoOiAnMHg0Y2E3ZWU2NTJkNTc2NzhmMjZlODg3YzE0OWFiMDczNWY0MWRlMzdiY2FkNThjOWY2ZDNlZDU4MjRmMTViNzRkJyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRVc2VyT3BlcmF0aW9uUmVjZWlwdChjbGllbnQsIHsgaGFzaCB9KSB7XG4gICAgY29uc3QgcmVjZWlwdCA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX2dldFVzZXJPcGVyYXRpb25SZWNlaXB0JyxcbiAgICAgICAgcGFyYW1zOiBbaGFzaF0sXG4gICAgfSwgeyBkZWR1cGU6IHRydWUgfSk7XG4gICAgaWYgKCFyZWNlaXB0KVxuICAgICAgICB0aHJvdyBuZXcgVXNlck9wZXJhdGlvblJlY2VpcHROb3RGb3VuZEVycm9yKHsgaGFzaCB9KTtcbiAgICByZXR1cm4gZm9ybWF0VXNlck9wZXJhdGlvblJlY2VpcHQocmVjZWlwdCk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRVc2VyT3BlcmF0aW9uUmVjZWlwdC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/prepareUserOperation.js": /*!********************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/bundler/prepareUserOperation.js ***! \********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ prepareUserOperation: () => (/* binding */ prepareUserOperation)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _actions_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../actions/index.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareAuthorization.js\");\n/* harmony import */ var _actions_public_estimateFeesPerGas_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../actions/public/estimateFeesPerGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateFeesPerGas.js\");\n/* harmony import */ var _actions_public_getChainId_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../actions/public/getChainId.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js\");\n/* harmony import */ var _errors_account_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../errors/account.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/account.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_data_concat_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../utils/data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _paymaster_getPaymasterData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../paymaster/getPaymasterData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterData.js\");\n/* harmony import */ var _paymaster_getPaymasterStubData_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../paymaster/getPaymasterStubData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js\");\n/* harmony import */ var _estimateUserOperationGas_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./estimateUserOperationGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js\");\n\n\n\n\n\n\n\n\n\n\n\nconst defaultParameters = [\n 'factory',\n 'fees',\n 'gas',\n 'paymaster',\n 'nonce',\n 'signature',\n 'authorization',\n];\n/**\n * Prepares a User Operation and fills in missing properties.\n *\n * - Docs: https://viem.sh/actions/bundler/prepareUserOperation\n *\n * @param args - {@link PrepareUserOperationParameters}\n * @returns The User Operation. {@link PrepareUserOperationReturnType}\n *\n * @example\n * import { createBundlerClient, http } from 'viem'\n * import { toSmartAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { prepareUserOperation } from 'viem/actions'\n *\n * const account = await toSmartAccount({ ... })\n *\n * const client = createBundlerClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const request = await prepareUserOperation(client, {\n * account,\n * calls: [{ to: '0x...', value: parseEther('1') }],\n * })\n */\nasync function prepareUserOperation(client, parameters_) {\n const parameters = parameters_;\n const { account: account_ = client.account, parameters: properties = defaultParameters, stateOverride, } = parameters;\n ////////////////////////////////////////////////////////////////////////////////\n // Assert that an Account is defined.\n ////////////////////////////////////////////////////////////////////////////////\n if (!account_)\n throw new _errors_account_js__WEBPACK_IMPORTED_MODULE_0__.AccountNotFoundError();\n const account = (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(account_);\n ////////////////////////////////////////////////////////////////////////////////\n // Declare typed Bundler Client.\n ////////////////////////////////////////////////////////////////////////////////\n const bundlerClient = client;\n ////////////////////////////////////////////////////////////////////////////////\n // Declare Paymaster properties.\n ////////////////////////////////////////////////////////////////////////////////\n const paymaster = parameters.paymaster ?? bundlerClient?.paymaster;\n const paymasterAddress = typeof paymaster === 'string' ? paymaster : undefined;\n const { getPaymasterStubData, getPaymasterData } = (() => {\n // If `paymaster: true`, we will assume the Bundler Client supports Paymaster Actions.\n if (paymaster === true)\n return {\n getPaymasterStubData: (parameters) => (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(bundlerClient, _paymaster_getPaymasterStubData_js__WEBPACK_IMPORTED_MODULE_3__.getPaymasterStubData, 'getPaymasterStubData')(parameters),\n getPaymasterData: (parameters) => (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(bundlerClient, _paymaster_getPaymasterData_js__WEBPACK_IMPORTED_MODULE_4__.getPaymasterData, 'getPaymasterData')(parameters),\n };\n // If Actions are passed to `paymaster` (via Paymaster Client or directly), we will use them.\n if (typeof paymaster === 'object') {\n const { getPaymasterStubData, getPaymasterData } = paymaster;\n return {\n getPaymasterStubData: (getPaymasterData && getPaymasterStubData\n ? getPaymasterStubData\n : getPaymasterData),\n getPaymasterData: getPaymasterData && getPaymasterStubData\n ? getPaymasterData\n : undefined,\n };\n }\n // No Paymaster functions.\n return {\n getPaymasterStubData: undefined,\n getPaymasterData: undefined,\n };\n })();\n const paymasterContext = parameters.paymasterContext\n ? parameters.paymasterContext\n : bundlerClient?.paymasterContext;\n ////////////////////////////////////////////////////////////////////////////////\n // Set up the User Operation request.\n ////////////////////////////////////////////////////////////////////////////////\n let request = {\n ...parameters,\n paymaster: paymasterAddress,\n sender: account.address,\n };\n ////////////////////////////////////////////////////////////////////////////////\n // Concurrently prepare properties required to fill the User Operation.\n ////////////////////////////////////////////////////////////////////////////////\n const [callData, factory, fees, nonce, authorization] = await Promise.all([\n (async () => {\n if (parameters.calls)\n return account.encodeCalls(parameters.calls.map((call_) => {\n const call = call_;\n if (call.abi)\n return {\n data: (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_5__.encodeFunctionData)(call),\n to: call.to,\n value: call.value,\n };\n return call;\n }));\n return parameters.callData;\n })(),\n (async () => {\n if (!properties.includes('factory'))\n return undefined;\n if (parameters.initCode)\n return { initCode: parameters.initCode };\n if (parameters.factory && parameters.factoryData) {\n return {\n factory: parameters.factory,\n factoryData: parameters.factoryData,\n };\n }\n const { factory, factoryData } = await account.getFactoryArgs();\n if (account.entryPoint.version === '0.6')\n return {\n initCode: factory && factoryData ? (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_6__.concat)([factory, factoryData]) : undefined,\n };\n return {\n factory,\n factoryData,\n };\n })(),\n (async () => {\n if (!properties.includes('fees'))\n return undefined;\n // If we have sufficient properties for fees, return them.\n if (typeof parameters.maxFeePerGas === 'bigint' &&\n typeof parameters.maxPriorityFeePerGas === 'bigint')\n return request;\n // If the Bundler Client has a `estimateFeesPerGas` hook, run it.\n if (bundlerClient?.userOperation?.estimateFeesPerGas) {\n const fees = await bundlerClient.userOperation.estimateFeesPerGas({\n account,\n bundlerClient,\n userOperation: request,\n });\n return {\n ...request,\n ...fees,\n };\n }\n // Otherwise, we will need to estimate the fees to fill the fee properties.\n try {\n const client_ = bundlerClient.client ?? client;\n const fees = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(client_, _actions_public_estimateFeesPerGas_js__WEBPACK_IMPORTED_MODULE_7__.estimateFeesPerGas, 'estimateFeesPerGas')({\n chain: client_.chain,\n type: 'eip1559',\n });\n return {\n maxFeePerGas: typeof parameters.maxFeePerGas === 'bigint'\n ? parameters.maxFeePerGas\n : BigInt(\n // Bundlers unfortunately have strict rules on fee prechecks – we will need to set a generous buffer.\n 2n * fees.maxFeePerGas),\n maxPriorityFeePerGas: typeof parameters.maxPriorityFeePerGas === 'bigint'\n ? parameters.maxPriorityFeePerGas\n : BigInt(\n // Bundlers unfortunately have strict rules on fee prechecks – we will need to set a generous buffer.\n 2n * fees.maxPriorityFeePerGas),\n };\n }\n catch {\n return undefined;\n }\n })(),\n (async () => {\n if (!properties.includes('nonce'))\n return undefined;\n if (typeof parameters.nonce === 'bigint')\n return parameters.nonce;\n return account.getNonce();\n })(),\n (async () => {\n if (!properties.includes('authorization'))\n return undefined;\n if (typeof parameters.authorization === 'object')\n return parameters.authorization;\n if (account.authorization && !(await account.isDeployed())) {\n const authorization = await (0,_actions_index_js__WEBPACK_IMPORTED_MODULE_8__.prepareAuthorization)(account.client, account.authorization);\n return {\n ...authorization,\n r: '0xfffffffffffffffffffffffffffffff000000000000000000000000000000000',\n s: '0x7aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',\n yParity: 1,\n };\n }\n return undefined;\n })(),\n ]);\n ////////////////////////////////////////////////////////////////////////////////\n // Fill User Operation with the prepared properties from above.\n ////////////////////////////////////////////////////////////////////////////////\n if (typeof callData !== 'undefined')\n request.callData = callData;\n if (typeof factory !== 'undefined')\n request = { ...request, ...factory };\n if (typeof fees !== 'undefined')\n request = { ...request, ...fees };\n if (typeof nonce !== 'undefined')\n request.nonce = nonce;\n if (typeof authorization !== 'undefined')\n request.authorization = authorization;\n ////////////////////////////////////////////////////////////////////////////////\n // Fill User Operation with the `signature` property.\n ////////////////////////////////////////////////////////////////////////////////\n if (properties.includes('signature')) {\n if (typeof parameters.signature !== 'undefined')\n request.signature = parameters.signature;\n else\n request.signature = await account.getStubSignature(request);\n }\n ////////////////////////////////////////////////////////////////////////////////\n // `initCode` is required to be filled with EntryPoint 0.6.\n ////////////////////////////////////////////////////////////////////////////////\n // If no `initCode` is provided, we use an empty bytes string.\n if (account.entryPoint.version === '0.6' && !request.initCode)\n request.initCode = '0x';\n ////////////////////////////////////////////////////////////////////////////////\n // Fill User Operation with paymaster-related properties for **gas estimation**.\n ////////////////////////////////////////////////////////////////////////////////\n let chainId;\n async function getChainId() {\n if (chainId)\n return chainId;\n if (client.chain)\n return client.chain.id;\n const chainId_ = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(client, _actions_public_getChainId_js__WEBPACK_IMPORTED_MODULE_9__.getChainId, 'getChainId')({});\n chainId = chainId_;\n return chainId;\n }\n // If the User Operation is intended to be sponsored, we will need to fill the paymaster-related\n // User Operation properties required to estimate the User Operation gas.\n let isPaymasterPopulated = false;\n if (properties.includes('paymaster') &&\n getPaymasterStubData &&\n !paymasterAddress &&\n !parameters.paymasterAndData) {\n const { isFinal = false, sponsor: _, ...paymasterArgs } = await getPaymasterStubData({\n chainId: await getChainId(),\n entryPointAddress: account.entryPoint.address,\n context: paymasterContext,\n ...request,\n });\n isPaymasterPopulated = isFinal;\n request = {\n ...request,\n ...paymasterArgs,\n };\n }\n ////////////////////////////////////////////////////////////////////////////////\n // `paymasterAndData` is required to be filled with EntryPoint 0.6.\n ////////////////////////////////////////////////////////////////////////////////\n // If no `paymasterAndData` is provided, we use an empty bytes string.\n if (account.entryPoint.version === '0.6' && !request.paymasterAndData)\n request.paymasterAndData = '0x';\n ////////////////////////////////////////////////////////////////////////////////\n // Fill User Operation with gas-related properties.\n ////////////////////////////////////////////////////////////////////////////////\n if (properties.includes('gas')) {\n // If the Account has opinionated gas estimation logic, run the `estimateGas` hook and\n // fill the request with the prepared gas properties.\n if (account.userOperation?.estimateGas) {\n const gas = await account.userOperation.estimateGas(request);\n request = {\n ...request,\n ...gas,\n };\n }\n // If not all the gas properties are already populated, we will need to estimate the gas\n // to fill the gas properties.\n if (typeof request.callGasLimit === 'undefined' ||\n typeof request.preVerificationGas === 'undefined' ||\n typeof request.verificationGasLimit === 'undefined' ||\n (request.paymaster &&\n typeof request.paymasterPostOpGasLimit === 'undefined') ||\n (request.paymaster &&\n typeof request.paymasterVerificationGasLimit === 'undefined')) {\n const gas = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(bundlerClient, _estimateUserOperationGas_js__WEBPACK_IMPORTED_MODULE_10__.estimateUserOperationGas, 'estimateUserOperationGas')({\n account,\n // Some Bundlers fail if nullish gas values are provided for gas estimation :') –\n // so we will need to set a default zeroish value.\n callGasLimit: 0n,\n preVerificationGas: 0n,\n verificationGasLimit: 0n,\n stateOverride,\n ...(request.paymaster\n ? {\n paymasterPostOpGasLimit: 0n,\n paymasterVerificationGasLimit: 0n,\n }\n : {}),\n ...request,\n });\n request = {\n ...request,\n callGasLimit: request.callGasLimit ?? gas.callGasLimit,\n preVerificationGas: request.preVerificationGas ?? gas.preVerificationGas,\n verificationGasLimit: request.verificationGasLimit ?? gas.verificationGasLimit,\n paymasterPostOpGasLimit: request.paymasterPostOpGasLimit ?? gas.paymasterPostOpGasLimit,\n paymasterVerificationGasLimit: request.paymasterVerificationGasLimit ??\n gas.paymasterVerificationGasLimit,\n };\n }\n }\n ////////////////////////////////////////////////////////////////////////////////\n // Fill User Operation with paymaster-related properties for **sending** the User Operation.\n ////////////////////////////////////////////////////////////////////////////////\n // If the User Operation is intended to be sponsored, we will need to fill the paymaster-related\n // User Operation properties required to send the User Operation.\n if (properties.includes('paymaster') &&\n getPaymasterData &&\n !paymasterAddress &&\n !parameters.paymasterAndData &&\n !isPaymasterPopulated) {\n // Retrieve paymaster-related User Operation properties to be used for **sending** the User Operation.\n const paymaster = await getPaymasterData({\n chainId: await getChainId(),\n entryPointAddress: account.entryPoint.address,\n context: paymasterContext,\n ...request,\n });\n request = {\n ...request,\n ...paymaster,\n };\n }\n ////////////////////////////////////////////////////////////////////////////////\n // Remove redundant properties that do not conform to the User Operation schema.\n ////////////////////////////////////////////////////////////////////////////////\n delete request.calls;\n delete request.parameters;\n delete request.paymasterContext;\n if (typeof request.paymaster !== 'string')\n delete request.paymaster;\n ////////////////////////////////////////////////////////////////////////////////\n return request;\n}\n//# sourceMappingURL=prepareUserOperation.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvcHJlcGFyZVVzZXJPcGVyYXRpb24uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQXdFO0FBQ1A7QUFDbUI7QUFDRjtBQUNoQjtBQUNhO0FBQ3hCO0FBQ0M7QUFDa0M7QUFDWTtBQUM1QjtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCO0FBQ2xCLGlDQUFpQztBQUNqQztBQUNBO0FBQ0EsWUFBWSw0QkFBNEI7QUFDeEMsWUFBWSxpQkFBaUI7QUFDN0IsWUFBWSxVQUFVO0FBQ3RCLFlBQVksdUJBQXVCO0FBQ25DO0FBQ0EsMENBQTBDLEtBQUs7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsZUFBZSxxQ0FBcUM7QUFDcEQsSUFBSTtBQUNKO0FBQ087QUFDUDtBQUNBLFlBQVksaUdBQWlHO0FBQzdHO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9FQUFvQjtBQUN0QyxvQkFBb0IsNkVBQVk7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSx5Q0FBeUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0Esc0RBQXNELDhEQUFTLGdCQUFnQixvRkFBcUI7QUFDcEcsa0RBQWtELDhEQUFTLGdCQUFnQiw0RUFBaUI7QUFDNUY7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHlDQUF5QztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxvRkFBa0I7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHVCQUF1QjtBQUMzQztBQUNBO0FBQ0EsdURBQXVELDZEQUFNO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQyw4REFBUyxVQUFVLHFGQUFrQjtBQUN4RTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0Q0FBNEMsdUVBQW9CO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEI7QUFDQSxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0IsOERBQVMsU0FBUyxxRUFBVyxrQkFBa0I7QUFDOUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsZ0RBQWdEO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDhEQUFTLGdCQUFnQixtRkFBd0I7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL2FjdGlvbnMvYnVuZGxlci9wcmVwYXJlVXNlck9wZXJhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwYXJzZUFjY291bnQsIH0gZnJvbSAnLi4vLi4vLi4vYWNjb3VudHMvdXRpbHMvcGFyc2VBY2NvdW50LmpzJztcbmltcG9ydCB7IHByZXBhcmVBdXRob3JpemF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vYWN0aW9ucy9pbmRleC5qcyc7XG5pbXBvcnQgeyBlc3RpbWF0ZUZlZXNQZXJHYXMsIH0gZnJvbSAnLi4vLi4vLi4vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVGZWVzUGVyR2FzLmpzJztcbmltcG9ydCB7IGdldENoYWluSWQgYXMgZ2V0Q2hhaW5JZF8gfSBmcm9tICcuLi8uLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRDaGFpbklkLmpzJztcbmltcG9ydCB7IEFjY291bnROb3RGb3VuZEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vZXJyb3JzL2FjY291bnQuanMnO1xuaW1wb3J0IHsgZW5jb2RlRnVuY3Rpb25EYXRhLCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2FiaS9lbmNvZGVGdW5jdGlvbkRhdGEuanMnO1xuaW1wb3J0IHsgY29uY2F0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZGF0YS9jb25jYXQuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGdldFBheW1hc3RlckRhdGEgYXMgZ2V0UGF5bWFzdGVyRGF0YV8sIH0gZnJvbSAnLi4vcGF5bWFzdGVyL2dldFBheW1hc3RlckRhdGEuanMnO1xuaW1wb3J0IHsgZ2V0UGF5bWFzdGVyU3R1YkRhdGEgYXMgZ2V0UGF5bWFzdGVyU3R1YkRhdGFfLCB9IGZyb20gJy4uL3BheW1hc3Rlci9nZXRQYXltYXN0ZXJTdHViRGF0YS5qcyc7XG5pbXBvcnQgeyBlc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXMsIH0gZnJvbSAnLi9lc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXMuanMnO1xuY29uc3QgZGVmYXVsdFBhcmFtZXRlcnMgPSBbXG4gICAgJ2ZhY3RvcnknLFxuICAgICdmZWVzJyxcbiAgICAnZ2FzJyxcbiAgICAncGF5bWFzdGVyJyxcbiAgICAnbm9uY2UnLFxuICAgICdzaWduYXR1cmUnLFxuICAgICdhdXRob3JpemF0aW9uJyxcbl07XG4vKipcbiAqIFByZXBhcmVzIGEgVXNlciBPcGVyYXRpb24gYW5kIGZpbGxzIGluIG1pc3NpbmcgcHJvcGVydGllcy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9hY3Rpb25zL2J1bmRsZXIvcHJlcGFyZVVzZXJPcGVyYXRpb25cbiAqXG4gKiBAcGFyYW0gYXJncyAtIHtAbGluayBQcmVwYXJlVXNlck9wZXJhdGlvblBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgVXNlciBPcGVyYXRpb24uIHtAbGluayBQcmVwYXJlVXNlck9wZXJhdGlvblJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZUJ1bmRsZXJDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgdG9TbWFydEFjY291bnQgfSBmcm9tICd2aWVtL2FjY291bnRzJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgcHJlcGFyZVVzZXJPcGVyYXRpb24gfSBmcm9tICd2aWVtL2FjdGlvbnMnXG4gKlxuICogY29uc3QgYWNjb3VudCA9IGF3YWl0IHRvU21hcnRBY2NvdW50KHsgLi4uIH0pXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlQnVuZGxlckNsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKlxuICogY29uc3QgcmVxdWVzdCA9IGF3YWl0IHByZXBhcmVVc2VyT3BlcmF0aW9uKGNsaWVudCwge1xuICogICBhY2NvdW50LFxuICogICBjYWxsczogW3sgdG86ICcweC4uLicsIHZhbHVlOiBwYXJzZUV0aGVyKCcxJykgfV0sXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlcGFyZVVzZXJPcGVyYXRpb24oY2xpZW50LCBwYXJhbWV0ZXJzXykge1xuICAgIGNvbnN0IHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzXztcbiAgICBjb25zdCB7IGFjY291bnQ6IGFjY291bnRfID0gY2xpZW50LmFjY291bnQsIHBhcmFtZXRlcnM6IHByb3BlcnRpZXMgPSBkZWZhdWx0UGFyYW1ldGVycywgc3RhdGVPdmVycmlkZSwgfSA9IHBhcmFtZXRlcnM7XG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBBc3NlcnQgdGhhdCBhbiBBY2NvdW50IGlzIGRlZmluZWQuXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICBpZiAoIWFjY291bnRfKVxuICAgICAgICB0aHJvdyBuZXcgQWNjb3VudE5vdEZvdW5kRXJyb3IoKTtcbiAgICBjb25zdCBhY2NvdW50ID0gcGFyc2VBY2NvdW50KGFjY291bnRfKTtcbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIERlY2xhcmUgdHlwZWQgQnVuZGxlciBDbGllbnQuXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICBjb25zdCBidW5kbGVyQ2xpZW50ID0gY2xpZW50O1xuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gRGVjbGFyZSBQYXltYXN0ZXIgcHJvcGVydGllcy5cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIGNvbnN0IHBheW1hc3RlciA9IHBhcmFtZXRlcnMucGF5bWFzdGVyID8/IGJ1bmRsZXJDbGllbnQ/LnBheW1hc3RlcjtcbiAgICBjb25zdCBwYXltYXN0ZXJBZGRyZXNzID0gdHlwZW9mIHBheW1hc3RlciA9PT0gJ3N0cmluZycgPyBwYXltYXN0ZXIgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgeyBnZXRQYXltYXN0ZXJTdHViRGF0YSwgZ2V0UGF5bWFzdGVyRGF0YSB9ID0gKCgpID0+IHtcbiAgICAgICAgLy8gSWYgYHBheW1hc3RlcjogdHJ1ZWAsIHdlIHdpbGwgYXNzdW1lIHRoZSBCdW5kbGVyIENsaWVudCBzdXBwb3J0cyBQYXltYXN0ZXIgQWN0aW9ucy5cbiAgICAgICAgaWYgKHBheW1hc3RlciA9PT0gdHJ1ZSlcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZ2V0UGF5bWFzdGVyU3R1YkRhdGE6IChwYXJhbWV0ZXJzKSA9PiBnZXRBY3Rpb24oYnVuZGxlckNsaWVudCwgZ2V0UGF5bWFzdGVyU3R1YkRhdGFfLCAnZ2V0UGF5bWFzdGVyU3R1YkRhdGEnKShwYXJhbWV0ZXJzKSxcbiAgICAgICAgICAgICAgICBnZXRQYXltYXN0ZXJEYXRhOiAocGFyYW1ldGVycykgPT4gZ2V0QWN0aW9uKGJ1bmRsZXJDbGllbnQsIGdldFBheW1hc3RlckRhdGFfLCAnZ2V0UGF5bWFzdGVyRGF0YScpKHBhcmFtZXRlcnMpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgLy8gSWYgQWN0aW9ucyBhcmUgcGFzc2VkIHRvIGBwYXltYXN0ZXJgICh2aWEgUGF5bWFzdGVyIENsaWVudCBvciBkaXJlY3RseSksIHdlIHdpbGwgdXNlIHRoZW0uXG4gICAgICAgIGlmICh0eXBlb2YgcGF5bWFzdGVyID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgY29uc3QgeyBnZXRQYXltYXN0ZXJTdHViRGF0YSwgZ2V0UGF5bWFzdGVyRGF0YSB9ID0gcGF5bWFzdGVyO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBnZXRQYXltYXN0ZXJTdHViRGF0YTogKGdldFBheW1hc3RlckRhdGEgJiYgZ2V0UGF5bWFzdGVyU3R1YkRhdGFcbiAgICAgICAgICAgICAgICAgICAgPyBnZXRQYXltYXN0ZXJTdHViRGF0YVxuICAgICAgICAgICAgICAgICAgICA6IGdldFBheW1hc3RlckRhdGEpLFxuICAgICAgICAgICAgICAgIGdldFBheW1hc3RlckRhdGE6IGdldFBheW1hc3RlckRhdGEgJiYgZ2V0UGF5bWFzdGVyU3R1YkRhdGFcbiAgICAgICAgICAgICAgICAgICAgPyBnZXRQYXltYXN0ZXJEYXRhXG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICAvLyBObyBQYXltYXN0ZXIgZnVuY3Rpb25zLlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZ2V0UGF5bWFzdGVyU3R1YkRhdGE6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGdldFBheW1hc3RlckRhdGE6IHVuZGVmaW5lZCxcbiAgICAgICAgfTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IHBheW1hc3RlckNvbnRleHQgPSBwYXJhbWV0ZXJzLnBheW1hc3RlckNvbnRleHRcbiAgICAgICAgPyBwYXJhbWV0ZXJzLnBheW1hc3RlckNvbnRleHRcbiAgICAgICAgOiBidW5kbGVyQ2xpZW50Py5wYXltYXN0ZXJDb250ZXh0O1xuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gU2V0IHVwIHRoZSBVc2VyIE9wZXJhdGlvbiByZXF1ZXN0LlxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgbGV0IHJlcXVlc3QgPSB7XG4gICAgICAgIC4uLnBhcmFtZXRlcnMsXG4gICAgICAgIHBheW1hc3RlcjogcGF5bWFzdGVyQWRkcmVzcyxcbiAgICAgICAgc2VuZGVyOiBhY2NvdW50LmFkZHJlc3MsXG4gICAgfTtcbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIENvbmN1cnJlbnRseSBwcmVwYXJlIHByb3BlcnRpZXMgcmVxdWlyZWQgdG8gZmlsbCB0aGUgVXNlciBPcGVyYXRpb24uXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICBjb25zdCBbY2FsbERhdGEsIGZhY3RvcnksIGZlZXMsIG5vbmNlLCBhdXRob3JpemF0aW9uXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGlmIChwYXJhbWV0ZXJzLmNhbGxzKVxuICAgICAgICAgICAgICAgIHJldHVybiBhY2NvdW50LmVuY29kZUNhbGxzKHBhcmFtZXRlcnMuY2FsbHMubWFwKChjYWxsXykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYWxsID0gY2FsbF87XG4gICAgICAgICAgICAgICAgICAgIGlmIChjYWxsLmFiaSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogZW5jb2RlRnVuY3Rpb25EYXRhKGNhbGwpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvOiBjYWxsLnRvLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBjYWxsLnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGw7XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnMuY2FsbERhdGE7XG4gICAgICAgIH0pKCksXG4gICAgICAgIChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXByb3BlcnRpZXMuaW5jbHVkZXMoJ2ZhY3RvcnknKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgaWYgKHBhcmFtZXRlcnMuaW5pdENvZGUpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgaW5pdENvZGU6IHBhcmFtZXRlcnMuaW5pdENvZGUgfTtcbiAgICAgICAgICAgIGlmIChwYXJhbWV0ZXJzLmZhY3RvcnkgJiYgcGFyYW1ldGVycy5mYWN0b3J5RGF0YSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGZhY3Rvcnk6IHBhcmFtZXRlcnMuZmFjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgZmFjdG9yeURhdGE6IHBhcmFtZXRlcnMuZmFjdG9yeURhdGEsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHsgZmFjdG9yeSwgZmFjdG9yeURhdGEgfSA9IGF3YWl0IGFjY291bnQuZ2V0RmFjdG9yeUFyZ3MoKTtcbiAgICAgICAgICAgIGlmIChhY2NvdW50LmVudHJ5UG9pbnQudmVyc2lvbiA9PT0gJzAuNicpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgaW5pdENvZGU6IGZhY3RvcnkgJiYgZmFjdG9yeURhdGEgPyBjb25jYXQoW2ZhY3RvcnksIGZhY3RvcnlEYXRhXSkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZmFjdG9yeSxcbiAgICAgICAgICAgICAgICBmYWN0b3J5RGF0YSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pKCksXG4gICAgICAgIChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXByb3BlcnRpZXMuaW5jbHVkZXMoJ2ZlZXMnKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgLy8gSWYgd2UgaGF2ZSBzdWZmaWNpZW50IHByb3BlcnRpZXMgZm9yIGZlZXMsIHJldHVybiB0aGVtLlxuICAgICAgICAgICAgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzLm1heEZlZVBlckdhcyA9PT0gJ2JpZ2ludCcgJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgcGFyYW1ldGVycy5tYXhQcmlvcml0eUZlZVBlckdhcyA9PT0gJ2JpZ2ludCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlcXVlc3Q7XG4gICAgICAgICAgICAvLyBJZiB0aGUgQnVuZGxlciBDbGllbnQgaGFzIGEgYGVzdGltYXRlRmVlc1Blckdhc2AgaG9vaywgcnVuIGl0LlxuICAgICAgICAgICAgaWYgKGJ1bmRsZXJDbGllbnQ/LnVzZXJPcGVyYXRpb24/LmVzdGltYXRlRmVlc1Blckdhcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZlZXMgPSBhd2FpdCBidW5kbGVyQ2xpZW50LnVzZXJPcGVyYXRpb24uZXN0aW1hdGVGZWVzUGVyR2FzKHtcbiAgICAgICAgICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgYnVuZGxlckNsaWVudCxcbiAgICAgICAgICAgICAgICAgICAgdXNlck9wZXJhdGlvbjogcmVxdWVzdCxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgICAgICAgICAgICAuLi5mZWVzLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBPdGhlcndpc2UsIHdlIHdpbGwgbmVlZCB0byBlc3RpbWF0ZSB0aGUgZmVlcyB0byBmaWxsIHRoZSBmZWUgcHJvcGVydGllcy5cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2xpZW50XyA9IGJ1bmRsZXJDbGllbnQuY2xpZW50ID8/IGNsaWVudDtcbiAgICAgICAgICAgICAgICBjb25zdCBmZWVzID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudF8sIGVzdGltYXRlRmVlc1BlckdhcywgJ2VzdGltYXRlRmVlc1BlckdhcycpKHtcbiAgICAgICAgICAgICAgICAgICAgY2hhaW46IGNsaWVudF8uY2hhaW4sXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdlaXAxNTU5JyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBtYXhGZWVQZXJHYXM6IHR5cGVvZiBwYXJhbWV0ZXJzLm1heEZlZVBlckdhcyA9PT0gJ2JpZ2ludCdcbiAgICAgICAgICAgICAgICAgICAgICAgID8gcGFyYW1ldGVycy5tYXhGZWVQZXJHYXNcbiAgICAgICAgICAgICAgICAgICAgICAgIDogQmlnSW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQnVuZGxlcnMgdW5mb3J0dW5hdGVseSBoYXZlIHN0cmljdCBydWxlcyBvbiBmZWUgcHJlY2hlY2tzIOKAkyB3ZSB3aWxsIG5lZWQgdG8gc2V0IGEgZ2VuZXJvdXMgYnVmZmVyLlxuICAgICAgICAgICAgICAgICAgICAgICAgMm4gKiBmZWVzLm1heEZlZVBlckdhcyksXG4gICAgICAgICAgICAgICAgICAgIG1heFByaW9yaXR5RmVlUGVyR2FzOiB0eXBlb2YgcGFyYW1ldGVycy5tYXhQcmlvcml0eUZlZVBlckdhcyA9PT0gJ2JpZ2ludCdcbiAgICAgICAgICAgICAgICAgICAgICAgID8gcGFyYW1ldGVycy5tYXhQcmlvcml0eUZlZVBlckdhc1xuICAgICAgICAgICAgICAgICAgICAgICAgOiBCaWdJbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBCdW5kbGVycyB1bmZvcnR1bmF0ZWx5IGhhdmUgc3RyaWN0IHJ1bGVzIG9uIGZlZSBwcmVjaGVja3Mg4oCTIHdlIHdpbGwgbmVlZCB0byBzZXQgYSBnZW5lcm91cyBidWZmZXIuXG4gICAgICAgICAgICAgICAgICAgICAgICAybiAqIGZlZXMubWF4UHJpb3JpdHlGZWVQZXJHYXMpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkoKSxcbiAgICAgICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGlmICghcHJvcGVydGllcy5pbmNsdWRlcygnbm9uY2UnKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzLm5vbmNlID09PSAnYmlnaW50JylcbiAgICAgICAgICAgICAgICByZXR1cm4gcGFyYW1ldGVycy5ub25jZTtcbiAgICAgICAgICAgIHJldHVybiBhY2NvdW50LmdldE5vbmNlKCk7XG4gICAgICAgIH0pKCksXG4gICAgICAgIChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXByb3BlcnRpZXMuaW5jbHVkZXMoJ2F1dGhvcml6YXRpb24nKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzLmF1dGhvcml6YXRpb24gPT09ICdvYmplY3QnKVxuICAgICAgICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzLmF1dGhvcml6YXRpb247XG4gICAgICAgICAgICBpZiAoYWNjb3VudC5hdXRob3JpemF0aW9uICYmICEoYXdhaXQgYWNjb3VudC5pc0RlcGxveWVkKCkpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYXV0aG9yaXphdGlvbiA9IGF3YWl0IHByZXBhcmVBdXRob3JpemF0aW9uKGFjY291bnQuY2xpZW50LCBhY2NvdW50LmF1dGhvcml6YXRpb24pO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLmF1dGhvcml6YXRpb24sXG4gICAgICAgICAgICAgICAgICAgIHI6ICcweGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICAgICAgICAgICAgICAgICAgICBzOiAnMHg3YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJyxcbiAgICAgICAgICAgICAgICAgICAgeVBhcml0eTogMSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSkoKSxcbiAgICBdKTtcbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEZpbGwgVXNlciBPcGVyYXRpb24gd2l0aCB0aGUgcHJlcGFyZWQgcHJvcGVydGllcyBmcm9tIGFib3ZlLlxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgaWYgKHR5cGVvZiBjYWxsRGF0YSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJlcXVlc3QuY2FsbERhdGEgPSBjYWxsRGF0YTtcbiAgICBpZiAodHlwZW9mIGZhY3RvcnkgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXF1ZXN0ID0geyAuLi5yZXF1ZXN0LCAuLi5mYWN0b3J5IH07XG4gICAgaWYgKHR5cGVvZiBmZWVzICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgcmVxdWVzdCA9IHsgLi4ucmVxdWVzdCwgLi4uZmVlcyB9O1xuICAgIGlmICh0eXBlb2Ygbm9uY2UgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXF1ZXN0Lm5vbmNlID0gbm9uY2U7XG4gICAgaWYgKHR5cGVvZiBhdXRob3JpemF0aW9uICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgcmVxdWVzdC5hdXRob3JpemF0aW9uID0gYXV0aG9yaXphdGlvbjtcbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEZpbGwgVXNlciBPcGVyYXRpb24gd2l0aCB0aGUgYHNpZ25hdHVyZWAgcHJvcGVydHkuXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICBpZiAocHJvcGVydGllcy5pbmNsdWRlcygnc2lnbmF0dXJlJykpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzLnNpZ25hdHVyZSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICByZXF1ZXN0LnNpZ25hdHVyZSA9IHBhcmFtZXRlcnMuc2lnbmF0dXJlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXF1ZXN0LnNpZ25hdHVyZSA9IGF3YWl0IGFjY291bnQuZ2V0U3R1YlNpZ25hdHVyZShyZXF1ZXN0KTtcbiAgICB9XG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBgaW5pdENvZGVgIGlzIHJlcXVpcmVkIHRvIGJlIGZpbGxlZCB3aXRoIEVudHJ5UG9pbnQgMC42LlxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gSWYgbm8gYGluaXRDb2RlYCBpcyBwcm92aWRlZCwgd2UgdXNlIGFuIGVtcHR5IGJ5dGVzIHN0cmluZy5cbiAgICBpZiAoYWNjb3VudC5lbnRyeVBvaW50LnZlcnNpb24gPT09ICcwLjYnICYmICFyZXF1ZXN0LmluaXRDb2RlKVxuICAgICAgICByZXF1ZXN0LmluaXRDb2RlID0gJzB4JztcbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEZpbGwgVXNlciBPcGVyYXRpb24gd2l0aCBwYXltYXN0ZXItcmVsYXRlZCBwcm9wZXJ0aWVzIGZvciAqKmdhcyBlc3RpbWF0aW9uKiouXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICBsZXQgY2hhaW5JZDtcbiAgICBhc3luYyBmdW5jdGlvbiBnZXRDaGFpbklkKCkge1xuICAgICAgICBpZiAoY2hhaW5JZClcbiAgICAgICAgICAgIHJldHVybiBjaGFpbklkO1xuICAgICAgICBpZiAoY2xpZW50LmNoYWluKVxuICAgICAgICAgICAgcmV0dXJuIGNsaWVudC5jaGFpbi5pZDtcbiAgICAgICAgY29uc3QgY2hhaW5JZF8gPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBnZXRDaGFpbklkXywgJ2dldENoYWluSWQnKSh7fSk7XG4gICAgICAgIGNoYWluSWQgPSBjaGFpbklkXztcbiAgICAgICAgcmV0dXJuIGNoYWluSWQ7XG4gICAgfVxuICAgIC8vIElmIHRoZSBVc2VyIE9wZXJhdGlvbiBpcyBpbnRlbmRlZCB0byBiZSBzcG9uc29yZWQsIHdlIHdpbGwgbmVlZCB0byBmaWxsIHRoZSBwYXltYXN0ZXItcmVsYXRlZFxuICAgIC8vIFVzZXIgT3BlcmF0aW9uIHByb3BlcnRpZXMgcmVxdWlyZWQgdG8gZXN0aW1hdGUgdGhlIFVzZXIgT3BlcmF0aW9uIGdhcy5cbiAgICBsZXQgaXNQYXltYXN0ZXJQb3B1bGF0ZWQgPSBmYWxzZTtcbiAgICBpZiAocHJvcGVydGllcy5pbmNsdWRlcygncGF5bWFzdGVyJykgJiZcbiAgICAgICAgZ2V0UGF5bWFzdGVyU3R1YkRhdGEgJiZcbiAgICAgICAgIXBheW1hc3RlckFkZHJlc3MgJiZcbiAgICAgICAgIXBhcmFtZXRlcnMucGF5bWFzdGVyQW5kRGF0YSkge1xuICAgICAgICBjb25zdCB7IGlzRmluYWwgPSBmYWxzZSwgc3BvbnNvcjogXywgLi4ucGF5bWFzdGVyQXJncyB9ID0gYXdhaXQgZ2V0UGF5bWFzdGVyU3R1YkRhdGEoe1xuICAgICAgICAgICAgY2hhaW5JZDogYXdhaXQgZ2V0Q2hhaW5JZCgpLFxuICAgICAgICAgICAgZW50cnlQb2ludEFkZHJlc3M6IGFjY291bnQuZW50cnlQb2ludC5hZGRyZXNzLFxuICAgICAgICAgICAgY29udGV4dDogcGF5bWFzdGVyQ29udGV4dCxcbiAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgIH0pO1xuICAgICAgICBpc1BheW1hc3RlclBvcHVsYXRlZCA9IGlzRmluYWw7XG4gICAgICAgIHJlcXVlc3QgPSB7XG4gICAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgICAgLi4ucGF5bWFzdGVyQXJncyxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBgcGF5bWFzdGVyQW5kRGF0YWAgaXMgcmVxdWlyZWQgdG8gYmUgZmlsbGVkIHdpdGggRW50cnlQb2ludCAwLjYuXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBJZiBubyBgcGF5bWFzdGVyQW5kRGF0YWAgaXMgcHJvdmlkZWQsIHdlIHVzZSBhbiBlbXB0eSBieXRlcyBzdHJpbmcuXG4gICAgaWYgKGFjY291bnQuZW50cnlQb2ludC52ZXJzaW9uID09PSAnMC42JyAmJiAhcmVxdWVzdC5wYXltYXN0ZXJBbmREYXRhKVxuICAgICAgICByZXF1ZXN0LnBheW1hc3RlckFuZERhdGEgPSAnMHgnO1xuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gRmlsbCBVc2VyIE9wZXJhdGlvbiB3aXRoIGdhcy1yZWxhdGVkIHByb3BlcnRpZXMuXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICBpZiAocHJvcGVydGllcy5pbmNsdWRlcygnZ2FzJykpIHtcbiAgICAgICAgLy8gSWYgdGhlIEFjY291bnQgaGFzIG9waW5pb25hdGVkIGdhcyBlc3RpbWF0aW9uIGxvZ2ljLCBydW4gdGhlIGBlc3RpbWF0ZUdhc2AgaG9vayBhbmRcbiAgICAgICAgLy8gZmlsbCB0aGUgcmVxdWVzdCB3aXRoIHRoZSBwcmVwYXJlZCBnYXMgcHJvcGVydGllcy5cbiAgICAgICAgaWYgKGFjY291bnQudXNlck9wZXJhdGlvbj8uZXN0aW1hdGVHYXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGdhcyA9IGF3YWl0IGFjY291bnQudXNlck9wZXJhdGlvbi5lc3RpbWF0ZUdhcyhyZXF1ZXN0KTtcbiAgICAgICAgICAgIHJlcXVlc3QgPSB7XG4gICAgICAgICAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgICAgICAgICAuLi5nYXMsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIC8vIElmIG5vdCBhbGwgdGhlIGdhcyBwcm9wZXJ0aWVzIGFyZSBhbHJlYWR5IHBvcHVsYXRlZCwgd2Ugd2lsbCBuZWVkIHRvIGVzdGltYXRlIHRoZSBnYXNcbiAgICAgICAgLy8gdG8gZmlsbCB0aGUgZ2FzIHByb3BlcnRpZXMuXG4gICAgICAgIGlmICh0eXBlb2YgcmVxdWVzdC5jYWxsR2FzTGltaXQgPT09ICd1bmRlZmluZWQnIHx8XG4gICAgICAgICAgICB0eXBlb2YgcmVxdWVzdC5wcmVWZXJpZmljYXRpb25HYXMgPT09ICd1bmRlZmluZWQnIHx8XG4gICAgICAgICAgICB0eXBlb2YgcmVxdWVzdC52ZXJpZmljYXRpb25HYXNMaW1pdCA9PT0gJ3VuZGVmaW5lZCcgfHxcbiAgICAgICAgICAgIChyZXF1ZXN0LnBheW1hc3RlciAmJlxuICAgICAgICAgICAgICAgIHR5cGVvZiByZXF1ZXN0LnBheW1hc3RlclBvc3RPcEdhc0xpbWl0ID09PSAndW5kZWZpbmVkJykgfHxcbiAgICAgICAgICAgIChyZXF1ZXN0LnBheW1hc3RlciAmJlxuICAgICAgICAgICAgICAgIHR5cGVvZiByZXF1ZXN0LnBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0ID09PSAndW5kZWZpbmVkJykpIHtcbiAgICAgICAgICAgIGNvbnN0IGdhcyA9IGF3YWl0IGdldEFjdGlvbihidW5kbGVyQ2xpZW50LCBlc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXMsICdlc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXMnKSh7XG4gICAgICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICAgICAgICAvLyBTb21lIEJ1bmRsZXJzIGZhaWwgaWYgbnVsbGlzaCBnYXMgdmFsdWVzIGFyZSBwcm92aWRlZCBmb3IgZ2FzIGVzdGltYXRpb24gOicpIOKAk1xuICAgICAgICAgICAgICAgIC8vIHNvIHdlIHdpbGwgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHplcm9pc2ggdmFsdWUuXG4gICAgICAgICAgICAgICAgY2FsbEdhc0xpbWl0OiAwbixcbiAgICAgICAgICAgICAgICBwcmVWZXJpZmljYXRpb25HYXM6IDBuLFxuICAgICAgICAgICAgICAgIHZlcmlmaWNhdGlvbkdhc0xpbWl0OiAwbixcbiAgICAgICAgICAgICAgICBzdGF0ZU92ZXJyaWRlLFxuICAgICAgICAgICAgICAgIC4uLihyZXF1ZXN0LnBheW1hc3RlclxuICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBheW1hc3RlclBvc3RPcEdhc0xpbWl0OiAwbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0OiAwbixcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXF1ZXN0ID0ge1xuICAgICAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgICAgICAgY2FsbEdhc0xpbWl0OiByZXF1ZXN0LmNhbGxHYXNMaW1pdCA/PyBnYXMuY2FsbEdhc0xpbWl0LFxuICAgICAgICAgICAgICAgIHByZVZlcmlmaWNhdGlvbkdhczogcmVxdWVzdC5wcmVWZXJpZmljYXRpb25HYXMgPz8gZ2FzLnByZVZlcmlmaWNhdGlvbkdhcyxcbiAgICAgICAgICAgICAgICB2ZXJpZmljYXRpb25HYXNMaW1pdDogcmVxdWVzdC52ZXJpZmljYXRpb25HYXNMaW1pdCA/PyBnYXMudmVyaWZpY2F0aW9uR2FzTGltaXQsXG4gICAgICAgICAgICAgICAgcGF5bWFzdGVyUG9zdE9wR2FzTGltaXQ6IHJlcXVlc3QucGF5bWFzdGVyUG9zdE9wR2FzTGltaXQgPz8gZ2FzLnBheW1hc3RlclBvc3RPcEdhc0xpbWl0LFxuICAgICAgICAgICAgICAgIHBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0OiByZXF1ZXN0LnBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0ID8/XG4gICAgICAgICAgICAgICAgICAgIGdhcy5wYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBGaWxsIFVzZXIgT3BlcmF0aW9uIHdpdGggcGF5bWFzdGVyLXJlbGF0ZWQgcHJvcGVydGllcyBmb3IgKipzZW5kaW5nKiogdGhlIFVzZXIgT3BlcmF0aW9uLlxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gSWYgdGhlIFVzZXIgT3BlcmF0aW9uIGlzIGludGVuZGVkIHRvIGJlIHNwb25zb3JlZCwgd2Ugd2lsbCBuZWVkIHRvIGZpbGwgdGhlIHBheW1hc3Rlci1yZWxhdGVkXG4gICAgLy8gVXNlciBPcGVyYXRpb24gcHJvcGVydGllcyByZXF1aXJlZCB0byBzZW5kIHRoZSBVc2VyIE9wZXJhdGlvbi5cbiAgICBpZiAocHJvcGVydGllcy5pbmNsdWRlcygncGF5bWFzdGVyJykgJiZcbiAgICAgICAgZ2V0UGF5bWFzdGVyRGF0YSAmJlxuICAgICAgICAhcGF5bWFzdGVyQWRkcmVzcyAmJlxuICAgICAgICAhcGFyYW1ldGVycy5wYXltYXN0ZXJBbmREYXRhICYmXG4gICAgICAgICFpc1BheW1hc3RlclBvcHVsYXRlZCkge1xuICAgICAgICAvLyBSZXRyaWV2ZSBwYXltYXN0ZXItcmVsYXRlZCBVc2VyIE9wZXJhdGlvbiBwcm9wZXJ0aWVzIHRvIGJlIHVzZWQgZm9yICoqc2VuZGluZyoqIHRoZSBVc2VyIE9wZXJhdGlvbi5cbiAgICAgICAgY29uc3QgcGF5bWFzdGVyID0gYXdhaXQgZ2V0UGF5bWFzdGVyRGF0YSh7XG4gICAgICAgICAgICBjaGFpbklkOiBhd2FpdCBnZXRDaGFpbklkKCksXG4gICAgICAgICAgICBlbnRyeVBvaW50QWRkcmVzczogYWNjb3VudC5lbnRyeVBvaW50LmFkZHJlc3MsXG4gICAgICAgICAgICBjb250ZXh0OiBwYXltYXN0ZXJDb250ZXh0LFxuICAgICAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgfSk7XG4gICAgICAgIHJlcXVlc3QgPSB7XG4gICAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgICAgLi4ucGF5bWFzdGVyLFxuICAgICAgICB9O1xuICAgIH1cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJlbW92ZSByZWR1bmRhbnQgcHJvcGVydGllcyB0aGF0IGRvIG5vdCBjb25mb3JtIHRvIHRoZSBVc2VyIE9wZXJhdGlvbiBzY2hlbWEuXG4gICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICBkZWxldGUgcmVxdWVzdC5jYWxscztcbiAgICBkZWxldGUgcmVxdWVzdC5wYXJhbWV0ZXJzO1xuICAgIGRlbGV0ZSByZXF1ZXN0LnBheW1hc3RlckNvbnRleHQ7XG4gICAgaWYgKHR5cGVvZiByZXF1ZXN0LnBheW1hc3RlciAhPT0gJ3N0cmluZycpXG4gICAgICAgIGRlbGV0ZSByZXF1ZXN0LnBheW1hc3RlcjtcbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIHJldHVybiByZXF1ZXN0O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cHJlcGFyZVVzZXJPcGVyYXRpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/prepareUserOperation.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/sendUserOperation.js": /*!*****************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/bundler/sendUserOperation.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ sendUserOperation: () => (/* binding */ sendUserOperation)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _errors_account_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../errors/account.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/account.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_errors_getUserOperationError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/errors/getUserOperationError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/errors/getUserOperationError.js\");\n/* harmony import */ var _utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/formatters/userOperationRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationRequest.js\");\n/* harmony import */ var _prepareUserOperation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./prepareUserOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/prepareUserOperation.js\");\n\n\n\n\n\n\n/**\n * Broadcasts a User Operation to the Bundler.\n *\n * - Docs: https://viem.sh/actions/bundler/sendUserOperation\n *\n * @param client - Client to use\n * @param parameters - {@link SendUserOperationParameters}\n * @returns The User Operation hash. {@link SendUserOperationReturnType}\n *\n * @example\n * import { createBundlerClient, http, parseEther } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { toSmartAccount } from 'viem/accounts'\n * import { sendUserOperation } from 'viem/actions'\n *\n * const account = await toSmartAccount({ ... })\n *\n * const bundlerClient = createBundlerClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const values = await sendUserOperation(bundlerClient, {\n * account,\n * calls: [{ to: '0x...', value: parseEther('1') }],\n * })\n */\nasync function sendUserOperation(client, parameters) {\n const { account: account_ = client.account, entryPointAddress } = parameters;\n if (!account_ && !parameters.sender)\n throw new _errors_account_js__WEBPACK_IMPORTED_MODULE_0__.AccountNotFoundError();\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(account_) : undefined;\n const request = account\n ? await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(client, _prepareUserOperation_js__WEBPACK_IMPORTED_MODULE_3__.prepareUserOperation, 'prepareUserOperation')(parameters)\n : parameters;\n const signature = (parameters.signature ||\n (await account?.signUserOperation?.(request)));\n const rpcParameters = (0,_utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_4__.formatUserOperationRequest)({\n ...request,\n signature,\n });\n try {\n return await client.request({\n method: 'eth_sendUserOperation',\n params: [\n rpcParameters,\n (entryPointAddress ?? account?.entryPoint?.address),\n ],\n }, { retryCount: 0 });\n }\n catch (error) {\n const calls = parameters.calls;\n throw (0,_utils_errors_getUserOperationError_js__WEBPACK_IMPORTED_MODULE_5__.getUserOperationError)(error, {\n ...request,\n ...(calls ? { calls } : {}),\n signature,\n });\n }\n}\n//# sourceMappingURL=sendUserOperation.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvc2VuZFVzZXJPcGVyYXRpb24uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUF1RTtBQUNMO0FBQ1Y7QUFDNEI7QUFDUztBQUMzQjtBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsc0NBQXNDO0FBQ3RDO0FBQ0E7QUFDQSxZQUFZLHdDQUF3QztBQUNwRCxZQUFZLFVBQVU7QUFDdEIsWUFBWSxpQkFBaUI7QUFDN0IsWUFBWSxvQkFBb0I7QUFDaEM7QUFDQSwwQ0FBMEMsS0FBSztBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxlQUFlLHFDQUFxQztBQUNwRCxJQUFJO0FBQ0o7QUFDTztBQUNQLFlBQVksd0RBQXdEO0FBQ3BFO0FBQ0Esa0JBQWtCLG9FQUFvQjtBQUN0QywrQkFBK0IsNkVBQVk7QUFDM0M7QUFDQSxnQkFBZ0IsOERBQVMsU0FBUywwRUFBb0I7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHFHQUEwQjtBQUNwRDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUyxJQUFJLGVBQWU7QUFDNUI7QUFDQTtBQUNBO0FBQ0EsY0FBYyw2RkFBcUI7QUFDbkM7QUFDQSwwQkFBMEIsUUFBUSxJQUFJO0FBQ3RDO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvc2VuZFVzZXJPcGVyYXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VBY2NvdW50IH0gZnJvbSAnLi4vLi4vLi4vYWNjb3VudHMvdXRpbHMvcGFyc2VBY2NvdW50LmpzJztcbmltcG9ydCB7IEFjY291bnROb3RGb3VuZEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vZXJyb3JzL2FjY291bnQuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGdldFVzZXJPcGVyYXRpb25FcnJvciB9IGZyb20gJy4uLy4uL3V0aWxzL2Vycm9ycy9nZXRVc2VyT3BlcmF0aW9uRXJyb3IuanMnO1xuaW1wb3J0IHsgZm9ybWF0VXNlck9wZXJhdGlvblJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy91c2VyT3BlcmF0aW9uUmVxdWVzdC5qcyc7XG5pbXBvcnQgeyBwcmVwYXJlVXNlck9wZXJhdGlvbiwgfSBmcm9tICcuL3ByZXBhcmVVc2VyT3BlcmF0aW9uLmpzJztcbi8qKlxuICogQnJvYWRjYXN0cyBhIFVzZXIgT3BlcmF0aW9uIHRvIHRoZSBCdW5kbGVyLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2FjdGlvbnMvYnVuZGxlci9zZW5kVXNlck9wZXJhdGlvblxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBTZW5kVXNlck9wZXJhdGlvblBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgVXNlciBPcGVyYXRpb24gaGFzaC4ge0BsaW5rIFNlbmRVc2VyT3BlcmF0aW9uUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlQnVuZGxlckNsaWVudCwgaHR0cCwgcGFyc2VFdGhlciB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyB0b1NtYXJ0QWNjb3VudCB9IGZyb20gJ3ZpZW0vYWNjb3VudHMnXG4gKiBpbXBvcnQgeyBzZW5kVXNlck9wZXJhdGlvbiB9IGZyb20gJ3ZpZW0vYWN0aW9ucydcbiAqXG4gKiBjb25zdCBhY2NvdW50ID0gYXdhaXQgdG9TbWFydEFjY291bnQoeyAuLi4gfSlcbiAqXG4gKiBjb25zdCBidW5kbGVyQ2xpZW50ID0gY3JlYXRlQnVuZGxlckNsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKlxuICogY29uc3QgdmFsdWVzID0gYXdhaXQgc2VuZFVzZXJPcGVyYXRpb24oYnVuZGxlckNsaWVudCwge1xuICogICBhY2NvdW50LFxuICogICBjYWxsczogW3sgdG86ICcweC4uLicsIHZhbHVlOiBwYXJzZUV0aGVyKCcxJykgfV0sXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VuZFVzZXJPcGVyYXRpb24oY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhY2NvdW50OiBhY2NvdW50XyA9IGNsaWVudC5hY2NvdW50LCBlbnRyeVBvaW50QWRkcmVzcyB9ID0gcGFyYW1ldGVycztcbiAgICBpZiAoIWFjY291bnRfICYmICFwYXJhbWV0ZXJzLnNlbmRlcilcbiAgICAgICAgdGhyb3cgbmV3IEFjY291bnROb3RGb3VuZEVycm9yKCk7XG4gICAgY29uc3QgYWNjb3VudCA9IGFjY291bnRfID8gcGFyc2VBY2NvdW50KGFjY291bnRfKSA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCByZXF1ZXN0ID0gYWNjb3VudFxuICAgICAgICA/IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIHByZXBhcmVVc2VyT3BlcmF0aW9uLCAncHJlcGFyZVVzZXJPcGVyYXRpb24nKShwYXJhbWV0ZXJzKVxuICAgICAgICA6IHBhcmFtZXRlcnM7XG4gICAgY29uc3Qgc2lnbmF0dXJlID0gKHBhcmFtZXRlcnMuc2lnbmF0dXJlIHx8XG4gICAgICAgIChhd2FpdCBhY2NvdW50Py5zaWduVXNlck9wZXJhdGlvbj8uKHJlcXVlc3QpKSk7XG4gICAgY29uc3QgcnBjUGFyYW1ldGVycyA9IGZvcm1hdFVzZXJPcGVyYXRpb25SZXF1ZXN0KHtcbiAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgc2lnbmF0dXJlLFxuICAgIH0pO1xuICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfc2VuZFVzZXJPcGVyYXRpb24nLFxuICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgICAgcnBjUGFyYW1ldGVycyxcbiAgICAgICAgICAgICAgICAoZW50cnlQb2ludEFkZHJlc3MgPz8gYWNjb3VudD8uZW50cnlQb2ludD8uYWRkcmVzcyksXG4gICAgICAgICAgICBdLFxuICAgICAgICB9LCB7IHJldHJ5Q291bnQ6IDAgfSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zdCBjYWxscyA9IHBhcmFtZXRlcnMuY2FsbHM7XG4gICAgICAgIHRocm93IGdldFVzZXJPcGVyYXRpb25FcnJvcihlcnJvciwge1xuICAgICAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgICAgIC4uLihjYWxscyA/IHsgY2FsbHMgfSA6IHt9KSxcbiAgICAgICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c2VuZFVzZXJPcGVyYXRpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/sendUserOperation.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js": /*!***************************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js ***! \***************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ waitForUserOperationReceipt: () => (/* binding */ waitForUserOperationReceipt)\n/* harmony export */ });\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_poll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/poll.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/userOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/userOperation.js\");\n/* harmony import */ var _getUserOperationReceipt_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getUserOperationReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js\");\n\n\n\n\n\n\n/**\n * Waits for the User Operation to be included on a [Block](https://viem.sh/docs/glossary/terms#block) (one confirmation), and then returns the User Operation receipt.\n *\n * - Docs: https://viem.sh/docs/actions/bundler/waitForUserOperationReceipt\n *\n * @param client - Client to use\n * @param parameters - {@link WaitForUserOperationReceiptParameters}\n * @returns The receipt. {@link WaitForUserOperationReceiptReturnType}\n *\n * @example\n * import { createBundlerClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { waitForUserOperationReceipt } from 'viem/actions'\n *\n * const client = createBundlerClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const receipt = await waitForUserOperationReceipt(client, {\n * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nfunction waitForUserOperationReceipt(client, parameters) {\n const { hash, pollingInterval = client.pollingInterval, retryCount, timeout = 120_000, } = parameters;\n let count = 0;\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'waitForUserOperationReceipt',\n client.uid,\n hash,\n ]);\n return new Promise((resolve, reject) => {\n const unobserve = (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { resolve, reject }, (emit) => {\n const done = (fn) => {\n unpoll();\n fn();\n unobserve();\n };\n const unpoll = (0,_utils_poll_js__WEBPACK_IMPORTED_MODULE_2__.poll)(async () => {\n if (retryCount && count >= retryCount)\n done(() => emit.reject(new _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_3__.WaitForUserOperationReceiptTimeoutError({ hash })));\n try {\n const receipt = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__.getAction)(client, _getUserOperationReceipt_js__WEBPACK_IMPORTED_MODULE_5__.getUserOperationReceipt, 'getUserOperationReceipt')({ hash });\n done(() => emit.resolve(receipt));\n }\n catch (err) {\n const error = err;\n if (error.name !== 'UserOperationReceiptNotFoundError')\n done(() => emit.reject(error));\n }\n count++;\n }, {\n emitOnBegin: true,\n interval: pollingInterval,\n });\n if (timeout)\n setTimeout(() => done(() => emit.reject(new _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_3__.WaitForUserOperationReceiptTimeoutError({ hash }))), timeout);\n return unpoll;\n });\n });\n}\n//# sourceMappingURL=waitForUserOperationReceipt.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL2J1bmRsZXIvd2FpdEZvclVzZXJPcGVyYXRpb25SZWNlaXB0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBd0Q7QUFDSjtBQUNOO0FBQ1U7QUFDaUM7QUFDakI7QUFDeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDBCQUEwQjtBQUMxQjtBQUNBO0FBQ0EsWUFBWSw0QkFBNEI7QUFDeEMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksOEJBQThCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPO0FBQ1AsWUFBWSxpRkFBaUY7QUFDN0Y7QUFDQSx1QkFBdUIsOERBQVM7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwwREFBTyxlQUFlLGlCQUFpQjtBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLG9EQUFJO0FBQy9CO0FBQ0EsK0NBQStDLDZGQUF1QyxHQUFHLE1BQU07QUFDL0Y7QUFDQSwwQ0FBMEMsOERBQVMsU0FBUyxnRkFBdUIsK0JBQStCLE1BQU07QUFDeEg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsNERBQTRELDZGQUF1QyxHQUFHLE1BQU07QUFDNUc7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vYWN0aW9ucy9idW5kbGVyL3dhaXRGb3JVc2VyT3BlcmF0aW9uUmVjZWlwdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgb2JzZXJ2ZSB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL29ic2VydmUuanMnO1xuaW1wb3J0IHsgcG9sbCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3BvbGwuanMnO1xuaW1wb3J0IHsgc3RyaW5naWZ5IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvc3RyaW5naWZ5LmpzJztcbmltcG9ydCB7IFdhaXRGb3JVc2VyT3BlcmF0aW9uUmVjZWlwdFRpbWVvdXRFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvdXNlck9wZXJhdGlvbi5qcyc7XG5pbXBvcnQgeyBnZXRVc2VyT3BlcmF0aW9uUmVjZWlwdCwgfSBmcm9tICcuL2dldFVzZXJPcGVyYXRpb25SZWNlaXB0LmpzJztcbi8qKlxuICogV2FpdHMgZm9yIHRoZSBVc2VyIE9wZXJhdGlvbiB0byBiZSBpbmNsdWRlZCBvbiBhIFtCbG9ja10oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZ2xvc3NhcnkvdGVybXMjYmxvY2spIChvbmUgY29uZmlybWF0aW9uKSwgYW5kIHRoZW4gcmV0dXJucyB0aGUgVXNlciBPcGVyYXRpb24gcmVjZWlwdC5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvYnVuZGxlci93YWl0Rm9yVXNlck9wZXJhdGlvblJlY2VpcHRcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgV2FpdEZvclVzZXJPcGVyYXRpb25SZWNlaXB0UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSByZWNlaXB0LiB7QGxpbmsgV2FpdEZvclVzZXJPcGVyYXRpb25SZWNlaXB0UmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlQnVuZGxlckNsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyB3YWl0Rm9yVXNlck9wZXJhdGlvblJlY2VpcHQgfSBmcm9tICd2aWVtL2FjdGlvbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlQnVuZGxlckNsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKlxuICogY29uc3QgcmVjZWlwdCA9IGF3YWl0IHdhaXRGb3JVc2VyT3BlcmF0aW9uUmVjZWlwdChjbGllbnQsIHtcbiAqICAgaGFzaDogJzB4NGNhN2VlNjUyZDU3Njc4ZjI2ZTg4N2MxNDlhYjA3MzVmNDFkZTM3YmNhZDU4YzlmNmQzZWQ1ODI0ZjE1Yjc0ZCcsXG4gKiB9KVxuICovXG5leHBvcnQgZnVuY3Rpb24gd2FpdEZvclVzZXJPcGVyYXRpb25SZWNlaXB0KGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgaGFzaCwgcG9sbGluZ0ludGVydmFsID0gY2xpZW50LnBvbGxpbmdJbnRlcnZhbCwgcmV0cnlDb3VudCwgdGltZW91dCA9IDEyMF8wMDAsIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGxldCBjb3VudCA9IDA7XG4gICAgY29uc3Qgb2JzZXJ2ZXJJZCA9IHN0cmluZ2lmeShbXG4gICAgICAgICd3YWl0Rm9yVXNlck9wZXJhdGlvblJlY2VpcHQnLFxuICAgICAgICBjbGllbnQudWlkLFxuICAgICAgICBoYXNoLFxuICAgIF0pO1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgIGNvbnN0IHVub2JzZXJ2ZSA9IG9ic2VydmUob2JzZXJ2ZXJJZCwgeyByZXNvbHZlLCByZWplY3QgfSwgKGVtaXQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGRvbmUgPSAoZm4pID0+IHtcbiAgICAgICAgICAgICAgICB1bnBvbGwoKTtcbiAgICAgICAgICAgICAgICBmbigpO1xuICAgICAgICAgICAgICAgIHVub2JzZXJ2ZSgpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IHVucG9sbCA9IHBvbGwoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXRyeUNvdW50ICYmIGNvdW50ID49IHJldHJ5Q291bnQpXG4gICAgICAgICAgICAgICAgICAgIGRvbmUoKCkgPT4gZW1pdC5yZWplY3QobmV3IFdhaXRGb3JVc2VyT3BlcmF0aW9uUmVjZWlwdFRpbWVvdXRFcnJvcih7IGhhc2ggfSkpKTtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWNlaXB0ID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZ2V0VXNlck9wZXJhdGlvblJlY2VpcHQsICdnZXRVc2VyT3BlcmF0aW9uUmVjZWlwdCcpKHsgaGFzaCB9KTtcbiAgICAgICAgICAgICAgICAgICAgZG9uZSgoKSA9PiBlbWl0LnJlc29sdmUocmVjZWlwdCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVycm9yID0gZXJyO1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IubmFtZSAhPT0gJ1VzZXJPcGVyYXRpb25SZWNlaXB0Tm90Rm91bmRFcnJvcicpXG4gICAgICAgICAgICAgICAgICAgICAgICBkb25lKCgpID0+IGVtaXQucmVqZWN0KGVycm9yKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgICAgICB9LCB7XG4gICAgICAgICAgICAgICAgZW1pdE9uQmVnaW46IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJ2YWw6IHBvbGxpbmdJbnRlcnZhbCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKHRpbWVvdXQpXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiBkb25lKCgpID0+IGVtaXQucmVqZWN0KG5ldyBXYWl0Rm9yVXNlck9wZXJhdGlvblJlY2VpcHRUaW1lb3V0RXJyb3IoeyBoYXNoIH0pKSksIHRpbWVvdXQpO1xuICAgICAgICAgICAgcmV0dXJuIHVucG9sbDtcbiAgICAgICAgfSk7XG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD13YWl0Rm9yVXNlck9wZXJhdGlvblJlY2VpcHQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterData.js": /*!******************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterData.js ***! \******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getPaymasterData: () => (/* binding */ getPaymasterData)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/formatters/userOperationRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationRequest.js\");\n\n\n\n/**\n * Retrieves paymaster-related User Operation properties to be used for sending the User Operation.\n *\n * - Docs: https://viem.sh/account-abstraction/actions/paymaster/getPaymasterData\n *\n * @param client - Client to use\n * @param parameters - {@link GetPaymasterDataParameters}\n * @returns Paymaster-related User Operation properties. {@link GetPaymasterDataReturnType}\n *\n * @example\n * import { http } from 'viem'\n * import { createPaymasterClient, getPaymasterData } from 'viem/account-abstraction'\n *\n * const paymasterClient = createPaymasterClient({\n * transport: http('https://...'),\n * })\n *\n * const userOperation = { ... }\n *\n * const values = await getPaymasterData(paymasterClient, {\n * chainId: 1,\n * entryPointAddress: '0x...',\n * ...userOperation,\n * })\n */\nasync function getPaymasterData(client, parameters) {\n const { chainId, entryPointAddress, context, ...userOperation } = parameters;\n const request = (0,_utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_0__.formatUserOperationRequest)(userOperation);\n const { paymasterPostOpGasLimit, paymasterVerificationGasLimit, ...rest } = await client.request({\n method: 'pm_getPaymasterData',\n params: [\n {\n ...request,\n callGasLimit: request.callGasLimit ?? '0x0',\n verificationGasLimit: request.verificationGasLimit ?? '0x0',\n preVerificationGas: request.preVerificationGas ?? '0x0',\n },\n entryPointAddress,\n (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(chainId),\n context,\n ],\n });\n return {\n ...rest,\n ...(paymasterPostOpGasLimit && {\n paymasterPostOpGasLimit: (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToBigInt)(paymasterPostOpGasLimit),\n }),\n ...(paymasterVerificationGasLimit && {\n paymasterVerificationGasLimit: (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToBigInt)(paymasterVerificationGasLimit),\n }),\n };\n}\n//# sourceMappingURL=getPaymasterData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL3BheW1hc3Rlci9nZXRQYXltYXN0ZXJEYXRhLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBaUU7QUFDRjtBQUM4QjtBQUM3RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsMERBQTBEO0FBQzFEO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkIsWUFBWSwwQ0FBMEM7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTztBQUNQLFlBQVksd0RBQXdEO0FBQ3BFLG9CQUFvQixxR0FBMEI7QUFDOUMsWUFBWSxrRUFBa0U7QUFDOUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxZQUFZLHFFQUFXO0FBQ3ZCO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLHVFQUFXO0FBQ2hELFNBQVM7QUFDVDtBQUNBLDJDQUEyQyx1RUFBVztBQUN0RCxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL2FjdGlvbnMvcGF5bWFzdGVyL2dldFBheW1hc3RlckRhdGEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGV4VG9CaWdJbnQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9lbmNvZGluZy9mcm9tSGV4LmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZW5jb2RpbmcvdG9IZXguanMnO1xuaW1wb3J0IHsgZm9ybWF0VXNlck9wZXJhdGlvblJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy91c2VyT3BlcmF0aW9uUmVxdWVzdC5qcyc7XG4vKipcbiAqIFJldHJpZXZlcyBwYXltYXN0ZXItcmVsYXRlZCBVc2VyIE9wZXJhdGlvbiBwcm9wZXJ0aWVzIHRvIGJlIHVzZWQgZm9yIHNlbmRpbmcgdGhlIFVzZXIgT3BlcmF0aW9uLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2FjY291bnQtYWJzdHJhY3Rpb24vYWN0aW9ucy9wYXltYXN0ZXIvZ2V0UGF5bWFzdGVyRGF0YVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRQYXltYXN0ZXJEYXRhUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFBheW1hc3Rlci1yZWxhdGVkIFVzZXIgT3BlcmF0aW9uIHByb3BlcnRpZXMuIHtAbGluayBHZXRQYXltYXN0ZXJEYXRhUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBjcmVhdGVQYXltYXN0ZXJDbGllbnQsIGdldFBheW1hc3RlckRhdGEgfSBmcm9tICd2aWVtL2FjY291bnQtYWJzdHJhY3Rpb24nXG4gKlxuICogY29uc3QgcGF5bWFzdGVyQ2xpZW50ID0gY3JlYXRlUGF5bWFzdGVyQ2xpZW50KHtcbiAqICAgdHJhbnNwb3J0OiBodHRwKCdodHRwczovLy4uLicpLFxuICogfSlcbiAqXG4gKiBjb25zdCB1c2VyT3BlcmF0aW9uID0geyAuLi4gfVxuICpcbiAqIGNvbnN0IHZhbHVlcyA9IGF3YWl0IGdldFBheW1hc3RlckRhdGEocGF5bWFzdGVyQ2xpZW50LCB7XG4gKiAgIGNoYWluSWQ6IDEsXG4gKiAgIGVudHJ5UG9pbnRBZGRyZXNzOiAnMHguLi4nLFxuICogICAuLi51c2VyT3BlcmF0aW9uLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFBheW1hc3RlckRhdGEoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBjaGFpbklkLCBlbnRyeVBvaW50QWRkcmVzcywgY29udGV4dCwgLi4udXNlck9wZXJhdGlvbiB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCByZXF1ZXN0ID0gZm9ybWF0VXNlck9wZXJhdGlvblJlcXVlc3QodXNlck9wZXJhdGlvbik7XG4gICAgY29uc3QgeyBwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCwgcGF5bWFzdGVyVmVyaWZpY2F0aW9uR2FzTGltaXQsIC4uLnJlc3QgfSA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAncG1fZ2V0UGF5bWFzdGVyRGF0YScsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgICAgICAgY2FsbEdhc0xpbWl0OiByZXF1ZXN0LmNhbGxHYXNMaW1pdCA/PyAnMHgwJyxcbiAgICAgICAgICAgICAgICB2ZXJpZmljYXRpb25HYXNMaW1pdDogcmVxdWVzdC52ZXJpZmljYXRpb25HYXNMaW1pdCA/PyAnMHgwJyxcbiAgICAgICAgICAgICAgICBwcmVWZXJpZmljYXRpb25HYXM6IHJlcXVlc3QucHJlVmVyaWZpY2F0aW9uR2FzID8/ICcweDAnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVudHJ5UG9pbnRBZGRyZXNzLFxuICAgICAgICAgICAgbnVtYmVyVG9IZXgoY2hhaW5JZCksXG4gICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICBdLFxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLnJlc3QsXG4gICAgICAgIC4uLihwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCAmJiB7XG4gICAgICAgICAgICBwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdDogaGV4VG9CaWdJbnQocGF5bWFzdGVyUG9zdE9wR2FzTGltaXQpLFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKHBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0ICYmIHtcbiAgICAgICAgICAgIHBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0OiBoZXhUb0JpZ0ludChwYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCksXG4gICAgICAgIH0pLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRQYXltYXN0ZXJEYXRhLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js": /*!**********************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js ***! \**********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getPaymasterStubData: () => (/* binding */ getPaymasterStubData)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/formatters/userOperationRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationRequest.js\");\n\n\n\n/**\n * Retrieves paymaster-related User Operation properties to be used for gas estimation.\n *\n * - Docs: https://viem.sh/account-abstraction/actions/paymaster/getPaymasterStubData\n *\n * @param client - Client to use\n * @param parameters - {@link GetPaymasterStubDataParameters}\n * @returns Paymaster-related User Operation properties. {@link GetPaymasterStubDataReturnType}\n *\n * @example\n * import { http } from 'viem'\n * import { createPaymasterClient, getPaymasterStubData } from 'viem/account-abstraction'\n *\n * const paymasterClient = createPaymasterClient({\n * transport: http('https://...'),\n * })\n *\n * const userOperation = { ... }\n *\n * const values = await getPaymasterStubData(paymasterClient, {\n * chainId: 1,\n * entryPointAddress: '0x...',\n * ...userOperation,\n * })\n */\nasync function getPaymasterStubData(client, parameters) {\n const { chainId, entryPointAddress, context, ...userOperation } = parameters;\n const request = (0,_utils_formatters_userOperationRequest_js__WEBPACK_IMPORTED_MODULE_0__.formatUserOperationRequest)(userOperation);\n const { paymasterPostOpGasLimit, paymasterVerificationGasLimit, ...rest } = await client.request({\n method: 'pm_getPaymasterStubData',\n params: [\n {\n ...request,\n callGasLimit: request.callGasLimit ?? '0x0',\n verificationGasLimit: request.verificationGasLimit ?? '0x0',\n preVerificationGas: request.preVerificationGas ?? '0x0',\n },\n entryPointAddress,\n (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(chainId),\n context,\n ],\n });\n return {\n ...rest,\n ...(paymasterPostOpGasLimit && {\n paymasterPostOpGasLimit: (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToBigInt)(paymasterPostOpGasLimit),\n }),\n ...(paymasterVerificationGasLimit && {\n paymasterVerificationGasLimit: (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToBigInt)(paymasterVerificationGasLimit),\n }),\n };\n}\n//# sourceMappingURL=getPaymasterStubData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL3BheW1hc3Rlci9nZXRQYXltYXN0ZXJTdHViRGF0YS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQWlFO0FBQ0Y7QUFDOEI7QUFDN0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDBEQUEwRDtBQUMxRDtBQUNBO0FBQ0EsWUFBWSxPQUFPO0FBQ25CLFlBQVksOENBQThDO0FBQzFEO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLHdEQUF3RDtBQUNwRSxvQkFBb0IscUdBQTBCO0FBQzlDLFlBQVksa0VBQWtFO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsWUFBWSxxRUFBVztBQUN2QjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyx1RUFBVztBQUNoRCxTQUFTO0FBQ1Q7QUFDQSwyQ0FBMkMsdUVBQVc7QUFDdEQsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL3BheW1hc3Rlci9nZXRQYXltYXN0ZXJTdHViRGF0YS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBoZXhUb0JpZ0ludCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2VuY29kaW5nL2Zyb21IZXguanMnO1xuaW1wb3J0IHsgbnVtYmVyVG9IZXggfSBmcm9tICcuLi8uLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBmb3JtYXRVc2VyT3BlcmF0aW9uUmVxdWVzdCwgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtYXR0ZXJzL3VzZXJPcGVyYXRpb25SZXF1ZXN0LmpzJztcbi8qKlxuICogUmV0cmlldmVzIHBheW1hc3Rlci1yZWxhdGVkIFVzZXIgT3BlcmF0aW9uIHByb3BlcnRpZXMgdG8gYmUgdXNlZCBmb3IgZ2FzIGVzdGltYXRpb24uXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvYWNjb3VudC1hYnN0cmFjdGlvbi9hY3Rpb25zL3BheW1hc3Rlci9nZXRQYXltYXN0ZXJTdHViRGF0YVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRQYXltYXN0ZXJTdHViRGF0YVBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBQYXltYXN0ZXItcmVsYXRlZCBVc2VyIE9wZXJhdGlvbiBwcm9wZXJ0aWVzLiB7QGxpbmsgR2V0UGF5bWFzdGVyU3R1YkRhdGFSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IGNyZWF0ZVBheW1hc3RlckNsaWVudCwgZ2V0UGF5bWFzdGVyU3R1YkRhdGEgfSBmcm9tICd2aWVtL2FjY291bnQtYWJzdHJhY3Rpb24nXG4gKlxuICogY29uc3QgcGF5bWFzdGVyQ2xpZW50ID0gY3JlYXRlUGF5bWFzdGVyQ2xpZW50KHtcbiAqICAgdHJhbnNwb3J0OiBodHRwKCdodHRwczovLy4uLicpLFxuICogfSlcbiAqXG4gKiBjb25zdCB1c2VyT3BlcmF0aW9uID0geyAuLi4gfVxuICpcbiAqIGNvbnN0IHZhbHVlcyA9IGF3YWl0IGdldFBheW1hc3RlclN0dWJEYXRhKHBheW1hc3RlckNsaWVudCwge1xuICogICBjaGFpbklkOiAxLFxuICogICBlbnRyeVBvaW50QWRkcmVzczogJzB4Li4uJyxcbiAqICAgLi4udXNlck9wZXJhdGlvbixcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRQYXltYXN0ZXJTdHViRGF0YShjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGNoYWluSWQsIGVudHJ5UG9pbnRBZGRyZXNzLCBjb250ZXh0LCAuLi51c2VyT3BlcmF0aW9uIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHJlcXVlc3QgPSBmb3JtYXRVc2VyT3BlcmF0aW9uUmVxdWVzdCh1c2VyT3BlcmF0aW9uKTtcbiAgICBjb25zdCB7IHBheW1hc3RlclBvc3RPcEdhc0xpbWl0LCBwYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCwgLi4ucmVzdCB9ID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICBtZXRob2Q6ICdwbV9nZXRQYXltYXN0ZXJTdHViRGF0YScsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgICAgICAgY2FsbEdhc0xpbWl0OiByZXF1ZXN0LmNhbGxHYXNMaW1pdCA/PyAnMHgwJyxcbiAgICAgICAgICAgICAgICB2ZXJpZmljYXRpb25HYXNMaW1pdDogcmVxdWVzdC52ZXJpZmljYXRpb25HYXNMaW1pdCA/PyAnMHgwJyxcbiAgICAgICAgICAgICAgICBwcmVWZXJpZmljYXRpb25HYXM6IHJlcXVlc3QucHJlVmVyaWZpY2F0aW9uR2FzID8/ICcweDAnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVudHJ5UG9pbnRBZGRyZXNzLFxuICAgICAgICAgICAgbnVtYmVyVG9IZXgoY2hhaW5JZCksXG4gICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICBdLFxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLnJlc3QsXG4gICAgICAgIC4uLihwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCAmJiB7XG4gICAgICAgICAgICBwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdDogaGV4VG9CaWdJbnQocGF5bWFzdGVyUG9zdE9wR2FzTGltaXQpLFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKHBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0ICYmIHtcbiAgICAgICAgICAgIHBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0OiBoZXhUb0JpZ0ludChwYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCksXG4gICAgICAgIH0pLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRQYXltYXN0ZXJTdHViRGF0YS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/paymaster/getPaymasterStubData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/clients/createBundlerClient.js": /*!***********************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/clients/createBundlerClient.js ***! \***********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createBundlerClient: () => (/* binding */ createBundlerClient)\n/* harmony export */ });\n/* harmony import */ var _clients_createClient_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../clients/createClient.js */ \"(app-pages-browser)/./node_modules/viem/_esm/clients/createClient.js\");\n/* harmony import */ var _decorators_bundler_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./decorators/bundler.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/clients/decorators/bundler.js\");\n\n\nfunction createBundlerClient(parameters) {\n const { client: client_, key = 'bundler', name = 'Bundler Client', paymaster, paymasterContext, transport, userOperation, } = parameters;\n const client = Object.assign((0,_clients_createClient_js__WEBPACK_IMPORTED_MODULE_0__.createClient)({\n ...parameters,\n chain: parameters.chain ?? client_?.chain,\n key,\n name,\n transport,\n type: 'bundlerClient',\n }), { client: client_, paymaster, paymasterContext, userOperation });\n return client.extend(_decorators_bundler_js__WEBPACK_IMPORTED_MODULE_1__.bundlerActions);\n}\n//# sourceMappingURL=createBundlerClient.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9jbGllbnRzL2NyZWF0ZUJ1bmRsZXJDbGllbnQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQThEO0FBQ0w7QUFDbEQ7QUFDUCxZQUFZLG9IQUFvSDtBQUNoSSxpQ0FBaUMsc0VBQVk7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxLQUFLLDZEQUE2RDtBQUN2RSx5QkFBeUIsa0VBQWM7QUFDdkM7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9jbGllbnRzL2NyZWF0ZUJ1bmRsZXJDbGllbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ2xpZW50LCB9IGZyb20gJy4uLy4uL2NsaWVudHMvY3JlYXRlQ2xpZW50LmpzJztcbmltcG9ydCB7IGJ1bmRsZXJBY3Rpb25zIH0gZnJvbSAnLi9kZWNvcmF0b3JzL2J1bmRsZXIuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUJ1bmRsZXJDbGllbnQocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgY2xpZW50OiBjbGllbnRfLCBrZXkgPSAnYnVuZGxlcicsIG5hbWUgPSAnQnVuZGxlciBDbGllbnQnLCBwYXltYXN0ZXIsIHBheW1hc3RlckNvbnRleHQsIHRyYW5zcG9ydCwgdXNlck9wZXJhdGlvbiwgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgY2xpZW50ID0gT2JqZWN0LmFzc2lnbihjcmVhdGVDbGllbnQoe1xuICAgICAgICAuLi5wYXJhbWV0ZXJzLFxuICAgICAgICBjaGFpbjogcGFyYW1ldGVycy5jaGFpbiA/PyBjbGllbnRfPy5jaGFpbixcbiAgICAgICAga2V5LFxuICAgICAgICBuYW1lLFxuICAgICAgICB0cmFuc3BvcnQsXG4gICAgICAgIHR5cGU6ICdidW5kbGVyQ2xpZW50JyxcbiAgICB9KSwgeyBjbGllbnQ6IGNsaWVudF8sIHBheW1hc3RlciwgcGF5bWFzdGVyQ29udGV4dCwgdXNlck9wZXJhdGlvbiB9KTtcbiAgICByZXR1cm4gY2xpZW50LmV4dGVuZChidW5kbGVyQWN0aW9ucyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jcmVhdGVCdW5kbGVyQ2xpZW50LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/clients/createBundlerClient.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/clients/decorators/bundler.js": /*!**********************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/clients/decorators/bundler.js ***! \**********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ bundlerActions: () => (/* binding */ bundlerActions)\n/* harmony export */ });\n/* harmony import */ var _actions_public_getChainId_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../actions/public/getChainId.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js\");\n/* harmony import */ var _actions_bundler_estimateUserOperationGas_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../actions/bundler/estimateUserOperationGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js\");\n/* harmony import */ var _actions_bundler_getSupportedEntryPoints_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../actions/bundler/getSupportedEntryPoints.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getSupportedEntryPoints.js\");\n/* harmony import */ var _actions_bundler_getUserOperation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../actions/bundler/getUserOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperation.js\");\n/* harmony import */ var _actions_bundler_getUserOperationReceipt_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../actions/bundler/getUserOperationReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/getUserOperationReceipt.js\");\n/* harmony import */ var _actions_bundler_prepareUserOperation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../actions/bundler/prepareUserOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/prepareUserOperation.js\");\n/* harmony import */ var _actions_bundler_sendUserOperation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../actions/bundler/sendUserOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/sendUserOperation.js\");\n/* harmony import */ var _actions_bundler_waitForUserOperationReceipt_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../actions/bundler/waitForUserOperationReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/actions/bundler/waitForUserOperationReceipt.js\");\n\n\n\n\n\n\n\n\nfunction bundlerActions(client) {\n return {\n estimateUserOperationGas: (parameters) => (0,_actions_bundler_estimateUserOperationGas_js__WEBPACK_IMPORTED_MODULE_0__.estimateUserOperationGas)(client, parameters),\n getChainId: () => (0,_actions_public_getChainId_js__WEBPACK_IMPORTED_MODULE_1__.getChainId)(client),\n getSupportedEntryPoints: () => (0,_actions_bundler_getSupportedEntryPoints_js__WEBPACK_IMPORTED_MODULE_2__.getSupportedEntryPoints)(client),\n getUserOperation: (parameters) => (0,_actions_bundler_getUserOperation_js__WEBPACK_IMPORTED_MODULE_3__.getUserOperation)(client, parameters),\n getUserOperationReceipt: (parameters) => (0,_actions_bundler_getUserOperationReceipt_js__WEBPACK_IMPORTED_MODULE_4__.getUserOperationReceipt)(client, parameters),\n prepareUserOperation: (parameters) => (0,_actions_bundler_prepareUserOperation_js__WEBPACK_IMPORTED_MODULE_5__.prepareUserOperation)(client, parameters),\n sendUserOperation: (parameters) => (0,_actions_bundler_sendUserOperation_js__WEBPACK_IMPORTED_MODULE_6__.sendUserOperation)(client, parameters),\n waitForUserOperationReceipt: (parameters) => (0,_actions_bundler_waitForUserOperationReceipt_js__WEBPACK_IMPORTED_MODULE_7__.waitForUserOperationReceipt)(client, parameters),\n };\n}\n//# sourceMappingURL=bundler.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9jbGllbnRzL2RlY29yYXRvcnMvYnVuZGxlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBb0U7QUFDMEI7QUFDRjtBQUNkO0FBQ2M7QUFDTjtBQUNOO0FBQ29CO0FBQzdGO0FBQ1A7QUFDQSxrREFBa0Qsc0dBQXdCO0FBQzFFLDBCQUEwQix5RUFBVTtBQUNwQyx1Q0FBdUMsb0dBQXVCO0FBQzlELDBDQUEwQyxzRkFBZ0I7QUFDMUQsaURBQWlELG9HQUF1QjtBQUN4RSw4Q0FBOEMsOEZBQW9CO0FBQ2xFLDJDQUEyQyx3RkFBaUI7QUFDNUQscURBQXFELDRHQUEyQjtBQUNoRjtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vY2xpZW50cy9kZWNvcmF0b3JzL2J1bmRsZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0Q2hhaW5JZCwgfSBmcm9tICcuLi8uLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRDaGFpbklkLmpzJztcbmltcG9ydCB7IGVzdGltYXRlVXNlck9wZXJhdGlvbkdhcywgfSBmcm9tICcuLi8uLi9hY3Rpb25zL2J1bmRsZXIvZXN0aW1hdGVVc2VyT3BlcmF0aW9uR2FzLmpzJztcbmltcG9ydCB7IGdldFN1cHBvcnRlZEVudHJ5UG9pbnRzLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvYnVuZGxlci9nZXRTdXBwb3J0ZWRFbnRyeVBvaW50cy5qcyc7XG5pbXBvcnQgeyBnZXRVc2VyT3BlcmF0aW9uLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvYnVuZGxlci9nZXRVc2VyT3BlcmF0aW9uLmpzJztcbmltcG9ydCB7IGdldFVzZXJPcGVyYXRpb25SZWNlaXB0LCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvYnVuZGxlci9nZXRVc2VyT3BlcmF0aW9uUmVjZWlwdC5qcyc7XG5pbXBvcnQgeyBwcmVwYXJlVXNlck9wZXJhdGlvbiwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL2J1bmRsZXIvcHJlcGFyZVVzZXJPcGVyYXRpb24uanMnO1xuaW1wb3J0IHsgc2VuZFVzZXJPcGVyYXRpb24sIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9idW5kbGVyL3NlbmRVc2VyT3BlcmF0aW9uLmpzJztcbmltcG9ydCB7IHdhaXRGb3JVc2VyT3BlcmF0aW9uUmVjZWlwdCwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL2J1bmRsZXIvd2FpdEZvclVzZXJPcGVyYXRpb25SZWNlaXB0LmpzJztcbmV4cG9ydCBmdW5jdGlvbiBidW5kbGVyQWN0aW9ucyhjbGllbnQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBlc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXM6IChwYXJhbWV0ZXJzKSA9PiBlc3RpbWF0ZVVzZXJPcGVyYXRpb25HYXMoY2xpZW50LCBwYXJhbWV0ZXJzKSxcbiAgICAgICAgZ2V0Q2hhaW5JZDogKCkgPT4gZ2V0Q2hhaW5JZChjbGllbnQpLFxuICAgICAgICBnZXRTdXBwb3J0ZWRFbnRyeVBvaW50czogKCkgPT4gZ2V0U3VwcG9ydGVkRW50cnlQb2ludHMoY2xpZW50KSxcbiAgICAgICAgZ2V0VXNlck9wZXJhdGlvbjogKHBhcmFtZXRlcnMpID0+IGdldFVzZXJPcGVyYXRpb24oY2xpZW50LCBwYXJhbWV0ZXJzKSxcbiAgICAgICAgZ2V0VXNlck9wZXJhdGlvblJlY2VpcHQ6IChwYXJhbWV0ZXJzKSA9PiBnZXRVc2VyT3BlcmF0aW9uUmVjZWlwdChjbGllbnQsIHBhcmFtZXRlcnMpLFxuICAgICAgICBwcmVwYXJlVXNlck9wZXJhdGlvbjogKHBhcmFtZXRlcnMpID0+IHByZXBhcmVVc2VyT3BlcmF0aW9uKGNsaWVudCwgcGFyYW1ldGVycyksXG4gICAgICAgIHNlbmRVc2VyT3BlcmF0aW9uOiAocGFyYW1ldGVycykgPT4gc2VuZFVzZXJPcGVyYXRpb24oY2xpZW50LCBwYXJhbWV0ZXJzKSxcbiAgICAgICAgd2FpdEZvclVzZXJPcGVyYXRpb25SZWNlaXB0OiAocGFyYW1ldGVycykgPT4gd2FpdEZvclVzZXJPcGVyYXRpb25SZWNlaXB0KGNsaWVudCwgcGFyYW1ldGVycyksXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJ1bmRsZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/clients/decorators/bundler.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/constants/abis.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/constants/abis.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ entryPoint06Abi: () => (/* binding */ entryPoint06Abi),\n/* harmony export */ entryPoint07Abi: () => (/* binding */ entryPoint07Abi),\n/* harmony export */ entryPoint08Abi: () => (/* binding */ entryPoint08Abi)\n/* harmony export */ });\nconst entryPoint06Abi = [\n {\n inputs: [\n { name: 'preOpGas', type: 'uint256' },\n { name: 'paid', type: 'uint256' },\n { name: 'validAfter', type: 'uint48' },\n { name: 'validUntil', type: 'uint48' },\n { name: 'targetSuccess', type: 'bool' },\n { name: 'targetResult', type: 'bytes' },\n ],\n name: 'ExecutionResult',\n type: 'error',\n },\n {\n inputs: [\n { name: 'opIndex', type: 'uint256' },\n { name: 'reason', type: 'string' },\n ],\n name: 'FailedOp',\n type: 'error',\n },\n {\n inputs: [{ name: 'sender', type: 'address' }],\n name: 'SenderAddressResult',\n type: 'error',\n },\n {\n inputs: [{ name: 'aggregator', type: 'address' }],\n name: 'SignatureValidationFailed',\n type: 'error',\n },\n {\n inputs: [\n {\n components: [\n { name: 'preOpGas', type: 'uint256' },\n { name: 'prefund', type: 'uint256' },\n { name: 'sigFailed', type: 'bool' },\n { name: 'validAfter', type: 'uint48' },\n { name: 'validUntil', type: 'uint48' },\n { name: 'paymasterContext', type: 'bytes' },\n ],\n name: 'returnInfo',\n type: 'tuple',\n },\n {\n components: [\n { name: 'stake', type: 'uint256' },\n { name: 'unstakeDelaySec', type: 'uint256' },\n ],\n name: 'senderInfo',\n type: 'tuple',\n },\n {\n components: [\n { name: 'stake', type: 'uint256' },\n { name: 'unstakeDelaySec', type: 'uint256' },\n ],\n name: 'factoryInfo',\n type: 'tuple',\n },\n {\n components: [\n { name: 'stake', type: 'uint256' },\n { name: 'unstakeDelaySec', type: 'uint256' },\n ],\n name: 'paymasterInfo',\n type: 'tuple',\n },\n ],\n name: 'ValidationResult',\n type: 'error',\n },\n {\n inputs: [\n {\n components: [\n { name: 'preOpGas', type: 'uint256' },\n { name: 'prefund', type: 'uint256' },\n { name: 'sigFailed', type: 'bool' },\n { name: 'validAfter', type: 'uint48' },\n { name: 'validUntil', type: 'uint48' },\n { name: 'paymasterContext', type: 'bytes' },\n ],\n name: 'returnInfo',\n type: 'tuple',\n },\n {\n components: [\n { name: 'stake', type: 'uint256' },\n { name: 'unstakeDelaySec', type: 'uint256' },\n ],\n name: 'senderInfo',\n type: 'tuple',\n },\n {\n components: [\n { name: 'stake', type: 'uint256' },\n { name: 'unstakeDelaySec', type: 'uint256' },\n ],\n name: 'factoryInfo',\n type: 'tuple',\n },\n {\n components: [\n { name: 'stake', type: 'uint256' },\n { name: 'unstakeDelaySec', type: 'uint256' },\n ],\n name: 'paymasterInfo',\n type: 'tuple',\n },\n {\n components: [\n { name: 'aggregator', type: 'address' },\n {\n components: [\n { name: 'stake', type: 'uint256' },\n {\n name: 'unstakeDelaySec',\n type: 'uint256',\n },\n ],\n name: 'stakeInfo',\n type: 'tuple',\n },\n ],\n name: 'aggregatorInfo',\n type: 'tuple',\n },\n ],\n name: 'ValidationResultWithAggregation',\n type: 'error',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'factory',\n type: 'address',\n },\n {\n indexed: false,\n name: 'paymaster',\n type: 'address',\n },\n ],\n name: 'AccountDeployed',\n type: 'event',\n },\n { anonymous: false, inputs: [], name: 'BeforeExecution', type: 'event' },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'totalDeposit',\n type: 'uint256',\n },\n ],\n name: 'Deposited',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'aggregator',\n type: 'address',\n },\n ],\n name: 'SignatureAggregatorChanged',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'totalStaked',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'unstakeDelaySec',\n type: 'uint256',\n },\n ],\n name: 'StakeLocked',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'withdrawTime',\n type: 'uint256',\n },\n ],\n name: 'StakeUnlocked',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'withdrawAddress',\n type: 'address',\n },\n {\n indexed: false,\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'StakeWithdrawn',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: true,\n name: 'paymaster',\n type: 'address',\n },\n {\n indexed: false,\n name: 'nonce',\n type: 'uint256',\n },\n { indexed: false, name: 'success', type: 'bool' },\n {\n indexed: false,\n name: 'actualGasCost',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'actualGasUsed',\n type: 'uint256',\n },\n ],\n name: 'UserOperationEvent',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'nonce',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'revertReason',\n type: 'bytes',\n },\n ],\n name: 'UserOperationRevertReason',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'withdrawAddress',\n type: 'address',\n },\n {\n indexed: false,\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'Withdrawn',\n type: 'event',\n },\n {\n inputs: [],\n name: 'SIG_VALIDATION_FAILED',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'initCode', type: 'bytes' },\n { name: 'sender', type: 'address' },\n { name: 'paymasterAndData', type: 'bytes' },\n ],\n name: '_validateSenderAndPaymaster',\n outputs: [],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'unstakeDelaySec', type: 'uint32' }],\n name: 'addStake',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'address' }],\n name: 'depositTo',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [{ name: '', type: 'address' }],\n name: 'deposits',\n outputs: [\n { name: 'deposit', type: 'uint112' },\n { name: 'staked', type: 'bool' },\n { name: 'stake', type: 'uint112' },\n { name: 'unstakeDelaySec', type: 'uint32' },\n { name: 'withdrawTime', type: 'uint48' },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'address' }],\n name: 'getDepositInfo',\n outputs: [\n {\n components: [\n { name: 'deposit', type: 'uint112' },\n { name: 'staked', type: 'bool' },\n { name: 'stake', type: 'uint112' },\n { name: 'unstakeDelaySec', type: 'uint32' },\n { name: 'withdrawTime', type: 'uint48' },\n ],\n name: 'info',\n type: 'tuple',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'sender', type: 'address' },\n { name: 'key', type: 'uint192' },\n ],\n name: 'getNonce',\n outputs: [{ name: 'nonce', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'initCode', type: 'bytes' }],\n name: 'getSenderAddress',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n { name: 'callGasLimit', type: 'uint256' },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'maxFeePerGas', type: 'uint256' },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'userOp',\n type: 'tuple',\n },\n ],\n name: 'getUserOpHash',\n outputs: [{ name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n {\n name: 'callGasLimit',\n type: 'uint256',\n },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n {\n name: 'maxFeePerGas',\n type: 'uint256',\n },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n {\n name: 'paymasterAndData',\n type: 'bytes',\n },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'userOps',\n type: 'tuple[]',\n },\n {\n name: 'aggregator',\n type: 'address',\n },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'opsPerAggregator',\n type: 'tuple[]',\n },\n { name: 'beneficiary', type: 'address' },\n ],\n name: 'handleAggregatedOps',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n { name: 'callGasLimit', type: 'uint256' },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'maxFeePerGas', type: 'uint256' },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'ops',\n type: 'tuple[]',\n },\n { name: 'beneficiary', type: 'address' },\n ],\n name: 'handleOps',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ name: 'key', type: 'uint192' }],\n name: 'incrementNonce',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { name: 'callData', type: 'bytes' },\n {\n components: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n {\n name: 'callGasLimit',\n type: 'uint256',\n },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'paymaster', type: 'address' },\n {\n name: 'maxFeePerGas',\n type: 'uint256',\n },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n ],\n name: 'mUserOp',\n type: 'tuple',\n },\n { name: 'userOpHash', type: 'bytes32' },\n { name: 'prefund', type: 'uint256' },\n { name: 'contextOffset', type: 'uint256' },\n { name: 'preOpGas', type: 'uint256' },\n ],\n name: 'opInfo',\n type: 'tuple',\n },\n { name: 'context', type: 'bytes' },\n ],\n name: 'innerHandleOp',\n outputs: [{ name: 'actualGasCost', type: 'uint256' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { name: '', type: 'address' },\n { name: '', type: 'uint192' },\n ],\n name: 'nonceSequenceNumber',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n { name: 'callGasLimit', type: 'uint256' },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'maxFeePerGas', type: 'uint256' },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'op',\n type: 'tuple',\n },\n { name: 'target', type: 'address' },\n { name: 'targetCallData', type: 'bytes' },\n ],\n name: 'simulateHandleOp',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n { name: 'callGasLimit', type: 'uint256' },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'maxFeePerGas', type: 'uint256' },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'userOp',\n type: 'tuple',\n },\n ],\n name: 'simulateValidation',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'unlockStake',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'withdrawAddress',\n type: 'address',\n },\n ],\n name: 'withdrawStake',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'withdrawAddress',\n type: 'address',\n },\n { name: 'withdrawAmount', type: 'uint256' },\n ],\n name: 'withdrawTo',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n { stateMutability: 'payable', type: 'receive' },\n];\nconst entryPoint07Abi = [\n {\n inputs: [\n { name: 'success', type: 'bool' },\n { name: 'ret', type: 'bytes' },\n ],\n name: 'DelegateAndRevert',\n type: 'error',\n },\n {\n inputs: [\n { name: 'opIndex', type: 'uint256' },\n { name: 'reason', type: 'string' },\n ],\n name: 'FailedOp',\n type: 'error',\n },\n {\n inputs: [\n { name: 'opIndex', type: 'uint256' },\n { name: 'reason', type: 'string' },\n { name: 'inner', type: 'bytes' },\n ],\n name: 'FailedOpWithRevert',\n type: 'error',\n },\n {\n inputs: [{ name: 'returnData', type: 'bytes' }],\n name: 'PostOpReverted',\n type: 'error',\n },\n { inputs: [], name: 'ReentrancyGuardReentrantCall', type: 'error' },\n {\n inputs: [{ name: 'sender', type: 'address' }],\n name: 'SenderAddressResult',\n type: 'error',\n },\n {\n inputs: [{ name: 'aggregator', type: 'address' }],\n name: 'SignatureValidationFailed',\n type: 'error',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'factory',\n type: 'address',\n },\n {\n indexed: false,\n name: 'paymaster',\n type: 'address',\n },\n ],\n name: 'AccountDeployed',\n type: 'event',\n },\n { anonymous: false, inputs: [], name: 'BeforeExecution', type: 'event' },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'totalDeposit',\n type: 'uint256',\n },\n ],\n name: 'Deposited',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'nonce',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'revertReason',\n type: 'bytes',\n },\n ],\n name: 'PostOpRevertReason',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'aggregator',\n type: 'address',\n },\n ],\n name: 'SignatureAggregatorChanged',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'totalStaked',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'unstakeDelaySec',\n type: 'uint256',\n },\n ],\n name: 'StakeLocked',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'withdrawTime',\n type: 'uint256',\n },\n ],\n name: 'StakeUnlocked',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'withdrawAddress',\n type: 'address',\n },\n {\n indexed: false,\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'StakeWithdrawn',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: true,\n name: 'paymaster',\n type: 'address',\n },\n {\n indexed: false,\n name: 'nonce',\n type: 'uint256',\n },\n { indexed: false, name: 'success', type: 'bool' },\n {\n indexed: false,\n name: 'actualGasCost',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'actualGasUsed',\n type: 'uint256',\n },\n ],\n name: 'UserOperationEvent',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'nonce',\n type: 'uint256',\n },\n ],\n name: 'UserOperationPrefundTooLow',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'nonce',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'revertReason',\n type: 'bytes',\n },\n ],\n name: 'UserOperationRevertReason',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n name: 'withdrawAddress',\n type: 'address',\n },\n {\n indexed: false,\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'Withdrawn',\n type: 'event',\n },\n {\n inputs: [{ name: 'unstakeDelaySec', type: 'uint32' }],\n name: 'addStake',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'target', type: 'address' },\n { name: 'data', type: 'bytes' },\n ],\n name: 'delegateAndRevert',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'address' }],\n name: 'depositTo',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [{ name: '', type: 'address' }],\n name: 'deposits',\n outputs: [\n { name: 'deposit', type: 'uint256' },\n { name: 'staked', type: 'bool' },\n { name: 'stake', type: 'uint112' },\n { name: 'unstakeDelaySec', type: 'uint32' },\n { name: 'withdrawTime', type: 'uint48' },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'account', type: 'address' }],\n name: 'getDepositInfo',\n outputs: [\n {\n components: [\n { name: 'deposit', type: 'uint256' },\n { name: 'staked', type: 'bool' },\n { name: 'stake', type: 'uint112' },\n { name: 'unstakeDelaySec', type: 'uint32' },\n { name: 'withdrawTime', type: 'uint48' },\n ],\n name: 'info',\n type: 'tuple',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { name: 'sender', type: 'address' },\n { name: 'key', type: 'uint192' },\n ],\n name: 'getNonce',\n outputs: [{ name: 'nonce', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'initCode', type: 'bytes' }],\n name: 'getSenderAddress',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n {\n name: 'accountGasLimits',\n type: 'bytes32',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'gasFees', type: 'bytes32' },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'userOp',\n type: 'tuple',\n },\n ],\n name: 'getUserOpHash',\n outputs: [{ name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n {\n name: 'accountGasLimits',\n type: 'bytes32',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'gasFees', type: 'bytes32' },\n {\n name: 'paymasterAndData',\n type: 'bytes',\n },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'userOps',\n type: 'tuple[]',\n },\n {\n name: 'aggregator',\n type: 'address',\n },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'opsPerAggregator',\n type: 'tuple[]',\n },\n { name: 'beneficiary', type: 'address' },\n ],\n name: 'handleAggregatedOps',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n { name: 'initCode', type: 'bytes' },\n { name: 'callData', type: 'bytes' },\n {\n name: 'accountGasLimits',\n type: 'bytes32',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'gasFees', type: 'bytes32' },\n { name: 'paymasterAndData', type: 'bytes' },\n { name: 'signature', type: 'bytes' },\n ],\n name: 'ops',\n type: 'tuple[]',\n },\n { name: 'beneficiary', type: 'address' },\n ],\n name: 'handleOps',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ name: 'key', type: 'uint192' }],\n name: 'incrementNonce',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { name: 'callData', type: 'bytes' },\n {\n components: [\n {\n components: [\n { name: 'sender', type: 'address' },\n { name: 'nonce', type: 'uint256' },\n {\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'callGasLimit',\n type: 'uint256',\n },\n {\n name: 'paymasterVerificationGasLimit',\n type: 'uint256',\n },\n {\n name: 'paymasterPostOpGasLimit',\n type: 'uint256',\n },\n {\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { name: 'paymaster', type: 'address' },\n {\n name: 'maxFeePerGas',\n type: 'uint256',\n },\n {\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n ],\n name: 'mUserOp',\n type: 'tuple',\n },\n { name: 'userOpHash', type: 'bytes32' },\n { name: 'prefund', type: 'uint256' },\n { name: 'contextOffset', type: 'uint256' },\n { name: 'preOpGas', type: 'uint256' },\n ],\n name: 'opInfo',\n type: 'tuple',\n },\n { name: 'context', type: 'bytes' },\n ],\n name: 'innerHandleOp',\n outputs: [{ name: 'actualGasCost', type: 'uint256' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { name: '', type: 'address' },\n { name: '', type: 'uint192' },\n ],\n name: 'nonceSequenceNumber',\n outputs: [{ name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ name: 'interfaceId', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ name: '', type: 'bool' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'unlockStake',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'withdrawAddress',\n type: 'address',\n },\n ],\n name: 'withdrawStake',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'withdrawAddress',\n type: 'address',\n },\n { name: 'withdrawAmount', type: 'uint256' },\n ],\n name: 'withdrawTo',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n { stateMutability: 'payable', type: 'receive' },\n];\nconst entryPoint08Abi = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n inputs: [\n { internalType: 'bool', name: 'success', type: 'bool' },\n { internalType: 'bytes', name: 'ret', type: 'bytes' },\n ],\n name: 'DelegateAndRevert',\n type: 'error',\n },\n {\n inputs: [\n { internalType: 'uint256', name: 'opIndex', type: 'uint256' },\n { internalType: 'string', name: 'reason', type: 'string' },\n ],\n name: 'FailedOp',\n type: 'error',\n },\n {\n inputs: [\n { internalType: 'uint256', name: 'opIndex', type: 'uint256' },\n { internalType: 'string', name: 'reason', type: 'string' },\n { internalType: 'bytes', name: 'inner', type: 'bytes' },\n ],\n name: 'FailedOpWithRevert',\n type: 'error',\n },\n { inputs: [], name: 'InvalidShortString', type: 'error' },\n {\n inputs: [{ internalType: 'bytes', name: 'returnData', type: 'bytes' }],\n name: 'PostOpReverted',\n type: 'error',\n },\n { inputs: [], name: 'ReentrancyGuardReentrantCall', type: 'error' },\n {\n inputs: [{ internalType: 'address', name: 'sender', type: 'address' }],\n name: 'SenderAddressResult',\n type: 'error',\n },\n {\n inputs: [{ internalType: 'address', name: 'aggregator', type: 'address' }],\n name: 'SignatureValidationFailed',\n type: 'error',\n },\n {\n inputs: [{ internalType: 'string', name: 'str', type: 'string' }],\n name: 'StringTooLong',\n type: 'error',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'bytes32',\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'factory',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'paymaster',\n type: 'address',\n },\n ],\n name: 'AccountDeployed',\n type: 'event',\n },\n { anonymous: false, inputs: [], name: 'BeforeExecution', type: 'event' },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'totalDeposit',\n type: 'uint256',\n },\n ],\n name: 'Deposited',\n type: 'event',\n },\n { anonymous: false, inputs: [], name: 'EIP712DomainChanged', type: 'event' },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'bytes32',\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'nonce',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'bytes',\n name: 'revertReason',\n type: 'bytes',\n },\n ],\n name: 'PostOpRevertReason',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'aggregator',\n type: 'address',\n },\n ],\n name: 'SignatureAggregatorChanged',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'totalStaked',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'unstakeDelaySec',\n type: 'uint256',\n },\n ],\n name: 'StakeLocked',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'withdrawTime',\n type: 'uint256',\n },\n ],\n name: 'StakeUnlocked',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'withdrawAddress',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'StakeWithdrawn',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'bytes32',\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'sender',\n type: 'address',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'paymaster',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'nonce',\n type: 'uint256',\n },\n { indexed: false, internalType: 'bool', name: 'success', type: 'bool' },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'actualGasCost',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'actualGasUsed',\n type: 'uint256',\n },\n ],\n name: 'UserOperationEvent',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'bytes32',\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'nonce',\n type: 'uint256',\n },\n ],\n name: 'UserOperationPrefundTooLow',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'bytes32',\n name: 'userOpHash',\n type: 'bytes32',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'sender',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'nonce',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'bytes',\n name: 'revertReason',\n type: 'bytes',\n },\n ],\n name: 'UserOperationRevertReason',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'withdrawAddress',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'Withdrawn',\n type: 'event',\n },\n {\n inputs: [\n { internalType: 'uint32', name: 'unstakeDelaySec', type: 'uint32' },\n ],\n name: 'addStake',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'address', name: 'account', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'target', type: 'address' },\n { internalType: 'bytes', name: 'data', type: 'bytes' },\n ],\n name: 'delegateAndRevert',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'address', name: 'account', type: 'address' }],\n name: 'depositTo',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { internalType: 'bytes1', name: 'fields', type: 'bytes1' },\n { internalType: 'string', name: 'name', type: 'string' },\n { internalType: 'string', name: 'version', type: 'string' },\n { internalType: 'uint256', name: 'chainId', type: 'uint256' },\n { internalType: 'address', name: 'verifyingContract', type: 'address' },\n { internalType: 'bytes32', name: 'salt', type: 'bytes32' },\n { internalType: 'uint256[]', name: 'extensions', type: 'uint256[]' },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'address', name: 'account', type: 'address' }],\n name: 'getDepositInfo',\n outputs: [\n {\n components: [\n { internalType: 'uint256', name: 'deposit', type: 'uint256' },\n { internalType: 'bool', name: 'staked', type: 'bool' },\n { internalType: 'uint112', name: 'stake', type: 'uint112' },\n { internalType: 'uint32', name: 'unstakeDelaySec', type: 'uint32' },\n { internalType: 'uint48', name: 'withdrawTime', type: 'uint48' },\n ],\n internalType: 'struct IStakeManager.DepositInfo',\n name: 'info',\n type: 'tuple',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'getDomainSeparatorV4',\n outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'sender', type: 'address' },\n { internalType: 'uint192', name: 'key', type: 'uint192' },\n ],\n name: 'getNonce',\n outputs: [{ internalType: 'uint256', name: 'nonce', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'getPackedUserOpTypeHash',\n outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],\n stateMutability: 'pure',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'bytes', name: 'initCode', type: 'bytes' }],\n name: 'getSenderAddress',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { internalType: 'address', name: 'sender', type: 'address' },\n { internalType: 'uint256', name: 'nonce', type: 'uint256' },\n { internalType: 'bytes', name: 'initCode', type: 'bytes' },\n { internalType: 'bytes', name: 'callData', type: 'bytes' },\n {\n internalType: 'bytes32',\n name: 'accountGasLimits',\n type: 'bytes32',\n },\n {\n internalType: 'uint256',\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { internalType: 'bytes32', name: 'gasFees', type: 'bytes32' },\n { internalType: 'bytes', name: 'paymasterAndData', type: 'bytes' },\n { internalType: 'bytes', name: 'signature', type: 'bytes' },\n ],\n internalType: 'struct PackedUserOperation',\n name: 'userOp',\n type: 'tuple',\n },\n ],\n name: 'getUserOpHash',\n outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n {\n components: [\n { internalType: 'address', name: 'sender', type: 'address' },\n { internalType: 'uint256', name: 'nonce', type: 'uint256' },\n { internalType: 'bytes', name: 'initCode', type: 'bytes' },\n { internalType: 'bytes', name: 'callData', type: 'bytes' },\n {\n internalType: 'bytes32',\n name: 'accountGasLimits',\n type: 'bytes32',\n },\n {\n internalType: 'uint256',\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { internalType: 'bytes32', name: 'gasFees', type: 'bytes32' },\n {\n internalType: 'bytes',\n name: 'paymasterAndData',\n type: 'bytes',\n },\n { internalType: 'bytes', name: 'signature', type: 'bytes' },\n ],\n internalType: 'struct PackedUserOperation[]',\n name: 'userOps',\n type: 'tuple[]',\n },\n {\n internalType: 'contract IAggregator',\n name: 'aggregator',\n type: 'address',\n },\n { internalType: 'bytes', name: 'signature', type: 'bytes' },\n ],\n internalType: 'struct IEntryPoint.UserOpsPerAggregator[]',\n name: 'opsPerAggregator',\n type: 'tuple[]',\n },\n { internalType: 'address payable', name: 'beneficiary', type: 'address' },\n ],\n name: 'handleAggregatedOps',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n components: [\n { internalType: 'address', name: 'sender', type: 'address' },\n { internalType: 'uint256', name: 'nonce', type: 'uint256' },\n { internalType: 'bytes', name: 'initCode', type: 'bytes' },\n { internalType: 'bytes', name: 'callData', type: 'bytes' },\n {\n internalType: 'bytes32',\n name: 'accountGasLimits',\n type: 'bytes32',\n },\n {\n internalType: 'uint256',\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { internalType: 'bytes32', name: 'gasFees', type: 'bytes32' },\n { internalType: 'bytes', name: 'paymasterAndData', type: 'bytes' },\n { internalType: 'bytes', name: 'signature', type: 'bytes' },\n ],\n internalType: 'struct PackedUserOperation[]',\n name: 'ops',\n type: 'tuple[]',\n },\n { internalType: 'address payable', name: 'beneficiary', type: 'address' },\n ],\n name: 'handleOps',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'uint192', name: 'key', type: 'uint192' }],\n name: 'incrementNonce',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'bytes', name: 'callData', type: 'bytes' },\n {\n components: [\n {\n components: [\n { internalType: 'address', name: 'sender', type: 'address' },\n { internalType: 'uint256', name: 'nonce', type: 'uint256' },\n {\n internalType: 'uint256',\n name: 'verificationGasLimit',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'callGasLimit',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'paymasterVerificationGasLimit',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'paymasterPostOpGasLimit',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'preVerificationGas',\n type: 'uint256',\n },\n { internalType: 'address', name: 'paymaster', type: 'address' },\n {\n internalType: 'uint256',\n name: 'maxFeePerGas',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'maxPriorityFeePerGas',\n type: 'uint256',\n },\n ],\n internalType: 'struct EntryPoint.MemoryUserOp',\n name: 'mUserOp',\n type: 'tuple',\n },\n { internalType: 'bytes32', name: 'userOpHash', type: 'bytes32' },\n { internalType: 'uint256', name: 'prefund', type: 'uint256' },\n { internalType: 'uint256', name: 'contextOffset', type: 'uint256' },\n { internalType: 'uint256', name: 'preOpGas', type: 'uint256' },\n ],\n internalType: 'struct EntryPoint.UserOpInfo',\n name: 'opInfo',\n type: 'tuple',\n },\n { internalType: 'bytes', name: 'context', type: 'bytes' },\n ],\n name: 'innerHandleOp',\n outputs: [\n { internalType: 'uint256', name: 'actualGasCost', type: 'uint256' },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: '', type: 'address' },\n { internalType: 'uint192', name: '', type: 'uint192' },\n ],\n name: 'nonceSequenceNumber',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'senderCreator',\n outputs: [\n { internalType: 'contract ISenderCreator', name: '', type: 'address' },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'bytes4', name: 'interfaceId', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ internalType: 'bool', name: '', type: 'bool' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'unlockStake',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address payable',\n name: 'withdrawAddress',\n type: 'address',\n },\n ],\n name: 'withdrawStake',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address payable',\n name: 'withdrawAddress',\n type: 'address',\n },\n { internalType: 'uint256', name: 'withdrawAmount', type: 'uint256' },\n ],\n name: 'withdrawTo',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n { stateMutability: 'payable', type: 'receive' },\n];\n//# sourceMappingURL=abis.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9jb25zdGFudHMvYWJpcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBTztBQUNQO0FBQ0E7QUFDQSxjQUFjLG1DQUFtQztBQUNqRCxjQUFjLCtCQUErQjtBQUM3QyxjQUFjLG9DQUFvQztBQUNsRCxjQUFjLG9DQUFvQztBQUNsRCxjQUFjLHFDQUFxQztBQUNuRCxjQUFjLHFDQUFxQztBQUNuRDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsa0NBQWtDO0FBQ2hELGNBQWMsZ0NBQWdDO0FBQzlDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixpQ0FBaUM7QUFDcEQ7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixxQ0FBcUM7QUFDeEQ7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixtQ0FBbUM7QUFDekQsc0JBQXNCLGtDQUFrQztBQUN4RCxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixvQ0FBb0M7QUFDMUQsc0JBQXNCLG9DQUFvQztBQUMxRCxzQkFBc0IseUNBQXlDO0FBQy9EO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0Esc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsMENBQTBDO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0Esc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsMENBQTBDO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0Esc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsMENBQTBDO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsbUNBQW1DO0FBQ3pELHNCQUFzQixrQ0FBa0M7QUFDeEQsc0JBQXNCLGlDQUFpQztBQUN2RCxzQkFBc0Isb0NBQW9DO0FBQzFELHNCQUFzQixvQ0FBb0M7QUFDMUQsc0JBQXNCLHlDQUF5QztBQUMvRDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLHNCQUFzQixnQ0FBZ0M7QUFDdEQsc0JBQXNCLDBDQUEwQztBQUNoRTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLHNCQUFzQixnQ0FBZ0M7QUFDdEQsc0JBQXNCLDBDQUEwQztBQUNoRTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLHNCQUFzQixnQ0FBZ0M7QUFDdEQsc0JBQXNCLDBDQUEwQztBQUNoRTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLHNCQUFzQixxQ0FBcUM7QUFDM0Q7QUFDQTtBQUNBLDhCQUE4QixnQ0FBZ0M7QUFDOUQ7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxNQUFNLHNFQUFzRTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMsK0NBQStDO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwyQkFBMkI7QUFDL0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxpQ0FBaUM7QUFDL0MsY0FBYyxpQ0FBaUM7QUFDL0MsY0FBYyx5Q0FBeUM7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQix5Q0FBeUM7QUFDNUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxtQkFBbUIsa0NBQWtDO0FBQ3JEO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGtDQUFrQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiwyQkFBMkI7QUFDOUM7QUFDQTtBQUNBLGNBQWMsa0NBQWtDO0FBQ2hELGNBQWMsOEJBQThCO0FBQzVDLGNBQWMsZ0NBQWdDO0FBQzlDLGNBQWMseUNBQXlDO0FBQ3ZELGNBQWMsc0NBQXNDO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixrQ0FBa0M7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isa0NBQWtDO0FBQ3hELHNCQUFzQiw4QkFBOEI7QUFDcEQsc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IseUNBQXlDO0FBQy9ELHNCQUFzQixzQ0FBc0M7QUFDNUQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxpQ0FBaUM7QUFDL0MsY0FBYyw4QkFBOEI7QUFDNUM7QUFDQTtBQUNBLG9CQUFvQixnQ0FBZ0M7QUFDcEQ7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixpQ0FBaUM7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixnQ0FBZ0M7QUFDdEQsc0JBQXNCLGlDQUFpQztBQUN2RCxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQix1Q0FBdUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0IsdUNBQXVDO0FBQzdEO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0IseUNBQXlDO0FBQy9ELHNCQUFzQixrQ0FBa0M7QUFDeEQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxvQkFBb0IsMkJBQTJCO0FBQy9DO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLGlDQUFpQztBQUMvRCw4QkFBOEIsZ0NBQWdDO0FBQzlELDhCQUE4QixpQ0FBaUM7QUFDL0QsOEJBQThCLGlDQUFpQztBQUMvRDtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3Qiw4QkFBOEIsa0NBQWtDO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLGtDQUFrQztBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsY0FBYyxzQ0FBc0M7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLHVDQUF1QztBQUM3RDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix1Q0FBdUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix5Q0FBeUM7QUFDL0Qsc0JBQXNCLGtDQUFrQztBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsY0FBYyxzQ0FBc0M7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiw4QkFBOEI7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsaUNBQWlDO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLGlDQUFpQztBQUMvRCw4QkFBOEIsZ0NBQWdDO0FBQzlEO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCLDhCQUE4QixvQ0FBb0M7QUFDbEU7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLHFDQUFxQztBQUMzRCxzQkFBc0Isa0NBQWtDO0FBQ3hELHNCQUFzQix3Q0FBd0M7QUFDOUQsc0JBQXNCLG1DQUFtQztBQUN6RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsY0FBYyxnQ0FBZ0M7QUFDOUM7QUFDQTtBQUNBLG9CQUFvQix3Q0FBd0M7QUFDNUQ7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYywyQkFBMkI7QUFDekMsY0FBYywyQkFBMkI7QUFDekM7QUFDQTtBQUNBLG9CQUFvQiwyQkFBMkI7QUFDL0M7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLHVDQUF1QztBQUM3RDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix1Q0FBdUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix5Q0FBeUM7QUFDL0Qsc0JBQXNCLGtDQUFrQztBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsY0FBYyxpQ0FBaUM7QUFDL0MsY0FBYyx1Q0FBdUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLHVDQUF1QztBQUM3RDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix1Q0FBdUM7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQix5Q0FBeUM7QUFDL0Qsc0JBQXNCLGtDQUFrQztBQUN4RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsY0FBYyx5Q0FBeUM7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxNQUFNLDZDQUE2QztBQUNuRDtBQUNPO0FBQ1A7QUFDQTtBQUNBLGNBQWMsK0JBQStCO0FBQzdDLGNBQWMsNEJBQTRCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxrQ0FBa0M7QUFDaEQsY0FBYyxnQ0FBZ0M7QUFDOUM7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxjQUFjLGtDQUFrQztBQUNoRCxjQUFjLGdDQUFnQztBQUM5QyxjQUFjLDhCQUE4QjtBQUM1QztBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxtQkFBbUIsbUNBQW1DO0FBQ3REO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsTUFBTSxpRUFBaUU7QUFDdkU7QUFDQSxtQkFBbUIsaUNBQWlDO0FBQ3BEO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxtQkFBbUIscUNBQXFDO0FBQ3hEO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0sc0VBQXNFO0FBQzVFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMsK0NBQStDO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQix5Q0FBeUM7QUFDNUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxtQkFBbUIsa0NBQWtDO0FBQ3JEO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxjQUFjLGlDQUFpQztBQUMvQyxjQUFjLDZCQUE2QjtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGtDQUFrQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiwyQkFBMkI7QUFDOUM7QUFDQTtBQUNBLGNBQWMsa0NBQWtDO0FBQ2hELGNBQWMsOEJBQThCO0FBQzVDLGNBQWMsZ0NBQWdDO0FBQzlDLGNBQWMseUNBQXlDO0FBQ3ZELGNBQWMsc0NBQXNDO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixrQ0FBa0M7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isa0NBQWtDO0FBQ3hELHNCQUFzQiw4QkFBOEI7QUFDcEQsc0JBQXNCLGdDQUFnQztBQUN0RCxzQkFBc0IseUNBQXlDO0FBQy9ELHNCQUFzQixzQ0FBc0M7QUFDNUQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxpQ0FBaUM7QUFDL0MsY0FBYyw4QkFBOEI7QUFDNUM7QUFDQTtBQUNBLG9CQUFvQixnQ0FBZ0M7QUFDcEQ7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixpQ0FBaUM7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsaUNBQWlDO0FBQ3ZELHNCQUFzQixnQ0FBZ0M7QUFDdEQsc0JBQXNCLGlDQUFpQztBQUN2RCxzQkFBc0IsaUNBQWlDO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLGtDQUFrQztBQUN4RCxzQkFBc0IseUNBQXlDO0FBQy9ELHNCQUFzQixrQ0FBa0M7QUFDeEQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxvQkFBb0IsMkJBQTJCO0FBQy9DO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLGlDQUFpQztBQUMvRCw4QkFBOEIsZ0NBQWdDO0FBQzlELDhCQUE4QixpQ0FBaUM7QUFDL0QsOEJBQThCLGlDQUFpQztBQUMvRDtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCLDhCQUE4QixrQ0FBa0M7QUFDaEU7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCLDhCQUE4QixrQ0FBa0M7QUFDaEU7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0Isa0NBQWtDO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixjQUFjLHNDQUFzQztBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLGlDQUFpQztBQUN2RCxzQkFBc0IsZ0NBQWdDO0FBQ3RELHNCQUFzQixpQ0FBaUM7QUFDdkQsc0JBQXNCLGlDQUFpQztBQUN2RDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQixrQ0FBa0M7QUFDeEQsc0JBQXNCLHlDQUF5QztBQUMvRCxzQkFBc0Isa0NBQWtDO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixjQUFjLHNDQUFzQztBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLDhCQUE4QjtBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxpQ0FBaUM7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsaUNBQWlDO0FBQy9ELDhCQUE4QixnQ0FBZ0M7QUFDOUQ7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3Qiw4QkFBOEIsb0NBQW9DO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQixxQ0FBcUM7QUFDM0Qsc0JBQXNCLGtDQUFrQztBQUN4RCxzQkFBc0Isd0NBQXdDO0FBQzlELHNCQUFzQixtQ0FBbUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMsZ0NBQWdDO0FBQzlDO0FBQ0E7QUFDQSxvQkFBb0Isd0NBQXdDO0FBQzVEO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsMkJBQTJCO0FBQ3pDLGNBQWMsMkJBQTJCO0FBQ3pDO0FBQ0E7QUFDQSxvQkFBb0IsMkJBQTJCO0FBQy9DO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxtQkFBbUIscUNBQXFDO0FBQ3hEO0FBQ0Esb0JBQW9CLHdCQUF3QjtBQUM1QztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixjQUFjLHlDQUF5QztBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0sNkNBQTZDO0FBQ25EO0FBQ087QUFDUCxNQUFNLGdFQUFnRTtBQUN0RTtBQUNBO0FBQ0EsY0FBYyxxREFBcUQ7QUFDbkUsY0FBYyxtREFBbUQ7QUFDakU7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxjQUFjLDJEQUEyRDtBQUN6RSxjQUFjLHdEQUF3RDtBQUN0RTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsMkRBQTJEO0FBQ3pFLGNBQWMsd0RBQXdEO0FBQ3RFLGNBQWMscURBQXFEO0FBQ25FO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxNQUFNLHVEQUF1RDtBQUM3RDtBQUNBLG1CQUFtQiwwREFBMEQ7QUFDN0U7QUFDQTtBQUNBLEtBQUs7QUFDTCxNQUFNLGlFQUFpRTtBQUN2RTtBQUNBLG1CQUFtQiwwREFBMEQ7QUFDN0U7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiw4REFBOEQ7QUFDakY7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQixxREFBcUQ7QUFDeEU7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxNQUFNLHNFQUFzRTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0sMEVBQTBFO0FBQ2hGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMscUVBQXFFO0FBQ25GO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxpRUFBaUU7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiwyREFBMkQ7QUFDOUU7QUFDQSxvQkFBb0Isb0RBQW9EO0FBQ3hFO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLGNBQWMsMERBQTBEO0FBQ3hFLGNBQWMsb0RBQW9EO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxtQkFBbUIsMkRBQTJEO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyx3REFBd0Q7QUFDdEUsY0FBYyxzREFBc0Q7QUFDcEUsY0FBYyx5REFBeUQ7QUFDdkUsY0FBYywyREFBMkQ7QUFDekUsY0FBYyxxRUFBcUU7QUFDbkYsY0FBYyx3REFBd0Q7QUFDdEUsY0FBYyxrRUFBa0U7QUFDaEY7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLDJEQUEyRDtBQUM5RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLG9EQUFvRDtBQUMxRSxzQkFBc0IseURBQXlEO0FBQy9FLHNCQUFzQixpRUFBaUU7QUFDdkYsc0JBQXNCLDhEQUE4RDtBQUNwRjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG9EQUFvRDtBQUN4RTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxjQUFjLDBEQUEwRDtBQUN4RSxjQUFjLHVEQUF1RDtBQUNyRTtBQUNBO0FBQ0Esb0JBQW9CLHlEQUF5RDtBQUM3RTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixvREFBb0Q7QUFDeEU7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQix3REFBd0Q7QUFDM0U7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMERBQTBEO0FBQ2hGLHNCQUFzQix5REFBeUQ7QUFDL0Usc0JBQXNCLHdEQUF3RDtBQUM5RSxzQkFBc0Isd0RBQXdEO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLGdFQUFnRTtBQUN0RixzQkFBc0IseURBQXlEO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxvQkFBb0Isb0RBQW9EO0FBQ3hFO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDBEQUEwRDtBQUN4Riw4QkFBOEIseURBQXlEO0FBQ3ZGLDhCQUE4Qix3REFBd0Q7QUFDdEYsOEJBQThCLHdEQUF3RDtBQUN0RjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3Qiw4QkFBOEIsMkRBQTJEO0FBQ3pGO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCLDhCQUE4Qix5REFBeUQ7QUFDdkY7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixjQUFjLHVFQUF1RTtBQUNyRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDBEQUEwRDtBQUNoRixzQkFBc0IseURBQXlEO0FBQy9FLHNCQUFzQix3REFBd0Q7QUFDOUUsc0JBQXNCLHdEQUF3RDtBQUM5RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0IsMkRBQTJEO0FBQ2pGLHNCQUFzQixnRUFBZ0U7QUFDdEYsc0JBQXNCLHlEQUF5RDtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixjQUFjLHVFQUF1RTtBQUNyRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLHVEQUF1RDtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyx3REFBd0Q7QUFDdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsMERBQTBEO0FBQ3hGLDhCQUE4Qix5REFBeUQ7QUFDdkY7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0IsOEJBQThCLDZEQUE2RDtBQUMzRjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixzQkFBc0IsOERBQThEO0FBQ3BGLHNCQUFzQiwyREFBMkQ7QUFDakYsc0JBQXNCLGlFQUFpRTtBQUN2RixzQkFBc0IsNERBQTREO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWMsdURBQXVEO0FBQ3JFO0FBQ0E7QUFDQTtBQUNBLGNBQWMsaUVBQWlFO0FBQy9FO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsY0FBYyxvREFBb0Q7QUFDbEUsY0FBYyxvREFBb0Q7QUFDbEU7QUFDQTtBQUNBLG9CQUFvQixvREFBb0Q7QUFDeEU7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsb0VBQW9FO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLG1CQUFtQiw2REFBNkQ7QUFDaEY7QUFDQSxvQkFBb0IsOENBQThDO0FBQ2xFO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixjQUFjLGtFQUFrRTtBQUNoRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLE1BQU0sNkNBQTZDO0FBQ25EO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vY29uc3RhbnRzL2FiaXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudHJ5UG9pbnQwNkFiaSA9IFtcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAncHJlT3BHYXMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3BhaWQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZhbGlkQWZ0ZXInLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndmFsaWRVbnRpbCcsIHR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0YXJnZXRTdWNjZXNzJywgdHlwZTogJ2Jvb2wnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0YXJnZXRSZXN1bHQnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdFeGVjdXRpb25SZXN1bHQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ29wSW5kZXgnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3JlYXNvbicsIHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdGYWlsZWRPcCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJ3NlbmRlcicsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ1NlbmRlckFkZHJlc3NSZXN1bHQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdhZ2dyZWdhdG9yJywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBuYW1lOiAnU2lnbmF0dXJlVmFsaWRhdGlvbkZhaWxlZCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncHJlT3BHYXMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncHJlZnVuZCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzaWdGYWlsZWQnLCB0eXBlOiAnYm9vbCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndmFsaWRBZnRlcicsIHR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3ZhbGlkVW50aWwnLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwYXltYXN0ZXJDb250ZXh0JywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgbmFtZTogJ3JldHVybkluZm8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3Rha2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndW5zdGFrZURlbGF5U2VjJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVySW5mbycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFrZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd1bnN0YWtlRGVsYXlTZWMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdmYWN0b3J5SW5mbycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFrZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd1bnN0YWtlRGVsYXlTZWMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdwYXltYXN0ZXJJbmZvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1ZhbGlkYXRpb25SZXN1bHQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3ByZU9wR2FzJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3ByZWZ1bmQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2lnRmFpbGVkJywgdHlwZTogJ2Jvb2wnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3ZhbGlkQWZ0ZXInLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd2YWxpZFVudGlsJywgdHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGF5bWFzdGVyQ29udGV4dCcsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXR1cm5JbmZvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YWtlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3Vuc3Rha2VEZWxheVNlYycsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbmRlckluZm8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3Rha2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndW5zdGFrZURlbGF5U2VjJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZmFjdG9yeUluZm8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3Rha2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndW5zdGFrZURlbGF5U2VjJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBuYW1lOiAncGF5bWFzdGVySW5mbycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdhZ2dyZWdhdG9yJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFrZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3Vuc3Rha2VEZWxheVNlYycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdzdGFrZUluZm8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhZ2dyZWdhdG9ySW5mbycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdWYWxpZGF0aW9uUmVzdWx0V2l0aEFnZ3JlZ2F0aW9uJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wSGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2ZhY3RvcnknLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3BheW1hc3RlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0FjY291bnREZXBsb3llZCcsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7IGFub255bW91czogZmFsc2UsIGlucHV0czogW10sIG5hbWU6ICdCZWZvcmVFeGVjdXRpb24nLCB0eXBlOiAnZXZlbnQnIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0b3RhbERlcG9zaXQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdEZXBvc2l0ZWQnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhZ2dyZWdhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnU2lnbmF0dXJlQWdncmVnYXRvckNoYW5nZWQnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0b3RhbFN0YWtlZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndW5zdGFrZURlbGF5U2VjJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnU3Rha2VMb2NrZWQnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd1RpbWUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdTdGFrZVVubG9ja2VkJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnd2l0aGRyYXdBZGRyZXNzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdTdGFrZVdpdGhkcmF3bicsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcEhhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3BheW1hc3RlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbm9uY2UnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGluZGV4ZWQ6IGZhbHNlLCBuYW1lOiAnc3VjY2VzcycsIHR5cGU6ICdib29sJyB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY3R1YWxHYXNDb3N0JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY3R1YWxHYXNVc2VkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvbkV2ZW50JyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wSGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25vbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXZlcnRSZWFzb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvblJldmVydFJlYXNvbicsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3dpdGhkcmF3QWRkcmVzcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYW1vdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnV2l0aGRyYXduJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgbmFtZTogJ1NJR19WQUxJREFUSU9OX0ZBSUxFRCcsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdwYXltYXN0ZXJBbmREYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnX3ZhbGlkYXRlU2VuZGVyQW5kUGF5bWFzdGVyJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICd1bnN0YWtlRGVsYXlTZWMnLCB0eXBlOiAndWludDMyJyB9XSxcbiAgICAgICAgbmFtZTogJ2FkZFN0YWtlJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3BheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBuYW1lOiAnYmFsYW5jZU9mJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycgfV0sXG4gICAgICAgIG5hbWU6ICdkZXBvc2l0VG8nLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ2RlcG9zaXRzJyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnZGVwb3NpdCcsIHR5cGU6ICd1aW50MTEyJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3Rha2VkJywgdHlwZTogJ2Jvb2wnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdzdGFrZScsIHR5cGU6ICd1aW50MTEyJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndW5zdGFrZURlbGF5U2VjJywgdHlwZTogJ3VpbnQzMicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3dpdGhkcmF3VGltZScsIHR5cGU6ICd1aW50NDgnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBuYW1lOiAnZ2V0RGVwb3NpdEluZm8nLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdkZXBvc2l0JywgdHlwZTogJ3VpbnQxMTInIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3N0YWtlZCcsIHR5cGU6ICdib29sJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFrZScsIHR5cGU6ICd1aW50MTEyJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd1bnN0YWtlRGVsYXlTZWMnLCB0eXBlOiAndWludDMyJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICd3aXRoZHJhd1RpbWUnLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgbmFtZTogJ2luZm8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2tleScsIHR5cGU6ICd1aW50MTkyJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnZ2V0Tm9uY2UnLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdpbml0Q29kZScsIHR5cGU6ICdieXRlcycgfV0sXG4gICAgICAgIG5hbWU6ICdnZXRTZW5kZXJBZGRyZXNzJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NlbmRlcicsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdub25jZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdpbml0Q29kZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnY2FsbERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NhbGxHYXNMaW1pdCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndmVyaWZpY2F0aW9uR2FzTGltaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnbWF4RmVlUGVyR2FzJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdtYXhQcmlvcml0eUZlZVBlckdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BheW1hc3RlckFuZERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd1c2VyT3AnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnZ2V0VXNlck9wSGFzaCcsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYnl0ZXMzMicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdub25jZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NhbGxEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2NhbGxHYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3ZlcmlmaWNhdGlvbkdhc0xpbWl0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnbWF4RmVlUGVyR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnbWF4UHJpb3JpdHlGZWVQZXJHYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwYXltYXN0ZXJBbmREYXRhJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhZ2dyZWdhdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2lnbmF0dXJlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgbmFtZTogJ29wc1BlckFnZ3JlZ2F0b3InLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZVtdJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdiZW5lZmljaWFyeScsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnaGFuZGxlQWdncmVnYXRlZE9wcycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnaW5pdENvZGUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NhbGxEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdjYWxsR2FzTGltaXQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3ZlcmlmaWNhdGlvbkdhc0xpbWl0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3ByZVZlcmlmaWNhdGlvbkdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ21heEZlZVBlckdhcycsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnbWF4UHJpb3JpdHlGZWVQZXJHYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwYXltYXN0ZXJBbmREYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzaWduYXR1cmUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYmVuZWZpY2lhcnknLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2hhbmRsZU9wcycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAna2V5JywgdHlwZTogJ3VpbnQxOTInIH1dLFxuICAgICAgICBuYW1lOiAnaW5jcmVtZW50Tm9uY2UnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnY2FsbERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdjYWxsR2FzTGltaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd2ZXJpZmljYXRpb25HYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3ByZVZlcmlmaWNhdGlvbkdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BheW1hc3RlcicsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ21heEZlZVBlckdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ21heFByaW9yaXR5RmVlUGVyR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ21Vc2VyT3AnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndXNlck9wSGFzaCcsIHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwcmVmdW5kJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NvbnRleHRPZmZzZXQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncHJlT3BHYXMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdvcEluZm8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnY29udGV4dCcsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2lubmVySGFuZGxlT3AnLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnYWN0dWFsR2FzQ29zdCcsIHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICcnLCB0eXBlOiAndWludDE5MicgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ25vbmNlU2VxdWVuY2VOdW1iZXInLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnaW5pdENvZGUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NhbGxEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdjYWxsR2FzTGltaXQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3ZlcmlmaWNhdGlvbkdhc0xpbWl0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3ByZVZlcmlmaWNhdGlvbkdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ21heEZlZVBlckdhcycsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnbWF4UHJpb3JpdHlGZWVQZXJHYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwYXltYXN0ZXJBbmREYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzaWduYXR1cmUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3AnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAndGFyZ2V0JywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd0YXJnZXRDYWxsRGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3NpbXVsYXRlSGFuZGxlT3AnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdjYWxsRGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnY2FsbEdhc0xpbWl0JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd2ZXJpZmljYXRpb25HYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcmVWZXJpZmljYXRpb25HYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdtYXhGZWVQZXJHYXMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ21heFByaW9yaXR5RmVlUGVyR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncGF5bWFzdGVyQW5kRGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2lnbmF0dXJlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdzaW11bGF0ZVZhbGlkYXRpb24nLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICd1bmxvY2tTdGFrZScsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3dpdGhkcmF3QWRkcmVzcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3dpdGhkcmF3U3Rha2UnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd0FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd3aXRoZHJhd0Ftb3VudCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnd2l0aGRyYXdUbycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHsgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScsIHR5cGU6ICdyZWNlaXZlJyB9LFxuXTtcbmV4cG9ydCBjb25zdCBlbnRyeVBvaW50MDdBYmkgPSBbXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ3N1Y2Nlc3MnLCB0eXBlOiAnYm9vbCcgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3JldCcsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0RlbGVnYXRlQW5kUmV2ZXJ0JyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdvcEluZGV4JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdyZWFzb24nLCB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRmFpbGVkT3AnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ29wSW5kZXgnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3JlYXNvbicsIHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdpbm5lcicsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0ZhaWxlZE9wV2l0aFJldmVydCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJ3JldHVybkRhdGEnLCB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgICAgICBuYW1lOiAnUG9zdE9wUmV2ZXJ0ZWQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAgeyBpbnB1dHM6IFtdLCBuYW1lOiAnUmVlbnRyYW5jeUd1YXJkUmVlbnRyYW50Q2FsbCcsIHR5cGU6ICdlcnJvcicgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJ3NlbmRlcicsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ1NlbmRlckFkZHJlc3NSZXN1bHQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdhZ2dyZWdhdG9yJywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBuYW1lOiAnU2lnbmF0dXJlVmFsaWRhdGlvbkZhaWxlZCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcEhhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdmYWN0b3J5JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdwYXltYXN0ZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdBY2NvdW50RGVwbG95ZWQnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAgeyBhbm9ueW1vdXM6IGZhbHNlLCBpbnB1dHM6IFtdLCBuYW1lOiAnQmVmb3JlRXhlY3V0aW9uJywgdHlwZTogJ2V2ZW50JyB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndG90YWxEZXBvc2l0JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRGVwb3NpdGVkJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wSGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25vbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXZlcnRSZWFzb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnUG9zdE9wUmV2ZXJ0UmVhc29uJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWdncmVnYXRvcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1NpZ25hdHVyZUFnZ3JlZ2F0b3JDaGFuZ2VkJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndG90YWxTdGFrZWQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3Vuc3Rha2VEZWxheVNlYycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1N0YWtlTG9ja2VkJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnd2l0aGRyYXdUaW1lJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnU3Rha2VVbmxvY2tlZCcsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3dpdGhkcmF3QWRkcmVzcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYW1vdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnU3Rha2VXaXRoZHJhd24nLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd1c2VyT3BIYXNoJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbmRlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdwYXltYXN0ZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25vbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBpbmRleGVkOiBmYWxzZSwgbmFtZTogJ3N1Y2Nlc3MnLCB0eXBlOiAnYm9vbCcgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWN0dWFsR2FzQ29zdCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWN0dWFsR2FzVXNlZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25FdmVudCcsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcEhhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdub25jZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25QcmVmdW5kVG9vTG93JyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wSGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25vbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXZlcnRSZWFzb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvblJldmVydFJlYXNvbicsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3dpdGhkcmF3QWRkcmVzcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYW1vdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnV2l0aGRyYXduJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAndW5zdGFrZURlbGF5U2VjJywgdHlwZTogJ3VpbnQzMicgfV0sXG4gICAgICAgIG5hbWU6ICdhZGRTdGFrZScsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ2JhbGFuY2VPZicsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ3RhcmdldCcsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnZGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2RlbGVnYXRlQW5kUmV2ZXJ0JyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBuYW1lOiAnZGVwb3NpdFRvJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3BheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYWRkcmVzcycgfV0sXG4gICAgICAgIG5hbWU6ICdkZXBvc2l0cycsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2RlcG9zaXQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3N0YWtlZCcsIHR5cGU6ICdib29sJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnc3Rha2UnLCB0eXBlOiAndWludDExMicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3Vuc3Rha2VEZWxheVNlYycsIHR5cGU6ICd1aW50MzInIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd3aXRoZHJhd1RpbWUnLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ2dldERlcG9zaXRJbmZvJyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZGVwb3NpdCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzdGFrZWQnLCB0eXBlOiAnYm9vbCcgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc3Rha2UnLCB0eXBlOiAndWludDExMicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAndW5zdGFrZURlbGF5U2VjJywgdHlwZTogJ3VpbnQzMicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnd2l0aGRyYXdUaW1lJywgdHlwZTogJ3VpbnQ0OCcgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdpbmZvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdrZXknLCB0eXBlOiAndWludDE5MicgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2dldE5vbmNlJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnaW5pdENvZGUnLCB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgICAgICBuYW1lOiAnZ2V0U2VuZGVyQWRkcmVzcycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnaW5pdENvZGUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NhbGxEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudEdhc0xpbWl0cycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcmVWZXJpZmljYXRpb25HYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdnYXNGZWVzJywgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3BheW1hc3RlckFuZERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd1c2VyT3AnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnZ2V0VXNlck9wSGFzaCcsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYnl0ZXMzMicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdub25jZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NhbGxEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnRHYXNMaW1pdHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcmVWZXJpZmljYXRpb25HYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdnYXNGZWVzJywgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncGF5bWFzdGVyQW5kRGF0YScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzaWduYXR1cmUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlW10nLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnYWdncmVnYXRvcicsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdvcHNQZXJBZ2dyZWdhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYmVuZWZpY2lhcnknLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2hhbmRsZUFnZ3JlZ2F0ZWRPcHMnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdjYWxsRGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnRHYXNMaW1pdHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnZ2FzRmVlcycsIHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwYXltYXN0ZXJBbmREYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdzaWduYXR1cmUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnYmVuZWZpY2lhcnknLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2hhbmRsZU9wcycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAna2V5JywgdHlwZTogJ3VpbnQxOTInIH1dLFxuICAgICAgICBuYW1lOiAnaW5jcmVtZW50Tm9uY2UnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBuYW1lOiAnY2FsbERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd2ZXJpZmljYXRpb25HYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2NhbGxHYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3BheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncGF5bWFzdGVyUG9zdE9wR2FzTGltaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcmVWZXJpZmljYXRpb25HYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdwYXltYXN0ZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdtYXhGZWVQZXJHYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdtYXhQcmlvcml0eUZlZVBlckdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdtVXNlck9wJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3VzZXJPcEhhc2gnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBuYW1lOiAncHJlZnVuZCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IG5hbWU6ICdjb250ZXh0T2Zmc2V0JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ3ByZU9wR2FzJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BJbmZvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvbnRleHQnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdpbm5lckhhbmRsZU9wJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJ2FjdHVhbEdhc0Nvc3QnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJycsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnJywgdHlwZTogJ3VpbnQxOTInIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdub25jZVNlcXVlbmNlTnVtYmVyJyxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgbmFtZTogJ2ludGVyZmFjZUlkJywgdHlwZTogJ2J5dGVzNCcgfV0sXG4gICAgICAgIG5hbWU6ICdzdXBwb3J0c0ludGVyZmFjZScsXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYm9vbCcgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAndW5sb2NrU3Rha2UnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd0FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICd3aXRoZHJhd1N0YWtlJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnd2l0aGRyYXdBZGRyZXNzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnd2l0aGRyYXdBbW91bnQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3dpdGhkcmF3VG8nLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7IHN0YXRlTXV0YWJpbGl0eTogJ3BheWFibGUnLCB0eXBlOiAncmVjZWl2ZScgfSxcbl07XG5leHBvcnQgY29uc3QgZW50cnlQb2ludDA4QWJpID0gW1xuICAgIHsgaW5wdXRzOiBbXSwgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsIHR5cGU6ICdjb25zdHJ1Y3RvcicgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdib29sJywgbmFtZTogJ3N1Y2Nlc3MnLCB0eXBlOiAnYm9vbCcgfSxcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnLCBuYW1lOiAncmV0JywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRGVsZWdhdGVBbmRSZXZlcnQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDI1NicsIG5hbWU6ICdvcEluZGV4JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3N0cmluZycsIG5hbWU6ICdyZWFzb24nLCB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRmFpbGVkT3AnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDI1NicsIG5hbWU6ICdvcEluZGV4JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3N0cmluZycsIG5hbWU6ICdyZWFzb24nLCB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlcycsIG5hbWU6ICdpbm5lcicsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0ZhaWxlZE9wV2l0aFJldmVydCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7IGlucHV0czogW10sIG5hbWU6ICdJbnZhbGlkU2hvcnRTdHJpbmcnLCB0eXBlOiAnZXJyb3InIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ3JldHVybkRhdGEnLCB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgICAgICBuYW1lOiAnUG9zdE9wUmV2ZXJ0ZWQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAgeyBpbnB1dHM6IFtdLCBuYW1lOiAnUmVlbnRyYW5jeUd1YXJkUmVlbnRyYW50Q2FsbCcsIHR5cGU6ICdlcnJvcicgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsIG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfV0sXG4gICAgICAgIG5hbWU6ICdTZW5kZXJBZGRyZXNzUmVzdWx0JyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJywgbmFtZTogJ2FnZ3JlZ2F0b3InLCB0eXBlOiAnYWRkcmVzcycgfV0sXG4gICAgICAgIG5hbWU6ICdTaWduYXR1cmVWYWxpZGF0aW9uRmFpbGVkJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBpbnRlcm5hbFR5cGU6ICdzdHJpbmcnLCBuYW1lOiAnc3RyJywgdHlwZTogJ3N0cmluZycgfV0sXG4gICAgICAgIG5hbWU6ICdTdHJpbmdUb29Mb25nJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wSGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2ZhY3RvcnknLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3BheW1hc3RlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0FjY291bnREZXBsb3llZCcsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7IGFub255bW91czogZmFsc2UsIGlucHV0czogW10sIG5hbWU6ICdCZWZvcmVFeGVjdXRpb24nLCB0eXBlOiAnZXZlbnQnIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0b3RhbERlcG9zaXQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdEZXBvc2l0ZWQnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAgeyBhbm9ueW1vdXM6IGZhbHNlLCBpbnB1dHM6IFtdLCBuYW1lOiAnRUlQNzEyRG9tYWluQ2hhbmdlZCcsIHR5cGU6ICdldmVudCcgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcEhhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdub25jZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3JldmVydFJlYXNvbicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdQb3N0T3BSZXZlcnRSZWFzb24nLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhZ2dyZWdhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnU2lnbmF0dXJlQWdncmVnYXRvckNoYW5nZWQnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0b3RhbFN0YWtlZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndW5zdGFrZURlbGF5U2VjJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnU3Rha2VMb2NrZWQnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd1RpbWUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdTdGFrZVVubG9ja2VkJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnd2l0aGRyYXdBZGRyZXNzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdTdGFrZVdpdGhkcmF3bicsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcEhhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3BheW1hc3RlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbm9uY2UnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGluZGV4ZWQ6IGZhbHNlLCBpbnRlcm5hbFR5cGU6ICdib29sJywgbmFtZTogJ3N1Y2Nlc3MnLCB0eXBlOiAnYm9vbCcgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWN0dWFsR2FzQ29zdCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWN0dWFsR2FzVXNlZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25FdmVudCcsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3VzZXJPcEhhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdub25jZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25QcmVmdW5kVG9vTG93JyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wSGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25vbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAncmV2ZXJ0UmVhc29uJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25SZXZlcnRSZWFzb24nLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd0FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2Ftb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1dpdGhkcmF3bicsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICd1aW50MzInLCBuYW1lOiAndW5zdGFrZURlbGF5U2VjJywgdHlwZTogJ3VpbnQzMicgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2FkZFN0YWtlJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3BheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAnYWNjb3VudCcsIHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICAgICAgbmFtZTogJ2JhbGFuY2VPZicsXG4gICAgICAgIG91dHB1dHM6IFt7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAnJywgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAndGFyZ2V0JywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ2RhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdkZWxlZ2F0ZUFuZFJldmVydCcsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbeyBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJywgbmFtZTogJ2FjY291bnQnLCB0eXBlOiAnYWRkcmVzcycgfV0sXG4gICAgICAgIG5hbWU6ICdkZXBvc2l0VG8nLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdlaXA3MTJEb21haW4nLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzMScsIG5hbWU6ICdmaWVsZHMnLCB0eXBlOiAnYnl0ZXMxJyB9LFxuICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdzdHJpbmcnLCBuYW1lOiAnbmFtZScsIHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3N0cmluZycsIG5hbWU6ICd2ZXJzaW9uJywgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDI1NicsIG5hbWU6ICdjaGFpbklkJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAndmVyaWZ5aW5nQ29udHJhY3QnLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAnYnl0ZXMzMicsIG5hbWU6ICdzYWx0JywgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQyNTZbXScsIG5hbWU6ICdleHRlbnNpb25zJywgdHlwZTogJ3VpbnQyNTZbXScgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsIG5hbWU6ICdhY2NvdW50JywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgICAgICBuYW1lOiAnZ2V0RGVwb3NpdEluZm8nLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAnZGVwb3NpdCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2Jvb2wnLCBuYW1lOiAnc3Rha2VkJywgdHlwZTogJ2Jvb2wnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDExMicsIG5hbWU6ICdzdGFrZScsIHR5cGU6ICd1aW50MTEyJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQzMicsIG5hbWU6ICd1bnN0YWtlRGVsYXlTZWMnLCB0eXBlOiAndWludDMyJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQ0OCcsIG5hbWU6ICd3aXRoZHJhd1RpbWUnLCB0eXBlOiAndWludDQ4JyB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IElTdGFrZU1hbmFnZXIuRGVwb3NpdEluZm8nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdpbmZvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdnZXREb21haW5TZXBhcmF0b3JWNCcsXG4gICAgICAgIG91dHB1dHM6IFt7IGludGVybmFsVHlwZTogJ2J5dGVzMzInLCBuYW1lOiAnJywgdHlwZTogJ2J5dGVzMzInIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQxOTInLCBuYW1lOiAna2V5JywgdHlwZTogJ3VpbnQxOTInIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdnZXROb25jZScsXG4gICAgICAgIG91dHB1dHM6IFt7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAnZ2V0UGFja2VkVXNlck9wVHlwZUhhc2gnLFxuICAgICAgICBvdXRwdXRzOiBbeyBpbnRlcm5hbFR5cGU6ICdieXRlczMyJywgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncHVyZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnLCBuYW1lOiAnaW5pdENvZGUnLCB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgICAgICBuYW1lOiAnZ2V0U2VuZGVyQWRkcmVzcycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDI1NicsIG5hbWU6ICdub25jZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ2NhbGxEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50R2FzTGltaXRzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlczMyJywgbmFtZTogJ2dhc0ZlZXMnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlcycsIG5hbWU6ICdwYXltYXN0ZXJBbmREYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBQYWNrZWRVc2VyT3BlcmF0aW9uJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2dldFVzZXJPcEhhc2gnLFxuICAgICAgICBvdXRwdXRzOiBbeyBpbnRlcm5hbFR5cGU6ICdieXRlczMyJywgbmFtZTogJycsIHR5cGU6ICdieXRlczMyJyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsIG5hbWU6ICdzZW5kZXInLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAnbm9uY2UnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAnYnl0ZXMnLCBuYW1lOiAnY2FsbERhdGEnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnRHYXNMaW1pdHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlczMyJywgbmFtZTogJ2dhc0ZlZXMnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3BheW1hc3RlckFuZERhdGEnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlcycsIG5hbWU6ICdzaWduYXR1cmUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RydWN0IFBhY2tlZFVzZXJPcGVyYXRpb25bXScsXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndXNlck9wcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2NvbnRyYWN0IElBZ2dyZWdhdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhZ2dyZWdhdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlcycsIG5hbWU6ICdzaWduYXR1cmUnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJ1Y3QgSUVudHJ5UG9pbnQuVXNlck9wc1BlckFnZ3JlZ2F0b3JbXScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ29wc1BlckFnZ3JlZ2F0b3InLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZVtdJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MgcGF5YWJsZScsIG5hbWU6ICdiZW5lZmljaWFyeScsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnaGFuZGxlQWdncmVnYXRlZE9wcycsXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDI1NicsIG5hbWU6ICdub25jZScsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ2luaXRDb2RlJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ2NhbGxEYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50R2FzTGltaXRzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlczMyJywgbmFtZTogJ2dhc0ZlZXMnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlcycsIG5hbWU6ICdwYXltYXN0ZXJBbmREYXRhJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzJywgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBQYWNrZWRVc2VyT3BlcmF0aW9uW10nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdvcHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZVtdJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MgcGF5YWJsZScsIG5hbWU6ICdiZW5lZmljaWFyeScsIHR5cGU6ICdhZGRyZXNzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnaGFuZGxlT3BzJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFt7IGludGVybmFsVHlwZTogJ3VpbnQxOTInLCBuYW1lOiAna2V5JywgdHlwZTogJ3VpbnQxOTInIH1dLFxuICAgICAgICBuYW1lOiAnaW5jcmVtZW50Tm9uY2UnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlcycsIG5hbWU6ICdjYWxsRGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAnc2VuZGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JywgbmFtZTogJ25vbmNlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3ZlcmlmaWNhdGlvbkdhc0xpbWl0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2NhbGxHYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcmVWZXJpZmljYXRpb25HYXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAncGF5bWFzdGVyJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ21heEZlZVBlckdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdtYXhQcmlvcml0eUZlZVBlckdhcycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBFbnRyeVBvaW50Lk1lbW9yeVVzZXJPcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnbVVzZXJPcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGUnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ2J5dGVzMzInLCBuYW1lOiAndXNlck9wSGFzaCcsIHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAncHJlZnVuZCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAnY29udGV4dE9mZnNldCcsIHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAncHJlT3BHYXMnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3N0cnVjdCBFbnRyeVBvaW50LlVzZXJPcEluZm8nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdvcEluZm8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd0dXBsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdieXRlcycsIG5hbWU6ICdjb250ZXh0JywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnaW5uZXJIYW5kbGVPcCcsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDI1NicsIG5hbWU6ICdhY3R1YWxHYXNDb3N0JywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsIG5hbWU6ICcnLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgIHsgaW50ZXJuYWxUeXBlOiAndWludDE5MicsIG5hbWU6ICcnLCB0eXBlOiAndWludDE5MicgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ25vbmNlU2VxdWVuY2VOdW1iZXInLFxuICAgICAgICBvdXRwdXRzOiBbeyBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JywgbmFtZTogJycsIHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdzZW5kZXJDcmVhdG9yJyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAgeyBpbnRlcm5hbFR5cGU6ICdjb250cmFjdCBJU2VuZGVyQ3JlYXRvcicsIG5hbWU6ICcnLCB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW3sgaW50ZXJuYWxUeXBlOiAnYnl0ZXM0JywgbmFtZTogJ2ludGVyZmFjZUlkJywgdHlwZTogJ2J5dGVzNCcgfV0sXG4gICAgICAgIG5hbWU6ICdzdXBwb3J0c0ludGVyZmFjZScsXG4gICAgICAgIG91dHB1dHM6IFt7IGludGVybmFsVHlwZTogJ2Jvb2wnLCBuYW1lOiAnJywgdHlwZTogJ2Jvb2wnIH1dLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgbmFtZTogJ3VubG9ja1N0YWtlJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzIHBheWFibGUnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd0FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICd3aXRoZHJhd1N0YWtlJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzIHBheWFibGUnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd3aXRoZHJhd0FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGludGVybmFsVHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAnd2l0aGRyYXdBbW91bnQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3dpdGhkcmF3VG8nLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7IHN0YXRlTXV0YWJpbGl0eTogJ3BheWFibGUnLCB0eXBlOiAncmVjZWl2ZScgfSxcbl07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hYmlzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/constants/abis.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/constants/address.js": /*!*************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/constants/address.js ***! \*************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ entryPoint06Address: () => (/* binding */ entryPoint06Address),\n/* harmony export */ entryPoint07Address: () => (/* binding */ entryPoint07Address),\n/* harmony export */ entryPoint08Address: () => (/* binding */ entryPoint08Address)\n/* harmony export */ });\nconst entryPoint06Address = '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789';\nconst entryPoint07Address = '0x0000000071727De22E5E9d8BAf0edAc6f37da032';\nconst entryPoint08Address = '0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108';\n//# sourceMappingURL=address.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9jb25zdGFudHMvYWRkcmVzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBTztBQUNBO0FBQ0E7QUFDUCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9jb25zdGFudHMvYWRkcmVzcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW50cnlQb2ludDA2QWRkcmVzcyA9ICcweDVGRjEzN0Q0YjBGRENENDlEY0EzMGM3Q0Y1N0U1NzhhMDI2ZDI3ODknO1xuZXhwb3J0IGNvbnN0IGVudHJ5UG9pbnQwN0FkZHJlc3MgPSAnMHgwMDAwMDAwMDcxNzI3RGUyMkU1RTlkOEJBZjBlZEFjNmYzN2RhMDMyJztcbmV4cG9ydCBjb25zdCBlbnRyeVBvaW50MDhBZGRyZXNzID0gJzB4NDMzNzA4NEQ5RTI1NUZmMDcwMjQ2MUNGODg5NUNFOUUzYjVGZjEwOCc7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hZGRyZXNzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/constants/address.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/bundler.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/errors/bundler.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccountNotDeployedError: () => (/* binding */ AccountNotDeployedError),\n/* harmony export */ ExecutionRevertedError: () => (/* binding */ ExecutionRevertedError),\n/* harmony export */ FailedToSendToBeneficiaryError: () => (/* binding */ FailedToSendToBeneficiaryError),\n/* harmony export */ GasValuesOverflowError: () => (/* binding */ GasValuesOverflowError),\n/* harmony export */ HandleOpsOutOfGasError: () => (/* binding */ HandleOpsOutOfGasError),\n/* harmony export */ InitCodeFailedError: () => (/* binding */ InitCodeFailedError),\n/* harmony export */ InitCodeMustCreateSenderError: () => (/* binding */ InitCodeMustCreateSenderError),\n/* harmony export */ InitCodeMustReturnSenderError: () => (/* binding */ InitCodeMustReturnSenderError),\n/* harmony export */ InsufficientPrefundError: () => (/* binding */ InsufficientPrefundError),\n/* harmony export */ InternalCallOnlyError: () => (/* binding */ InternalCallOnlyError),\n/* harmony export */ InvalidAccountNonceError: () => (/* binding */ InvalidAccountNonceError),\n/* harmony export */ InvalidAggregatorError: () => (/* binding */ InvalidAggregatorError),\n/* harmony export */ InvalidBeneficiaryError: () => (/* binding */ InvalidBeneficiaryError),\n/* harmony export */ InvalidFieldsError: () => (/* binding */ InvalidFieldsError),\n/* harmony export */ InvalidPaymasterAndDataError: () => (/* binding */ InvalidPaymasterAndDataError),\n/* harmony export */ PaymasterDepositTooLowError: () => (/* binding */ PaymasterDepositTooLowError),\n/* harmony export */ PaymasterFunctionRevertedError: () => (/* binding */ PaymasterFunctionRevertedError),\n/* harmony export */ PaymasterNotDeployedError: () => (/* binding */ PaymasterNotDeployedError),\n/* harmony export */ PaymasterPostOpFunctionRevertedError: () => (/* binding */ PaymasterPostOpFunctionRevertedError),\n/* harmony export */ PaymasterRateLimitError: () => (/* binding */ PaymasterRateLimitError),\n/* harmony export */ PaymasterStakeTooLowError: () => (/* binding */ PaymasterStakeTooLowError),\n/* harmony export */ SenderAlreadyConstructedError: () => (/* binding */ SenderAlreadyConstructedError),\n/* harmony export */ SignatureCheckFailedError: () => (/* binding */ SignatureCheckFailedError),\n/* harmony export */ SmartAccountFunctionRevertedError: () => (/* binding */ SmartAccountFunctionRevertedError),\n/* harmony export */ UnknownBundlerError: () => (/* binding */ UnknownBundlerError),\n/* harmony export */ UnsupportedSignatureAggregatorError: () => (/* binding */ UnsupportedSignatureAggregatorError),\n/* harmony export */ UserOperationExpiredError: () => (/* binding */ UserOperationExpiredError),\n/* harmony export */ UserOperationOutOfTimeRangeError: () => (/* binding */ UserOperationOutOfTimeRangeError),\n/* harmony export */ UserOperationPaymasterExpiredError: () => (/* binding */ UserOperationPaymasterExpiredError),\n/* harmony export */ UserOperationPaymasterSignatureError: () => (/* binding */ UserOperationPaymasterSignatureError),\n/* harmony export */ UserOperationRejectedByEntryPointError: () => (/* binding */ UserOperationRejectedByEntryPointError),\n/* harmony export */ UserOperationRejectedByOpCodeError: () => (/* binding */ UserOperationRejectedByOpCodeError),\n/* harmony export */ UserOperationRejectedByPaymasterError: () => (/* binding */ UserOperationRejectedByPaymasterError),\n/* harmony export */ UserOperationSignatureError: () => (/* binding */ UserOperationSignatureError),\n/* harmony export */ VerificationGasLimitExceededError: () => (/* binding */ VerificationGasLimitExceededError),\n/* harmony export */ VerificationGasLimitTooLowError: () => (/* binding */ VerificationGasLimitTooLowError)\n/* harmony export */ });\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass AccountNotDeployedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Smart Account is not deployed.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- No `factory`/`factoryData` or `initCode` properties are provided for Smart Account deployment.',\n '- An incorrect `sender` address is provided.',\n ],\n name: 'AccountNotDeployedError',\n });\n }\n}\nObject.defineProperty(AccountNotDeployedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa20/\n});\nclass ExecutionRevertedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, data, message, } = {}) {\n const reason = message\n ?.replace('execution reverted: ', '')\n ?.replace('execution reverted', '');\n super(`Execution reverted ${reason ? `with reason: ${reason}` : 'for an unknown reason'}.`, {\n cause,\n name: 'ExecutionRevertedError',\n });\n Object.defineProperty(this, \"data\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.data = data;\n }\n}\nObject.defineProperty(ExecutionRevertedError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32521\n});\nObject.defineProperty(ExecutionRevertedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /execution reverted/\n});\nclass FailedToSendToBeneficiaryError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Failed to send funds to beneficiary.', {\n cause,\n name: 'FailedToSendToBeneficiaryError',\n });\n }\n}\nObject.defineProperty(FailedToSendToBeneficiaryError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa91/\n});\nclass GasValuesOverflowError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Gas value overflowed.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- one of the gas values exceeded 2**120 (uint120)',\n ].filter(Boolean),\n name: 'GasValuesOverflowError',\n });\n }\n}\nObject.defineProperty(GasValuesOverflowError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa94/\n});\nclass HandleOpsOutOfGasError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('The `handleOps` function was called by the Bundler with a gas limit too low.', {\n cause,\n name: 'HandleOpsOutOfGasError',\n });\n }\n}\nObject.defineProperty(HandleOpsOutOfGasError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa95/\n});\nclass InitCodeFailedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, factory, factoryData, initCode, }) {\n super('Failed to simulate deployment for Smart Account.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- Invalid `factory`/`factoryData` or `initCode` properties are present',\n '- Smart Account deployment execution ran out of gas (low `verificationGasLimit` value)',\n '- Smart Account deployment execution reverted with an error\\n',\n factory && `factory: ${factory}`,\n factoryData && `factoryData: ${factoryData}`,\n initCode && `initCode: ${initCode}`,\n ].filter(Boolean),\n name: 'InitCodeFailedError',\n });\n }\n}\nObject.defineProperty(InitCodeFailedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa13/\n});\nclass InitCodeMustCreateSenderError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, factory, factoryData, initCode, }) {\n super('Smart Account initialization implementation did not create an account.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- `factory`/`factoryData` or `initCode` properties are invalid',\n '- Smart Account initialization implementation is incorrect\\n',\n factory && `factory: ${factory}`,\n factoryData && `factoryData: ${factoryData}`,\n initCode && `initCode: ${initCode}`,\n ].filter(Boolean),\n name: 'InitCodeMustCreateSenderError',\n });\n }\n}\nObject.defineProperty(InitCodeMustCreateSenderError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa15/\n});\nclass InitCodeMustReturnSenderError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, factory, factoryData, initCode, sender, }) {\n super('Smart Account initialization implementation does not return the expected sender.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n 'Smart Account initialization implementation does not return a sender address\\n',\n factory && `factory: ${factory}`,\n factoryData && `factoryData: ${factoryData}`,\n initCode && `initCode: ${initCode}`,\n sender && `sender: ${sender}`,\n ].filter(Boolean),\n name: 'InitCodeMustReturnSenderError',\n });\n }\n}\nObject.defineProperty(InitCodeMustReturnSenderError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa14/\n});\nclass InsufficientPrefundError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Smart Account does not have sufficient funds to execute the User Operation.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the Smart Account does not have sufficient funds to cover the required prefund, or',\n '- a Paymaster was not provided',\n ].filter(Boolean),\n name: 'InsufficientPrefundError',\n });\n }\n}\nObject.defineProperty(InsufficientPrefundError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa21/\n});\nclass InternalCallOnlyError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Bundler attempted to call an invalid function on the EntryPoint.', {\n cause,\n name: 'InternalCallOnlyError',\n });\n }\n}\nObject.defineProperty(InternalCallOnlyError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa92/\n});\nclass InvalidAggregatorError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Bundler used an invalid aggregator for handling aggregated User Operations.', {\n cause,\n name: 'InvalidAggregatorError',\n });\n }\n}\nObject.defineProperty(InvalidAggregatorError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa96/\n});\nclass InvalidAccountNonceError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, nonce, }) {\n super('Invalid Smart Account nonce used for User Operation.', {\n cause,\n metaMessages: [nonce && `nonce: ${nonce}`].filter(Boolean),\n name: 'InvalidAccountNonceError',\n });\n }\n}\nObject.defineProperty(InvalidAccountNonceError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa25/\n});\nclass InvalidBeneficiaryError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Bundler has not set a beneficiary address.', {\n cause,\n name: 'InvalidBeneficiaryError',\n });\n }\n}\nObject.defineProperty(InvalidBeneficiaryError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa90/\n});\nclass InvalidFieldsError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Invalid fields set on User Operation.', {\n cause,\n name: 'InvalidFieldsError',\n });\n }\n}\nObject.defineProperty(InvalidFieldsError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32602\n});\nclass InvalidPaymasterAndDataError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, paymasterAndData, }) {\n super('Paymaster properties provided are invalid.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the `paymasterAndData` property is of an incorrect length\\n',\n paymasterAndData && `paymasterAndData: ${paymasterAndData}`,\n ].filter(Boolean),\n name: 'InvalidPaymasterAndDataError',\n });\n }\n}\nObject.defineProperty(InvalidPaymasterAndDataError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa93/\n});\nclass PaymasterDepositTooLowError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Paymaster deposit for the User Operation is too low.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the Paymaster has deposited less than the expected amount via the `deposit` function',\n ].filter(Boolean),\n name: 'PaymasterDepositTooLowError',\n });\n }\n}\nObject.defineProperty(PaymasterDepositTooLowError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32508\n});\nObject.defineProperty(PaymasterDepositTooLowError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa31/\n});\nclass PaymasterFunctionRevertedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('The `validatePaymasterUserOp` function on the Paymaster reverted.', {\n cause,\n name: 'PaymasterFunctionRevertedError',\n });\n }\n}\nObject.defineProperty(PaymasterFunctionRevertedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa33/\n});\nclass PaymasterNotDeployedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('The Paymaster contract has not been deployed.', {\n cause,\n name: 'PaymasterNotDeployedError',\n });\n }\n}\nObject.defineProperty(PaymasterNotDeployedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa30/\n});\nclass PaymasterRateLimitError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super('UserOperation rejected because paymaster (or signature aggregator) is throttled/banned.', {\n cause,\n name: 'PaymasterRateLimitError',\n });\n }\n}\nObject.defineProperty(PaymasterRateLimitError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32504\n});\nclass PaymasterStakeTooLowError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super('UserOperation rejected because paymaster (or signature aggregator) is throttled/banned.', {\n cause,\n name: 'PaymasterStakeTooLowError',\n });\n }\n}\nObject.defineProperty(PaymasterStakeTooLowError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32505\n});\nclass PaymasterPostOpFunctionRevertedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Paymaster `postOp` function reverted.', {\n cause,\n name: 'PaymasterPostOpFunctionRevertedError',\n });\n }\n}\nObject.defineProperty(PaymasterPostOpFunctionRevertedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa50/\n});\nclass SenderAlreadyConstructedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, factory, factoryData, initCode, }) {\n super('Smart Account has already been deployed.', {\n cause,\n metaMessages: [\n 'Remove the following properties and try again:',\n factory && '`factory`',\n factoryData && '`factoryData`',\n initCode && '`initCode`',\n ].filter(Boolean),\n name: 'SenderAlreadyConstructedError',\n });\n }\n}\nObject.defineProperty(SenderAlreadyConstructedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa10/\n});\nclass SignatureCheckFailedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super('UserOperation rejected because account signature check failed (or paymaster signature, if the paymaster uses its data as signature).', {\n cause,\n name: 'SignatureCheckFailedError',\n });\n }\n}\nObject.defineProperty(SignatureCheckFailedError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32507\n});\nclass SmartAccountFunctionRevertedError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('The `validateUserOp` function on the Smart Account reverted.', {\n cause,\n name: 'SmartAccountFunctionRevertedError',\n });\n }\n}\nObject.defineProperty(SmartAccountFunctionRevertedError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa23/\n});\nclass UnsupportedSignatureAggregatorError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super('UserOperation rejected because account specified unsupported signature aggregator.', {\n cause,\n name: 'UnsupportedSignatureAggregatorError',\n });\n }\n}\nObject.defineProperty(UnsupportedSignatureAggregatorError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32506\n});\nclass UserOperationExpiredError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('User Operation expired.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the `validAfter` or `validUntil` values returned from `validateUserOp` on the Smart Account are not satisfied',\n ].filter(Boolean),\n name: 'UserOperationExpiredError',\n });\n }\n}\nObject.defineProperty(UserOperationExpiredError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa22/\n});\nclass UserOperationPaymasterExpiredError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Paymaster for User Operation expired.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the `validAfter` or `validUntil` values returned from `validatePaymasterUserOp` on the Paymaster are not satisfied',\n ].filter(Boolean),\n name: 'UserOperationPaymasterExpiredError',\n });\n }\n}\nObject.defineProperty(UserOperationPaymasterExpiredError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa32/\n});\nclass UserOperationSignatureError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Signature provided for the User Operation is invalid.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the `signature` for the User Operation is incorrectly computed, and unable to be verified by the Smart Account',\n ].filter(Boolean),\n name: 'UserOperationSignatureError',\n });\n }\n}\nObject.defineProperty(UserOperationSignatureError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa24/\n});\nclass UserOperationPaymasterSignatureError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('Signature provided for the User Operation is invalid.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the `signature` for the User Operation is incorrectly computed, and unable to be verified by the Paymaster',\n ].filter(Boolean),\n name: 'UserOperationPaymasterSignatureError',\n });\n }\n}\nObject.defineProperty(UserOperationPaymasterSignatureError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa34/\n});\nclass UserOperationRejectedByEntryPointError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super(\"User Operation rejected by EntryPoint's `simulateValidation` during account creation or validation.\", {\n cause,\n name: 'UserOperationRejectedByEntryPointError',\n });\n }\n}\nObject.defineProperty(UserOperationRejectedByEntryPointError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32500\n});\nclass UserOperationRejectedByPaymasterError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super(\"User Operation rejected by Paymaster's `validatePaymasterUserOp`.\", {\n cause,\n name: 'UserOperationRejectedByPaymasterError',\n });\n }\n}\nObject.defineProperty(UserOperationRejectedByPaymasterError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32501\n});\nclass UserOperationRejectedByOpCodeError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super('User Operation rejected with op code validation error.', {\n cause,\n name: 'UserOperationRejectedByOpCodeError',\n });\n }\n}\nObject.defineProperty(UserOperationRejectedByOpCodeError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32502\n});\nclass UserOperationOutOfTimeRangeError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super('UserOperation out of time-range: either wallet or paymaster returned a time-range, and it is already expired (or will expire soon).', {\n cause,\n name: 'UserOperationOutOfTimeRangeError',\n });\n }\n}\nObject.defineProperty(UserOperationOutOfTimeRangeError, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: -32503\n});\nclass UnknownBundlerError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause }) {\n super(`An error occurred while executing user operation: ${cause?.shortMessage}`, {\n cause,\n name: 'UnknownBundlerError',\n });\n }\n}\nclass VerificationGasLimitExceededError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('User Operation verification gas limit exceeded.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the gas used for verification exceeded the `verificationGasLimit`',\n ].filter(Boolean),\n name: 'VerificationGasLimitExceededError',\n });\n }\n}\nObject.defineProperty(VerificationGasLimitExceededError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa40/\n});\nclass VerificationGasLimitTooLowError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ cause, }) {\n super('User Operation verification gas limit is too low.', {\n cause,\n metaMessages: [\n 'This could arise when:',\n '- the `verificationGasLimit` is too low to verify the User Operation',\n ].filter(Boolean),\n name: 'VerificationGasLimitTooLowError',\n });\n }\n}\nObject.defineProperty(VerificationGasLimitTooLowError, \"message\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: /aa41/\n});\n//# sourceMappingURL=bundler.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9lcnJvcnMvYnVuZGxlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQWlEO0FBQzFDLHNDQUFzQyxzREFBUztBQUN0RCxrQkFBa0IsUUFBUTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLHFDQUFxQyxzREFBUztBQUNyRCxrQkFBa0Isd0JBQXdCLElBQUk7QUFDOUM7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLHlCQUF5QixPQUFPLDRCQUE0QjtBQUNoRztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLDZDQUE2QyxzREFBUztBQUM3RCxrQkFBa0IsUUFBUTtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00scUNBQXFDLHNEQUFTO0FBQ3JELGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLHFDQUFxQyxzREFBUztBQUNyRCxrQkFBa0IsUUFBUTtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sa0NBQWtDLHNEQUFTO0FBQ2xELGtCQUFrQix3Q0FBd0M7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsUUFBUTtBQUMvQywrQ0FBK0MsWUFBWTtBQUMzRCx5Q0FBeUMsU0FBUztBQUNsRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLDRDQUE0QyxzREFBUztBQUM1RCxrQkFBa0Isd0NBQXdDO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QyxRQUFRO0FBQy9DLCtDQUErQyxZQUFZO0FBQzNELHlDQUF5QyxTQUFTO0FBQ2xEO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sNENBQTRDLHNEQUFTO0FBQzVELGtCQUFrQixnREFBZ0Q7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1QyxRQUFRO0FBQy9DLCtDQUErQyxZQUFZO0FBQzNELHlDQUF5QyxTQUFTO0FBQ2xELHFDQUFxQyxPQUFPO0FBQzVDO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sdUNBQXVDLHNEQUFTO0FBQ3ZELGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sb0NBQW9DLHNEQUFTO0FBQ3BELGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSxxQ0FBcUMsc0RBQVM7QUFDckQsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLHVDQUF1QyxzREFBUztBQUN2RCxrQkFBa0IsZUFBZTtBQUNqQztBQUNBO0FBQ0EsOENBQThDLE1BQU07QUFDcEQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sc0NBQXNDLHNEQUFTO0FBQ3RELGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSxpQ0FBaUMsc0RBQVM7QUFDakQsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLDJDQUEyQyxzREFBUztBQUMzRCxrQkFBa0IsMEJBQTBCO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5REFBeUQsaUJBQWlCO0FBQzFFO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sMENBQTBDLHNEQUFTO0FBQzFELGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sNkNBQTZDLHNEQUFTO0FBQzdELGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSx3Q0FBd0Msc0RBQVM7QUFDeEQsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLHNDQUFzQyxzREFBUztBQUN0RCxrQkFBa0IsT0FBTztBQUN6QjtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sd0NBQXdDLHNEQUFTO0FBQ3hELGtCQUFrQixPQUFPO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSxtREFBbUQsc0RBQVM7QUFDbkUsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLDRDQUE0QyxzREFBUztBQUM1RCxrQkFBa0Isd0NBQXdDO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSx3Q0FBd0Msc0RBQVM7QUFDeEQsa0JBQWtCLE9BQU87QUFDekI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLGdEQUFnRCxzREFBUztBQUNoRSxrQkFBa0IsUUFBUTtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sa0RBQWtELHNEQUFTO0FBQ2xFLGtCQUFrQixPQUFPO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSx3Q0FBd0Msc0RBQVM7QUFDeEQsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00saURBQWlELHNEQUFTO0FBQ2pFLGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLDBDQUEwQyxzREFBUztBQUMxRCxrQkFBa0IsUUFBUTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSxtREFBbUQsc0RBQVM7QUFDbkUsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00scURBQXFELHNEQUFTO0FBQ3JFLGtCQUFrQixPQUFPO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSxvREFBb0Qsc0RBQVM7QUFDcEUsa0JBQWtCLE9BQU87QUFDekI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNNLGlEQUFpRCxzREFBUztBQUNqRSxrQkFBa0IsT0FBTztBQUN6QjtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sK0NBQStDLHNEQUFTO0FBQy9ELGtCQUFrQixPQUFPO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDTSxrQ0FBa0Msc0RBQVM7QUFDbEQsa0JBQWtCLE9BQU87QUFDekIsbUVBQW1FLG9CQUFvQjtBQUN2RjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxnREFBZ0Qsc0RBQVM7QUFDaEUsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ00sOENBQThDLHNEQUFTO0FBQzlELGtCQUFrQixRQUFRO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL2Vycm9ycy9idW5kbGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9iYXNlLmpzJztcbmV4cG9ydCBjbGFzcyBBY2NvdW50Tm90RGVwbG95ZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignU21hcnQgQWNjb3VudCBpcyBub3QgZGVwbG95ZWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnVGhpcyBjb3VsZCBhcmlzZSB3aGVuOicsXG4gICAgICAgICAgICAgICAgJy0gTm8gYGZhY3RvcnlgL2BmYWN0b3J5RGF0YWAgb3IgYGluaXRDb2RlYCBwcm9wZXJ0aWVzIGFyZSBwcm92aWRlZCBmb3IgU21hcnQgQWNjb3VudCBkZXBsb3ltZW50LicsXG4gICAgICAgICAgICAgICAgJy0gQW4gaW5jb3JyZWN0IGBzZW5kZXJgIGFkZHJlc3MgaXMgcHJvdmlkZWQuJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBuYW1lOiAnQWNjb3VudE5vdERlcGxveWVkRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoQWNjb3VudE5vdERlcGxveWVkRXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9hYTIwL1xufSk7XG5leHBvcnQgY2xhc3MgRXhlY3V0aW9uUmV2ZXJ0ZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgZGF0YSwgbWVzc2FnZSwgfSA9IHt9KSB7XG4gICAgICAgIGNvbnN0IHJlYXNvbiA9IG1lc3NhZ2VcbiAgICAgICAgICAgID8ucmVwbGFjZSgnZXhlY3V0aW9uIHJldmVydGVkOiAnLCAnJylcbiAgICAgICAgICAgID8ucmVwbGFjZSgnZXhlY3V0aW9uIHJldmVydGVkJywgJycpO1xuICAgICAgICBzdXBlcihgRXhlY3V0aW9uIHJldmVydGVkICR7cmVhc29uID8gYHdpdGggcmVhc29uOiAke3JlYXNvbn1gIDogJ2ZvciBhbiB1bmtub3duIHJlYXNvbid9LmAsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ0V4ZWN1dGlvblJldmVydGVkRXJyb3InLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwiZGF0YVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShFeGVjdXRpb25SZXZlcnRlZEVycm9yLCBcImNvZGVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAtMzI1MjFcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KEV4ZWN1dGlvblJldmVydGVkRXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9leGVjdXRpb24gcmV2ZXJ0ZWQvXG59KTtcbmV4cG9ydCBjbGFzcyBGYWlsZWRUb1NlbmRUb0JlbmVmaWNpYXJ5RXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ0ZhaWxlZCB0byBzZW5kIGZ1bmRzIHRvIGJlbmVmaWNpYXJ5LicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ0ZhaWxlZFRvU2VuZFRvQmVuZWZpY2lhcnlFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShGYWlsZWRUb1NlbmRUb0JlbmVmaWNpYXJ5RXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9hYTkxL1xufSk7XG5leHBvcnQgY2xhc3MgR2FzVmFsdWVzT3ZlcmZsb3dFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignR2FzIHZhbHVlIG92ZXJmbG93ZWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnVGhpcyBjb3VsZCBhcmlzZSB3aGVuOicsXG4gICAgICAgICAgICAgICAgJy0gb25lIG9mIHRoZSBnYXMgdmFsdWVzIGV4Y2VlZGVkIDIqKjEyMCAodWludDEyMCknLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnR2FzVmFsdWVzT3ZlcmZsb3dFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShHYXNWYWx1ZXNPdmVyZmxvd0Vycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWE5NC9cbn0pO1xuZXhwb3J0IGNsYXNzIEhhbmRsZU9wc091dE9mR2FzRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ1RoZSBgaGFuZGxlT3BzYCBmdW5jdGlvbiB3YXMgY2FsbGVkIGJ5IHRoZSBCdW5kbGVyIHdpdGggYSBnYXMgbGltaXQgdG9vIGxvdy4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG5hbWU6ICdIYW5kbGVPcHNPdXRPZkdhc0Vycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KEhhbmRsZU9wc091dE9mR2FzRXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9hYTk1L1xufSk7XG5leHBvcnQgY2xhc3MgSW5pdENvZGVGYWlsZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgZmFjdG9yeSwgZmFjdG9yeURhdGEsIGluaXRDb2RlLCB9KSB7XG4gICAgICAgIHN1cGVyKCdGYWlsZWQgdG8gc2ltdWxhdGUgZGVwbG95bWVudCBmb3IgU21hcnQgQWNjb3VudC4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGlzIGNvdWxkIGFyaXNlIHdoZW46JyxcbiAgICAgICAgICAgICAgICAnLSBJbnZhbGlkIGBmYWN0b3J5YC9gZmFjdG9yeURhdGFgIG9yIGBpbml0Q29kZWAgcHJvcGVydGllcyBhcmUgcHJlc2VudCcsXG4gICAgICAgICAgICAgICAgJy0gU21hcnQgQWNjb3VudCBkZXBsb3ltZW50IGV4ZWN1dGlvbiByYW4gb3V0IG9mIGdhcyAobG93IGB2ZXJpZmljYXRpb25HYXNMaW1pdGAgdmFsdWUpJyxcbiAgICAgICAgICAgICAgICAnLSBTbWFydCBBY2NvdW50IGRlcGxveW1lbnQgZXhlY3V0aW9uIHJldmVydGVkIHdpdGggYW4gZXJyb3JcXG4nLFxuICAgICAgICAgICAgICAgIGZhY3RvcnkgJiYgYGZhY3Rvcnk6ICR7ZmFjdG9yeX1gLFxuICAgICAgICAgICAgICAgIGZhY3RvcnlEYXRhICYmIGBmYWN0b3J5RGF0YTogJHtmYWN0b3J5RGF0YX1gLFxuICAgICAgICAgICAgICAgIGluaXRDb2RlICYmIGBpbml0Q29kZTogJHtpbml0Q29kZX1gLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnSW5pdENvZGVGYWlsZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShJbml0Q29kZUZhaWxlZEVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWExMy9cbn0pO1xuZXhwb3J0IGNsYXNzIEluaXRDb2RlTXVzdENyZWF0ZVNlbmRlckVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGNhdXNlLCBmYWN0b3J5LCBmYWN0b3J5RGF0YSwgaW5pdENvZGUsIH0pIHtcbiAgICAgICAgc3VwZXIoJ1NtYXJ0IEFjY291bnQgaW5pdGlhbGl6YXRpb24gaW1wbGVtZW50YXRpb24gZGlkIG5vdCBjcmVhdGUgYW4gYWNjb3VudC4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGlzIGNvdWxkIGFyaXNlIHdoZW46JyxcbiAgICAgICAgICAgICAgICAnLSBgZmFjdG9yeWAvYGZhY3RvcnlEYXRhYCBvciBgaW5pdENvZGVgIHByb3BlcnRpZXMgYXJlIGludmFsaWQnLFxuICAgICAgICAgICAgICAgICctIFNtYXJ0IEFjY291bnQgaW5pdGlhbGl6YXRpb24gaW1wbGVtZW50YXRpb24gaXMgaW5jb3JyZWN0XFxuJyxcbiAgICAgICAgICAgICAgICBmYWN0b3J5ICYmIGBmYWN0b3J5OiAke2ZhY3Rvcnl9YCxcbiAgICAgICAgICAgICAgICBmYWN0b3J5RGF0YSAmJiBgZmFjdG9yeURhdGE6ICR7ZmFjdG9yeURhdGF9YCxcbiAgICAgICAgICAgICAgICBpbml0Q29kZSAmJiBgaW5pdENvZGU6ICR7aW5pdENvZGV9YCxcbiAgICAgICAgICAgIF0uZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgICAgbmFtZTogJ0luaXRDb2RlTXVzdENyZWF0ZVNlbmRlckVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KEluaXRDb2RlTXVzdENyZWF0ZVNlbmRlckVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWExNS9cbn0pO1xuZXhwb3J0IGNsYXNzIEluaXRDb2RlTXVzdFJldHVyblNlbmRlckVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGNhdXNlLCBmYWN0b3J5LCBmYWN0b3J5RGF0YSwgaW5pdENvZGUsIHNlbmRlciwgfSkge1xuICAgICAgICBzdXBlcignU21hcnQgQWNjb3VudCBpbml0aWFsaXphdGlvbiBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZXR1cm4gdGhlIGV4cGVjdGVkIHNlbmRlci4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGlzIGNvdWxkIGFyaXNlIHdoZW46JyxcbiAgICAgICAgICAgICAgICAnU21hcnQgQWNjb3VudCBpbml0aWFsaXphdGlvbiBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZXR1cm4gYSBzZW5kZXIgYWRkcmVzc1xcbicsXG4gICAgICAgICAgICAgICAgZmFjdG9yeSAmJiBgZmFjdG9yeTogJHtmYWN0b3J5fWAsXG4gICAgICAgICAgICAgICAgZmFjdG9yeURhdGEgJiYgYGZhY3RvcnlEYXRhOiAke2ZhY3RvcnlEYXRhfWAsXG4gICAgICAgICAgICAgICAgaW5pdENvZGUgJiYgYGluaXRDb2RlOiAke2luaXRDb2RlfWAsXG4gICAgICAgICAgICAgICAgc2VuZGVyICYmIGBzZW5kZXI6ICR7c2VuZGVyfWAsXG4gICAgICAgICAgICBdLmZpbHRlcihCb29sZWFuKSxcbiAgICAgICAgICAgIG5hbWU6ICdJbml0Q29kZU11c3RSZXR1cm5TZW5kZXJFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShJbml0Q29kZU11c3RSZXR1cm5TZW5kZXJFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhMTQvXG59KTtcbmV4cG9ydCBjbGFzcyBJbnN1ZmZpY2llbnRQcmVmdW5kRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ1NtYXJ0IEFjY291bnQgZG9lcyBub3QgaGF2ZSBzdWZmaWNpZW50IGZ1bmRzIHRvIGV4ZWN1dGUgdGhlIFVzZXIgT3BlcmF0aW9uLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgJ1RoaXMgY291bGQgYXJpc2Ugd2hlbjonLFxuICAgICAgICAgICAgICAgICctIHRoZSBTbWFydCBBY2NvdW50IGRvZXMgbm90IGhhdmUgc3VmZmljaWVudCBmdW5kcyB0byBjb3ZlciB0aGUgcmVxdWlyZWQgcHJlZnVuZCwgb3InLFxuICAgICAgICAgICAgICAgICctIGEgUGF5bWFzdGVyIHdhcyBub3QgcHJvdmlkZWQnLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnSW5zdWZmaWNpZW50UHJlZnVuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KEluc3VmZmljaWVudFByZWZ1bmRFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhMjEvXG59KTtcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbENhbGxPbmx5RXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ0J1bmRsZXIgYXR0ZW1wdGVkIHRvIGNhbGwgYW4gaW52YWxpZCBmdW5jdGlvbiBvbiB0aGUgRW50cnlQb2ludC4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG5hbWU6ICdJbnRlcm5hbENhbGxPbmx5RXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoSW50ZXJuYWxDYWxsT25seUVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWE5Mi9cbn0pO1xuZXhwb3J0IGNsYXNzIEludmFsaWRBZ2dyZWdhdG9yRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ0J1bmRsZXIgdXNlZCBhbiBpbnZhbGlkIGFnZ3JlZ2F0b3IgZm9yIGhhbmRsaW5nIGFnZ3JlZ2F0ZWQgVXNlciBPcGVyYXRpb25zLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ0ludmFsaWRBZ2dyZWdhdG9yRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoSW52YWxpZEFnZ3JlZ2F0b3JFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhOTYvXG59KTtcbmV4cG9ydCBjbGFzcyBJbnZhbGlkQWNjb3VudE5vbmNlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIG5vbmNlLCB9KSB7XG4gICAgICAgIHN1cGVyKCdJbnZhbGlkIFNtYXJ0IEFjY291bnQgbm9uY2UgdXNlZCBmb3IgVXNlciBPcGVyYXRpb24uJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtub25jZSAmJiBgbm9uY2U6ICR7bm9uY2V9YF0uZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgICAgbmFtZTogJ0ludmFsaWRBY2NvdW50Tm9uY2VFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShJbnZhbGlkQWNjb3VudE5vbmNlRXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9hYTI1L1xufSk7XG5leHBvcnQgY2xhc3MgSW52YWxpZEJlbmVmaWNpYXJ5RXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ0J1bmRsZXIgaGFzIG5vdCBzZXQgYSBiZW5lZmljaWFyeSBhZGRyZXNzLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ0ludmFsaWRCZW5lZmljaWFyeUVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KEludmFsaWRCZW5lZmljaWFyeUVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWE5MC9cbn0pO1xuZXhwb3J0IGNsYXNzIEludmFsaWRGaWVsZHNFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignSW52YWxpZCBmaWVsZHMgc2V0IG9uIFVzZXIgT3BlcmF0aW9uLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ0ludmFsaWRGaWVsZHNFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShJbnZhbGlkRmllbGRzRXJyb3IsIFwiY29kZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC0zMjYwMlxufSk7XG5leHBvcnQgY2xhc3MgSW52YWxpZFBheW1hc3RlckFuZERhdGFFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgcGF5bWFzdGVyQW5kRGF0YSwgfSkge1xuICAgICAgICBzdXBlcignUGF5bWFzdGVyIHByb3BlcnRpZXMgcHJvdmlkZWQgYXJlIGludmFsaWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnVGhpcyBjb3VsZCBhcmlzZSB3aGVuOicsXG4gICAgICAgICAgICAgICAgJy0gdGhlIGBwYXltYXN0ZXJBbmREYXRhYCBwcm9wZXJ0eSBpcyBvZiBhbiBpbmNvcnJlY3QgbGVuZ3RoXFxuJyxcbiAgICAgICAgICAgICAgICBwYXltYXN0ZXJBbmREYXRhICYmIGBwYXltYXN0ZXJBbmREYXRhOiAke3BheW1hc3RlckFuZERhdGF9YCxcbiAgICAgICAgICAgIF0uZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgICAgbmFtZTogJ0ludmFsaWRQYXltYXN0ZXJBbmREYXRhRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoSW52YWxpZFBheW1hc3RlckFuZERhdGFFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhOTMvXG59KTtcbmV4cG9ydCBjbGFzcyBQYXltYXN0ZXJEZXBvc2l0VG9vTG93RXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ1BheW1hc3RlciBkZXBvc2l0IGZvciB0aGUgVXNlciBPcGVyYXRpb24gaXMgdG9vIGxvdy4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGlzIGNvdWxkIGFyaXNlIHdoZW46JyxcbiAgICAgICAgICAgICAgICAnLSB0aGUgUGF5bWFzdGVyIGhhcyBkZXBvc2l0ZWQgbGVzcyB0aGFuIHRoZSBleHBlY3RlZCBhbW91bnQgdmlhIHRoZSBgZGVwb3NpdGAgZnVuY3Rpb24nLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnUGF5bWFzdGVyRGVwb3NpdFRvb0xvd0Vycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFBheW1hc3RlckRlcG9zaXRUb29Mb3dFcnJvciwgXCJjb2RlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogLTMyNTA4XG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShQYXltYXN0ZXJEZXBvc2l0VG9vTG93RXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9hYTMxL1xufSk7XG5leHBvcnQgY2xhc3MgUGF5bWFzdGVyRnVuY3Rpb25SZXZlcnRlZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGNhdXNlLCB9KSB7XG4gICAgICAgIHN1cGVyKCdUaGUgYHZhbGlkYXRlUGF5bWFzdGVyVXNlck9wYCBmdW5jdGlvbiBvbiB0aGUgUGF5bWFzdGVyIHJldmVydGVkLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ1BheW1hc3RlckZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShQYXltYXN0ZXJGdW5jdGlvblJldmVydGVkRXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9hYTMzL1xufSk7XG5leHBvcnQgY2xhc3MgUGF5bWFzdGVyTm90RGVwbG95ZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignVGhlIFBheW1hc3RlciBjb250cmFjdCBoYXMgbm90IGJlZW4gZGVwbG95ZWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnUGF5bWFzdGVyTm90RGVwbG95ZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShQYXltYXN0ZXJOb3REZXBsb3llZEVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWEzMC9cbn0pO1xuZXhwb3J0IGNsYXNzIFBheW1hc3RlclJhdGVMaW1pdEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGNhdXNlIH0pIHtcbiAgICAgICAgc3VwZXIoJ1VzZXJPcGVyYXRpb24gcmVqZWN0ZWQgYmVjYXVzZSBwYXltYXN0ZXIgKG9yIHNpZ25hdHVyZSBhZ2dyZWdhdG9yKSBpcyB0aHJvdHRsZWQvYmFubmVkLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ1BheW1hc3RlclJhdGVMaW1pdEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFBheW1hc3RlclJhdGVMaW1pdEVycm9yLCBcImNvZGVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAtMzI1MDRcbn0pO1xuZXhwb3J0IGNsYXNzIFBheW1hc3RlclN0YWtlVG9vTG93RXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UgfSkge1xuICAgICAgICBzdXBlcignVXNlck9wZXJhdGlvbiByZWplY3RlZCBiZWNhdXNlIHBheW1hc3RlciAob3Igc2lnbmF0dXJlIGFnZ3JlZ2F0b3IpIGlzIHRocm90dGxlZC9iYW5uZWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnUGF5bWFzdGVyU3Rha2VUb29Mb3dFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShQYXltYXN0ZXJTdGFrZVRvb0xvd0Vycm9yLCBcImNvZGVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAtMzI1MDVcbn0pO1xuZXhwb3J0IGNsYXNzIFBheW1hc3RlclBvc3RPcEZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignUGF5bWFzdGVyIGBwb3N0T3BgIGZ1bmN0aW9uIHJldmVydGVkLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbmFtZTogJ1BheW1hc3RlclBvc3RPcEZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShQYXltYXN0ZXJQb3N0T3BGdW5jdGlvblJldmVydGVkRXJyb3IsIFwibWVzc2FnZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC9hYTUwL1xufSk7XG5leHBvcnQgY2xhc3MgU2VuZGVyQWxyZWFkeUNvbnN0cnVjdGVkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIGZhY3RvcnksIGZhY3RvcnlEYXRhLCBpbml0Q29kZSwgfSkge1xuICAgICAgICBzdXBlcignU21hcnQgQWNjb3VudCBoYXMgYWxyZWFkeSBiZWVuIGRlcGxveWVkLicsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgJ1JlbW92ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMgYW5kIHRyeSBhZ2FpbjonLFxuICAgICAgICAgICAgICAgIGZhY3RvcnkgJiYgJ2BmYWN0b3J5YCcsXG4gICAgICAgICAgICAgICAgZmFjdG9yeURhdGEgJiYgJ2BmYWN0b3J5RGF0YWAnLFxuICAgICAgICAgICAgICAgIGluaXRDb2RlICYmICdgaW5pdENvZGVgJyxcbiAgICAgICAgICAgIF0uZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgICAgbmFtZTogJ1NlbmRlckFscmVhZHlDb25zdHJ1Y3RlZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFNlbmRlckFscmVhZHlDb25zdHJ1Y3RlZEVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWExMC9cbn0pO1xuZXhwb3J0IGNsYXNzIFNpZ25hdHVyZUNoZWNrRmFpbGVkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UgfSkge1xuICAgICAgICBzdXBlcignVXNlck9wZXJhdGlvbiByZWplY3RlZCBiZWNhdXNlIGFjY291bnQgc2lnbmF0dXJlIGNoZWNrIGZhaWxlZCAob3IgcGF5bWFzdGVyIHNpZ25hdHVyZSwgaWYgdGhlIHBheW1hc3RlciB1c2VzIGl0cyBkYXRhIGFzIHNpZ25hdHVyZSkuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnU2lnbmF0dXJlQ2hlY2tGYWlsZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShTaWduYXR1cmVDaGVja0ZhaWxlZEVycm9yLCBcImNvZGVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAtMzI1MDdcbn0pO1xuZXhwb3J0IGNsYXNzIFNtYXJ0QWNjb3VudEZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignVGhlIGB2YWxpZGF0ZVVzZXJPcGAgZnVuY3Rpb24gb24gdGhlIFNtYXJ0IEFjY291bnQgcmV2ZXJ0ZWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnU21hcnRBY2NvdW50RnVuY3Rpb25SZXZlcnRlZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFNtYXJ0QWNjb3VudEZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhMjMvXG59KTtcbmV4cG9ydCBjbGFzcyBVbnN1cHBvcnRlZFNpZ25hdHVyZUFnZ3JlZ2F0b3JFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSB9KSB7XG4gICAgICAgIHN1cGVyKCdVc2VyT3BlcmF0aW9uIHJlamVjdGVkIGJlY2F1c2UgYWNjb3VudCBzcGVjaWZpZWQgdW5zdXBwb3J0ZWQgc2lnbmF0dXJlIGFnZ3JlZ2F0b3IuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnVW5zdXBwb3J0ZWRTaWduYXR1cmVBZ2dyZWdhdG9yRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVW5zdXBwb3J0ZWRTaWduYXR1cmVBZ2dyZWdhdG9yRXJyb3IsIFwiY29kZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC0zMjUwNlxufSk7XG5leHBvcnQgY2xhc3MgVXNlck9wZXJhdGlvbkV4cGlyZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignVXNlciBPcGVyYXRpb24gZXhwaXJlZC4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGlzIGNvdWxkIGFyaXNlIHdoZW46JyxcbiAgICAgICAgICAgICAgICAnLSB0aGUgYHZhbGlkQWZ0ZXJgIG9yIGB2YWxpZFVudGlsYCB2YWx1ZXMgcmV0dXJuZWQgZnJvbSBgdmFsaWRhdGVVc2VyT3BgIG9uIHRoZSBTbWFydCBBY2NvdW50IGFyZSBub3Qgc2F0aXNmaWVkJyxcbiAgICAgICAgICAgIF0uZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25FeHBpcmVkRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVXNlck9wZXJhdGlvbkV4cGlyZWRFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhMjIvXG59KTtcbmV4cG9ydCBjbGFzcyBVc2VyT3BlcmF0aW9uUGF5bWFzdGVyRXhwaXJlZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGNhdXNlLCB9KSB7XG4gICAgICAgIHN1cGVyKCdQYXltYXN0ZXIgZm9yIFVzZXIgT3BlcmF0aW9uIGV4cGlyZWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnVGhpcyBjb3VsZCBhcmlzZSB3aGVuOicsXG4gICAgICAgICAgICAgICAgJy0gdGhlIGB2YWxpZEFmdGVyYCBvciBgdmFsaWRVbnRpbGAgdmFsdWVzIHJldHVybmVkIGZyb20gYHZhbGlkYXRlUGF5bWFzdGVyVXNlck9wYCBvbiB0aGUgUGF5bWFzdGVyIGFyZSBub3Qgc2F0aXNmaWVkJyxcbiAgICAgICAgICAgIF0uZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25QYXltYXN0ZXJFeHBpcmVkRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVXNlck9wZXJhdGlvblBheW1hc3RlckV4cGlyZWRFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhMzIvXG59KTtcbmV4cG9ydCBjbGFzcyBVc2VyT3BlcmF0aW9uU2lnbmF0dXJlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ1NpZ25hdHVyZSBwcm92aWRlZCBmb3IgdGhlIFVzZXIgT3BlcmF0aW9uIGlzIGludmFsaWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnVGhpcyBjb3VsZCBhcmlzZSB3aGVuOicsXG4gICAgICAgICAgICAgICAgJy0gdGhlIGBzaWduYXR1cmVgIGZvciB0aGUgVXNlciBPcGVyYXRpb24gaXMgaW5jb3JyZWN0bHkgY29tcHV0ZWQsIGFuZCB1bmFibGUgdG8gYmUgdmVyaWZpZWQgYnkgdGhlIFNtYXJ0IEFjY291bnQnLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvblNpZ25hdHVyZUVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFVzZXJPcGVyYXRpb25TaWduYXR1cmVFcnJvciwgXCJtZXNzYWdlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICB2YWx1ZTogL2FhMjQvXG59KTtcbmV4cG9ydCBjbGFzcyBVc2VyT3BlcmF0aW9uUGF5bWFzdGVyU2lnbmF0dXJlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ1NpZ25hdHVyZSBwcm92aWRlZCBmb3IgdGhlIFVzZXIgT3BlcmF0aW9uIGlzIGludmFsaWQuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnVGhpcyBjb3VsZCBhcmlzZSB3aGVuOicsXG4gICAgICAgICAgICAgICAgJy0gdGhlIGBzaWduYXR1cmVgIGZvciB0aGUgVXNlciBPcGVyYXRpb24gaXMgaW5jb3JyZWN0bHkgY29tcHV0ZWQsIGFuZCB1bmFibGUgdG8gYmUgdmVyaWZpZWQgYnkgdGhlIFBheW1hc3RlcicsXG4gICAgICAgICAgICBdLmZpbHRlcihCb29sZWFuKSxcbiAgICAgICAgICAgIG5hbWU6ICdVc2VyT3BlcmF0aW9uUGF5bWFzdGVyU2lnbmF0dXJlRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVXNlck9wZXJhdGlvblBheW1hc3RlclNpZ25hdHVyZUVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWEzNC9cbn0pO1xuZXhwb3J0IGNsYXNzIFVzZXJPcGVyYXRpb25SZWplY3RlZEJ5RW50cnlQb2ludEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGNhdXNlIH0pIHtcbiAgICAgICAgc3VwZXIoXCJVc2VyIE9wZXJhdGlvbiByZWplY3RlZCBieSBFbnRyeVBvaW50J3MgYHNpbXVsYXRlVmFsaWRhdGlvbmAgZHVyaW5nIGFjY291bnQgY3JlYXRpb24gb3IgdmFsaWRhdGlvbi5cIiwge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvblJlamVjdGVkQnlFbnRyeVBvaW50RXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVXNlck9wZXJhdGlvblJlamVjdGVkQnlFbnRyeVBvaW50RXJyb3IsIFwiY29kZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC0zMjUwMFxufSk7XG5leHBvcnQgY2xhc3MgVXNlck9wZXJhdGlvblJlamVjdGVkQnlQYXltYXN0ZXJFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSB9KSB7XG4gICAgICAgIHN1cGVyKFwiVXNlciBPcGVyYXRpb24gcmVqZWN0ZWQgYnkgUGF5bWFzdGVyJ3MgYHZhbGlkYXRlUGF5bWFzdGVyVXNlck9wYC5cIiwge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvblJlamVjdGVkQnlQYXltYXN0ZXJFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShVc2VyT3BlcmF0aW9uUmVqZWN0ZWRCeVBheW1hc3RlckVycm9yLCBcImNvZGVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAtMzI1MDFcbn0pO1xuZXhwb3J0IGNsYXNzIFVzZXJPcGVyYXRpb25SZWplY3RlZEJ5T3BDb2RlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UgfSkge1xuICAgICAgICBzdXBlcignVXNlciBPcGVyYXRpb24gcmVqZWN0ZWQgd2l0aCBvcCBjb2RlIHZhbGlkYXRpb24gZXJyb3IuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvblJlamVjdGVkQnlPcENvZGVFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShVc2VyT3BlcmF0aW9uUmVqZWN0ZWRCeU9wQ29kZUVycm9yLCBcImNvZGVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAtMzI1MDJcbn0pO1xuZXhwb3J0IGNsYXNzIFVzZXJPcGVyYXRpb25PdXRPZlRpbWVSYW5nZUVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGNhdXNlIH0pIHtcbiAgICAgICAgc3VwZXIoJ1VzZXJPcGVyYXRpb24gb3V0IG9mIHRpbWUtcmFuZ2U6IGVpdGhlciB3YWxsZXQgb3IgcGF5bWFzdGVyIHJldHVybmVkIGEgdGltZS1yYW5nZSwgYW5kIGl0IGlzIGFscmVhZHkgZXhwaXJlZCAob3Igd2lsbCBleHBpcmUgc29vbikuJywge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvbk91dE9mVGltZVJhbmdlRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVXNlck9wZXJhdGlvbk91dE9mVGltZVJhbmdlRXJyb3IsIFwiY29kZVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgd3JpdGFibGU6IHRydWUsXG4gICAgdmFsdWU6IC0zMjUwM1xufSk7XG5leHBvcnQgY2xhc3MgVW5rbm93bkJ1bmRsZXJFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSB9KSB7XG4gICAgICAgIHN1cGVyKGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBleGVjdXRpbmcgdXNlciBvcGVyYXRpb246ICR7Y2F1c2U/LnNob3J0TWVzc2FnZX1gLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG5hbWU6ICdVbmtub3duQnVuZGxlckVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIFZlcmlmaWNhdGlvbkdhc0xpbWl0RXhjZWVkZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjYXVzZSwgfSkge1xuICAgICAgICBzdXBlcignVXNlciBPcGVyYXRpb24gdmVyaWZpY2F0aW9uIGdhcyBsaW1pdCBleGNlZWRlZC4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGlzIGNvdWxkIGFyaXNlIHdoZW46JyxcbiAgICAgICAgICAgICAgICAnLSB0aGUgZ2FzIHVzZWQgZm9yIHZlcmlmaWNhdGlvbiBleGNlZWRlZCB0aGUgYHZlcmlmaWNhdGlvbkdhc0xpbWl0YCcsXG4gICAgICAgICAgICBdLmZpbHRlcihCb29sZWFuKSxcbiAgICAgICAgICAgIG5hbWU6ICdWZXJpZmljYXRpb25HYXNMaW1pdEV4Y2VlZGVkRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVmVyaWZpY2F0aW9uR2FzTGltaXRFeGNlZWRlZEVycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWE0MC9cbn0pO1xuZXhwb3J0IGNsYXNzIFZlcmlmaWNhdGlvbkdhc0xpbWl0VG9vTG93RXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2F1c2UsIH0pIHtcbiAgICAgICAgc3VwZXIoJ1VzZXIgT3BlcmF0aW9uIHZlcmlmaWNhdGlvbiBnYXMgbGltaXQgaXMgdG9vIGxvdy4nLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGlzIGNvdWxkIGFyaXNlIHdoZW46JyxcbiAgICAgICAgICAgICAgICAnLSB0aGUgYHZlcmlmaWNhdGlvbkdhc0xpbWl0YCBpcyB0b28gbG93IHRvIHZlcmlmeSB0aGUgVXNlciBPcGVyYXRpb24nLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnVmVyaWZpY2F0aW9uR2FzTGltaXRUb29Mb3dFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShWZXJpZmljYXRpb25HYXNMaW1pdFRvb0xvd0Vycm9yLCBcIm1lc3NhZ2VcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAvYWE0MS9cbn0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YnVuZGxlci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/bundler.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/userOperation.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/errors/userOperation.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ UserOperationExecutionError: () => (/* binding */ UserOperationExecutionError),\n/* harmony export */ UserOperationNotFoundError: () => (/* binding */ UserOperationNotFoundError),\n/* harmony export */ UserOperationReceiptNotFoundError: () => (/* binding */ UserOperationReceiptNotFoundError),\n/* harmony export */ WaitForUserOperationReceiptTimeoutError: () => (/* binding */ WaitForUserOperationReceiptTimeoutError)\n/* harmony export */ });\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_transaction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/index.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/unit/formatGwei.js\");\n\n\n\nclass UserOperationExecutionError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(cause, { callData, callGasLimit, docsPath, factory, factoryData, initCode, maxFeePerGas, maxPriorityFeePerGas, nonce, paymaster, paymasterAndData, paymasterData, paymasterPostOpGasLimit, paymasterVerificationGasLimit, preVerificationGas, sender, signature, verificationGasLimit, }) {\n const prettyArgs = (0,_errors_transaction_js__WEBPACK_IMPORTED_MODULE_1__.prettyPrint)({\n callData,\n callGasLimit,\n factory,\n factoryData,\n initCode,\n maxFeePerGas: typeof maxFeePerGas !== 'undefined' &&\n `${(0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.formatGwei)(maxFeePerGas)} gwei`,\n maxPriorityFeePerGas: typeof maxPriorityFeePerGas !== 'undefined' &&\n `${(0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.formatGwei)(maxPriorityFeePerGas)} gwei`,\n nonce,\n paymaster,\n paymasterAndData,\n paymasterData,\n paymasterPostOpGasLimit,\n paymasterVerificationGasLimit,\n preVerificationGas,\n sender,\n signature,\n verificationGasLimit,\n });\n super(cause.shortMessage, {\n cause,\n docsPath,\n metaMessages: [\n ...(cause.metaMessages ? [...cause.metaMessages, ' '] : []),\n 'Request Arguments:',\n prettyArgs,\n ].filter(Boolean),\n name: 'UserOperationExecutionError',\n });\n Object.defineProperty(this, \"cause\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.cause = cause;\n }\n}\nclass UserOperationReceiptNotFoundError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ hash }) {\n super(`User Operation receipt with hash \"${hash}\" could not be found. The User Operation may not have been processed yet.`, { name: 'UserOperationReceiptNotFoundError' });\n }\n}\nclass UserOperationNotFoundError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ hash }) {\n super(`User Operation with hash \"${hash}\" could not be found.`, {\n name: 'UserOperationNotFoundError',\n });\n }\n}\nclass WaitForUserOperationReceiptTimeoutError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ hash }) {\n super(`Timed out while waiting for User Operation with hash \"${hash}\" to be confirmed.`, { name: 'WaitForUserOperationReceiptTimeoutError' });\n }\n}\n//# sourceMappingURL=userOperation.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi9lcnJvcnMvdXNlck9wZXJhdGlvbi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQWlEO0FBQ1M7QUFDUjtBQUMzQywwQ0FBMEMsc0RBQVM7QUFDMUQseUJBQXlCLCtRQUErUTtBQUN4UywyQkFBMkIsbUVBQVc7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLDJEQUFVLGdCQUFnQjtBQUM3QztBQUNBLG1CQUFtQiwyREFBVSx3QkFBd0I7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sZ0RBQWdELHNEQUFTO0FBQ2hFLGtCQUFrQixNQUFNO0FBQ3hCLG1EQUFtRCxLQUFLLDhFQUE4RSwyQ0FBMkM7QUFDakw7QUFDQTtBQUNPLHlDQUF5QyxzREFBUztBQUN6RCxrQkFBa0IsTUFBTTtBQUN4QiwyQ0FBMkMsS0FBSztBQUNoRDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ08sc0RBQXNELHNEQUFTO0FBQ3RFLGtCQUFrQixNQUFNO0FBQ3hCLHVFQUF1RSxLQUFLLHVCQUF1QixpREFBaUQ7QUFDcEo7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL2Vycm9ycy91c2VyT3BlcmF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9iYXNlLmpzJztcbmltcG9ydCB7IHByZXR0eVByaW50IH0gZnJvbSAnLi4vLi4vZXJyb3JzL3RyYW5zYWN0aW9uLmpzJztcbmltcG9ydCB7IGZvcm1hdEd3ZWkgfSBmcm9tICcuLi8uLi91dGlscy9pbmRleC5qcyc7XG5leHBvcnQgY2xhc3MgVXNlck9wZXJhdGlvbkV4ZWN1dGlvbkVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihjYXVzZSwgeyBjYWxsRGF0YSwgY2FsbEdhc0xpbWl0LCBkb2NzUGF0aCwgZmFjdG9yeSwgZmFjdG9yeURhdGEsIGluaXRDb2RlLCBtYXhGZWVQZXJHYXMsIG1heFByaW9yaXR5RmVlUGVyR2FzLCBub25jZSwgcGF5bWFzdGVyLCBwYXltYXN0ZXJBbmREYXRhLCBwYXltYXN0ZXJEYXRhLCBwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCwgcGF5bWFzdGVyVmVyaWZpY2F0aW9uR2FzTGltaXQsIHByZVZlcmlmaWNhdGlvbkdhcywgc2VuZGVyLCBzaWduYXR1cmUsIHZlcmlmaWNhdGlvbkdhc0xpbWl0LCB9KSB7XG4gICAgICAgIGNvbnN0IHByZXR0eUFyZ3MgPSBwcmV0dHlQcmludCh7XG4gICAgICAgICAgICBjYWxsRGF0YSxcbiAgICAgICAgICAgIGNhbGxHYXNMaW1pdCxcbiAgICAgICAgICAgIGZhY3RvcnksXG4gICAgICAgICAgICBmYWN0b3J5RGF0YSxcbiAgICAgICAgICAgIGluaXRDb2RlLFxuICAgICAgICAgICAgbWF4RmVlUGVyR2FzOiB0eXBlb2YgbWF4RmVlUGVyR2FzICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgICAgIGAke2Zvcm1hdEd3ZWkobWF4RmVlUGVyR2FzKX0gZ3dlaWAsXG4gICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhczogdHlwZW9mIG1heFByaW9yaXR5RmVlUGVyR2FzICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgICAgIGAke2Zvcm1hdEd3ZWkobWF4UHJpb3JpdHlGZWVQZXJHYXMpfSBnd2VpYCxcbiAgICAgICAgICAgIG5vbmNlLFxuICAgICAgICAgICAgcGF5bWFzdGVyLFxuICAgICAgICAgICAgcGF5bWFzdGVyQW5kRGF0YSxcbiAgICAgICAgICAgIHBheW1hc3RlckRhdGEsXG4gICAgICAgICAgICBwYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCxcbiAgICAgICAgICAgIHBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0LFxuICAgICAgICAgICAgcHJlVmVyaWZpY2F0aW9uR2FzLFxuICAgICAgICAgICAgc2VuZGVyLFxuICAgICAgICAgICAgc2lnbmF0dXJlLFxuICAgICAgICAgICAgdmVyaWZpY2F0aW9uR2FzTGltaXQsXG4gICAgICAgIH0pO1xuICAgICAgICBzdXBlcihjYXVzZS5zaG9ydE1lc3NhZ2UsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAuLi4oY2F1c2UubWV0YU1lc3NhZ2VzID8gWy4uLmNhdXNlLm1ldGFNZXNzYWdlcywgJyAnXSA6IFtdKSxcbiAgICAgICAgICAgICAgICAnUmVxdWVzdCBBcmd1bWVudHM6JyxcbiAgICAgICAgICAgICAgICBwcmV0dHlBcmdzLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnVXNlck9wZXJhdGlvbkV4ZWN1dGlvbkVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImNhdXNlXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY2F1c2UgPSBjYXVzZTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgVXNlck9wZXJhdGlvblJlY2VpcHROb3RGb3VuZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGhhc2ggfSkge1xuICAgICAgICBzdXBlcihgVXNlciBPcGVyYXRpb24gcmVjZWlwdCB3aXRoIGhhc2ggXCIke2hhc2h9XCIgY291bGQgbm90IGJlIGZvdW5kLiBUaGUgVXNlciBPcGVyYXRpb24gbWF5IG5vdCBoYXZlIGJlZW4gcHJvY2Vzc2VkIHlldC5gLCB7IG5hbWU6ICdVc2VyT3BlcmF0aW9uUmVjZWlwdE5vdEZvdW5kRXJyb3InIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBVc2VyT3BlcmF0aW9uTm90Rm91bmRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBoYXNoIH0pIHtcbiAgICAgICAgc3VwZXIoYFVzZXIgT3BlcmF0aW9uIHdpdGggaGFzaCBcIiR7aGFzaH1cIiBjb3VsZCBub3QgYmUgZm91bmQuYCwge1xuICAgICAgICAgICAgbmFtZTogJ1VzZXJPcGVyYXRpb25Ob3RGb3VuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIFdhaXRGb3JVc2VyT3BlcmF0aW9uUmVjZWlwdFRpbWVvdXRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBoYXNoIH0pIHtcbiAgICAgICAgc3VwZXIoYFRpbWVkIG91dCB3aGlsZSB3YWl0aW5nIGZvciBVc2VyIE9wZXJhdGlvbiB3aXRoIGhhc2ggXCIke2hhc2h9XCIgdG8gYmUgY29uZmlybWVkLmAsIHsgbmFtZTogJ1dhaXRGb3JVc2VyT3BlcmF0aW9uUmVjZWlwdFRpbWVvdXRFcnJvcicgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXNlck9wZXJhdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/userOperation.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/errors/getBundlerError.js": /*!************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/errors/getBundlerError.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getBundlerError: () => (/* binding */ getBundlerError)\n/* harmony export */ });\n/* harmony import */ var _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/bundler.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/bundler.js\");\n\nconst bundlerErrors = [\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.ExecutionRevertedError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidFieldsError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterDepositTooLowError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterRateLimitError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterStakeTooLowError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.SignatureCheckFailedError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UnsupportedSignatureAggregatorError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationOutOfTimeRangeError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByEntryPointError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByPaymasterError,\n _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByOpCodeError,\n];\nfunction getBundlerError(err, args) {\n const message = (err.details || '').toLowerCase();\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.AccountNotDeployedError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.AccountNotDeployedError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.FailedToSendToBeneficiaryError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.FailedToSendToBeneficiaryError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.GasValuesOverflowError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.GasValuesOverflowError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.HandleOpsOutOfGasError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.HandleOpsOutOfGasError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InitCodeFailedError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InitCodeFailedError({\n cause: err,\n factory: args.factory,\n factoryData: args.factoryData,\n initCode: args.initCode,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InitCodeMustCreateSenderError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InitCodeMustCreateSenderError({\n cause: err,\n factory: args.factory,\n factoryData: args.factoryData,\n initCode: args.initCode,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InitCodeMustReturnSenderError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InitCodeMustReturnSenderError({\n cause: err,\n factory: args.factory,\n factoryData: args.factoryData,\n initCode: args.initCode,\n sender: args.sender,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InsufficientPrefundError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InsufficientPrefundError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InternalCallOnlyError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InternalCallOnlyError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidAccountNonceError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidAccountNonceError({\n cause: err,\n nonce: args.nonce,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidAggregatorError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidAggregatorError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidBeneficiaryError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidBeneficiaryError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidPaymasterAndDataError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidPaymasterAndDataError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterDepositTooLowError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterDepositTooLowError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterFunctionRevertedError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterFunctionRevertedError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterNotDeployedError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterNotDeployedError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterPostOpFunctionRevertedError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterPostOpFunctionRevertedError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.SmartAccountFunctionRevertedError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.SmartAccountFunctionRevertedError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.SenderAlreadyConstructedError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.SenderAlreadyConstructedError({\n cause: err,\n factory: args.factory,\n factoryData: args.factoryData,\n initCode: args.initCode,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationExpiredError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationExpiredError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationPaymasterExpiredError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationPaymasterExpiredError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationPaymasterSignatureError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationPaymasterSignatureError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationSignatureError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationSignatureError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.VerificationGasLimitExceededError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.VerificationGasLimitExceededError({\n cause: err,\n });\n if (_errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.VerificationGasLimitTooLowError.message.test(message))\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.VerificationGasLimitTooLowError({\n cause: err,\n });\n const error = err.walk((e) => bundlerErrors.some((error) => error.code === e.code));\n if (error) {\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.ExecutionRevertedError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.ExecutionRevertedError({\n cause: err,\n data: error.data,\n message: error.details,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidFieldsError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.InvalidFieldsError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterDepositTooLowError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterDepositTooLowError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterRateLimitError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterRateLimitError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterStakeTooLowError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.PaymasterStakeTooLowError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.SignatureCheckFailedError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.SignatureCheckFailedError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UnsupportedSignatureAggregatorError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UnsupportedSignatureAggregatorError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationOutOfTimeRangeError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationOutOfTimeRangeError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByEntryPointError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByEntryPointError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByPaymasterError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByPaymasterError({\n cause: err,\n });\n if (error.code === _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByOpCodeError.code)\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UserOperationRejectedByOpCodeError({\n cause: err,\n });\n }\n return new _errors_bundler_js__WEBPACK_IMPORTED_MODULE_0__.UnknownBundlerError({\n cause: err,\n });\n}\n//# sourceMappingURL=getBundlerError.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy9lcnJvcnMvZ2V0QnVuZGxlckVycm9yLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQWdsQztBQUNobEM7QUFDQSxJQUFJLHNFQUFzQjtBQUMxQixJQUFJLGtFQUFrQjtBQUN0QixJQUFJLDJFQUEyQjtBQUMvQixJQUFJLHVFQUF1QjtBQUMzQixJQUFJLHlFQUF5QjtBQUM3QixJQUFJLHlFQUF5QjtBQUM3QixJQUFJLG1GQUFtQztBQUN2QyxJQUFJLGdGQUFnQztBQUNwQyxJQUFJLHNGQUFzQztBQUMxQyxJQUFJLHFGQUFxQztBQUN6QyxJQUFJLGtGQUFrQztBQUN0QztBQUNPO0FBQ1A7QUFDQSxRQUFRLHVFQUF1QjtBQUMvQixtQkFBbUIsdUVBQXVCO0FBQzFDO0FBQ0EsU0FBUztBQUNULFFBQVEsOEVBQThCO0FBQ3RDLG1CQUFtQiw4RUFBOEI7QUFDakQ7QUFDQSxTQUFTO0FBQ1QsUUFBUSxzRUFBc0I7QUFDOUIsbUJBQW1CLHNFQUFzQjtBQUN6QztBQUNBLFNBQVM7QUFDVCxRQUFRLHNFQUFzQjtBQUM5QixtQkFBbUIsc0VBQXNCO0FBQ3pDO0FBQ0EsU0FBUztBQUNULFFBQVEsbUVBQW1CO0FBQzNCLG1CQUFtQixtRUFBbUI7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsUUFBUSw2RUFBNkI7QUFDckMsbUJBQW1CLDZFQUE2QjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRLDZFQUE2QjtBQUNyQyxtQkFBbUIsNkVBQTZCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsUUFBUSx3RUFBd0I7QUFDaEMsbUJBQW1CLHdFQUF3QjtBQUMzQztBQUNBLFNBQVM7QUFDVCxRQUFRLHFFQUFxQjtBQUM3QixtQkFBbUIscUVBQXFCO0FBQ3hDO0FBQ0EsU0FBUztBQUNULFFBQVEsd0VBQXdCO0FBQ2hDLG1CQUFtQix3RUFBd0I7QUFDM0M7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRLHNFQUFzQjtBQUM5QixtQkFBbUIsc0VBQXNCO0FBQ3pDO0FBQ0EsU0FBUztBQUNULFFBQVEsdUVBQXVCO0FBQy9CLG1CQUFtQix1RUFBdUI7QUFDMUM7QUFDQSxTQUFTO0FBQ1QsUUFBUSw0RUFBNEI7QUFDcEMsbUJBQW1CLDRFQUE0QjtBQUMvQztBQUNBLFNBQVM7QUFDVCxRQUFRLDJFQUEyQjtBQUNuQyxtQkFBbUIsMkVBQTJCO0FBQzlDO0FBQ0EsU0FBUztBQUNULFFBQVEsOEVBQThCO0FBQ3RDLG1CQUFtQiw4RUFBOEI7QUFDakQ7QUFDQSxTQUFTO0FBQ1QsUUFBUSx5RUFBeUI7QUFDakMsbUJBQW1CLHlFQUF5QjtBQUM1QztBQUNBLFNBQVM7QUFDVCxRQUFRLG9GQUFvQztBQUM1QyxtQkFBbUIsb0ZBQW9DO0FBQ3ZEO0FBQ0EsU0FBUztBQUNULFFBQVEsaUZBQWlDO0FBQ3pDLG1CQUFtQixpRkFBaUM7QUFDcEQ7QUFDQSxTQUFTO0FBQ1QsUUFBUSw2RUFBNkI7QUFDckMsbUJBQW1CLDZFQUE2QjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRLHlFQUF5QjtBQUNqQyxtQkFBbUIseUVBQXlCO0FBQzVDO0FBQ0EsU0FBUztBQUNULFFBQVEsa0ZBQWtDO0FBQzFDLG1CQUFtQixrRkFBa0M7QUFDckQ7QUFDQSxTQUFTO0FBQ1QsUUFBUSxvRkFBb0M7QUFDNUMsbUJBQW1CLG9GQUFvQztBQUN2RDtBQUNBLFNBQVM7QUFDVCxRQUFRLDJFQUEyQjtBQUNuQyxtQkFBbUIsMkVBQTJCO0FBQzlDO0FBQ0EsU0FBUztBQUNULFFBQVEsaUZBQWlDO0FBQ3pDLG1CQUFtQixpRkFBaUM7QUFDcEQ7QUFDQSxTQUFTO0FBQ1QsUUFBUSwrRUFBK0I7QUFDdkMsbUJBQW1CLCtFQUErQjtBQUNsRDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsMkJBQTJCLHNFQUFzQjtBQUNqRCx1QkFBdUIsc0VBQXNCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYiwyQkFBMkIsa0VBQWtCO0FBQzdDLHVCQUF1QixrRUFBa0I7QUFDekM7QUFDQSxhQUFhO0FBQ2IsMkJBQTJCLDJFQUEyQjtBQUN0RCx1QkFBdUIsMkVBQTJCO0FBQ2xEO0FBQ0EsYUFBYTtBQUNiLDJCQUEyQix1RUFBdUI7QUFDbEQsdUJBQXVCLHVFQUF1QjtBQUM5QztBQUNBLGFBQWE7QUFDYiwyQkFBMkIseUVBQXlCO0FBQ3BELHVCQUF1Qix5RUFBeUI7QUFDaEQ7QUFDQSxhQUFhO0FBQ2IsMkJBQTJCLHlFQUF5QjtBQUNwRCx1QkFBdUIseUVBQXlCO0FBQ2hEO0FBQ0EsYUFBYTtBQUNiLDJCQUEyQixtRkFBbUM7QUFDOUQsdUJBQXVCLG1GQUFtQztBQUMxRDtBQUNBLGFBQWE7QUFDYiwyQkFBMkIsZ0ZBQWdDO0FBQzNELHVCQUF1QixnRkFBZ0M7QUFDdkQ7QUFDQSxhQUFhO0FBQ2IsMkJBQTJCLHNGQUFzQztBQUNqRSx1QkFBdUIsc0ZBQXNDO0FBQzdEO0FBQ0EsYUFBYTtBQUNiLDJCQUEyQixxRkFBcUM7QUFDaEUsdUJBQXVCLHFGQUFxQztBQUM1RDtBQUNBLGFBQWE7QUFDYiwyQkFBMkIsa0ZBQWtDO0FBQzdELHVCQUF1QixrRkFBa0M7QUFDekQ7QUFDQSxhQUFhO0FBQ2I7QUFDQSxlQUFlLG1FQUFtQjtBQUNsQztBQUNBLEtBQUs7QUFDTDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL3V0aWxzL2Vycm9ycy9nZXRCdW5kbGVyRXJyb3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjb3VudE5vdERlcGxveWVkRXJyb3IsIEV4ZWN1dGlvblJldmVydGVkRXJyb3IsIEZhaWxlZFRvU2VuZFRvQmVuZWZpY2lhcnlFcnJvciwgR2FzVmFsdWVzT3ZlcmZsb3dFcnJvciwgSGFuZGxlT3BzT3V0T2ZHYXNFcnJvciwgSW5pdENvZGVGYWlsZWRFcnJvciwgSW5pdENvZGVNdXN0Q3JlYXRlU2VuZGVyRXJyb3IsIEluaXRDb2RlTXVzdFJldHVyblNlbmRlckVycm9yLCBJbnN1ZmZpY2llbnRQcmVmdW5kRXJyb3IsIEludGVybmFsQ2FsbE9ubHlFcnJvciwgSW52YWxpZEFjY291bnROb25jZUVycm9yLCBJbnZhbGlkQWdncmVnYXRvckVycm9yLCBJbnZhbGlkQmVuZWZpY2lhcnlFcnJvciwgSW52YWxpZEZpZWxkc0Vycm9yLCBJbnZhbGlkUGF5bWFzdGVyQW5kRGF0YUVycm9yLCBQYXltYXN0ZXJEZXBvc2l0VG9vTG93RXJyb3IsIFBheW1hc3RlckZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvciwgUGF5bWFzdGVyTm90RGVwbG95ZWRFcnJvciwgUGF5bWFzdGVyUG9zdE9wRnVuY3Rpb25SZXZlcnRlZEVycm9yLCBQYXltYXN0ZXJSYXRlTGltaXRFcnJvciwgUGF5bWFzdGVyU3Rha2VUb29Mb3dFcnJvciwgU2VuZGVyQWxyZWFkeUNvbnN0cnVjdGVkRXJyb3IsIFNpZ25hdHVyZUNoZWNrRmFpbGVkRXJyb3IsIFNtYXJ0QWNjb3VudEZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvciwgVW5rbm93bkJ1bmRsZXJFcnJvciwgVW5zdXBwb3J0ZWRTaWduYXR1cmVBZ2dyZWdhdG9yRXJyb3IsIFVzZXJPcGVyYXRpb25FeHBpcmVkRXJyb3IsIFVzZXJPcGVyYXRpb25PdXRPZlRpbWVSYW5nZUVycm9yLCBVc2VyT3BlcmF0aW9uUGF5bWFzdGVyRXhwaXJlZEVycm9yLCBVc2VyT3BlcmF0aW9uUGF5bWFzdGVyU2lnbmF0dXJlRXJyb3IsIFVzZXJPcGVyYXRpb25SZWplY3RlZEJ5RW50cnlQb2ludEVycm9yLCBVc2VyT3BlcmF0aW9uUmVqZWN0ZWRCeU9wQ29kZUVycm9yLCBVc2VyT3BlcmF0aW9uUmVqZWN0ZWRCeVBheW1hc3RlckVycm9yLCBVc2VyT3BlcmF0aW9uU2lnbmF0dXJlRXJyb3IsIFZlcmlmaWNhdGlvbkdhc0xpbWl0RXhjZWVkZWRFcnJvciwgVmVyaWZpY2F0aW9uR2FzTGltaXRUb29Mb3dFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYnVuZGxlci5qcyc7XG5jb25zdCBidW5kbGVyRXJyb3JzID0gW1xuICAgIEV4ZWN1dGlvblJldmVydGVkRXJyb3IsXG4gICAgSW52YWxpZEZpZWxkc0Vycm9yLFxuICAgIFBheW1hc3RlckRlcG9zaXRUb29Mb3dFcnJvcixcbiAgICBQYXltYXN0ZXJSYXRlTGltaXRFcnJvcixcbiAgICBQYXltYXN0ZXJTdGFrZVRvb0xvd0Vycm9yLFxuICAgIFNpZ25hdHVyZUNoZWNrRmFpbGVkRXJyb3IsXG4gICAgVW5zdXBwb3J0ZWRTaWduYXR1cmVBZ2dyZWdhdG9yRXJyb3IsXG4gICAgVXNlck9wZXJhdGlvbk91dE9mVGltZVJhbmdlRXJyb3IsXG4gICAgVXNlck9wZXJhdGlvblJlamVjdGVkQnlFbnRyeVBvaW50RXJyb3IsXG4gICAgVXNlck9wZXJhdGlvblJlamVjdGVkQnlQYXltYXN0ZXJFcnJvcixcbiAgICBVc2VyT3BlcmF0aW9uUmVqZWN0ZWRCeU9wQ29kZUVycm9yLFxuXTtcbmV4cG9ydCBmdW5jdGlvbiBnZXRCdW5kbGVyRXJyb3IoZXJyLCBhcmdzKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IChlcnIuZGV0YWlscyB8fCAnJykudG9Mb3dlckNhc2UoKTtcbiAgICBpZiAoQWNjb3VudE5vdERlcGxveWVkRXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IEFjY291bnROb3REZXBsb3llZEVycm9yKHtcbiAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgIH0pO1xuICAgIGlmIChGYWlsZWRUb1NlbmRUb0JlbmVmaWNpYXJ5RXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IEZhaWxlZFRvU2VuZFRvQmVuZWZpY2lhcnlFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoR2FzVmFsdWVzT3ZlcmZsb3dFcnJvci5tZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgR2FzVmFsdWVzT3ZlcmZsb3dFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoSGFuZGxlT3BzT3V0T2ZHYXNFcnJvci5tZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgSGFuZGxlT3BzT3V0T2ZHYXNFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoSW5pdENvZGVGYWlsZWRFcnJvci5tZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgSW5pdENvZGVGYWlsZWRFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgZmFjdG9yeTogYXJncy5mYWN0b3J5LFxuICAgICAgICAgICAgZmFjdG9yeURhdGE6IGFyZ3MuZmFjdG9yeURhdGEsXG4gICAgICAgICAgICBpbml0Q29kZTogYXJncy5pbml0Q29kZSxcbiAgICAgICAgfSk7XG4gICAgaWYgKEluaXRDb2RlTXVzdENyZWF0ZVNlbmRlckVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBJbml0Q29kZU11c3RDcmVhdGVTZW5kZXJFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgZmFjdG9yeTogYXJncy5mYWN0b3J5LFxuICAgICAgICAgICAgZmFjdG9yeURhdGE6IGFyZ3MuZmFjdG9yeURhdGEsXG4gICAgICAgICAgICBpbml0Q29kZTogYXJncy5pbml0Q29kZSxcbiAgICAgICAgfSk7XG4gICAgaWYgKEluaXRDb2RlTXVzdFJldHVyblNlbmRlckVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBJbml0Q29kZU11c3RSZXR1cm5TZW5kZXJFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgZmFjdG9yeTogYXJncy5mYWN0b3J5LFxuICAgICAgICAgICAgZmFjdG9yeURhdGE6IGFyZ3MuZmFjdG9yeURhdGEsXG4gICAgICAgICAgICBpbml0Q29kZTogYXJncy5pbml0Q29kZSxcbiAgICAgICAgICAgIHNlbmRlcjogYXJncy5zZW5kZXIsXG4gICAgICAgIH0pO1xuICAgIGlmIChJbnN1ZmZpY2llbnRQcmVmdW5kRXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IEluc3VmZmljaWVudFByZWZ1bmRFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoSW50ZXJuYWxDYWxsT25seUVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBJbnRlcm5hbENhbGxPbmx5RXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgaWYgKEludmFsaWRBY2NvdW50Tm9uY2VFcnJvci5tZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgSW52YWxpZEFjY291bnROb25jZUVycm9yKHtcbiAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgICAgICBub25jZTogYXJncy5ub25jZSxcbiAgICAgICAgfSk7XG4gICAgaWYgKEludmFsaWRBZ2dyZWdhdG9yRXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IEludmFsaWRBZ2dyZWdhdG9yRXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgaWYgKEludmFsaWRCZW5lZmljaWFyeUVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBJbnZhbGlkQmVuZWZpY2lhcnlFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoSW52YWxpZFBheW1hc3RlckFuZERhdGFFcnJvci5tZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgSW52YWxpZFBheW1hc3RlckFuZERhdGFFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoUGF5bWFzdGVyRGVwb3NpdFRvb0xvd0Vycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBQYXltYXN0ZXJEZXBvc2l0VG9vTG93RXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgaWYgKFBheW1hc3RlckZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvci5tZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgUGF5bWFzdGVyRnVuY3Rpb25SZXZlcnRlZEVycm9yKHtcbiAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgIH0pO1xuICAgIGlmIChQYXltYXN0ZXJOb3REZXBsb3llZEVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBQYXltYXN0ZXJOb3REZXBsb3llZEVycm9yKHtcbiAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgIH0pO1xuICAgIGlmIChQYXltYXN0ZXJQb3N0T3BGdW5jdGlvblJldmVydGVkRXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IFBheW1hc3RlclBvc3RPcEZ1bmN0aW9uUmV2ZXJ0ZWRFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoU21hcnRBY2NvdW50RnVuY3Rpb25SZXZlcnRlZEVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBTbWFydEFjY291bnRGdW5jdGlvblJldmVydGVkRXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgaWYgKFNlbmRlckFscmVhZHlDb25zdHJ1Y3RlZEVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBTZW5kZXJBbHJlYWR5Q29uc3RydWN0ZWRFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgZmFjdG9yeTogYXJncy5mYWN0b3J5LFxuICAgICAgICAgICAgZmFjdG9yeURhdGE6IGFyZ3MuZmFjdG9yeURhdGEsXG4gICAgICAgICAgICBpbml0Q29kZTogYXJncy5pbml0Q29kZSxcbiAgICAgICAgfSk7XG4gICAgaWYgKFVzZXJPcGVyYXRpb25FeHBpcmVkRXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IFVzZXJPcGVyYXRpb25FeHBpcmVkRXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgaWYgKFVzZXJPcGVyYXRpb25QYXltYXN0ZXJFeHBpcmVkRXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IFVzZXJPcGVyYXRpb25QYXltYXN0ZXJFeHBpcmVkRXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgaWYgKFVzZXJPcGVyYXRpb25QYXltYXN0ZXJTaWduYXR1cmVFcnJvci5tZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgVXNlck9wZXJhdGlvblBheW1hc3RlclNpZ25hdHVyZUVycm9yKHtcbiAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgIH0pO1xuICAgIGlmIChVc2VyT3BlcmF0aW9uU2lnbmF0dXJlRXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IFVzZXJPcGVyYXRpb25TaWduYXR1cmVFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICB9KTtcbiAgICBpZiAoVmVyaWZpY2F0aW9uR2FzTGltaXRFeGNlZWRlZEVycm9yLm1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBWZXJpZmljYXRpb25HYXNMaW1pdEV4Y2VlZGVkRXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgaWYgKFZlcmlmaWNhdGlvbkdhc0xpbWl0VG9vTG93RXJyb3IubWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IFZlcmlmaWNhdGlvbkdhc0xpbWl0VG9vTG93RXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgfSk7XG4gICAgY29uc3QgZXJyb3IgPSBlcnIud2FsaygoZSkgPT4gYnVuZGxlckVycm9ycy5zb21lKChlcnJvcikgPT4gZXJyb3IuY29kZSA9PT0gZS5jb2RlKSk7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICAgIGlmIChlcnJvci5jb2RlID09PSBFeGVjdXRpb25SZXZlcnRlZEVycm9yLmNvZGUpXG4gICAgICAgICAgICByZXR1cm4gbmV3IEV4ZWN1dGlvblJldmVydGVkRXJyb3Ioe1xuICAgICAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgICAgICAgICAgZGF0YTogZXJyb3IuZGF0YSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBlcnJvci5kZXRhaWxzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIGlmIChlcnJvci5jb2RlID09PSBJbnZhbGlkRmllbGRzRXJyb3IuY29kZSlcbiAgICAgICAgICAgIHJldHVybiBuZXcgSW52YWxpZEZpZWxkc0Vycm9yKHtcbiAgICAgICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIGlmIChlcnJvci5jb2RlID09PSBQYXltYXN0ZXJEZXBvc2l0VG9vTG93RXJyb3IuY29kZSlcbiAgICAgICAgICAgIHJldHVybiBuZXcgUGF5bWFzdGVyRGVwb3NpdFRvb0xvd0Vycm9yKHtcbiAgICAgICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIGlmIChlcnJvci5jb2RlID09PSBQYXltYXN0ZXJSYXRlTGltaXRFcnJvci5jb2RlKVxuICAgICAgICAgICAgcmV0dXJuIG5ldyBQYXltYXN0ZXJSYXRlTGltaXRFcnJvcih7XG4gICAgICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICBpZiAoZXJyb3IuY29kZSA9PT0gUGF5bWFzdGVyU3Rha2VUb29Mb3dFcnJvci5jb2RlKVxuICAgICAgICAgICAgcmV0dXJuIG5ldyBQYXltYXN0ZXJTdGFrZVRvb0xvd0Vycm9yKHtcbiAgICAgICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIGlmIChlcnJvci5jb2RlID09PSBTaWduYXR1cmVDaGVja0ZhaWxlZEVycm9yLmNvZGUpXG4gICAgICAgICAgICByZXR1cm4gbmV3IFNpZ25hdHVyZUNoZWNrRmFpbGVkRXJyb3Ioe1xuICAgICAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgaWYgKGVycm9yLmNvZGUgPT09IFVuc3VwcG9ydGVkU2lnbmF0dXJlQWdncmVnYXRvckVycm9yLmNvZGUpXG4gICAgICAgICAgICByZXR1cm4gbmV3IFVuc3VwcG9ydGVkU2lnbmF0dXJlQWdncmVnYXRvckVycm9yKHtcbiAgICAgICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIGlmIChlcnJvci5jb2RlID09PSBVc2VyT3BlcmF0aW9uT3V0T2ZUaW1lUmFuZ2VFcnJvci5jb2RlKVxuICAgICAgICAgICAgcmV0dXJuIG5ldyBVc2VyT3BlcmF0aW9uT3V0T2ZUaW1lUmFuZ2VFcnJvcih7XG4gICAgICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICBpZiAoZXJyb3IuY29kZSA9PT0gVXNlck9wZXJhdGlvblJlamVjdGVkQnlFbnRyeVBvaW50RXJyb3IuY29kZSlcbiAgICAgICAgICAgIHJldHVybiBuZXcgVXNlck9wZXJhdGlvblJlamVjdGVkQnlFbnRyeVBvaW50RXJyb3Ioe1xuICAgICAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgaWYgKGVycm9yLmNvZGUgPT09IFVzZXJPcGVyYXRpb25SZWplY3RlZEJ5UGF5bWFzdGVyRXJyb3IuY29kZSlcbiAgICAgICAgICAgIHJldHVybiBuZXcgVXNlck9wZXJhdGlvblJlamVjdGVkQnlQYXltYXN0ZXJFcnJvcih7XG4gICAgICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICBpZiAoZXJyb3IuY29kZSA9PT0gVXNlck9wZXJhdGlvblJlamVjdGVkQnlPcENvZGVFcnJvci5jb2RlKVxuICAgICAgICAgICAgcmV0dXJuIG5ldyBVc2VyT3BlcmF0aW9uUmVqZWN0ZWRCeU9wQ29kZUVycm9yKHtcbiAgICAgICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgVW5rbm93bkJ1bmRsZXJFcnJvcih7XG4gICAgICAgIGNhdXNlOiBlcnIsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRCdW5kbGVyRXJyb3IuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/errors/getBundlerError.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/errors/getUserOperationError.js": /*!******************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/errors/getUserOperationError.js ***! \******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUserOperationError: () => (/* binding */ getUserOperationError)\n/* harmony export */ });\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n/* harmony import */ var _utils_abi_decodeErrorResult_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../utils/abi/decodeErrorResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeErrorResult.js\");\n/* harmony import */ var _errors_bundler_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/bundler.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/bundler.js\");\n/* harmony import */ var _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/userOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/errors/userOperation.js\");\n/* harmony import */ var _getBundlerError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBundlerError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/errors/getBundlerError.js\");\n\n\n\n\n\n\nfunction getUserOperationError(err, { calls, docsPath, ...args }) {\n const cause = (() => {\n const cause = (0,_getBundlerError_js__WEBPACK_IMPORTED_MODULE_0__.getBundlerError)(err, args);\n if (calls && cause instanceof _errors_bundler_js__WEBPACK_IMPORTED_MODULE_1__.ExecutionRevertedError) {\n const revertData = getRevertData(cause);\n const contractCalls = calls?.filter((call) => call.abi);\n if (revertData && contractCalls.length > 0)\n return getContractError({ calls: contractCalls, revertData });\n }\n return cause;\n })();\n return new _errors_userOperation_js__WEBPACK_IMPORTED_MODULE_2__.UserOperationExecutionError(cause, {\n docsPath,\n ...args,\n });\n}\n/////////////////////////////////////////////////////////////////////////////////\nfunction getRevertData(error) {\n let revertData;\n error.walk((e) => {\n const error = e;\n if (typeof error.data === 'string' ||\n typeof error.data?.revertData === 'string' ||\n (!(error instanceof _errors_base_js__WEBPACK_IMPORTED_MODULE_3__.BaseError) && typeof error.message === 'string')) {\n const match = (error.data?.revertData ||\n error.data ||\n error.message).match?.(/(0x[A-Za-z0-9]*)/);\n if (match) {\n revertData = match[1];\n return true;\n }\n }\n return false;\n });\n return revertData;\n}\nfunction getContractError(parameters) {\n const { calls, revertData } = parameters;\n const { abi, functionName, args, to } = (() => {\n const contractCalls = calls?.filter((call) => Boolean(call.abi));\n if (contractCalls.length === 1)\n return contractCalls[0];\n const compatContractCalls = contractCalls.filter((call) => {\n try {\n return Boolean((0,_utils_abi_decodeErrorResult_js__WEBPACK_IMPORTED_MODULE_4__.decodeErrorResult)({\n abi: call.abi,\n data: revertData,\n }));\n }\n catch {\n return false;\n }\n });\n if (compatContractCalls.length === 1)\n return compatContractCalls[0];\n return {\n abi: [],\n functionName: contractCalls.reduce((acc, call) => `${acc ? `${acc} | ` : ''}${call.functionName}`, ''),\n args: undefined,\n to: undefined,\n };\n })();\n const cause = (() => {\n if (revertData === '0x')\n return new _errors_contract_js__WEBPACK_IMPORTED_MODULE_5__.ContractFunctionZeroDataError({ functionName });\n return new _errors_contract_js__WEBPACK_IMPORTED_MODULE_5__.ContractFunctionRevertedError({\n abi,\n data: revertData,\n functionName,\n });\n })();\n return new _errors_contract_js__WEBPACK_IMPORTED_MODULE_5__.ContractFunctionExecutionError(cause, {\n abi,\n args,\n contractAddress: to,\n functionName,\n });\n}\n//# sourceMappingURL=getUserOperationError.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy9lcnJvcnMvZ2V0VXNlck9wZXJhdGlvbkVycm9yLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBb0Q7QUFDd0Y7QUFDaEU7QUFDWDtBQUNZO0FBQ3JCO0FBQ2pELHNDQUFzQywwQkFBMEI7QUFDdkU7QUFDQSxzQkFBc0Isb0VBQWU7QUFDckMsc0NBQXNDLHNFQUFzQjtBQUM1RDtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEMsa0NBQWtDO0FBQzVFO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsZUFBZSxpRkFBMkI7QUFDMUM7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLHNEQUFTO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxZQUFZLG9CQUFvQjtBQUNoQyxZQUFZLDhCQUE4QjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLGtGQUFpQjtBQUNoRDtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUVBQWlFLFNBQVMsS0FBSyxTQUFTLEVBQUUsa0JBQWtCO0FBQzVHO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsdUJBQXVCLDhFQUE2QixHQUFHLGNBQWM7QUFDckUsbUJBQW1CLDhFQUE2QjtBQUNoRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMLGVBQWUsK0VBQThCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vdXRpbHMvZXJyb3JzL2dldFVzZXJPcGVyYXRpb25FcnJvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMvYmFzZS5qcyc7XG5pbXBvcnQgeyBDb250cmFjdEZ1bmN0aW9uRXhlY3V0aW9uRXJyb3IsIENvbnRyYWN0RnVuY3Rpb25SZXZlcnRlZEVycm9yLCBDb250cmFjdEZ1bmN0aW9uWmVyb0RhdGFFcnJvciwgfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMvY29udHJhY3QuanMnO1xuaW1wb3J0IHsgZGVjb2RlRXJyb3JSZXN1bHQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9hYmkvZGVjb2RlRXJyb3JSZXN1bHQuanMnO1xuaW1wb3J0IHsgRXhlY3V0aW9uUmV2ZXJ0ZWRFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9idW5kbGVyLmpzJztcbmltcG9ydCB7IFVzZXJPcGVyYXRpb25FeGVjdXRpb25FcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvdXNlck9wZXJhdGlvbi5qcyc7XG5pbXBvcnQgeyBnZXRCdW5kbGVyRXJyb3IsIH0gZnJvbSAnLi9nZXRCdW5kbGVyRXJyb3IuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGdldFVzZXJPcGVyYXRpb25FcnJvcihlcnIsIHsgY2FsbHMsIGRvY3NQYXRoLCAuLi5hcmdzIH0pIHtcbiAgICBjb25zdCBjYXVzZSA9ICgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNhdXNlID0gZ2V0QnVuZGxlckVycm9yKGVyciwgYXJncyk7XG4gICAgICAgIGlmIChjYWxscyAmJiBjYXVzZSBpbnN0YW5jZW9mIEV4ZWN1dGlvblJldmVydGVkRXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnN0IHJldmVydERhdGEgPSBnZXRSZXZlcnREYXRhKGNhdXNlKTtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyYWN0Q2FsbHMgPSBjYWxscz8uZmlsdGVyKChjYWxsKSA9PiBjYWxsLmFiaSk7XG4gICAgICAgICAgICBpZiAocmV2ZXJ0RGF0YSAmJiBjb250cmFjdENhbGxzLmxlbmd0aCA+IDApXG4gICAgICAgICAgICAgICAgcmV0dXJuIGdldENvbnRyYWN0RXJyb3IoeyBjYWxsczogY29udHJhY3RDYWxscywgcmV2ZXJ0RGF0YSB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2F1c2U7XG4gICAgfSkoKTtcbiAgICByZXR1cm4gbmV3IFVzZXJPcGVyYXRpb25FeGVjdXRpb25FcnJvcihjYXVzZSwge1xuICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgLi4uYXJncyxcbiAgICB9KTtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuZnVuY3Rpb24gZ2V0UmV2ZXJ0RGF0YShlcnJvcikge1xuICAgIGxldCByZXZlcnREYXRhO1xuICAgIGVycm9yLndhbGsoKGUpID0+IHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSBlO1xuICAgICAgICBpZiAodHlwZW9mIGVycm9yLmRhdGEgPT09ICdzdHJpbmcnIHx8XG4gICAgICAgICAgICB0eXBlb2YgZXJyb3IuZGF0YT8ucmV2ZXJ0RGF0YSA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgICAgICghKGVycm9yIGluc3RhbmNlb2YgQmFzZUVycm9yKSAmJiB0eXBlb2YgZXJyb3IubWVzc2FnZSA9PT0gJ3N0cmluZycpKSB7XG4gICAgICAgICAgICBjb25zdCBtYXRjaCA9IChlcnJvci5kYXRhPy5yZXZlcnREYXRhIHx8XG4gICAgICAgICAgICAgICAgZXJyb3IuZGF0YSB8fFxuICAgICAgICAgICAgICAgIGVycm9yLm1lc3NhZ2UpLm1hdGNoPy4oLygweFtBLVphLXowLTldKikvKTtcbiAgICAgICAgICAgIGlmIChtYXRjaCkge1xuICAgICAgICAgICAgICAgIHJldmVydERhdGEgPSBtYXRjaFsxXTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSk7XG4gICAgcmV0dXJuIHJldmVydERhdGE7XG59XG5mdW5jdGlvbiBnZXRDb250cmFjdEVycm9yKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGNhbGxzLCByZXZlcnREYXRhIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHsgYWJpLCBmdW5jdGlvbk5hbWUsIGFyZ3MsIHRvIH0gPSAoKCkgPT4ge1xuICAgICAgICBjb25zdCBjb250cmFjdENhbGxzID0gY2FsbHM/LmZpbHRlcigoY2FsbCkgPT4gQm9vbGVhbihjYWxsLmFiaSkpO1xuICAgICAgICBpZiAoY29udHJhY3RDYWxscy5sZW5ndGggPT09IDEpXG4gICAgICAgICAgICByZXR1cm4gY29udHJhY3RDYWxsc1swXTtcbiAgICAgICAgY29uc3QgY29tcGF0Q29udHJhY3RDYWxscyA9IGNvbnRyYWN0Q2FsbHMuZmlsdGVyKChjYWxsKSA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHJldHVybiBCb29sZWFuKGRlY29kZUVycm9yUmVzdWx0KHtcbiAgICAgICAgICAgICAgICAgICAgYWJpOiBjYWxsLmFiaSxcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogcmV2ZXJ0RGF0YSxcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGNvbXBhdENvbnRyYWN0Q2FsbHMubGVuZ3RoID09PSAxKVxuICAgICAgICAgICAgcmV0dXJuIGNvbXBhdENvbnRyYWN0Q2FsbHNbMF07XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBhYmk6IFtdLFxuICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiBjb250cmFjdENhbGxzLnJlZHVjZSgoYWNjLCBjYWxsKSA9PiBgJHthY2MgPyBgJHthY2N9IHwgYCA6ICcnfSR7Y2FsbC5mdW5jdGlvbk5hbWV9YCwgJycpLFxuICAgICAgICAgICAgYXJnczogdW5kZWZpbmVkLFxuICAgICAgICAgICAgdG86IHVuZGVmaW5lZCxcbiAgICAgICAgfTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IGNhdXNlID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHJldmVydERhdGEgPT09ICcweCcpXG4gICAgICAgICAgICByZXR1cm4gbmV3IENvbnRyYWN0RnVuY3Rpb25aZXJvRGF0YUVycm9yKHsgZnVuY3Rpb25OYW1lIH0pO1xuICAgICAgICByZXR1cm4gbmV3IENvbnRyYWN0RnVuY3Rpb25SZXZlcnRlZEVycm9yKHtcbiAgICAgICAgICAgIGFiaSxcbiAgICAgICAgICAgIGRhdGE6IHJldmVydERhdGEsXG4gICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgIH0pO1xuICAgIH0pKCk7XG4gICAgcmV0dXJuIG5ldyBDb250cmFjdEZ1bmN0aW9uRXhlY3V0aW9uRXJyb3IoY2F1c2UsIHtcbiAgICAgICAgYWJpLFxuICAgICAgICBhcmdzLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6IHRvLFxuICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRVc2VyT3BlcmF0aW9uRXJyb3IuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/errors/getUserOperationError.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperation.js": /*!**************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperation.js ***! \**************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatUserOperation: () => (/* binding */ formatUserOperation)\n/* harmony export */ });\nfunction formatUserOperation(parameters) {\n const userOperation = { ...parameters };\n if (parameters.callGasLimit)\n userOperation.callGasLimit = BigInt(parameters.callGasLimit);\n if (parameters.maxFeePerGas)\n userOperation.maxFeePerGas = BigInt(parameters.maxFeePerGas);\n if (parameters.maxPriorityFeePerGas)\n userOperation.maxPriorityFeePerGas = BigInt(parameters.maxPriorityFeePerGas);\n if (parameters.nonce)\n userOperation.nonce = BigInt(parameters.nonce);\n if (parameters.paymasterPostOpGasLimit)\n userOperation.paymasterPostOpGasLimit = BigInt(parameters.paymasterPostOpGasLimit);\n if (parameters.paymasterVerificationGasLimit)\n userOperation.paymasterVerificationGasLimit = BigInt(parameters.paymasterVerificationGasLimit);\n if (parameters.preVerificationGas)\n userOperation.preVerificationGas = BigInt(parameters.preVerificationGas);\n if (parameters.verificationGasLimit)\n userOperation.verificationGasLimit = BigInt(parameters.verificationGasLimit);\n return userOperation;\n}\n//# sourceMappingURL=userOperation.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy9mb3JtYXR0ZXJzL3VzZXJPcGVyYXRpb24uanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFPO0FBQ1AsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL3V0aWxzL2Zvcm1hdHRlcnMvdXNlck9wZXJhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZm9ybWF0VXNlck9wZXJhdGlvbihwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgdXNlck9wZXJhdGlvbiA9IHsgLi4ucGFyYW1ldGVycyB9O1xuICAgIGlmIChwYXJhbWV0ZXJzLmNhbGxHYXNMaW1pdClcbiAgICAgICAgdXNlck9wZXJhdGlvbi5jYWxsR2FzTGltaXQgPSBCaWdJbnQocGFyYW1ldGVycy5jYWxsR2FzTGltaXQpO1xuICAgIGlmIChwYXJhbWV0ZXJzLm1heEZlZVBlckdhcylcbiAgICAgICAgdXNlck9wZXJhdGlvbi5tYXhGZWVQZXJHYXMgPSBCaWdJbnQocGFyYW1ldGVycy5tYXhGZWVQZXJHYXMpO1xuICAgIGlmIChwYXJhbWV0ZXJzLm1heFByaW9yaXR5RmVlUGVyR2FzKVxuICAgICAgICB1c2VyT3BlcmF0aW9uLm1heFByaW9yaXR5RmVlUGVyR2FzID0gQmlnSW50KHBhcmFtZXRlcnMubWF4UHJpb3JpdHlGZWVQZXJHYXMpO1xuICAgIGlmIChwYXJhbWV0ZXJzLm5vbmNlKVxuICAgICAgICB1c2VyT3BlcmF0aW9uLm5vbmNlID0gQmlnSW50KHBhcmFtZXRlcnMubm9uY2UpO1xuICAgIGlmIChwYXJhbWV0ZXJzLnBheW1hc3RlclBvc3RPcEdhc0xpbWl0KVxuICAgICAgICB1c2VyT3BlcmF0aW9uLnBheW1hc3RlclBvc3RPcEdhc0xpbWl0ID0gQmlnSW50KHBhcmFtZXRlcnMucGF5bWFzdGVyUG9zdE9wR2FzTGltaXQpO1xuICAgIGlmIChwYXJhbWV0ZXJzLnBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0KVxuICAgICAgICB1c2VyT3BlcmF0aW9uLnBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0ID0gQmlnSW50KHBhcmFtZXRlcnMucGF5bWFzdGVyVmVyaWZpY2F0aW9uR2FzTGltaXQpO1xuICAgIGlmIChwYXJhbWV0ZXJzLnByZVZlcmlmaWNhdGlvbkdhcylcbiAgICAgICAgdXNlck9wZXJhdGlvbi5wcmVWZXJpZmljYXRpb25HYXMgPSBCaWdJbnQocGFyYW1ldGVycy5wcmVWZXJpZmljYXRpb25HYXMpO1xuICAgIGlmIChwYXJhbWV0ZXJzLnZlcmlmaWNhdGlvbkdhc0xpbWl0KVxuICAgICAgICB1c2VyT3BlcmF0aW9uLnZlcmlmaWNhdGlvbkdhc0xpbWl0ID0gQmlnSW50KHBhcmFtZXRlcnMudmVyaWZpY2F0aW9uR2FzTGltaXQpO1xuICAgIHJldHVybiB1c2VyT3BlcmF0aW9uO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXNlck9wZXJhdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperation.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationGas.js": /*!*****************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationGas.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatUserOperationGas: () => (/* binding */ formatUserOperationGas)\n/* harmony export */ });\nfunction formatUserOperationGas(parameters) {\n const gas = {};\n if (parameters.callGasLimit)\n gas.callGasLimit = BigInt(parameters.callGasLimit);\n if (parameters.preVerificationGas)\n gas.preVerificationGas = BigInt(parameters.preVerificationGas);\n if (parameters.verificationGasLimit)\n gas.verificationGasLimit = BigInt(parameters.verificationGasLimit);\n if (parameters.paymasterPostOpGasLimit)\n gas.paymasterPostOpGasLimit = BigInt(parameters.paymasterPostOpGasLimit);\n if (parameters.paymasterVerificationGasLimit)\n gas.paymasterVerificationGasLimit = BigInt(parameters.paymasterVerificationGasLimit);\n return gas;\n}\n//# sourceMappingURL=userOperationGas.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy9mb3JtYXR0ZXJzL3VzZXJPcGVyYXRpb25HYXMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy9mb3JtYXR0ZXJzL3VzZXJPcGVyYXRpb25HYXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFVzZXJPcGVyYXRpb25HYXMocGFyYW1ldGVycykge1xuICAgIGNvbnN0IGdhcyA9IHt9O1xuICAgIGlmIChwYXJhbWV0ZXJzLmNhbGxHYXNMaW1pdClcbiAgICAgICAgZ2FzLmNhbGxHYXNMaW1pdCA9IEJpZ0ludChwYXJhbWV0ZXJzLmNhbGxHYXNMaW1pdCk7XG4gICAgaWYgKHBhcmFtZXRlcnMucHJlVmVyaWZpY2F0aW9uR2FzKVxuICAgICAgICBnYXMucHJlVmVyaWZpY2F0aW9uR2FzID0gQmlnSW50KHBhcmFtZXRlcnMucHJlVmVyaWZpY2F0aW9uR2FzKTtcbiAgICBpZiAocGFyYW1ldGVycy52ZXJpZmljYXRpb25HYXNMaW1pdClcbiAgICAgICAgZ2FzLnZlcmlmaWNhdGlvbkdhc0xpbWl0ID0gQmlnSW50KHBhcmFtZXRlcnMudmVyaWZpY2F0aW9uR2FzTGltaXQpO1xuICAgIGlmIChwYXJhbWV0ZXJzLnBheW1hc3RlclBvc3RPcEdhc0xpbWl0KVxuICAgICAgICBnYXMucGF5bWFzdGVyUG9zdE9wR2FzTGltaXQgPSBCaWdJbnQocGFyYW1ldGVycy5wYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCk7XG4gICAgaWYgKHBhcmFtZXRlcnMucGF5bWFzdGVyVmVyaWZpY2F0aW9uR2FzTGltaXQpXG4gICAgICAgIGdhcy5wYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCA9IEJpZ0ludChwYXJhbWV0ZXJzLnBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0KTtcbiAgICByZXR1cm4gZ2FzO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXNlck9wZXJhdGlvbkdhcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationGas.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationReceipt.js": /*!*********************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationReceipt.js ***! \*********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatUserOperationReceipt: () => (/* binding */ formatUserOperationReceipt)\n/* harmony export */ });\n/* harmony import */ var _utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/formatters/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/log.js\");\n/* harmony import */ var _utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/formatters/transactionReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionReceipt.js\");\n\n\nfunction formatUserOperationReceipt(parameters) {\n const receipt = { ...parameters };\n if (parameters.actualGasCost)\n receipt.actualGasCost = BigInt(parameters.actualGasCost);\n if (parameters.actualGasUsed)\n receipt.actualGasUsed = BigInt(parameters.actualGasUsed);\n if (parameters.logs)\n receipt.logs = parameters.logs.map((log) => (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_0__.formatLog)(log));\n if (parameters.receipt)\n receipt.receipt = (0,_utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_1__.formatTransactionReceipt)(receipt.receipt);\n return receipt;\n}\n//# sourceMappingURL=userOperationReceipt.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy9mb3JtYXR0ZXJzL3VzZXJPcGVyYXRpb25SZWNlaXB0LmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUE2RDtBQUM4QjtBQUNwRjtBQUNQLHNCQUFzQjtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0RBQW9ELG1FQUFTO0FBQzdEO0FBQ0EsMEJBQTBCLGlHQUF3QjtBQUNsRDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vdXRpbHMvZm9ybWF0dGVycy91c2VyT3BlcmF0aW9uUmVjZWlwdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXRMb2cgfSBmcm9tICcuLi8uLi8uLi91dGlscy9mb3JtYXR0ZXJzL2xvZy5qcyc7XG5pbXBvcnQgeyBmb3JtYXRUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9mb3JtYXR0ZXJzL3RyYW5zYWN0aW9uUmVjZWlwdC5qcyc7XG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VXNlck9wZXJhdGlvblJlY2VpcHQocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHJlY2VpcHQgPSB7IC4uLnBhcmFtZXRlcnMgfTtcbiAgICBpZiAocGFyYW1ldGVycy5hY3R1YWxHYXNDb3N0KVxuICAgICAgICByZWNlaXB0LmFjdHVhbEdhc0Nvc3QgPSBCaWdJbnQocGFyYW1ldGVycy5hY3R1YWxHYXNDb3N0KTtcbiAgICBpZiAocGFyYW1ldGVycy5hY3R1YWxHYXNVc2VkKVxuICAgICAgICByZWNlaXB0LmFjdHVhbEdhc1VzZWQgPSBCaWdJbnQocGFyYW1ldGVycy5hY3R1YWxHYXNVc2VkKTtcbiAgICBpZiAocGFyYW1ldGVycy5sb2dzKVxuICAgICAgICByZWNlaXB0LmxvZ3MgPSBwYXJhbWV0ZXJzLmxvZ3MubWFwKChsb2cpID0+IGZvcm1hdExvZyhsb2cpKTtcbiAgICBpZiAocGFyYW1ldGVycy5yZWNlaXB0KVxuICAgICAgICByZWNlaXB0LnJlY2VpcHQgPSBmb3JtYXRUcmFuc2FjdGlvblJlY2VpcHQocmVjZWlwdC5yZWNlaXB0KTtcbiAgICByZXR1cm4gcmVjZWlwdDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXVzZXJPcGVyYXRpb25SZWNlaXB0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationReceipt.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationRequest.js": /*!*********************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationRequest.js ***! \*********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatUserOperationRequest: () => (/* binding */ formatUserOperationRequest)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/index.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/pad.js\");\n\n\nfunction formatUserOperationRequest(request) {\n const rpcRequest = {};\n if (typeof request.callData !== 'undefined')\n rpcRequest.callData = request.callData;\n if (typeof request.callGasLimit !== 'undefined')\n rpcRequest.callGasLimit = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.callGasLimit);\n if (typeof request.factory !== 'undefined')\n rpcRequest.factory = request.factory;\n if (typeof request.factoryData !== 'undefined')\n rpcRequest.factoryData = request.factoryData;\n if (typeof request.initCode !== 'undefined')\n rpcRequest.initCode = request.initCode;\n if (typeof request.maxFeePerGas !== 'undefined')\n rpcRequest.maxFeePerGas = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.maxFeePerGas);\n if (typeof request.maxPriorityFeePerGas !== 'undefined')\n rpcRequest.maxPriorityFeePerGas = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.maxPriorityFeePerGas);\n if (typeof request.nonce !== 'undefined')\n rpcRequest.nonce = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.nonce);\n if (typeof request.paymaster !== 'undefined')\n rpcRequest.paymaster = request.paymaster;\n if (typeof request.paymasterAndData !== 'undefined')\n rpcRequest.paymasterAndData = request.paymasterAndData || '0x';\n if (typeof request.paymasterData !== 'undefined')\n rpcRequest.paymasterData = request.paymasterData;\n if (typeof request.paymasterPostOpGasLimit !== 'undefined')\n rpcRequest.paymasterPostOpGasLimit = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.paymasterPostOpGasLimit);\n if (typeof request.paymasterVerificationGasLimit !== 'undefined')\n rpcRequest.paymasterVerificationGasLimit = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.paymasterVerificationGasLimit);\n if (typeof request.preVerificationGas !== 'undefined')\n rpcRequest.preVerificationGas = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.preVerificationGas);\n if (typeof request.sender !== 'undefined')\n rpcRequest.sender = request.sender;\n if (typeof request.signature !== 'undefined')\n rpcRequest.signature = request.signature;\n if (typeof request.verificationGasLimit !== 'undefined')\n rpcRequest.verificationGasLimit = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(request.verificationGasLimit);\n if (typeof request.authorization !== 'undefined')\n rpcRequest.eip7702Auth = formatAuthorization(request.authorization);\n return rpcRequest;\n}\nfunction formatAuthorization(authorization) {\n return {\n address: authorization.address,\n chainId: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(authorization.chainId),\n nonce: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(authorization.nonce),\n r: authorization.r\n ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(BigInt(authorization.r), { size: 32 })\n : (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_1__.pad)('0x', { size: 32 }),\n s: authorization.s\n ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(BigInt(authorization.s), { size: 32 })\n : (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_1__.pad)('0x', { size: 32 }),\n yParity: authorization.yParity\n ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(authorization.yParity, { size: 1 })\n : (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_1__.pad)('0x', { size: 32 }),\n };\n}\n//# sourceMappingURL=userOperationRequest.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy9mb3JtYXR0ZXJzL3VzZXJPcGVyYXRpb25SZXF1ZXN0LmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUErRDtBQUNqQjtBQUN2QztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHFFQUFXO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHFFQUFXO0FBQzdDO0FBQ0EsMENBQTBDLHFFQUFXO0FBQ3JEO0FBQ0EsMkJBQTJCLHFFQUFXO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkNBQTZDLHFFQUFXO0FBQ3hEO0FBQ0EsbURBQW1ELHFFQUFXO0FBQzlEO0FBQ0Esd0NBQXdDLHFFQUFXO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEMscUVBQVc7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIscUVBQVc7QUFDNUIsZUFBZSxxRUFBVztBQUMxQjtBQUNBLGNBQWMscUVBQVcsNEJBQTRCLFVBQVU7QUFDL0QsY0FBYyxvREFBRyxTQUFTLFVBQVU7QUFDcEM7QUFDQSxjQUFjLHFFQUFXLDRCQUE0QixVQUFVO0FBQy9ELGNBQWMsb0RBQUcsU0FBUyxVQUFVO0FBQ3BDO0FBQ0EsY0FBYyxxRUFBVywwQkFBMEIsU0FBUztBQUM1RCxjQUFjLG9EQUFHLFNBQVMsVUFBVTtBQUNwQztBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vdXRpbHMvZm9ybWF0dGVycy91c2VyT3BlcmF0aW9uUmVxdWVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBudW1iZXJUb0hleCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IHBhZCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2luZGV4LmpzJztcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRVc2VyT3BlcmF0aW9uUmVxdWVzdChyZXF1ZXN0KSB7XG4gICAgY29uc3QgcnBjUmVxdWVzdCA9IHt9O1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC5jYWxsRGF0YSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3QuY2FsbERhdGEgPSByZXF1ZXN0LmNhbGxEYXRhO1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC5jYWxsR2FzTGltaXQgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICBycGNSZXF1ZXN0LmNhbGxHYXNMaW1pdCA9IG51bWJlclRvSGV4KHJlcXVlc3QuY2FsbEdhc0xpbWl0KTtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QuZmFjdG9yeSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3QuZmFjdG9yeSA9IHJlcXVlc3QuZmFjdG9yeTtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QuZmFjdG9yeURhdGEgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICBycGNSZXF1ZXN0LmZhY3RvcnlEYXRhID0gcmVxdWVzdC5mYWN0b3J5RGF0YTtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QuaW5pdENvZGUgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICBycGNSZXF1ZXN0LmluaXRDb2RlID0gcmVxdWVzdC5pbml0Q29kZTtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QubWF4RmVlUGVyR2FzICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgcnBjUmVxdWVzdC5tYXhGZWVQZXJHYXMgPSBudW1iZXJUb0hleChyZXF1ZXN0Lm1heEZlZVBlckdhcyk7XG4gICAgaWYgKHR5cGVvZiByZXF1ZXN0Lm1heFByaW9yaXR5RmVlUGVyR2FzICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgcnBjUmVxdWVzdC5tYXhQcmlvcml0eUZlZVBlckdhcyA9IG51bWJlclRvSGV4KHJlcXVlc3QubWF4UHJpb3JpdHlGZWVQZXJHYXMpO1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC5ub25jZSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3Qubm9uY2UgPSBudW1iZXJUb0hleChyZXF1ZXN0Lm5vbmNlKTtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QucGF5bWFzdGVyICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgcnBjUmVxdWVzdC5wYXltYXN0ZXIgPSByZXF1ZXN0LnBheW1hc3RlcjtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QucGF5bWFzdGVyQW5kRGF0YSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3QucGF5bWFzdGVyQW5kRGF0YSA9IHJlcXVlc3QucGF5bWFzdGVyQW5kRGF0YSB8fCAnMHgnO1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC5wYXltYXN0ZXJEYXRhICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgcnBjUmVxdWVzdC5wYXltYXN0ZXJEYXRhID0gcmVxdWVzdC5wYXltYXN0ZXJEYXRhO1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC5wYXltYXN0ZXJQb3N0T3BHYXNMaW1pdCAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3QucGF5bWFzdGVyUG9zdE9wR2FzTGltaXQgPSBudW1iZXJUb0hleChyZXF1ZXN0LnBheW1hc3RlclBvc3RPcEdhc0xpbWl0KTtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QucGF5bWFzdGVyVmVyaWZpY2F0aW9uR2FzTGltaXQgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICBycGNSZXF1ZXN0LnBheW1hc3RlclZlcmlmaWNhdGlvbkdhc0xpbWl0ID0gbnVtYmVyVG9IZXgocmVxdWVzdC5wYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCk7XG4gICAgaWYgKHR5cGVvZiByZXF1ZXN0LnByZVZlcmlmaWNhdGlvbkdhcyAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3QucHJlVmVyaWZpY2F0aW9uR2FzID0gbnVtYmVyVG9IZXgocmVxdWVzdC5wcmVWZXJpZmljYXRpb25HYXMpO1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC5zZW5kZXIgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICBycGNSZXF1ZXN0LnNlbmRlciA9IHJlcXVlc3Quc2VuZGVyO1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC5zaWduYXR1cmUgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICBycGNSZXF1ZXN0LnNpZ25hdHVyZSA9IHJlcXVlc3Quc2lnbmF0dXJlO1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdC52ZXJpZmljYXRpb25HYXNMaW1pdCAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3QudmVyaWZpY2F0aW9uR2FzTGltaXQgPSBudW1iZXJUb0hleChyZXF1ZXN0LnZlcmlmaWNhdGlvbkdhc0xpbWl0KTtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3QuYXV0aG9yaXphdGlvbiAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJwY1JlcXVlc3QuZWlwNzcwMkF1dGggPSBmb3JtYXRBdXRob3JpemF0aW9uKHJlcXVlc3QuYXV0aG9yaXphdGlvbik7XG4gICAgcmV0dXJuIHJwY1JlcXVlc3Q7XG59XG5mdW5jdGlvbiBmb3JtYXRBdXRob3JpemF0aW9uKGF1dGhvcml6YXRpb24pIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBhZGRyZXNzOiBhdXRob3JpemF0aW9uLmFkZHJlc3MsXG4gICAgICAgIGNoYWluSWQ6IG51bWJlclRvSGV4KGF1dGhvcml6YXRpb24uY2hhaW5JZCksXG4gICAgICAgIG5vbmNlOiBudW1iZXJUb0hleChhdXRob3JpemF0aW9uLm5vbmNlKSxcbiAgICAgICAgcjogYXV0aG9yaXphdGlvbi5yXG4gICAgICAgICAgICA/IG51bWJlclRvSGV4KEJpZ0ludChhdXRob3JpemF0aW9uLnIpLCB7IHNpemU6IDMyIH0pXG4gICAgICAgICAgICA6IHBhZCgnMHgnLCB7IHNpemU6IDMyIH0pLFxuICAgICAgICBzOiBhdXRob3JpemF0aW9uLnNcbiAgICAgICAgICAgID8gbnVtYmVyVG9IZXgoQmlnSW50KGF1dGhvcml6YXRpb24ucyksIHsgc2l6ZTogMzIgfSlcbiAgICAgICAgICAgIDogcGFkKCcweCcsIHsgc2l6ZTogMzIgfSksXG4gICAgICAgIHlQYXJpdHk6IGF1dGhvcml6YXRpb24ueVBhcml0eVxuICAgICAgICAgICAgPyBudW1iZXJUb0hleChhdXRob3JpemF0aW9uLnlQYXJpdHksIHsgc2l6ZTogMSB9KVxuICAgICAgICAgICAgOiBwYWQoJzB4JywgeyBzaXplOiAzMiB9KSxcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXNlck9wZXJhdGlvblJlcXVlc3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/formatters/userOperationRequest.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getInitCode.js": /*!***************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/userOperation/getInitCode.js ***! \***************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getInitCode: () => (/* binding */ getInitCode)\n/* harmony export */ });\n/* harmony import */ var _utils_data_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n\nfunction getInitCode(userOperation) {\n const { authorization, factory, factoryData } = userOperation;\n if (factory === '0x7702' ||\n factory === '0x7702000000000000000000000000000000000000') {\n if (!authorization)\n return '0x7702000000000000000000000000000000000000';\n const delegation = authorization.address;\n return (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_0__.concat)([delegation, factoryData ?? '0x']);\n }\n if (!factory)\n return '0x';\n return (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_0__.concat)([factory, factoryData ?? '0x']);\n}\n//# sourceMappingURL=getInitCode.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy91c2VyT3BlcmF0aW9uL2dldEluaXRDb2RlLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXVEO0FBQ2hEO0FBQ1AsWUFBWSxzQ0FBc0M7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsNkRBQU07QUFDckI7QUFDQTtBQUNBO0FBQ0EsV0FBVyw2REFBTTtBQUNqQjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL3V0aWxzL3VzZXJPcGVyYXRpb24vZ2V0SW5pdENvZGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29uY2F0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZGF0YS9jb25jYXQuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGdldEluaXRDb2RlKHVzZXJPcGVyYXRpb24pIHtcbiAgICBjb25zdCB7IGF1dGhvcml6YXRpb24sIGZhY3RvcnksIGZhY3RvcnlEYXRhIH0gPSB1c2VyT3BlcmF0aW9uO1xuICAgIGlmIChmYWN0b3J5ID09PSAnMHg3NzAyJyB8fFxuICAgICAgICBmYWN0b3J5ID09PSAnMHg3NzAyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJykge1xuICAgICAgICBpZiAoIWF1dGhvcml6YXRpb24pXG4gICAgICAgICAgICByZXR1cm4gJzB4NzcwMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCc7XG4gICAgICAgIGNvbnN0IGRlbGVnYXRpb24gPSBhdXRob3JpemF0aW9uLmFkZHJlc3M7XG4gICAgICAgIHJldHVybiBjb25jYXQoW2RlbGVnYXRpb24sIGZhY3RvcnlEYXRhID8/ICcweCddKTtcbiAgICB9XG4gICAgaWYgKCFmYWN0b3J5KVxuICAgICAgICByZXR1cm4gJzB4JztcbiAgICByZXR1cm4gY29uY2F0KFtmYWN0b3J5LCBmYWN0b3J5RGF0YSA/PyAnMHgnXSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRJbml0Q29kZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getInitCode.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js": /*!************************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js ***! \************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUserOperationHash: () => (/* binding */ getUserOperationHash)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../utils/abi/encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var _utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../utils/hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _utils_signature_hashTypedData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/signature/hashTypedData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashTypedData.js\");\n/* harmony import */ var _getInitCode_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getInitCode.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getInitCode.js\");\n/* harmony import */ var _getUserOperationTypedData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getUserOperationTypedData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationTypedData.js\");\n/* harmony import */ var _toPackedUserOperation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./toPackedUserOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js\");\n\n\n\n\n\n\nfunction getUserOperationHash(parameters) {\n const { chainId, entryPointAddress, entryPointVersion } = parameters;\n const userOperation = parameters.userOperation;\n const { authorization, callData = '0x', callGasLimit, maxFeePerGas, maxPriorityFeePerGas, nonce, paymasterAndData = '0x', preVerificationGas, sender, verificationGasLimit, } = userOperation;\n if (entryPointVersion === '0.8')\n return (0,_utils_signature_hashTypedData_js__WEBPACK_IMPORTED_MODULE_0__.hashTypedData)((0,_getUserOperationTypedData_js__WEBPACK_IMPORTED_MODULE_1__.getUserOperationTypedData)({\n chainId,\n entryPointAddress,\n userOperation,\n }));\n const packedUserOp = (() => {\n if (entryPointVersion === '0.6') {\n const factory = userOperation.initCode?.slice(0, 42);\n const factoryData = userOperation.initCode?.slice(42);\n const initCode = (0,_getInitCode_js__WEBPACK_IMPORTED_MODULE_2__.getInitCode)({\n authorization,\n factory,\n factoryData,\n });\n return (0,_utils_abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__.encodeAbiParameters)([\n { type: 'address' },\n { type: 'uint256' },\n { type: 'bytes32' },\n { type: 'bytes32' },\n { type: 'uint256' },\n { type: 'uint256' },\n { type: 'uint256' },\n { type: 'uint256' },\n { type: 'uint256' },\n { type: 'bytes32' },\n ], [\n sender,\n nonce,\n (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)(initCode),\n (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)(callData),\n callGasLimit,\n verificationGasLimit,\n preVerificationGas,\n maxFeePerGas,\n maxPriorityFeePerGas,\n (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)(paymasterAndData),\n ]);\n }\n if (entryPointVersion === '0.7') {\n const packedUserOp = (0,_toPackedUserOperation_js__WEBPACK_IMPORTED_MODULE_5__.toPackedUserOperation)(userOperation);\n return (0,_utils_abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__.encodeAbiParameters)([\n { type: 'address' },\n { type: 'uint256' },\n { type: 'bytes32' },\n { type: 'bytes32' },\n { type: 'bytes32' },\n { type: 'uint256' },\n { type: 'bytes32' },\n { type: 'bytes32' },\n ], [\n packedUserOp.sender,\n packedUserOp.nonce,\n (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)(packedUserOp.initCode),\n (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)(packedUserOp.callData),\n packedUserOp.accountGasLimits,\n packedUserOp.preVerificationGas,\n packedUserOp.gasFees,\n (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)(packedUserOp.paymasterAndData),\n ]);\n }\n throw new Error(`entryPointVersion \"${entryPointVersion}\" not supported.`);\n })();\n return (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)((0,_utils_abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__.encodeAbiParameters)([{ type: 'bytes32' }, { type: 'address' }, { type: 'uint256' }], [(0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)(packedUserOp), entryPointAddress, BigInt(chainId)]));\n}\n//# sourceMappingURL=getUserOperationHash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy91c2VyT3BlcmF0aW9uL2dldFVzZXJPcGVyYXRpb25IYXNoLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBZ0Y7QUFDbkI7QUFDYTtBQUMzQjtBQUM0QjtBQUNSO0FBQzVEO0FBQ1AsWUFBWSxnREFBZ0Q7QUFDNUQ7QUFDQSxZQUFZLHNLQUFzSztBQUNsTDtBQUNBLGVBQWUsZ0ZBQWEsQ0FBQyx3RkFBeUI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLDREQUFXO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixtQkFBbUIsc0ZBQW1CO0FBQ3RDLGtCQUFrQixpQkFBaUI7QUFDbkMsa0JBQWtCLGlCQUFpQjtBQUNuQyxrQkFBa0IsaUJBQWlCO0FBQ25DLGtCQUFrQixpQkFBaUI7QUFDbkMsa0JBQWtCLGlCQUFpQjtBQUNuQyxrQkFBa0IsaUJBQWlCO0FBQ25DLGtCQUFrQixpQkFBaUI7QUFDbkMsa0JBQWtCLGlCQUFpQjtBQUNuQyxrQkFBa0IsaUJBQWlCO0FBQ25DLGtCQUFrQixpQkFBaUI7QUFDbkM7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLG1FQUFTO0FBQ3pCLGdCQUFnQixtRUFBUztBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLG1FQUFTO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxnRkFBcUI7QUFDdEQsbUJBQW1CLHNGQUFtQjtBQUN0QyxrQkFBa0IsaUJBQWlCO0FBQ25DLGtCQUFrQixpQkFBaUI7QUFDbkMsa0JBQWtCLGlCQUFpQjtBQUNuQyxrQkFBa0IsaUJBQWlCO0FBQ25DLGtCQUFrQixpQkFBaUI7QUFDbkMsa0JBQWtCLGlCQUFpQjtBQUNuQyxrQkFBa0IsaUJBQWlCO0FBQ25DLGtCQUFrQixpQkFBaUI7QUFDbkM7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLG1FQUFTO0FBQ3pCLGdCQUFnQixtRUFBUztBQUN6QjtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsbUVBQVM7QUFDekI7QUFDQTtBQUNBLDhDQUE4QyxrQkFBa0I7QUFDaEUsS0FBSztBQUNMLFdBQVcsbUVBQVMsQ0FBQyxzRkFBbUIsSUFBSSxpQkFBaUIsSUFBSSxpQkFBaUIsSUFBSSxpQkFBaUIsSUFBSSxtRUFBUztBQUNwSDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY2NvdW50LWFic3RyYWN0aW9uL3V0aWxzL3VzZXJPcGVyYXRpb24vZ2V0VXNlck9wZXJhdGlvbkhhc2guanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZW5jb2RlQWJpUGFyYW1ldGVycyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2FiaS9lbmNvZGVBYmlQYXJhbWV0ZXJzLmpzJztcbmltcG9ydCB7IGtlY2NhazI1NiB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2hhc2gva2VjY2FrMjU2LmpzJztcbmltcG9ydCB7IGhhc2hUeXBlZERhdGEgfSBmcm9tICcuLi8uLi8uLi91dGlscy9zaWduYXR1cmUvaGFzaFR5cGVkRGF0YS5qcyc7XG5pbXBvcnQgeyBnZXRJbml0Q29kZSB9IGZyb20gJy4vZ2V0SW5pdENvZGUuanMnO1xuaW1wb3J0IHsgZ2V0VXNlck9wZXJhdGlvblR5cGVkRGF0YSB9IGZyb20gJy4vZ2V0VXNlck9wZXJhdGlvblR5cGVkRGF0YS5qcyc7XG5pbXBvcnQgeyB0b1BhY2tlZFVzZXJPcGVyYXRpb24gfSBmcm9tICcuL3RvUGFja2VkVXNlck9wZXJhdGlvbi5qcyc7XG5leHBvcnQgZnVuY3Rpb24gZ2V0VXNlck9wZXJhdGlvbkhhc2gocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgY2hhaW5JZCwgZW50cnlQb2ludEFkZHJlc3MsIGVudHJ5UG9pbnRWZXJzaW9uIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHVzZXJPcGVyYXRpb24gPSBwYXJhbWV0ZXJzLnVzZXJPcGVyYXRpb247XG4gICAgY29uc3QgeyBhdXRob3JpemF0aW9uLCBjYWxsRGF0YSA9ICcweCcsIGNhbGxHYXNMaW1pdCwgbWF4RmVlUGVyR2FzLCBtYXhQcmlvcml0eUZlZVBlckdhcywgbm9uY2UsIHBheW1hc3RlckFuZERhdGEgPSAnMHgnLCBwcmVWZXJpZmljYXRpb25HYXMsIHNlbmRlciwgdmVyaWZpY2F0aW9uR2FzTGltaXQsIH0gPSB1c2VyT3BlcmF0aW9uO1xuICAgIGlmIChlbnRyeVBvaW50VmVyc2lvbiA9PT0gJzAuOCcpXG4gICAgICAgIHJldHVybiBoYXNoVHlwZWREYXRhKGdldFVzZXJPcGVyYXRpb25UeXBlZERhdGEoe1xuICAgICAgICAgICAgY2hhaW5JZCxcbiAgICAgICAgICAgIGVudHJ5UG9pbnRBZGRyZXNzLFxuICAgICAgICAgICAgdXNlck9wZXJhdGlvbixcbiAgICAgICAgfSkpO1xuICAgIGNvbnN0IHBhY2tlZFVzZXJPcCA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChlbnRyeVBvaW50VmVyc2lvbiA9PT0gJzAuNicpIHtcbiAgICAgICAgICAgIGNvbnN0IGZhY3RvcnkgPSB1c2VyT3BlcmF0aW9uLmluaXRDb2RlPy5zbGljZSgwLCA0Mik7XG4gICAgICAgICAgICBjb25zdCBmYWN0b3J5RGF0YSA9IHVzZXJPcGVyYXRpb24uaW5pdENvZGU/LnNsaWNlKDQyKTtcbiAgICAgICAgICAgIGNvbnN0IGluaXRDb2RlID0gZ2V0SW5pdENvZGUoe1xuICAgICAgICAgICAgICAgIGF1dGhvcml6YXRpb24sXG4gICAgICAgICAgICAgICAgZmFjdG9yeSxcbiAgICAgICAgICAgICAgICBmYWN0b3J5RGF0YSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGVuY29kZUFiaVBhcmFtZXRlcnMoW1xuICAgICAgICAgICAgICAgIHsgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICAgICAgeyB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICB7IHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICAgICAgICAgIHsgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICAgICAgeyB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICB7IHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgIHsgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgeyB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICB7IHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgIHsgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICBdLCBbXG4gICAgICAgICAgICAgICAgc2VuZGVyLFxuICAgICAgICAgICAgICAgIG5vbmNlLFxuICAgICAgICAgICAgICAgIGtlY2NhazI1Nihpbml0Q29kZSksXG4gICAgICAgICAgICAgICAga2VjY2FrMjU2KGNhbGxEYXRhKSxcbiAgICAgICAgICAgICAgICBjYWxsR2FzTGltaXQsXG4gICAgICAgICAgICAgICAgdmVyaWZpY2F0aW9uR2FzTGltaXQsXG4gICAgICAgICAgICAgICAgcHJlVmVyaWZpY2F0aW9uR2FzLFxuICAgICAgICAgICAgICAgIG1heEZlZVBlckdhcyxcbiAgICAgICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhcyxcbiAgICAgICAgICAgICAgICBrZWNjYWsyNTYocGF5bWFzdGVyQW5kRGF0YSksXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZW50cnlQb2ludFZlcnNpb24gPT09ICcwLjcnKSB7XG4gICAgICAgICAgICBjb25zdCBwYWNrZWRVc2VyT3AgPSB0b1BhY2tlZFVzZXJPcGVyYXRpb24odXNlck9wZXJhdGlvbik7XG4gICAgICAgICAgICByZXR1cm4gZW5jb2RlQWJpUGFyYW1ldGVycyhbXG4gICAgICAgICAgICAgICAgeyB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICB7IHR5cGU6ICd1aW50MjU2JyB9LFxuICAgICAgICAgICAgICAgIHsgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICAgICAgeyB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgICAgICB7IHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICAgICAgICAgIHsgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgICAgICAgICAgeyB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgICAgICB7IHR5cGU6ICdieXRlczMyJyB9LFxuICAgICAgICAgICAgXSwgW1xuICAgICAgICAgICAgICAgIHBhY2tlZFVzZXJPcC5zZW5kZXIsXG4gICAgICAgICAgICAgICAgcGFja2VkVXNlck9wLm5vbmNlLFxuICAgICAgICAgICAgICAgIGtlY2NhazI1NihwYWNrZWRVc2VyT3AuaW5pdENvZGUpLFxuICAgICAgICAgICAgICAgIGtlY2NhazI1NihwYWNrZWRVc2VyT3AuY2FsbERhdGEpLFxuICAgICAgICAgICAgICAgIHBhY2tlZFVzZXJPcC5hY2NvdW50R2FzTGltaXRzLFxuICAgICAgICAgICAgICAgIHBhY2tlZFVzZXJPcC5wcmVWZXJpZmljYXRpb25HYXMsXG4gICAgICAgICAgICAgICAgcGFja2VkVXNlck9wLmdhc0ZlZXMsXG4gICAgICAgICAgICAgICAga2VjY2FrMjU2KHBhY2tlZFVzZXJPcC5wYXltYXN0ZXJBbmREYXRhKSxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgZW50cnlQb2ludFZlcnNpb24gXCIke2VudHJ5UG9pbnRWZXJzaW9ufVwiIG5vdCBzdXBwb3J0ZWQuYCk7XG4gICAgfSkoKTtcbiAgICByZXR1cm4ga2VjY2FrMjU2KGVuY29kZUFiaVBhcmFtZXRlcnMoW3sgdHlwZTogJ2J5dGVzMzInIH0sIHsgdHlwZTogJ2FkZHJlc3MnIH0sIHsgdHlwZTogJ3VpbnQyNTYnIH1dLCBba2VjY2FrMjU2KHBhY2tlZFVzZXJPcCksIGVudHJ5UG9pbnRBZGRyZXNzLCBCaWdJbnQoY2hhaW5JZCldKSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRVc2VyT3BlcmF0aW9uSGFzaC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationHash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationTypedData.js": /*!*****************************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationTypedData.js ***! \*****************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUserOperationTypedData: () => (/* binding */ getUserOperationTypedData)\n/* harmony export */ });\n/* harmony import */ var _toPackedUserOperation_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPackedUserOperation.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js\");\n\nconst types = {\n PackedUserOperation: [\n { type: 'address', name: 'sender' },\n { type: 'uint256', name: 'nonce' },\n { type: 'bytes', name: 'initCode' },\n { type: 'bytes', name: 'callData' },\n { type: 'bytes32', name: 'accountGasLimits' },\n { type: 'uint256', name: 'preVerificationGas' },\n { type: 'bytes32', name: 'gasFees' },\n { type: 'bytes', name: 'paymasterAndData' },\n ],\n};\nfunction getUserOperationTypedData(parameters) {\n const { chainId, entryPointAddress, userOperation } = parameters;\n const packedUserOp = (0,_toPackedUserOperation_js__WEBPACK_IMPORTED_MODULE_0__.toPackedUserOperation)(userOperation);\n return {\n types,\n primaryType: 'PackedUserOperation',\n domain: {\n name: 'ERC4337',\n version: '1',\n chainId,\n verifyingContract: entryPointAddress,\n },\n message: packedUserOp,\n };\n}\n//# sourceMappingURL=getUserOperationTypedData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy91c2VyT3BlcmF0aW9uL2dldFVzZXJPcGVyYXRpb25UeXBlZERhdGEuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBbUU7QUFDbkU7QUFDQTtBQUNBLFVBQVUsaUNBQWlDO0FBQzNDLFVBQVUsZ0NBQWdDO0FBQzFDLFVBQVUsaUNBQWlDO0FBQzNDLFVBQVUsaUNBQWlDO0FBQzNDLFVBQVUsMkNBQTJDO0FBQ3JELFVBQVUsNkNBQTZDO0FBQ3ZELFVBQVUsa0NBQWtDO0FBQzVDLFVBQVUseUNBQXlDO0FBQ25EO0FBQ0E7QUFDTztBQUNQLFlBQVksNENBQTRDO0FBQ3hELHlCQUF5QixnRkFBcUI7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy91c2VyT3BlcmF0aW9uL2dldFVzZXJPcGVyYXRpb25UeXBlZERhdGEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdG9QYWNrZWRVc2VyT3BlcmF0aW9uIH0gZnJvbSAnLi90b1BhY2tlZFVzZXJPcGVyYXRpb24uanMnO1xuY29uc3QgdHlwZXMgPSB7XG4gICAgUGFja2VkVXNlck9wZXJhdGlvbjogW1xuICAgICAgICB7IHR5cGU6ICdhZGRyZXNzJywgbmFtZTogJ3NlbmRlcicgfSxcbiAgICAgICAgeyB0eXBlOiAndWludDI1NicsIG5hbWU6ICdub25jZScgfSxcbiAgICAgICAgeyB0eXBlOiAnYnl0ZXMnLCBuYW1lOiAnaW5pdENvZGUnIH0sXG4gICAgICAgIHsgdHlwZTogJ2J5dGVzJywgbmFtZTogJ2NhbGxEYXRhJyB9LFxuICAgICAgICB7IHR5cGU6ICdieXRlczMyJywgbmFtZTogJ2FjY291bnRHYXNMaW1pdHMnIH0sXG4gICAgICAgIHsgdHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAncHJlVmVyaWZpY2F0aW9uR2FzJyB9LFxuICAgICAgICB7IHR5cGU6ICdieXRlczMyJywgbmFtZTogJ2dhc0ZlZXMnIH0sXG4gICAgICAgIHsgdHlwZTogJ2J5dGVzJywgbmFtZTogJ3BheW1hc3RlckFuZERhdGEnIH0sXG4gICAgXSxcbn07XG5leHBvcnQgZnVuY3Rpb24gZ2V0VXNlck9wZXJhdGlvblR5cGVkRGF0YShwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBjaGFpbklkLCBlbnRyeVBvaW50QWRkcmVzcywgdXNlck9wZXJhdGlvbiB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBwYWNrZWRVc2VyT3AgPSB0b1BhY2tlZFVzZXJPcGVyYXRpb24odXNlck9wZXJhdGlvbik7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZXMsXG4gICAgICAgIHByaW1hcnlUeXBlOiAnUGFja2VkVXNlck9wZXJhdGlvbicsXG4gICAgICAgIGRvbWFpbjoge1xuICAgICAgICAgICAgbmFtZTogJ0VSQzQzMzcnLFxuICAgICAgICAgICAgdmVyc2lvbjogJzEnLFxuICAgICAgICAgICAgY2hhaW5JZCxcbiAgICAgICAgICAgIHZlcmlmeWluZ0NvbnRyYWN0OiBlbnRyeVBvaW50QWRkcmVzcyxcbiAgICAgICAgfSxcbiAgICAgICAgbWVzc2FnZTogcGFja2VkVXNlck9wLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRVc2VyT3BlcmF0aW9uVHlwZWREYXRhLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getUserOperationTypedData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js": /*!*************************************************************************************************!*\ !*** ./node_modules/viem/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js ***! \*************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toPackedUserOperation: () => (/* binding */ toPackedUserOperation)\n/* harmony export */ });\n/* harmony import */ var _utils_data_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _utils_data_pad_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/data/pad.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/pad.js\");\n/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/index.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _getInitCode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getInitCode.js */ \"(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/getInitCode.js\");\n\n\n\n\nfunction toPackedUserOperation(userOperation) {\n const { callGasLimit, callData, maxPriorityFeePerGas, maxFeePerGas, paymaster, paymasterData, paymasterPostOpGasLimit, paymasterVerificationGasLimit, sender, signature = '0x', verificationGasLimit, } = userOperation;\n const accountGasLimits = (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_0__.concat)([\n (0,_utils_data_pad_js__WEBPACK_IMPORTED_MODULE_1__.pad)((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(verificationGasLimit || 0n), { size: 16 }),\n (0,_utils_data_pad_js__WEBPACK_IMPORTED_MODULE_1__.pad)((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(callGasLimit || 0n), { size: 16 }),\n ]);\n const initCode = (0,_getInitCode_js__WEBPACK_IMPORTED_MODULE_3__.getInitCode)(userOperation);\n const gasFees = (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_0__.concat)([\n (0,_utils_data_pad_js__WEBPACK_IMPORTED_MODULE_1__.pad)((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(maxPriorityFeePerGas || 0n), { size: 16 }),\n (0,_utils_data_pad_js__WEBPACK_IMPORTED_MODULE_1__.pad)((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(maxFeePerGas || 0n), { size: 16 }),\n ]);\n const nonce = userOperation.nonce ?? 0n;\n const paymasterAndData = paymaster\n ? (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_0__.concat)([\n paymaster,\n (0,_utils_data_pad_js__WEBPACK_IMPORTED_MODULE_1__.pad)((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(paymasterVerificationGasLimit || 0n), {\n size: 16,\n }),\n (0,_utils_data_pad_js__WEBPACK_IMPORTED_MODULE_1__.pad)((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(paymasterPostOpGasLimit || 0n), {\n size: 16,\n }),\n paymasterData || '0x',\n ])\n : '0x';\n const preVerificationGas = userOperation.preVerificationGas ?? 0n;\n return {\n accountGasLimits,\n callData,\n initCode,\n gasFees,\n nonce,\n paymasterAndData,\n preVerificationGas,\n sender,\n signature,\n };\n}\n//# sourceMappingURL=toPackedUserOperation.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudC1hYnN0cmFjdGlvbi91dGlscy91c2VyT3BlcmF0aW9uL3RvUGFja2VkVXNlck9wZXJhdGlvbi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUF1RDtBQUNOO0FBQ0s7QUFDUDtBQUN4QztBQUNQLFlBQVksZ01BQWdNO0FBQzVNLDZCQUE2Qiw2REFBTTtBQUNuQyxRQUFRLHVEQUFHLENBQUMsNERBQVcsZ0NBQWdDLFVBQVU7QUFDakUsUUFBUSx1REFBRyxDQUFDLDREQUFXLHdCQUF3QixVQUFVO0FBQ3pEO0FBQ0EscUJBQXFCLDREQUFXO0FBQ2hDLG9CQUFvQiw2REFBTTtBQUMxQixRQUFRLHVEQUFHLENBQUMsNERBQVcsZ0NBQWdDLFVBQVU7QUFDakUsUUFBUSx1REFBRyxDQUFDLDREQUFXLHdCQUF3QixVQUFVO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBLFVBQVUsNkRBQU07QUFDaEI7QUFDQSxZQUFZLHVEQUFHLENBQUMsNERBQVc7QUFDM0I7QUFDQSxhQUFhO0FBQ2IsWUFBWSx1REFBRyxDQUFDLDREQUFXO0FBQzNCO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjY291bnQtYWJzdHJhY3Rpb24vdXRpbHMvdXNlck9wZXJhdGlvbi90b1BhY2tlZFVzZXJPcGVyYXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29uY2F0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZGF0YS9jb25jYXQuanMnO1xuaW1wb3J0IHsgcGFkIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZGF0YS9wYWQuanMnO1xuaW1wb3J0IHsgbnVtYmVyVG9IZXggfSBmcm9tICcuLi8uLi8uLi91dGlscy9pbmRleC5qcyc7XG5pbXBvcnQgeyBnZXRJbml0Q29kZSB9IGZyb20gJy4vZ2V0SW5pdENvZGUuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIHRvUGFja2VkVXNlck9wZXJhdGlvbih1c2VyT3BlcmF0aW9uKSB7XG4gICAgY29uc3QgeyBjYWxsR2FzTGltaXQsIGNhbGxEYXRhLCBtYXhQcmlvcml0eUZlZVBlckdhcywgbWF4RmVlUGVyR2FzLCBwYXltYXN0ZXIsIHBheW1hc3RlckRhdGEsIHBheW1hc3RlclBvc3RPcEdhc0xpbWl0LCBwYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCwgc2VuZGVyLCBzaWduYXR1cmUgPSAnMHgnLCB2ZXJpZmljYXRpb25HYXNMaW1pdCwgfSA9IHVzZXJPcGVyYXRpb247XG4gICAgY29uc3QgYWNjb3VudEdhc0xpbWl0cyA9IGNvbmNhdChbXG4gICAgICAgIHBhZChudW1iZXJUb0hleCh2ZXJpZmljYXRpb25HYXNMaW1pdCB8fCAwbiksIHsgc2l6ZTogMTYgfSksXG4gICAgICAgIHBhZChudW1iZXJUb0hleChjYWxsR2FzTGltaXQgfHwgMG4pLCB7IHNpemU6IDE2IH0pLFxuICAgIF0pO1xuICAgIGNvbnN0IGluaXRDb2RlID0gZ2V0SW5pdENvZGUodXNlck9wZXJhdGlvbik7XG4gICAgY29uc3QgZ2FzRmVlcyA9IGNvbmNhdChbXG4gICAgICAgIHBhZChudW1iZXJUb0hleChtYXhQcmlvcml0eUZlZVBlckdhcyB8fCAwbiksIHsgc2l6ZTogMTYgfSksXG4gICAgICAgIHBhZChudW1iZXJUb0hleChtYXhGZWVQZXJHYXMgfHwgMG4pLCB7IHNpemU6IDE2IH0pLFxuICAgIF0pO1xuICAgIGNvbnN0IG5vbmNlID0gdXNlck9wZXJhdGlvbi5ub25jZSA/PyAwbjtcbiAgICBjb25zdCBwYXltYXN0ZXJBbmREYXRhID0gcGF5bWFzdGVyXG4gICAgICAgID8gY29uY2F0KFtcbiAgICAgICAgICAgIHBheW1hc3RlcixcbiAgICAgICAgICAgIHBhZChudW1iZXJUb0hleChwYXltYXN0ZXJWZXJpZmljYXRpb25HYXNMaW1pdCB8fCAwbiksIHtcbiAgICAgICAgICAgICAgICBzaXplOiAxNixcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgcGFkKG51bWJlclRvSGV4KHBheW1hc3RlclBvc3RPcEdhc0xpbWl0IHx8IDBuKSwge1xuICAgICAgICAgICAgICAgIHNpemU6IDE2LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBwYXltYXN0ZXJEYXRhIHx8ICcweCcsXG4gICAgICAgIF0pXG4gICAgICAgIDogJzB4JztcbiAgICBjb25zdCBwcmVWZXJpZmljYXRpb25HYXMgPSB1c2VyT3BlcmF0aW9uLnByZVZlcmlmaWNhdGlvbkdhcyA/PyAwbjtcbiAgICByZXR1cm4ge1xuICAgICAgICBhY2NvdW50R2FzTGltaXRzLFxuICAgICAgICBjYWxsRGF0YSxcbiAgICAgICAgaW5pdENvZGUsXG4gICAgICAgIGdhc0ZlZXMsXG4gICAgICAgIG5vbmNlLFxuICAgICAgICBwYXltYXN0ZXJBbmREYXRhLFxuICAgICAgICBwcmVWZXJpZmljYXRpb25HYXMsXG4gICAgICAgIHNlbmRlcixcbiAgICAgICAgc2lnbmF0dXJlLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD10b1BhY2tlZFVzZXJPcGVyYXRpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/account-abstraction/utils/userOperation/toPackedUserOperation.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/publicKeyToAddress.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/_esm/accounts/utils/publicKeyToAddress.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ publicKeyToAddress: () => (/* binding */ publicKeyToAddress)\n/* harmony export */ });\n/* harmony import */ var _utils_address_getAddress_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/address/getAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/getAddress.js\");\n/* harmony import */ var _utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n\n\n/**\n * @description Converts an ECDSA public key to an address.\n *\n * @param publicKey The public key to convert.\n *\n * @returns The address.\n */\nfunction publicKeyToAddress(publicKey) {\n const address = (0,_utils_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_0__.keccak256)(`0x${publicKey.substring(4)}`).substring(26);\n return (0,_utils_address_getAddress_js__WEBPACK_IMPORTED_MODULE_1__.checksumAddress)(`0x${address}`);\n}\n//# sourceMappingURL=publicKeyToAddress.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudHMvdXRpbHMvcHVibGljS2V5VG9BZGRyZXNzLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFxRTtBQUNWO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxvQkFBb0IsbUVBQVMsTUFBTSx1QkFBdUI7QUFDMUQsV0FBVyw2RUFBZSxNQUFNLFFBQVE7QUFDeEM7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWNjb3VudHMvdXRpbHMvcHVibGljS2V5VG9BZGRyZXNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNoZWNrc3VtQWRkcmVzcywgfSBmcm9tICcuLi8uLi91dGlscy9hZGRyZXNzL2dldEFkZHJlc3MuanMnO1xuaW1wb3J0IHsga2VjY2FrMjU2LCB9IGZyb20gJy4uLy4uL3V0aWxzL2hhc2gva2VjY2FrMjU2LmpzJztcbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbnZlcnRzIGFuIEVDRFNBIHB1YmxpYyBrZXkgdG8gYW4gYWRkcmVzcy5cbiAqXG4gKiBAcGFyYW0gcHVibGljS2V5IFRoZSBwdWJsaWMga2V5IHRvIGNvbnZlcnQuXG4gKlxuICogQHJldHVybnMgVGhlIGFkZHJlc3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwdWJsaWNLZXlUb0FkZHJlc3MocHVibGljS2V5KSB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGtlY2NhazI1NihgMHgke3B1YmxpY0tleS5zdWJzdHJpbmcoNCl9YCkuc3Vic3RyaW5nKDI2KTtcbiAgICByZXR1cm4gY2hlY2tzdW1BZGRyZXNzKGAweCR7YWRkcmVzc31gKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXB1YmxpY0tleVRvQWRkcmVzcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/publicKeyToAddress.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsAddress.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/actions/ens/getEnsAddress.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEnsAddress: () => (/* binding */ getEnsAddress)\n/* harmony export */ });\n/* harmony import */ var _constants_abis_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../constants/abis.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var _utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/abi/decodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/chain/getChainContractAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js\");\n/* harmony import */ var _utils_data_trim_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/data/trim.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/trim.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_ens_errors_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../utils/ens/errors.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/errors.js\");\n/* harmony import */ var _utils_ens_localBatchGatewayRequest_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/ens/localBatchGatewayRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/localBatchGatewayRequest.js\");\n/* harmony import */ var _utils_ens_namehash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/ens/namehash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/namehash.js\");\n/* harmony import */ var _utils_ens_packetToBytes_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/ens/packetToBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/packetToBytes.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _public_readContract_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../public/readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Gets address for ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsAddress\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsAddressParameters}\n * @returns Address for ENS name or `null` if not found. {@link GetEnsAddressReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsAddress, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const ensAddress = await getEnsAddress(client, {\n * name: normalize('wevm.eth'),\n * })\n * // '0xd2135CfB216b74109775236E36d4b433F1DF507B'\n */\nasync function getEnsAddress(client, parameters) {\n const { blockNumber, blockTag, coinType, name, gatewayUrls, strict } = parameters;\n const { chain } = client;\n const universalResolverAddress = (() => {\n if (parameters.universalResolverAddress)\n return parameters.universalResolverAddress;\n if (!chain)\n throw new Error('client chain not configured. universalResolverAddress is required.');\n return (0,_utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__.getChainContractAddress)({\n blockNumber,\n chain,\n contract: 'ensUniversalResolver',\n });\n })();\n const tlds = chain?.ensTlds;\n if (tlds && !tlds.some((tld) => name.endsWith(tld)))\n return null;\n const args = (() => {\n if (coinType != null)\n return [(0,_utils_ens_namehash_js__WEBPACK_IMPORTED_MODULE_1__.namehash)(name), BigInt(coinType)];\n return [(0,_utils_ens_namehash_js__WEBPACK_IMPORTED_MODULE_1__.namehash)(name)];\n })();\n try {\n const functionData = (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_2__.encodeFunctionData)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_3__.addressResolverAbi,\n functionName: 'addr',\n args,\n });\n const readContractParameters = {\n address: universalResolverAddress,\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_3__.universalResolverResolveAbi,\n functionName: 'resolveWithGateways',\n args: [\n (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__.toHex)((0,_utils_ens_packetToBytes_js__WEBPACK_IMPORTED_MODULE_5__.packetToBytes)(name)),\n functionData,\n gatewayUrls ?? [_utils_ens_localBatchGatewayRequest_js__WEBPACK_IMPORTED_MODULE_6__.localBatchGatewayUrl],\n ],\n blockNumber,\n blockTag,\n };\n const readContractAction = (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_7__.getAction)(client, _public_readContract_js__WEBPACK_IMPORTED_MODULE_8__.readContract, 'readContract');\n const res = await readContractAction(readContractParameters);\n if (res[0] === '0x')\n return null;\n const address = (0,_utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_9__.decodeFunctionResult)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_3__.addressResolverAbi,\n args,\n functionName: 'addr',\n data: res[0],\n });\n if (address === '0x')\n return null;\n if ((0,_utils_data_trim_js__WEBPACK_IMPORTED_MODULE_10__.trim)(address) === '0x00')\n return null;\n return address;\n }\n catch (err) {\n if (strict)\n throw err;\n if ((0,_utils_ens_errors_js__WEBPACK_IMPORTED_MODULE_11__.isNullUniversalResolverError)(err))\n return null;\n throw err;\n }\n}\n//# sourceMappingURL=getEnsAddress.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9lbnMvZ2V0RW5zQWRkcmVzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQTJGO0FBQ1g7QUFDSjtBQUNZO0FBQ3hDO0FBQ007QUFDbUI7QUFDVTtBQUM1QjtBQUNXO0FBQ2I7QUFDSztBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDBEQUEwRDtBQUMxRDtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksMkJBQTJCO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNPO0FBQ1AsWUFBWSw2REFBNkQ7QUFDekUsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLGdHQUF1QjtBQUN0QztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsZ0VBQVE7QUFDNUIsZ0JBQWdCLGdFQUFRO0FBQ3hCLEtBQUs7QUFDTDtBQUNBLDZCQUE2QixvRkFBa0I7QUFDL0MsaUJBQWlCLGtFQUFrQjtBQUNuQztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxpQkFBaUIsMkVBQTJCO0FBQzVDO0FBQ0E7QUFDQSxnQkFBZ0IsK0RBQUssQ0FBQywwRUFBYTtBQUNuQztBQUNBLGdDQUFnQyx3RkFBb0I7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsOERBQVMsU0FBUyxpRUFBWTtBQUNqRTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isd0ZBQW9CO0FBQzVDLGlCQUFpQixrRUFBa0I7QUFDbkM7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxZQUFZLDBEQUFJO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksbUZBQTRCO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvZW5zL2dldEVuc0FkZHJlc3MuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWRkcmVzc1Jlc29sdmVyQWJpLCB1bml2ZXJzYWxSZXNvbHZlclJlc29sdmVBYmksIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2FiaXMuanMnO1xuaW1wb3J0IHsgZGVjb2RlRnVuY3Rpb25SZXN1bHQsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2RlY29kZUZ1bmN0aW9uUmVzdWx0LmpzJztcbmltcG9ydCB7IGVuY29kZUZ1bmN0aW9uRGF0YSwgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRnVuY3Rpb25EYXRhLmpzJztcbmltcG9ydCB7IGdldENoYWluQ29udHJhY3RBZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2NoYWluL2dldENoYWluQ29udHJhY3RBZGRyZXNzLmpzJztcbmltcG9ydCB7IHRyaW0gfSBmcm9tICcuLi8uLi91dGlscy9kYXRhL3RyaW0uanMnO1xuaW1wb3J0IHsgdG9IZXggfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBpc051bGxVbml2ZXJzYWxSZXNvbHZlckVycm9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5zL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBsb2NhbEJhdGNoR2F0ZXdheVVybCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vucy9sb2NhbEJhdGNoR2F0ZXdheVJlcXVlc3QuanMnO1xuaW1wb3J0IHsgbmFtZWhhc2ggfSBmcm9tICcuLi8uLi91dGlscy9lbnMvbmFtZWhhc2guanMnO1xuaW1wb3J0IHsgcGFja2V0VG9CeXRlcywgfSBmcm9tICcuLi8uLi91dGlscy9lbnMvcGFja2V0VG9CeXRlcy5qcyc7XG5pbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgcmVhZENvbnRyYWN0LCB9IGZyb20gJy4uL3B1YmxpYy9yZWFkQ29udHJhY3QuanMnO1xuLyoqXG4gKiBHZXRzIGFkZHJlc3MgZm9yIEVOUyBuYW1lLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvZW5zL2FjdGlvbnMvZ2V0RW5zQWRkcmVzc1xuICogLSBFeGFtcGxlczogaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9naXRodWIvd2V2bS92aWVtL3RyZWUvbWFpbi9leGFtcGxlcy9lbnNcbiAqXG4gKiBDYWxscyBgcmVzb2x2ZShieXRlcywgYnl0ZXMpYCBvbiBFTlMgVW5pdmVyc2FsIFJlc29sdmVyIENvbnRyYWN0LlxuICpcbiAqIFNpbmNlIEVOUyBuYW1lcyBwcm9oaWJpdCBjZXJ0YWluIGZvcmJpZGRlbiBjaGFyYWN0ZXJzIChlLmcuIHVuZGVyc2NvcmUpIGFuZCBoYXZlIG90aGVyIHZhbGlkYXRpb24gcnVsZXMsIHlvdSBsaWtlbHkgd2FudCB0byBbbm9ybWFsaXplIEVOUyBuYW1lc10oaHR0cHM6Ly9kb2NzLmVucy5kb21haW5zL2NvbnRyYWN0LWFwaS1yZWZlcmVuY2UvbmFtZS1wcm9jZXNzaW5nI25vcm1hbGlzaW5nLW5hbWVzKSB3aXRoIFtVVFMtNDYgbm9ybWFsaXphdGlvbl0oaHR0cHM6Ly91bmljb2RlLm9yZy9yZXBvcnRzL3RyNDYpIGJlZm9yZSBwYXNzaW5nIHRoZW0gdG8gYGdldEVuc0FkZHJlc3NgLiBZb3UgY2FuIHVzZSB0aGUgYnVpbHQtaW4gW2Bub3JtYWxpemVgXShodHRwczovL3ZpZW0uc2gvZG9jcy9lbnMvdXRpbGl0aWVzL25vcm1hbGl6ZSkgZnVuY3Rpb24gZm9yIHRoaXMuXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIEdldEVuc0FkZHJlc3NQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQWRkcmVzcyBmb3IgRU5TIG5hbWUgb3IgYG51bGxgIGlmIG5vdCBmb3VuZC4ge0BsaW5rIEdldEVuc0FkZHJlc3NSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZ2V0RW5zQWRkcmVzcywgbm9ybWFsaXplIH0gZnJvbSAndmllbS9lbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGVuc0FkZHJlc3MgPSBhd2FpdCBnZXRFbnNBZGRyZXNzKGNsaWVudCwge1xuICogICBuYW1lOiBub3JtYWxpemUoJ3dldm0uZXRoJyksXG4gKiB9KVxuICogLy8gJzB4ZDIxMzVDZkIyMTZiNzQxMDk3NzUyMzZFMzZkNGI0MzNGMURGNTA3QidcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEVuc0FkZHJlc3MoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBibG9ja051bWJlciwgYmxvY2tUYWcsIGNvaW5UeXBlLCBuYW1lLCBnYXRld2F5VXJscywgc3RyaWN0IH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHsgY2hhaW4gfSA9IGNsaWVudDtcbiAgICBjb25zdCB1bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MgPSAoKCkgPT4ge1xuICAgICAgICBpZiAocGFyYW1ldGVycy51bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MpXG4gICAgICAgICAgICByZXR1cm4gcGFyYW1ldGVycy51bml2ZXJzYWxSZXNvbHZlckFkZHJlc3M7XG4gICAgICAgIGlmICghY2hhaW4pXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2NsaWVudCBjaGFpbiBub3QgY29uZmlndXJlZC4gdW5pdmVyc2FsUmVzb2x2ZXJBZGRyZXNzIGlzIHJlcXVpcmVkLicpO1xuICAgICAgICByZXR1cm4gZ2V0Q2hhaW5Db250cmFjdEFkZHJlc3Moe1xuICAgICAgICAgICAgYmxvY2tOdW1iZXIsXG4gICAgICAgICAgICBjaGFpbixcbiAgICAgICAgICAgIGNvbnRyYWN0OiAnZW5zVW5pdmVyc2FsUmVzb2x2ZXInLFxuICAgICAgICB9KTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IHRsZHMgPSBjaGFpbj8uZW5zVGxkcztcbiAgICBpZiAodGxkcyAmJiAhdGxkcy5zb21lKCh0bGQpID0+IG5hbWUuZW5kc1dpdGgodGxkKSkpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGNvbnN0IGFyZ3MgPSAoKCkgPT4ge1xuICAgICAgICBpZiAoY29pblR5cGUgIT0gbnVsbClcbiAgICAgICAgICAgIHJldHVybiBbbmFtZWhhc2gobmFtZSksIEJpZ0ludChjb2luVHlwZSldO1xuICAgICAgICByZXR1cm4gW25hbWVoYXNoKG5hbWUpXTtcbiAgICB9KSgpO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGZ1bmN0aW9uRGF0YSA9IGVuY29kZUZ1bmN0aW9uRGF0YSh7XG4gICAgICAgICAgICBhYmk6IGFkZHJlc3NSZXNvbHZlckFiaSxcbiAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ2FkZHInLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHJlYWRDb250cmFjdFBhcmFtZXRlcnMgPSB7XG4gICAgICAgICAgICBhZGRyZXNzOiB1bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MsXG4gICAgICAgICAgICBhYmk6IHVuaXZlcnNhbFJlc29sdmVyUmVzb2x2ZUFiaSxcbiAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ3Jlc29sdmVXaXRoR2F0ZXdheXMnLFxuICAgICAgICAgICAgYXJnczogW1xuICAgICAgICAgICAgICAgIHRvSGV4KHBhY2tldFRvQnl0ZXMobmFtZSkpLFxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uRGF0YSxcbiAgICAgICAgICAgICAgICBnYXRld2F5VXJscyA/PyBbbG9jYWxCYXRjaEdhdGV3YXlVcmxdLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICAgICAgYmxvY2tUYWcsXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHJlYWRDb250cmFjdEFjdGlvbiA9IGdldEFjdGlvbihjbGllbnQsIHJlYWRDb250cmFjdCwgJ3JlYWRDb250cmFjdCcpO1xuICAgICAgICBjb25zdCByZXMgPSBhd2FpdCByZWFkQ29udHJhY3RBY3Rpb24ocmVhZENvbnRyYWN0UGFyYW1ldGVycyk7XG4gICAgICAgIGlmIChyZXNbMF0gPT09ICcweCcpXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgY29uc3QgYWRkcmVzcyA9IGRlY29kZUZ1bmN0aW9uUmVzdWx0KHtcbiAgICAgICAgICAgIGFiaTogYWRkcmVzc1Jlc29sdmVyQWJpLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ2FkZHInLFxuICAgICAgICAgICAgZGF0YTogcmVzWzBdLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGFkZHJlc3MgPT09ICcweCcpXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgaWYgKHRyaW0oYWRkcmVzcykgPT09ICcweDAwJylcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICByZXR1cm4gYWRkcmVzcztcbiAgICB9XG4gICAgY2F0Y2ggKGVycikge1xuICAgICAgICBpZiAoc3RyaWN0KVxuICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICBpZiAoaXNOdWxsVW5pdmVyc2FsUmVzb2x2ZXJFcnJvcihlcnIpKVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIHRocm93IGVycjtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRFbnNBZGRyZXNzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsAddress.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsAvatar.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/actions/ens/getEnsAvatar.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEnsAvatar: () => (/* binding */ getEnsAvatar)\n/* harmony export */ });\n/* harmony import */ var _utils_ens_avatar_parseAvatarRecord_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/ens/avatar/parseAvatarRecord.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/avatar/parseAvatarRecord.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _getEnsText_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getEnsText.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsText.js\");\n\n\n\n/**\n * Gets the avatar of an ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsAvatar\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls [`getEnsText`](https://viem.sh/docs/ens/actions/getEnsText) with `key` set to `'avatar'`.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsAvatarParameters}\n * @returns Avatar URI or `null` if not found. {@link GetEnsAvatarReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsAvatar, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const ensAvatar = await getEnsAvatar(client, {\n * name: normalize('wevm.eth'),\n * })\n * // 'https://ipfs.io/ipfs/Qma8mnp6xV3J2cRNf3mTth5C8nV11CAnceVinc3y8jSbio'\n */\nasync function getEnsAvatar(client, { blockNumber, blockTag, assetGatewayUrls, name, gatewayUrls, strict, universalResolverAddress, }) {\n const record = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__.getAction)(client, _getEnsText_js__WEBPACK_IMPORTED_MODULE_1__.getEnsText, 'getEnsText')({\n blockNumber,\n blockTag,\n key: 'avatar',\n name,\n universalResolverAddress,\n gatewayUrls,\n strict,\n });\n if (!record)\n return null;\n try {\n return await (0,_utils_ens_avatar_parseAvatarRecord_js__WEBPACK_IMPORTED_MODULE_2__.parseAvatarRecord)(client, {\n record,\n gatewayUrls: assetGatewayUrls,\n });\n }\n catch {\n return null;\n }\n}\n//# sourceMappingURL=getEnsAvatar.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9lbnMvZ2V0RW5zQXZhdGFyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBaUY7QUFDNUI7QUFDUDtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLGdEQUFnRDtBQUNoRDtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksMEJBQTBCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNPLHNDQUFzQywrRkFBK0Y7QUFDNUkseUJBQXlCLDhEQUFTLFNBQVMsc0RBQVU7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHlGQUFpQjtBQUN0QztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9lbnMvZ2V0RW5zQXZhdGFyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQXZhdGFyUmVjb3JkLCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vucy9hdmF0YXIvcGFyc2VBdmF0YXJSZWNvcmQuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGdldEVuc1RleHQsIH0gZnJvbSAnLi9nZXRFbnNUZXh0LmpzJztcbi8qKlxuICogR2V0cyB0aGUgYXZhdGFyIG9mIGFuIEVOUyBuYW1lLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvZW5zL2FjdGlvbnMvZ2V0RW5zQXZhdGFyXG4gKiAtIEV4YW1wbGVzOiBodHRwczovL3N0YWNrYmxpdHouY29tL2dpdGh1Yi93ZXZtL3ZpZW0vdHJlZS9tYWluL2V4YW1wbGVzL2Vuc1xuICpcbiAqIENhbGxzIFtgZ2V0RW5zVGV4dGBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2Vucy9hY3Rpb25zL2dldEVuc1RleHQpIHdpdGggYGtleWAgc2V0IHRvIGAnYXZhdGFyJ2AuXG4gKlxuICogU2luY2UgRU5TIG5hbWVzIHByb2hpYml0IGNlcnRhaW4gZm9yYmlkZGVuIGNoYXJhY3RlcnMgKGUuZy4gdW5kZXJzY29yZSkgYW5kIGhhdmUgb3RoZXIgdmFsaWRhdGlvbiBydWxlcywgeW91IGxpa2VseSB3YW50IHRvIFtub3JtYWxpemUgRU5TIG5hbWVzXShodHRwczovL2RvY3MuZW5zLmRvbWFpbnMvY29udHJhY3QtYXBpLXJlZmVyZW5jZS9uYW1lLXByb2Nlc3Npbmcjbm9ybWFsaXNpbmctbmFtZXMpIHdpdGggW1VUUy00NiBub3JtYWxpemF0aW9uXShodHRwczovL3VuaWNvZGUub3JnL3JlcG9ydHMvdHI0NikgYmVmb3JlIHBhc3NpbmcgdGhlbSB0byBgZ2V0RW5zQWRkcmVzc2AuIFlvdSBjYW4gdXNlIHRoZSBidWlsdC1pbiBbYG5vcm1hbGl6ZWBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2Vucy91dGlsaXRpZXMvbm9ybWFsaXplKSBmdW5jdGlvbiBmb3IgdGhpcy5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0RW5zQXZhdGFyUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIEF2YXRhciBVUkkgb3IgYG51bGxgIGlmIG5vdCBmb3VuZC4ge0BsaW5rIEdldEVuc0F2YXRhclJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRFbnNBdmF0YXIsIG5vcm1hbGl6ZSB9IGZyb20gJ3ZpZW0vZW5zJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBlbnNBdmF0YXIgPSBhd2FpdCBnZXRFbnNBdmF0YXIoY2xpZW50LCB7XG4gKiAgIG5hbWU6IG5vcm1hbGl6ZSgnd2V2bS5ldGgnKSxcbiAqIH0pXG4gKiAvLyAnaHR0cHM6Ly9pcGZzLmlvL2lwZnMvUW1hOG1ucDZ4VjNKMmNSTmYzbVR0aDVDOG5WMTFDQW5jZVZpbmMzeThqU2JpbydcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEVuc0F2YXRhcihjbGllbnQsIHsgYmxvY2tOdW1iZXIsIGJsb2NrVGFnLCBhc3NldEdhdGV3YXlVcmxzLCBuYW1lLCBnYXRld2F5VXJscywgc3RyaWN0LCB1bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MsIH0pIHtcbiAgICBjb25zdCByZWNvcmQgPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBnZXRFbnNUZXh0LCAnZ2V0RW5zVGV4dCcpKHtcbiAgICAgICAgYmxvY2tOdW1iZXIsXG4gICAgICAgIGJsb2NrVGFnLFxuICAgICAgICBrZXk6ICdhdmF0YXInLFxuICAgICAgICBuYW1lLFxuICAgICAgICB1bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MsXG4gICAgICAgIGdhdGV3YXlVcmxzLFxuICAgICAgICBzdHJpY3QsXG4gICAgfSk7XG4gICAgaWYgKCFyZWNvcmQpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBhd2FpdCBwYXJzZUF2YXRhclJlY29yZChjbGllbnQsIHtcbiAgICAgICAgICAgIHJlY29yZCxcbiAgICAgICAgICAgIGdhdGV3YXlVcmxzOiBhc3NldEdhdGV3YXlVcmxzLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgY2F0Y2gge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRFbnNBdmF0YXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsAvatar.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsName.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/actions/ens/getEnsName.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEnsName: () => (/* binding */ getEnsName)\n/* harmony export */ });\n/* harmony import */ var _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../constants/abis.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var _utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/chain/getChainContractAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js\");\n/* harmony import */ var _utils_ens_errors_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/ens/errors.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/errors.js\");\n/* harmony import */ var _utils_ens_localBatchGatewayRequest_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/ens/localBatchGatewayRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/localBatchGatewayRequest.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _public_readContract_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../public/readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n\n\n\n\n\n\n/**\n * Gets primary name for specified address.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsName\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `reverse(bytes)` on ENS Universal Resolver Contract to \"reverse resolve\" the address to the primary ENS name.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsNameParameters}\n * @returns Name or `null` if not found. {@link GetEnsNameReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsName } from 'viem/ens'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const ensName = await getEnsName(client, {\n * address: '0xd2135CfB216b74109775236E36d4b433F1DF507B',\n * })\n * // 'wevm.eth'\n */\nasync function getEnsName(client, parameters) {\n const { address, blockNumber, blockTag, coinType = 60n, gatewayUrls, strict, } = parameters;\n const { chain } = client;\n const universalResolverAddress = (() => {\n if (parameters.universalResolverAddress)\n return parameters.universalResolverAddress;\n if (!chain)\n throw new Error('client chain not configured. universalResolverAddress is required.');\n return (0,_utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__.getChainContractAddress)({\n blockNumber,\n chain,\n contract: 'ensUniversalResolver',\n });\n })();\n try {\n const readContractParameters = {\n address: universalResolverAddress,\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__.universalResolverReverseAbi,\n args: [address, coinType, gatewayUrls ?? [_utils_ens_localBatchGatewayRequest_js__WEBPACK_IMPORTED_MODULE_2__.localBatchGatewayUrl]],\n functionName: 'reverseWithGateways',\n blockNumber,\n blockTag,\n };\n const readContractAction = (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _public_readContract_js__WEBPACK_IMPORTED_MODULE_4__.readContract, 'readContract');\n const [name] = await readContractAction(readContractParameters);\n return name || null;\n }\n catch (err) {\n if (strict)\n throw err;\n if ((0,_utils_ens_errors_js__WEBPACK_IMPORTED_MODULE_5__.isNullUniversalResolverError)(err))\n return null;\n throw err;\n }\n}\n//# sourceMappingURL=getEnsName.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9lbnMvZ2V0RW5zTmFtZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQXNFO0FBQ2tCO0FBQ2Y7QUFDVTtBQUM5QjtBQUNLO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QiwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLGFBQWE7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ087QUFDUCxZQUFZLHVFQUF1RTtBQUNuRixZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsZ0dBQXVCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLDJFQUEyQjtBQUM1QyxzREFBc0Qsd0ZBQW9CO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLDhEQUFTLFNBQVMsaUVBQVk7QUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxrRkFBNEI7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9lbnMvZ2V0RW5zTmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1bml2ZXJzYWxSZXNvbHZlclJldmVyc2VBYmkgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYWJpcy5qcyc7XG5pbXBvcnQgeyBnZXRDaGFpbkNvbnRyYWN0QWRkcmVzcywgfSBmcm9tICcuLi8uLi91dGlscy9jaGFpbi9nZXRDaGFpbkNvbnRyYWN0QWRkcmVzcy5qcyc7XG5pbXBvcnQgeyBpc051bGxVbml2ZXJzYWxSZXNvbHZlckVycm9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5zL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBsb2NhbEJhdGNoR2F0ZXdheVVybCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vucy9sb2NhbEJhdGNoR2F0ZXdheVJlcXVlc3QuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IHJlYWRDb250cmFjdCwgfSBmcm9tICcuLi9wdWJsaWMvcmVhZENvbnRyYWN0LmpzJztcbi8qKlxuICogR2V0cyBwcmltYXJ5IG5hbWUgZm9yIHNwZWNpZmllZCBhZGRyZXNzLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvZW5zL2FjdGlvbnMvZ2V0RW5zTmFtZVxuICogLSBFeGFtcGxlczogaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9naXRodWIvd2V2bS92aWVtL3RyZWUvbWFpbi9leGFtcGxlcy9lbnNcbiAqXG4gKiBDYWxscyBgcmV2ZXJzZShieXRlcylgIG9uIEVOUyBVbml2ZXJzYWwgUmVzb2x2ZXIgQ29udHJhY3QgdG8gXCJyZXZlcnNlIHJlc29sdmVcIiB0aGUgYWRkcmVzcyB0byB0aGUgcHJpbWFyeSBFTlMgbmFtZS5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0RW5zTmFtZVBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBOYW1lIG9yIGBudWxsYCBpZiBub3QgZm91bmQuIHtAbGluayBHZXRFbnNOYW1lUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldEVuc05hbWUgfSBmcm9tICd2aWVtL2VucydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgZW5zTmFtZSA9IGF3YWl0IGdldEVuc05hbWUoY2xpZW50LCB7XG4gKiAgIGFkZHJlc3M6ICcweGQyMTM1Q2ZCMjE2Yjc0MTA5Nzc1MjM2RTM2ZDRiNDMzRjFERjUwN0InLFxuICogfSlcbiAqIC8vICd3ZXZtLmV0aCdcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEVuc05hbWUoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhZGRyZXNzLCBibG9ja051bWJlciwgYmxvY2tUYWcsIGNvaW5UeXBlID0gNjBuLCBnYXRld2F5VXJscywgc3RyaWN0LCB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCB7IGNoYWluIH0gPSBjbGllbnQ7XG4gICAgY29uc3QgdW5pdmVyc2FsUmVzb2x2ZXJBZGRyZXNzID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHBhcmFtZXRlcnMudW5pdmVyc2FsUmVzb2x2ZXJBZGRyZXNzKVxuICAgICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnMudW5pdmVyc2FsUmVzb2x2ZXJBZGRyZXNzO1xuICAgICAgICBpZiAoIWNoYWluKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdjbGllbnQgY2hhaW4gbm90IGNvbmZpZ3VyZWQuIHVuaXZlcnNhbFJlc29sdmVyQWRkcmVzcyBpcyByZXF1aXJlZC4nKTtcbiAgICAgICAgcmV0dXJuIGdldENoYWluQ29udHJhY3RBZGRyZXNzKHtcbiAgICAgICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICAgICAgY2hhaW4sXG4gICAgICAgICAgICBjb250cmFjdDogJ2Vuc1VuaXZlcnNhbFJlc29sdmVyJyxcbiAgICAgICAgfSk7XG4gICAgfSkoKTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCByZWFkQ29udHJhY3RQYXJhbWV0ZXJzID0ge1xuICAgICAgICAgICAgYWRkcmVzczogdW5pdmVyc2FsUmVzb2x2ZXJBZGRyZXNzLFxuICAgICAgICAgICAgYWJpOiB1bml2ZXJzYWxSZXNvbHZlclJldmVyc2VBYmksXG4gICAgICAgICAgICBhcmdzOiBbYWRkcmVzcywgY29pblR5cGUsIGdhdGV3YXlVcmxzID8/IFtsb2NhbEJhdGNoR2F0ZXdheVVybF1dLFxuICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAncmV2ZXJzZVdpdGhHYXRld2F5cycsXG4gICAgICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgICAgIGJsb2NrVGFnLFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCByZWFkQ29udHJhY3RBY3Rpb24gPSBnZXRBY3Rpb24oY2xpZW50LCByZWFkQ29udHJhY3QsICdyZWFkQ29udHJhY3QnKTtcbiAgICAgICAgY29uc3QgW25hbWVdID0gYXdhaXQgcmVhZENvbnRyYWN0QWN0aW9uKHJlYWRDb250cmFjdFBhcmFtZXRlcnMpO1xuICAgICAgICByZXR1cm4gbmFtZSB8fCBudWxsO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGlmIChzdHJpY3QpXG4gICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIGlmIChpc051bGxVbml2ZXJzYWxSZXNvbHZlckVycm9yKGVycikpXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgdGhyb3cgZXJyO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldEVuc05hbWUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsName.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsResolver.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/actions/ens/getEnsResolver.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEnsResolver: () => (/* binding */ getEnsResolver)\n/* harmony export */ });\n/* harmony import */ var _utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/chain/getChainContractAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_ens_packetToBytes_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/ens/packetToBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/packetToBytes.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _public_readContract_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../public/readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n\n\n\n\n\n/**\n * Gets resolver for ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsResolver\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `findResolver(bytes)` on ENS Universal Resolver Contract to retrieve the resolver of an ENS name.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsResolverParameters}\n * @returns Address for ENS resolver. {@link GetEnsResolverReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsResolver, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const resolverAddress = await getEnsResolver(client, {\n * name: normalize('wevm.eth'),\n * })\n * // '0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41'\n */\nasync function getEnsResolver(client, parameters) {\n const { blockNumber, blockTag, name } = parameters;\n const { chain } = client;\n const universalResolverAddress = (() => {\n if (parameters.universalResolverAddress)\n return parameters.universalResolverAddress;\n if (!chain)\n throw new Error('client chain not configured. universalResolverAddress is required.');\n return (0,_utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__.getChainContractAddress)({\n blockNumber,\n chain,\n contract: 'ensUniversalResolver',\n });\n })();\n const tlds = chain?.ensTlds;\n if (tlds && !tlds.some((tld) => name.endsWith(tld)))\n throw new Error(`${name} is not a valid ENS TLD (${tlds?.join(', ')}) for chain \"${chain.name}\" (id: ${chain.id}).`);\n const [resolverAddress] = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _public_readContract_js__WEBPACK_IMPORTED_MODULE_2__.readContract, 'readContract')({\n address: universalResolverAddress,\n abi: [\n {\n inputs: [{ type: 'bytes' }],\n name: 'findResolver',\n outputs: [\n { type: 'address' },\n { type: 'bytes32' },\n { type: 'uint256' },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n ],\n functionName: 'findResolver',\n args: [(0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.toHex)((0,_utils_ens_packetToBytes_js__WEBPACK_IMPORTED_MODULE_4__.packetToBytes)(name))],\n blockNumber,\n blockTag,\n });\n return resolverAddress;\n}\n//# sourceMappingURL=getEnsResolver.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9lbnMvZ2V0RW5zUmVzb2x2ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQXdGO0FBQ2xDO0FBQ1k7QUFDYjtBQUNLO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSw0QkFBNEI7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ087QUFDUCxZQUFZLDhCQUE4QjtBQUMxQyxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsZ0dBQXVCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBLDJCQUEyQixNQUFNLDBCQUEwQixpQkFBaUIsZUFBZSxXQUFXLFNBQVMsU0FBUztBQUN4SCxvQ0FBb0MsOERBQVMsU0FBUyxpRUFBWTtBQUNsRTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsZUFBZTtBQUMxQztBQUNBO0FBQ0Esc0JBQXNCLGlCQUFpQjtBQUN2QyxzQkFBc0IsaUJBQWlCO0FBQ3ZDLHNCQUFzQixpQkFBaUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxlQUFlLCtEQUFLLENBQUMsMEVBQWE7QUFDbEM7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvZW5zL2dldEVuc1Jlc29sdmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldENoYWluQ29udHJhY3RBZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2NoYWluL2dldENoYWluQ29udHJhY3RBZGRyZXNzLmpzJztcbmltcG9ydCB7IHRvSGV4IH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5jb2RpbmcvdG9IZXguanMnO1xuaW1wb3J0IHsgcGFja2V0VG9CeXRlcywgfSBmcm9tICcuLi8uLi91dGlscy9lbnMvcGFja2V0VG9CeXRlcy5qcyc7XG5pbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgcmVhZENvbnRyYWN0LCB9IGZyb20gJy4uL3B1YmxpYy9yZWFkQ29udHJhY3QuanMnO1xuLyoqXG4gKiBHZXRzIHJlc29sdmVyIGZvciBFTlMgbmFtZS5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2Vucy9hY3Rpb25zL2dldEVuc1Jlc29sdmVyXG4gKiAtIEV4YW1wbGVzOiBodHRwczovL3N0YWNrYmxpdHouY29tL2dpdGh1Yi93ZXZtL3ZpZW0vdHJlZS9tYWluL2V4YW1wbGVzL2Vuc1xuICpcbiAqIENhbGxzIGBmaW5kUmVzb2x2ZXIoYnl0ZXMpYCBvbiBFTlMgVW5pdmVyc2FsIFJlc29sdmVyIENvbnRyYWN0IHRvIHJldHJpZXZlIHRoZSByZXNvbHZlciBvZiBhbiBFTlMgbmFtZS5cbiAqXG4gKiBTaW5jZSBFTlMgbmFtZXMgcHJvaGliaXQgY2VydGFpbiBmb3JiaWRkZW4gY2hhcmFjdGVycyAoZS5nLiB1bmRlcnNjb3JlKSBhbmQgaGF2ZSBvdGhlciB2YWxpZGF0aW9uIHJ1bGVzLCB5b3UgbGlrZWx5IHdhbnQgdG8gW25vcm1hbGl6ZSBFTlMgbmFtZXNdKGh0dHBzOi8vZG9jcy5lbnMuZG9tYWlucy9jb250cmFjdC1hcGktcmVmZXJlbmNlL25hbWUtcHJvY2Vzc2luZyNub3JtYWxpc2luZy1uYW1lcykgd2l0aCBbVVRTLTQ2IG5vcm1hbGl6YXRpb25dKGh0dHBzOi8vdW5pY29kZS5vcmcvcmVwb3J0cy90cjQ2KSBiZWZvcmUgcGFzc2luZyB0aGVtIHRvIGBnZXRFbnNBZGRyZXNzYC4gWW91IGNhbiB1c2UgdGhlIGJ1aWx0LWluIFtgbm9ybWFsaXplYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZW5zL3V0aWxpdGllcy9ub3JtYWxpemUpIGZ1bmN0aW9uIGZvciB0aGlzLlxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRFbnNSZXNvbHZlclBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBBZGRyZXNzIGZvciBFTlMgcmVzb2x2ZXIuIHtAbGluayBHZXRFbnNSZXNvbHZlclJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRFbnNSZXNvbHZlciwgbm9ybWFsaXplIH0gZnJvbSAndmllbS9lbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IHJlc29sdmVyQWRkcmVzcyA9IGF3YWl0IGdldEVuc1Jlc29sdmVyKGNsaWVudCwge1xuICogICBuYW1lOiBub3JtYWxpemUoJ3dldm0uZXRoJyksXG4gKiB9KVxuICogLy8gJzB4NDk3NmZiMDNDMzJlNUI4Y2ZlMmI2Y0NCMzFjMDlCYTc4RUJhQmE0MSdcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEVuc1Jlc29sdmVyKGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYmxvY2tOdW1iZXIsIGJsb2NrVGFnLCBuYW1lIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHsgY2hhaW4gfSA9IGNsaWVudDtcbiAgICBjb25zdCB1bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MgPSAoKCkgPT4ge1xuICAgICAgICBpZiAocGFyYW1ldGVycy51bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MpXG4gICAgICAgICAgICByZXR1cm4gcGFyYW1ldGVycy51bml2ZXJzYWxSZXNvbHZlckFkZHJlc3M7XG4gICAgICAgIGlmICghY2hhaW4pXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2NsaWVudCBjaGFpbiBub3QgY29uZmlndXJlZC4gdW5pdmVyc2FsUmVzb2x2ZXJBZGRyZXNzIGlzIHJlcXVpcmVkLicpO1xuICAgICAgICByZXR1cm4gZ2V0Q2hhaW5Db250cmFjdEFkZHJlc3Moe1xuICAgICAgICAgICAgYmxvY2tOdW1iZXIsXG4gICAgICAgICAgICBjaGFpbixcbiAgICAgICAgICAgIGNvbnRyYWN0OiAnZW5zVW5pdmVyc2FsUmVzb2x2ZXInLFxuICAgICAgICB9KTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IHRsZHMgPSBjaGFpbj8uZW5zVGxkcztcbiAgICBpZiAodGxkcyAmJiAhdGxkcy5zb21lKCh0bGQpID0+IG5hbWUuZW5kc1dpdGgodGxkKSkpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtuYW1lfSBpcyBub3QgYSB2YWxpZCBFTlMgVExEICgke3RsZHM/LmpvaW4oJywgJyl9KSBmb3IgY2hhaW4gXCIke2NoYWluLm5hbWV9XCIgKGlkOiAke2NoYWluLmlkfSkuYCk7XG4gICAgY29uc3QgW3Jlc29sdmVyQWRkcmVzc10gPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCByZWFkQ29udHJhY3QsICdyZWFkQ29udHJhY3QnKSh7XG4gICAgICAgIGFkZHJlc3M6IHVuaXZlcnNhbFJlc29sdmVyQWRkcmVzcyxcbiAgICAgICAgYWJpOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5wdXRzOiBbeyB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdmaW5kUmVzb2x2ZXInLFxuICAgICAgICAgICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgICAgICAgICAgeyB0eXBlOiAnYWRkcmVzcycgfSxcbiAgICAgICAgICAgICAgICAgICAgeyB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgICAgICAgICAgeyB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBmdW5jdGlvbk5hbWU6ICdmaW5kUmVzb2x2ZXInLFxuICAgICAgICBhcmdzOiBbdG9IZXgocGFja2V0VG9CeXRlcyhuYW1lKSldLFxuICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgYmxvY2tUYWcsXG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc29sdmVyQWRkcmVzcztcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldEVuc1Jlc29sdmVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsResolver.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsText.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/actions/ens/getEnsText.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEnsText: () => (/* binding */ getEnsText)\n/* harmony export */ });\n/* harmony import */ var _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../constants/abis.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var _utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/abi/decodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/chain/getChainContractAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_ens_errors_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/ens/errors.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/errors.js\");\n/* harmony import */ var _utils_ens_localBatchGatewayRequest_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/ens/localBatchGatewayRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/localBatchGatewayRequest.js\");\n/* harmony import */ var _utils_ens_namehash_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/ens/namehash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/namehash.js\");\n/* harmony import */ var _utils_ens_packetToBytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/ens/packetToBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/packetToBytes.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _public_readContract_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../public/readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Gets a text record for specified ENS name.\n *\n * - Docs: https://viem.sh/docs/ens/actions/getEnsResolver\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/ens\n *\n * Calls `resolve(bytes, bytes)` on ENS Universal Resolver Contract.\n *\n * Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `getEnsAddress`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @param client - Client to use\n * @param parameters - {@link GetEnsTextParameters}\n * @returns Address for ENS resolver. {@link GetEnsTextReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getEnsText, normalize } from 'viem/ens'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const twitterRecord = await getEnsText(client, {\n * name: normalize('wevm.eth'),\n * key: 'com.twitter',\n * })\n * // 'wevm_dev'\n */\nasync function getEnsText(client, parameters) {\n const { blockNumber, blockTag, key, name, gatewayUrls, strict } = parameters;\n const { chain } = client;\n const universalResolverAddress = (() => {\n if (parameters.universalResolverAddress)\n return parameters.universalResolverAddress;\n if (!chain)\n throw new Error('client chain not configured. universalResolverAddress is required.');\n return (0,_utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__.getChainContractAddress)({\n blockNumber,\n chain,\n contract: 'ensUniversalResolver',\n });\n })();\n const tlds = chain?.ensTlds;\n if (tlds && !tlds.some((tld) => name.endsWith(tld)))\n return null;\n try {\n const readContractParameters = {\n address: universalResolverAddress,\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__.universalResolverResolveAbi,\n args: [\n (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.toHex)((0,_utils_ens_packetToBytes_js__WEBPACK_IMPORTED_MODULE_3__.packetToBytes)(name)),\n (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_4__.encodeFunctionData)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__.textResolverAbi,\n functionName: 'text',\n args: [(0,_utils_ens_namehash_js__WEBPACK_IMPORTED_MODULE_5__.namehash)(name), key],\n }),\n gatewayUrls ?? [_utils_ens_localBatchGatewayRequest_js__WEBPACK_IMPORTED_MODULE_6__.localBatchGatewayUrl],\n ],\n functionName: 'resolveWithGateways',\n blockNumber,\n blockTag,\n };\n const readContractAction = (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_7__.getAction)(client, _public_readContract_js__WEBPACK_IMPORTED_MODULE_8__.readContract, 'readContract');\n const res = await readContractAction(readContractParameters);\n if (res[0] === '0x')\n return null;\n const record = (0,_utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_9__.decodeFunctionResult)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__.textResolverAbi,\n functionName: 'text',\n data: res[0],\n });\n return record === '' ? null : record;\n }\n catch (err) {\n if (strict)\n throw err;\n if ((0,_utils_ens_errors_js__WEBPACK_IMPORTED_MODULE_10__.isNullUniversalResolverError)(err))\n return null;\n throw err;\n }\n}\n//# sourceMappingURL=getEnsText.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9lbnMvZ2V0RW5zVGV4dC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBd0Y7QUFDUjtBQUNKO0FBQ1k7QUFDbEM7QUFDbUI7QUFDVTtBQUM1QjtBQUNXO0FBQ2I7QUFDSztBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHVDQUF1QztBQUN2QztBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksd0JBQXdCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ087QUFDUCxZQUFZLHdEQUF3RDtBQUNwRSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsZ0dBQXVCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLDJFQUEyQjtBQUM1QztBQUNBLGdCQUFnQiwrREFBSyxDQUFDLDBFQUFhO0FBQ25DLGdCQUFnQixvRkFBa0I7QUFDbEMseUJBQXlCLCtEQUFlO0FBQ3hDO0FBQ0EsMkJBQTJCLGdFQUFRO0FBQ25DLGlCQUFpQjtBQUNqQixnQ0FBZ0Msd0ZBQW9CO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsOERBQVMsU0FBUyxpRUFBWTtBQUNqRTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsd0ZBQW9CO0FBQzNDLGlCQUFpQiwrREFBZTtBQUNoQztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLG1GQUE0QjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL2Vucy9nZXRFbnNUZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRleHRSZXNvbHZlckFiaSwgdW5pdmVyc2FsUmVzb2x2ZXJSZXNvbHZlQWJpLCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9hYmlzLmpzJztcbmltcG9ydCB7IGRlY29kZUZ1bmN0aW9uUmVzdWx0LCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9kZWNvZGVGdW5jdGlvblJlc3VsdC5qcyc7XG5pbXBvcnQgeyBlbmNvZGVGdW5jdGlvbkRhdGEsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2VuY29kZUZ1bmN0aW9uRGF0YS5qcyc7XG5pbXBvcnQgeyBnZXRDaGFpbkNvbnRyYWN0QWRkcmVzcywgfSBmcm9tICcuLi8uLi91dGlscy9jaGFpbi9nZXRDaGFpbkNvbnRyYWN0QWRkcmVzcy5qcyc7XG5pbXBvcnQgeyB0b0hleCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGlzTnVsbFVuaXZlcnNhbFJlc29sdmVyRXJyb3IgfSBmcm9tICcuLi8uLi91dGlscy9lbnMvZXJyb3JzLmpzJztcbmltcG9ydCB7IGxvY2FsQmF0Y2hHYXRld2F5VXJsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5zL2xvY2FsQmF0Y2hHYXRld2F5UmVxdWVzdC5qcyc7XG5pbXBvcnQgeyBuYW1laGFzaCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vucy9uYW1laGFzaC5qcyc7XG5pbXBvcnQgeyBwYWNrZXRUb0J5dGVzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vucy9wYWNrZXRUb0J5dGVzLmpzJztcbmltcG9ydCB7IGdldEFjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2dldEFjdGlvbi5qcyc7XG5pbXBvcnQgeyByZWFkQ29udHJhY3QsIH0gZnJvbSAnLi4vcHVibGljL3JlYWRDb250cmFjdC5qcyc7XG4vKipcbiAqIEdldHMgYSB0ZXh0IHJlY29yZCBmb3Igc3BlY2lmaWVkIEVOUyBuYW1lLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvZW5zL2FjdGlvbnMvZ2V0RW5zUmVzb2x2ZXJcbiAqIC0gRXhhbXBsZXM6IGh0dHBzOi8vc3RhY2tibGl0ei5jb20vZ2l0aHViL3dldm0vdmllbS90cmVlL21haW4vZXhhbXBsZXMvZW5zXG4gKlxuICogQ2FsbHMgYHJlc29sdmUoYnl0ZXMsIGJ5dGVzKWAgb24gRU5TIFVuaXZlcnNhbCBSZXNvbHZlciBDb250cmFjdC5cbiAqXG4gKiBTaW5jZSBFTlMgbmFtZXMgcHJvaGliaXQgY2VydGFpbiBmb3JiaWRkZW4gY2hhcmFjdGVycyAoZS5nLiB1bmRlcnNjb3JlKSBhbmQgaGF2ZSBvdGhlciB2YWxpZGF0aW9uIHJ1bGVzLCB5b3UgbGlrZWx5IHdhbnQgdG8gW25vcm1hbGl6ZSBFTlMgbmFtZXNdKGh0dHBzOi8vZG9jcy5lbnMuZG9tYWlucy9jb250cmFjdC1hcGktcmVmZXJlbmNlL25hbWUtcHJvY2Vzc2luZyNub3JtYWxpc2luZy1uYW1lcykgd2l0aCBbVVRTLTQ2IG5vcm1hbGl6YXRpb25dKGh0dHBzOi8vdW5pY29kZS5vcmcvcmVwb3J0cy90cjQ2KSBiZWZvcmUgcGFzc2luZyB0aGVtIHRvIGBnZXRFbnNBZGRyZXNzYC4gWW91IGNhbiB1c2UgdGhlIGJ1aWx0LWluIFtgbm9ybWFsaXplYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZW5zL3V0aWxpdGllcy9ub3JtYWxpemUpIGZ1bmN0aW9uIGZvciB0aGlzLlxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRFbnNUZXh0UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIEFkZHJlc3MgZm9yIEVOUyByZXNvbHZlci4ge0BsaW5rIEdldEVuc1RleHRSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZ2V0RW5zVGV4dCwgbm9ybWFsaXplIH0gZnJvbSAndmllbS9lbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IHR3aXR0ZXJSZWNvcmQgPSBhd2FpdCBnZXRFbnNUZXh0KGNsaWVudCwge1xuICogICBuYW1lOiBub3JtYWxpemUoJ3dldm0uZXRoJyksXG4gKiAgIGtleTogJ2NvbS50d2l0dGVyJyxcbiAqIH0pXG4gKiAvLyAnd2V2bV9kZXYnXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRFbnNUZXh0KGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYmxvY2tOdW1iZXIsIGJsb2NrVGFnLCBrZXksIG5hbWUsIGdhdGV3YXlVcmxzLCBzdHJpY3QgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgeyBjaGFpbiB9ID0gY2xpZW50O1xuICAgIGNvbnN0IHVuaXZlcnNhbFJlc29sdmVyQWRkcmVzcyA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChwYXJhbWV0ZXJzLnVuaXZlcnNhbFJlc29sdmVyQWRkcmVzcylcbiAgICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzLnVuaXZlcnNhbFJlc29sdmVyQWRkcmVzcztcbiAgICAgICAgaWYgKCFjaGFpbilcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignY2xpZW50IGNoYWluIG5vdCBjb25maWd1cmVkLiB1bml2ZXJzYWxSZXNvbHZlckFkZHJlc3MgaXMgcmVxdWlyZWQuJyk7XG4gICAgICAgIHJldHVybiBnZXRDaGFpbkNvbnRyYWN0QWRkcmVzcyh7XG4gICAgICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgICAgIGNoYWluLFxuICAgICAgICAgICAgY29udHJhY3Q6ICdlbnNVbml2ZXJzYWxSZXNvbHZlcicsXG4gICAgICAgIH0pO1xuICAgIH0pKCk7XG4gICAgY29uc3QgdGxkcyA9IGNoYWluPy5lbnNUbGRzO1xuICAgIGlmICh0bGRzICYmICF0bGRzLnNvbWUoKHRsZCkgPT4gbmFtZS5lbmRzV2l0aCh0bGQpKSlcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVhZENvbnRyYWN0UGFyYW1ldGVycyA9IHtcbiAgICAgICAgICAgIGFkZHJlc3M6IHVuaXZlcnNhbFJlc29sdmVyQWRkcmVzcyxcbiAgICAgICAgICAgIGFiaTogdW5pdmVyc2FsUmVzb2x2ZXJSZXNvbHZlQWJpLFxuICAgICAgICAgICAgYXJnczogW1xuICAgICAgICAgICAgICAgIHRvSGV4KHBhY2tldFRvQnl0ZXMobmFtZSkpLFxuICAgICAgICAgICAgICAgIGVuY29kZUZ1bmN0aW9uRGF0YSh7XG4gICAgICAgICAgICAgICAgICAgIGFiaTogdGV4dFJlc29sdmVyQWJpLFxuICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWU6ICd0ZXh0JyxcbiAgICAgICAgICAgICAgICAgICAgYXJnczogW25hbWVoYXNoKG5hbWUpLCBrZXldLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGdhdGV3YXlVcmxzID8/IFtsb2NhbEJhdGNoR2F0ZXdheVVybF0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAncmVzb2x2ZVdpdGhHYXRld2F5cycsXG4gICAgICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgICAgIGJsb2NrVGFnLFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCByZWFkQ29udHJhY3RBY3Rpb24gPSBnZXRBY3Rpb24oY2xpZW50LCByZWFkQ29udHJhY3QsICdyZWFkQ29udHJhY3QnKTtcbiAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgcmVhZENvbnRyYWN0QWN0aW9uKHJlYWRDb250cmFjdFBhcmFtZXRlcnMpO1xuICAgICAgICBpZiAocmVzWzBdID09PSAnMHgnKVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIGNvbnN0IHJlY29yZCA9IGRlY29kZUZ1bmN0aW9uUmVzdWx0KHtcbiAgICAgICAgICAgIGFiaTogdGV4dFJlc29sdmVyQWJpLFxuICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAndGV4dCcsXG4gICAgICAgICAgICBkYXRhOiByZXNbMF0sXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVjb3JkID09PSAnJyA/IG51bGwgOiByZWNvcmQ7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgaWYgKHN0cmljdClcbiAgICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgaWYgKGlzTnVsbFVuaXZlcnNhbFJlc29sdmVyRXJyb3IoZXJyKSlcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0RW5zVGV4dC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsText.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/call.js": /*!*******************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/call.js ***! \*******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ call: () => (/* binding */ call),\n/* harmony export */ getRevertErrorData: () => (/* binding */ getRevertErrorData)\n/* harmony export */ });\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbi.js\");\n/* harmony import */ var ox_BlockOverrides__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ox/BlockOverrides */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/BlockOverrides.js\");\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _constants_abis_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../constants/abis.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var _constants_contract_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../constants/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/contract.js\");\n/* harmony import */ var _constants_contracts_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../constants/contracts.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/contracts.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_chain_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../errors/chain.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/chain.js\");\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n/* harmony import */ var _utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../utils/abi/decodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\");\n/* harmony import */ var _utils_abi_encodeDeployData_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../utils/abi/encodeDeployData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeDeployData.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../utils/chain/getChainContractAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_errors_getCallError_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/errors/getCallError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getCallError.js\");\n/* harmony import */ var _utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/formatters/extract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/extract.js\");\n/* harmony import */ var _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/formatters/transactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionRequest.js\");\n/* harmony import */ var _utils_promise_createBatchScheduler_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../utils/promise/createBatchScheduler.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/promise/createBatchScheduler.js\");\n/* harmony import */ var _utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/stateOverride.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stateOverride.js\");\n/* harmony import */ var _utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/transaction/assertRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Executes a new message call immediately without submitting a transaction to the network.\n *\n * - Docs: https://viem.sh/docs/actions/public/call\n * - JSON-RPC Methods: [`eth_call`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_call)\n *\n * @param client - Client to use\n * @param parameters - {@link CallParameters}\n * @returns The call data. {@link CallReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { call } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const data = await call(client, {\n * account: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266',\n * data: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * })\n */\nasync function call(client, args) {\n const { account: account_ = client.account, authorizationList, batch = Boolean(client.batch?.multicall), blockNumber, blockTag = client.experimental_blockTag ?? 'latest', accessList, blobs, blockOverrides, code, data: data_, factory, factoryData, gas, gasPrice, maxFeePerBlobGas, maxFeePerGas, maxPriorityFeePerGas, nonce, to, value, stateOverride, ...rest } = args;\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__.parseAccount)(account_) : undefined;\n if (code && (factory || factoryData))\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_1__.BaseError('Cannot provide both `code` & `factory`/`factoryData` as parameters.');\n if (code && to)\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_1__.BaseError('Cannot provide both `code` & `to` as parameters.');\n // Check if the call is deployless via bytecode.\n const deploylessCallViaBytecode = code && data_;\n // Check if the call is deployless via a factory.\n const deploylessCallViaFactory = factory && factoryData && to && data_;\n const deploylessCall = deploylessCallViaBytecode || deploylessCallViaFactory;\n const data = (() => {\n if (deploylessCallViaBytecode)\n return toDeploylessCallViaBytecodeData({\n code,\n data: data_,\n });\n if (deploylessCallViaFactory)\n return toDeploylessCallViaFactoryData({\n data: data_,\n factory,\n factoryData,\n to,\n });\n return data_;\n })();\n try {\n (0,_utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_2__.assertRequest)(args);\n const blockNumberHex = typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(blockNumber) : undefined;\n const block = blockNumberHex || blockTag;\n const rpcBlockOverrides = blockOverrides\n ? ox_BlockOverrides__WEBPACK_IMPORTED_MODULE_4__.toRpc(blockOverrides)\n : undefined;\n const rpcStateOverride = (0,_utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_5__.serializeStateOverride)(stateOverride);\n const chainFormat = client.chain?.formatters?.transactionRequest?.format;\n const format = chainFormat || _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_6__.formatTransactionRequest;\n const request = format({\n // Pick out extra data that might exist on the chain's transaction request type.\n ...(0,_utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_7__.extract)(rest, { format: chainFormat }),\n from: account?.address,\n accessList,\n authorizationList,\n blobs,\n data,\n gas,\n gasPrice,\n maxFeePerBlobGas,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to: deploylessCall ? undefined : to,\n value,\n }, 'call');\n if (batch &&\n shouldPerformMulticall({ request }) &&\n !rpcStateOverride &&\n !rpcBlockOverrides) {\n try {\n return await scheduleMulticall(client, {\n ...request,\n blockNumber,\n blockTag,\n });\n }\n catch (err) {\n if (!(err instanceof _errors_chain_js__WEBPACK_IMPORTED_MODULE_8__.ClientChainNotConfiguredError) &&\n !(err instanceof _errors_chain_js__WEBPACK_IMPORTED_MODULE_8__.ChainDoesNotSupportContract))\n throw err;\n }\n }\n const params = (() => {\n const base = [\n request,\n block,\n ];\n if (rpcStateOverride && rpcBlockOverrides)\n return [...base, rpcStateOverride, rpcBlockOverrides];\n if (rpcStateOverride)\n return [...base, rpcStateOverride];\n if (rpcBlockOverrides)\n return [...base, {}, rpcBlockOverrides];\n return base;\n })();\n const response = await client.request({\n method: 'eth_call',\n params,\n });\n if (response === '0x')\n return { data: undefined };\n return { data: response };\n }\n catch (err) {\n const data = getRevertErrorData(err);\n // Check for CCIP-Read offchain lookup signature.\n const { offchainLookup, offchainLookupSignature } = await __webpack_require__.e(/*! import() */ \"_app-pages-browser_node_modules_viem__esm_utils_ccip_js\").then(__webpack_require__.bind(__webpack_require__, /*! ../../utils/ccip.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ccip.js\"));\n if (client.ccipRead !== false &&\n data?.slice(0, 10) === offchainLookupSignature &&\n to)\n return { data: await offchainLookup(client, { data, to }) };\n // Check for counterfactual deployment error.\n if (deploylessCall && data?.slice(0, 10) === '0x101bb98d')\n throw new _errors_contract_js__WEBPACK_IMPORTED_MODULE_9__.CounterfactualDeploymentFailedError({ factory });\n throw (0,_utils_errors_getCallError_js__WEBPACK_IMPORTED_MODULE_10__.getCallError)(err, {\n ...args,\n account,\n chain: client.chain,\n });\n }\n}\n// We only want to perform a scheduled multicall if:\n// - The request has calldata,\n// - The request has a target address,\n// - The target address is not already the aggregate3 signature,\n// - The request has no other properties (`nonce`, `gas`, etc cannot be sent with a multicall).\nfunction shouldPerformMulticall({ request }) {\n const { data, to, ...request_ } = request;\n if (!data)\n return false;\n if (data.startsWith(_constants_contract_js__WEBPACK_IMPORTED_MODULE_11__.aggregate3Signature))\n return false;\n if (!to)\n return false;\n if (Object.values(request_).filter((x) => typeof x !== 'undefined').length > 0)\n return false;\n return true;\n}\nasync function scheduleMulticall(client, args) {\n const { batchSize = 1024, deployless = false, wait = 0, } = typeof client.batch?.multicall === 'object' ? client.batch.multicall : {};\n const { blockNumber, blockTag = client.experimental_blockTag ?? 'latest', data, to, } = args;\n const multicallAddress = (() => {\n if (deployless)\n return null;\n if (args.multicallAddress)\n return args.multicallAddress;\n if (client.chain) {\n return (0,_utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_12__.getChainContractAddress)({\n blockNumber,\n chain: client.chain,\n contract: 'multicall3',\n });\n }\n throw new _errors_chain_js__WEBPACK_IMPORTED_MODULE_8__.ClientChainNotConfiguredError();\n })();\n const blockNumberHex = typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(blockNumber) : undefined;\n const block = blockNumberHex || blockTag;\n const { schedule } = (0,_utils_promise_createBatchScheduler_js__WEBPACK_IMPORTED_MODULE_13__.createBatchScheduler)({\n id: `${client.uid}.${block}`,\n wait,\n shouldSplitBatch(args) {\n const size = args.reduce((size, { data }) => size + (data.length - 2), 0);\n return size > batchSize * 2;\n },\n fn: async (requests) => {\n const calls = requests.map((request) => ({\n allowFailure: true,\n callData: request.data,\n target: request.to,\n }));\n const calldata = (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_14__.encodeFunctionData)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_15__.multicall3Abi,\n args: [calls],\n functionName: 'aggregate3',\n });\n const data = await client.request({\n method: 'eth_call',\n params: [\n {\n ...(multicallAddress === null\n ? {\n data: toDeploylessCallViaBytecodeData({\n code: _constants_contracts_js__WEBPACK_IMPORTED_MODULE_16__.multicall3Bytecode,\n data: calldata,\n }),\n }\n : { to: multicallAddress, data: calldata }),\n },\n block,\n ],\n });\n return (0,_utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_17__.decodeFunctionResult)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_15__.multicall3Abi,\n args: [calls],\n functionName: 'aggregate3',\n data: data || '0x',\n });\n },\n });\n const [{ returnData, success }] = await schedule({ data, to });\n if (!success)\n throw new _errors_contract_js__WEBPACK_IMPORTED_MODULE_9__.RawContractError({ data: returnData });\n if (returnData === '0x')\n return { data: undefined };\n return { data: returnData };\n}\nfunction toDeploylessCallViaBytecodeData(parameters) {\n const { code, data } = parameters;\n return (0,_utils_abi_encodeDeployData_js__WEBPACK_IMPORTED_MODULE_18__.encodeDeployData)({\n abi: (0,abitype__WEBPACK_IMPORTED_MODULE_19__.parseAbi)(['constructor(bytes, bytes)']),\n bytecode: _constants_contracts_js__WEBPACK_IMPORTED_MODULE_16__.deploylessCallViaBytecodeBytecode,\n args: [code, data],\n });\n}\nfunction toDeploylessCallViaFactoryData(parameters) {\n const { data, factory, factoryData, to } = parameters;\n return (0,_utils_abi_encodeDeployData_js__WEBPACK_IMPORTED_MODULE_18__.encodeDeployData)({\n abi: (0,abitype__WEBPACK_IMPORTED_MODULE_19__.parseAbi)(['constructor(address, bytes, address, bytes)']),\n bytecode: _constants_contracts_js__WEBPACK_IMPORTED_MODULE_16__.deploylessCallViaFactoryBytecode,\n args: [to, data, factory, factoryData],\n });\n}\n/** @internal */\nfunction getRevertErrorData(err) {\n if (!(err instanceof _errors_base_js__WEBPACK_IMPORTED_MODULE_1__.BaseError))\n return undefined;\n const error = err.walk();\n return typeof error?.data === 'object' ? error.data?.data : error.data;\n}\n//# sourceMappingURL=call.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvY2FsbC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQW1DO0FBQ2lCO0FBQ2lCO0FBQ2I7QUFDVTtBQUNzRTtBQUN2RjtBQUNtRDtBQUNGO0FBQ2xCO0FBQ1I7QUFDSTtBQUNZO0FBQzNCO0FBQ007QUFDUDtBQUM2QjtBQUNMO0FBQ2I7QUFDRTtBQUN6RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4Qiw0QkFBNEI7QUFDNUI7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTztBQUNQLFlBQVksK1ZBQStWO0FBQzNXLCtCQUErQiw2RUFBWTtBQUMzQztBQUNBLGtCQUFrQixzREFBUztBQUMzQjtBQUNBLGtCQUFrQixzREFBUztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQSxRQUFRLGtGQUFhO0FBQ3JCLGlFQUFpRSxxRUFBVztBQUM1RTtBQUNBO0FBQ0EsY0FBYyxvREFBb0I7QUFDbEM7QUFDQSxpQ0FBaUMsK0VBQXNCO0FBQ3ZEO0FBQ0Esc0NBQXNDLDZGQUF3QjtBQUM5RDtBQUNBO0FBQ0EsZUFBZSxxRUFBTyxTQUFTLHFCQUFxQjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLHFDQUFxQyxTQUFTO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSxxQ0FBcUMsMkVBQTZCO0FBQ2xFLHFDQUFxQyx5RUFBMkI7QUFDaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUM7QUFDbkM7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiwwQ0FBMEMsUUFBUSw2T0FBNkI7QUFDL0Y7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHFDQUFxQyxVQUFVO0FBQ3BFO0FBQ0E7QUFDQSxzQkFBc0Isb0ZBQW1DLEdBQUcsU0FBUztBQUNyRSxjQUFjLDRFQUFZO0FBQzFCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxTQUFTO0FBQzNDLFlBQVksd0JBQXdCO0FBQ3BDO0FBQ0E7QUFDQSx3QkFBd0Isd0VBQW1CO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGtEQUFrRDtBQUM5RCxZQUFZLDhFQUE4RTtBQUMxRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsaUdBQXVCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLGtCQUFrQiwyRUFBNkI7QUFDL0MsS0FBSztBQUNMLDZEQUE2RCxxRUFBVztBQUN4RTtBQUNBLFlBQVksV0FBVyxFQUFFLDZGQUFvQjtBQUM3QyxlQUFlLFdBQVcsR0FBRyxNQUFNO0FBQ25DO0FBQ0E7QUFDQSw4Q0FBOEMsTUFBTTtBQUNwRDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLDZCQUE2QixxRkFBa0I7QUFDL0MscUJBQXFCLDhEQUFhO0FBQ2xDO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEMsd0VBQWtCO0FBQzVEO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0EsZ0NBQWdDLHNDQUFzQztBQUN0RSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBLGFBQWE7QUFDYixtQkFBbUIseUZBQW9CO0FBQ3ZDLHFCQUFxQiw4REFBYTtBQUNsQztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNULEtBQUs7QUFDTCxhQUFhLHFCQUFxQixxQkFBcUIsVUFBVTtBQUNqRTtBQUNBLGtCQUFrQixpRUFBZ0IsR0FBRyxrQkFBa0I7QUFDdkQ7QUFDQSxpQkFBaUI7QUFDakIsYUFBYTtBQUNiO0FBQ0E7QUFDQSxZQUFZLGFBQWE7QUFDekIsV0FBVyxpRkFBZ0I7QUFDM0IsYUFBYSxrREFBUTtBQUNyQixrQkFBa0IsdUZBQWlDO0FBQ25EO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxZQUFZLGlDQUFpQztBQUM3QyxXQUFXLGlGQUFnQjtBQUMzQixhQUFhLGtEQUFRO0FBQ3JCLGtCQUFrQixzRkFBZ0M7QUFDbEQ7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNPO0FBQ1AseUJBQXlCLHNEQUFTO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2NhbGwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VBYmkgfSBmcm9tICdhYml0eXBlJztcbmltcG9ydCAqIGFzIEJsb2NrT3ZlcnJpZGVzIGZyb20gJ294L0Jsb2NrT3ZlcnJpZGVzJztcbmltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgbXVsdGljYWxsM0FiaSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9hYmlzLmpzJztcbmltcG9ydCB7IGFnZ3JlZ2F0ZTNTaWduYXR1cmUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29udHJhY3QuanMnO1xuaW1wb3J0IHsgZGVwbG95bGVzc0NhbGxWaWFCeXRlY29kZUJ5dGVjb2RlLCBkZXBsb3lsZXNzQ2FsbFZpYUZhY3RvcnlCeXRlY29kZSwgbXVsdGljYWxsM0J5dGVjb2RlLCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb250cmFjdHMuanMnO1xuaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2Jhc2UuanMnO1xuaW1wb3J0IHsgQ2hhaW5Eb2VzTm90U3VwcG9ydENvbnRyYWN0LCBDbGllbnRDaGFpbk5vdENvbmZpZ3VyZWRFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvY2hhaW4uanMnO1xuaW1wb3J0IHsgQ291bnRlcmZhY3R1YWxEZXBsb3ltZW50RmFpbGVkRXJyb3IsIFJhd0NvbnRyYWN0RXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2NvbnRyYWN0LmpzJztcbmltcG9ydCB7IGRlY29kZUZ1bmN0aW9uUmVzdWx0LCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9kZWNvZGVGdW5jdGlvblJlc3VsdC5qcyc7XG5pbXBvcnQgeyBlbmNvZGVEZXBsb3lEYXRhLCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9lbmNvZGVEZXBsb3lEYXRhLmpzJztcbmltcG9ydCB7IGVuY29kZUZ1bmN0aW9uRGF0YSwgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRnVuY3Rpb25EYXRhLmpzJztcbmltcG9ydCB7IGdldENoYWluQ29udHJhY3RBZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2NoYWluL2dldENoYWluQ29udHJhY3RBZGRyZXNzLmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4LCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGdldENhbGxFcnJvciwgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcnMvZ2V0Q2FsbEVycm9yLmpzJztcbmltcG9ydCB7IGV4dHJhY3QgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtYXR0ZXJzL2V4dHJhY3QuanMnO1xuaW1wb3J0IHsgZm9ybWF0VHJhbnNhY3Rpb25SZXF1ZXN0LCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvdHJhbnNhY3Rpb25SZXF1ZXN0LmpzJztcbmltcG9ydCB7IGNyZWF0ZUJhdGNoU2NoZWR1bGVyLCB9IGZyb20gJy4uLy4uL3V0aWxzL3Byb21pc2UvY3JlYXRlQmF0Y2hTY2hlZHVsZXIuanMnO1xuaW1wb3J0IHsgc2VyaWFsaXplU3RhdGVPdmVycmlkZSwgfSBmcm9tICcuLi8uLi91dGlscy9zdGF0ZU92ZXJyaWRlLmpzJztcbmltcG9ydCB7IGFzc2VydFJlcXVlc3QgfSBmcm9tICcuLi8uLi91dGlscy90cmFuc2FjdGlvbi9hc3NlcnRSZXF1ZXN0LmpzJztcbi8qKlxuICogRXhlY3V0ZXMgYSBuZXcgbWVzc2FnZSBjYWxsIGltbWVkaWF0ZWx5IHdpdGhvdXQgc3VibWl0dGluZyBhIHRyYW5zYWN0aW9uIHRvIHRoZSBuZXR3b3JrLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvY2FsbFxuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYGV0aF9jYWxsYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9jYWxsKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBDYWxsUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSBjYWxsIGRhdGEuIHtAbGluayBDYWxsUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGNhbGwgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgZGF0YSA9IGF3YWl0IGNhbGwoY2xpZW50LCB7XG4gKiAgIGFjY291bnQ6ICcweGYzOWZkNmU1MWFhZDg4ZjZmNGNlNmFiODgyNzI3OWNmZmZiOTIyNjYnLFxuICogICBkYXRhOiAnMHhjMDJhYWEzOWIyMjNmZThkMGEwZTVjNGYyN2VhZDkwODNjNzU2Y2MyJyxcbiAqICAgdG86ICcweDcwOTk3OTcwYzUxODEyZGMzYTAxMGM3ZDAxYjUwZTBkMTdkYzc5YzgnLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNhbGwoY2xpZW50LCBhcmdzKSB7XG4gICAgY29uc3QgeyBhY2NvdW50OiBhY2NvdW50XyA9IGNsaWVudC5hY2NvdW50LCBhdXRob3JpemF0aW9uTGlzdCwgYmF0Y2ggPSBCb29sZWFuKGNsaWVudC5iYXRjaD8ubXVsdGljYWxsKSwgYmxvY2tOdW1iZXIsIGJsb2NrVGFnID0gY2xpZW50LmV4cGVyaW1lbnRhbF9ibG9ja1RhZyA/PyAnbGF0ZXN0JywgYWNjZXNzTGlzdCwgYmxvYnMsIGJsb2NrT3ZlcnJpZGVzLCBjb2RlLCBkYXRhOiBkYXRhXywgZmFjdG9yeSwgZmFjdG9yeURhdGEsIGdhcywgZ2FzUHJpY2UsIG1heEZlZVBlckJsb2JHYXMsIG1heEZlZVBlckdhcywgbWF4UHJpb3JpdHlGZWVQZXJHYXMsIG5vbmNlLCB0bywgdmFsdWUsIHN0YXRlT3ZlcnJpZGUsIC4uLnJlc3QgfSA9IGFyZ3M7XG4gICAgY29uc3QgYWNjb3VudCA9IGFjY291bnRfID8gcGFyc2VBY2NvdW50KGFjY291bnRfKSA6IHVuZGVmaW5lZDtcbiAgICBpZiAoY29kZSAmJiAoZmFjdG9yeSB8fCBmYWN0b3J5RGF0YSkpXG4gICAgICAgIHRocm93IG5ldyBCYXNlRXJyb3IoJ0Nhbm5vdCBwcm92aWRlIGJvdGggYGNvZGVgICYgYGZhY3RvcnlgL2BmYWN0b3J5RGF0YWAgYXMgcGFyYW1ldGVycy4nKTtcbiAgICBpZiAoY29kZSAmJiB0bylcbiAgICAgICAgdGhyb3cgbmV3IEJhc2VFcnJvcignQ2Fubm90IHByb3ZpZGUgYm90aCBgY29kZWAgJiBgdG9gIGFzIHBhcmFtZXRlcnMuJyk7XG4gICAgLy8gQ2hlY2sgaWYgdGhlIGNhbGwgaXMgZGVwbG95bGVzcyB2aWEgYnl0ZWNvZGUuXG4gICAgY29uc3QgZGVwbG95bGVzc0NhbGxWaWFCeXRlY29kZSA9IGNvZGUgJiYgZGF0YV87XG4gICAgLy8gQ2hlY2sgaWYgdGhlIGNhbGwgaXMgZGVwbG95bGVzcyB2aWEgYSBmYWN0b3J5LlxuICAgIGNvbnN0IGRlcGxveWxlc3NDYWxsVmlhRmFjdG9yeSA9IGZhY3RvcnkgJiYgZmFjdG9yeURhdGEgJiYgdG8gJiYgZGF0YV87XG4gICAgY29uc3QgZGVwbG95bGVzc0NhbGwgPSBkZXBsb3lsZXNzQ2FsbFZpYUJ5dGVjb2RlIHx8IGRlcGxveWxlc3NDYWxsVmlhRmFjdG9yeTtcbiAgICBjb25zdCBkYXRhID0gKCgpID0+IHtcbiAgICAgICAgaWYgKGRlcGxveWxlc3NDYWxsVmlhQnl0ZWNvZGUpXG4gICAgICAgICAgICByZXR1cm4gdG9EZXBsb3lsZXNzQ2FsbFZpYUJ5dGVjb2RlRGF0YSh7XG4gICAgICAgICAgICAgICAgY29kZSxcbiAgICAgICAgICAgICAgICBkYXRhOiBkYXRhXyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICBpZiAoZGVwbG95bGVzc0NhbGxWaWFGYWN0b3J5KVxuICAgICAgICAgICAgcmV0dXJuIHRvRGVwbG95bGVzc0NhbGxWaWFGYWN0b3J5RGF0YSh7XG4gICAgICAgICAgICAgICAgZGF0YTogZGF0YV8sXG4gICAgICAgICAgICAgICAgZmFjdG9yeSxcbiAgICAgICAgICAgICAgICBmYWN0b3J5RGF0YSxcbiAgICAgICAgICAgICAgICB0byxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gZGF0YV87XG4gICAgfSkoKTtcbiAgICB0cnkge1xuICAgICAgICBhc3NlcnRSZXF1ZXN0KGFyZ3MpO1xuICAgICAgICBjb25zdCBibG9ja051bWJlckhleCA9IHR5cGVvZiBibG9ja051bWJlciA9PT0gJ2JpZ2ludCcgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tOdW1iZXJIZXggfHwgYmxvY2tUYWc7XG4gICAgICAgIGNvbnN0IHJwY0Jsb2NrT3ZlcnJpZGVzID0gYmxvY2tPdmVycmlkZXNcbiAgICAgICAgICAgID8gQmxvY2tPdmVycmlkZXMudG9ScGMoYmxvY2tPdmVycmlkZXMpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgcnBjU3RhdGVPdmVycmlkZSA9IHNlcmlhbGl6ZVN0YXRlT3ZlcnJpZGUoc3RhdGVPdmVycmlkZSk7XG4gICAgICAgIGNvbnN0IGNoYWluRm9ybWF0ID0gY2xpZW50LmNoYWluPy5mb3JtYXR0ZXJzPy50cmFuc2FjdGlvblJlcXVlc3Q/LmZvcm1hdDtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gY2hhaW5Gb3JtYXQgfHwgZm9ybWF0VHJhbnNhY3Rpb25SZXF1ZXN0O1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gZm9ybWF0KHtcbiAgICAgICAgICAgIC8vIFBpY2sgb3V0IGV4dHJhIGRhdGEgdGhhdCBtaWdodCBleGlzdCBvbiB0aGUgY2hhaW4ncyB0cmFuc2FjdGlvbiByZXF1ZXN0IHR5cGUuXG4gICAgICAgICAgICAuLi5leHRyYWN0KHJlc3QsIHsgZm9ybWF0OiBjaGFpbkZvcm1hdCB9KSxcbiAgICAgICAgICAgIGZyb206IGFjY291bnQ/LmFkZHJlc3MsXG4gICAgICAgICAgICBhY2Nlc3NMaXN0LFxuICAgICAgICAgICAgYXV0aG9yaXphdGlvbkxpc3QsXG4gICAgICAgICAgICBibG9icyxcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICBnYXMsXG4gICAgICAgICAgICBnYXNQcmljZSxcbiAgICAgICAgICAgIG1heEZlZVBlckJsb2JHYXMsXG4gICAgICAgICAgICBtYXhGZWVQZXJHYXMsXG4gICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhcyxcbiAgICAgICAgICAgIG5vbmNlLFxuICAgICAgICAgICAgdG86IGRlcGxveWxlc3NDYWxsID8gdW5kZWZpbmVkIDogdG8sXG4gICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgfSwgJ2NhbGwnKTtcbiAgICAgICAgaWYgKGJhdGNoICYmXG4gICAgICAgICAgICBzaG91bGRQZXJmb3JtTXVsdGljYWxsKHsgcmVxdWVzdCB9KSAmJlxuICAgICAgICAgICAgIXJwY1N0YXRlT3ZlcnJpZGUgJiZcbiAgICAgICAgICAgICFycGNCbG9ja092ZXJyaWRlcykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXdhaXQgc2NoZWR1bGVNdWx0aWNhbGwoY2xpZW50LCB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgICAgICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICAgICAgICAgICAgICBibG9ja1RhZyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICBpZiAoIShlcnIgaW5zdGFuY2VvZiBDbGllbnRDaGFpbk5vdENvbmZpZ3VyZWRFcnJvcikgJiZcbiAgICAgICAgICAgICAgICAgICAgIShlcnIgaW5zdGFuY2VvZiBDaGFpbkRvZXNOb3RTdXBwb3J0Q29udHJhY3QpKVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcGFyYW1zID0gKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGJhc2UgPSBbXG4gICAgICAgICAgICAgICAgcmVxdWVzdCxcbiAgICAgICAgICAgICAgICBibG9jayxcbiAgICAgICAgICAgIF07XG4gICAgICAgICAgICBpZiAocnBjU3RhdGVPdmVycmlkZSAmJiBycGNCbG9ja092ZXJyaWRlcylcbiAgICAgICAgICAgICAgICByZXR1cm4gWy4uLmJhc2UsIHJwY1N0YXRlT3ZlcnJpZGUsIHJwY0Jsb2NrT3ZlcnJpZGVzXTtcbiAgICAgICAgICAgIGlmIChycGNTdGF0ZU92ZXJyaWRlKVxuICAgICAgICAgICAgICAgIHJldHVybiBbLi4uYmFzZSwgcnBjU3RhdGVPdmVycmlkZV07XG4gICAgICAgICAgICBpZiAocnBjQmxvY2tPdmVycmlkZXMpXG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5iYXNlLCB7fSwgcnBjQmxvY2tPdmVycmlkZXNdO1xuICAgICAgICAgICAgcmV0dXJuIGJhc2U7XG4gICAgICAgIH0pKCk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnZXRoX2NhbGwnLFxuICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHJlc3BvbnNlID09PSAnMHgnKVxuICAgICAgICAgICAgcmV0dXJuIHsgZGF0YTogdW5kZWZpbmVkIH07XG4gICAgICAgIHJldHVybiB7IGRhdGE6IHJlc3BvbnNlIH07XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IGdldFJldmVydEVycm9yRGF0YShlcnIpO1xuICAgICAgICAvLyBDaGVjayBmb3IgQ0NJUC1SZWFkIG9mZmNoYWluIGxvb2t1cCBzaWduYXR1cmUuXG4gICAgICAgIGNvbnN0IHsgb2ZmY2hhaW5Mb29rdXAsIG9mZmNoYWluTG9va3VwU2lnbmF0dXJlIH0gPSBhd2FpdCBpbXBvcnQoJy4uLy4uL3V0aWxzL2NjaXAuanMnKTtcbiAgICAgICAgaWYgKGNsaWVudC5jY2lwUmVhZCAhPT0gZmFsc2UgJiZcbiAgICAgICAgICAgIGRhdGE/LnNsaWNlKDAsIDEwKSA9PT0gb2ZmY2hhaW5Mb29rdXBTaWduYXR1cmUgJiZcbiAgICAgICAgICAgIHRvKVxuICAgICAgICAgICAgcmV0dXJuIHsgZGF0YTogYXdhaXQgb2ZmY2hhaW5Mb29rdXAoY2xpZW50LCB7IGRhdGEsIHRvIH0pIH07XG4gICAgICAgIC8vIENoZWNrIGZvciBjb3VudGVyZmFjdHVhbCBkZXBsb3ltZW50IGVycm9yLlxuICAgICAgICBpZiAoZGVwbG95bGVzc0NhbGwgJiYgZGF0YT8uc2xpY2UoMCwgMTApID09PSAnMHgxMDFiYjk4ZCcpXG4gICAgICAgICAgICB0aHJvdyBuZXcgQ291bnRlcmZhY3R1YWxEZXBsb3ltZW50RmFpbGVkRXJyb3IoeyBmYWN0b3J5IH0pO1xuICAgICAgICB0aHJvdyBnZXRDYWxsRXJyb3IoZXJyLCB7XG4gICAgICAgICAgICAuLi5hcmdzLFxuICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICAgIGNoYWluOiBjbGllbnQuY2hhaW4sXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIFdlIG9ubHkgd2FudCB0byBwZXJmb3JtIGEgc2NoZWR1bGVkIG11bHRpY2FsbCBpZjpcbi8vIC0gVGhlIHJlcXVlc3QgaGFzIGNhbGxkYXRhLFxuLy8gLSBUaGUgcmVxdWVzdCBoYXMgYSB0YXJnZXQgYWRkcmVzcyxcbi8vIC0gVGhlIHRhcmdldCBhZGRyZXNzIGlzIG5vdCBhbHJlYWR5IHRoZSBhZ2dyZWdhdGUzIHNpZ25hdHVyZSxcbi8vIC0gVGhlIHJlcXVlc3QgaGFzIG5vIG90aGVyIHByb3BlcnRpZXMgKGBub25jZWAsIGBnYXNgLCBldGMgY2Fubm90IGJlIHNlbnQgd2l0aCBhIG11bHRpY2FsbCkuXG5mdW5jdGlvbiBzaG91bGRQZXJmb3JtTXVsdGljYWxsKHsgcmVxdWVzdCB9KSB7XG4gICAgY29uc3QgeyBkYXRhLCB0bywgLi4ucmVxdWVzdF8gfSA9IHJlcXVlc3Q7XG4gICAgaWYgKCFkYXRhKVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgaWYgKGRhdGEuc3RhcnRzV2l0aChhZ2dyZWdhdGUzU2lnbmF0dXJlKSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmICghdG8pXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBpZiAoT2JqZWN0LnZhbHVlcyhyZXF1ZXN0XykuZmlsdGVyKCh4KSA9PiB0eXBlb2YgeCAhPT0gJ3VuZGVmaW5lZCcpLmxlbmd0aCA+IDApXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbn1cbmFzeW5jIGZ1bmN0aW9uIHNjaGVkdWxlTXVsdGljYWxsKGNsaWVudCwgYXJncykge1xuICAgIGNvbnN0IHsgYmF0Y2hTaXplID0gMTAyNCwgZGVwbG95bGVzcyA9IGZhbHNlLCB3YWl0ID0gMCwgfSA9IHR5cGVvZiBjbGllbnQuYmF0Y2g/Lm11bHRpY2FsbCA9PT0gJ29iamVjdCcgPyBjbGllbnQuYmF0Y2gubXVsdGljYWxsIDoge307XG4gICAgY29uc3QgeyBibG9ja051bWJlciwgYmxvY2tUYWcgPSBjbGllbnQuZXhwZXJpbWVudGFsX2Jsb2NrVGFnID8/ICdsYXRlc3QnLCBkYXRhLCB0bywgfSA9IGFyZ3M7XG4gICAgY29uc3QgbXVsdGljYWxsQWRkcmVzcyA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChkZXBsb3lsZXNzKVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIGlmIChhcmdzLm11bHRpY2FsbEFkZHJlc3MpXG4gICAgICAgICAgICByZXR1cm4gYXJncy5tdWx0aWNhbGxBZGRyZXNzO1xuICAgICAgICBpZiAoY2xpZW50LmNoYWluKSB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0Q2hhaW5Db250cmFjdEFkZHJlc3Moe1xuICAgICAgICAgICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICAgICAgICAgIGNoYWluOiBjbGllbnQuY2hhaW4sXG4gICAgICAgICAgICAgICAgY29udHJhY3Q6ICdtdWx0aWNhbGwzJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBDbGllbnRDaGFpbk5vdENvbmZpZ3VyZWRFcnJvcigpO1xuICAgIH0pKCk7XG4gICAgY29uc3QgYmxvY2tOdW1iZXJIZXggPSB0eXBlb2YgYmxvY2tOdW1iZXIgPT09ICdiaWdpbnQnID8gbnVtYmVyVG9IZXgoYmxvY2tOdW1iZXIpIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IGJsb2NrID0gYmxvY2tOdW1iZXJIZXggfHwgYmxvY2tUYWc7XG4gICAgY29uc3QgeyBzY2hlZHVsZSB9ID0gY3JlYXRlQmF0Y2hTY2hlZHVsZXIoe1xuICAgICAgICBpZDogYCR7Y2xpZW50LnVpZH0uJHtibG9ja31gLFxuICAgICAgICB3YWl0LFxuICAgICAgICBzaG91bGRTcGxpdEJhdGNoKGFyZ3MpIHtcbiAgICAgICAgICAgIGNvbnN0IHNpemUgPSBhcmdzLnJlZHVjZSgoc2l6ZSwgeyBkYXRhIH0pID0+IHNpemUgKyAoZGF0YS5sZW5ndGggLSAyKSwgMCk7XG4gICAgICAgICAgICByZXR1cm4gc2l6ZSA+IGJhdGNoU2l6ZSAqIDI7XG4gICAgICAgIH0sXG4gICAgICAgIGZuOiBhc3luYyAocmVxdWVzdHMpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNhbGxzID0gcmVxdWVzdHMubWFwKChyZXF1ZXN0KSA9PiAoe1xuICAgICAgICAgICAgICAgIGFsbG93RmFpbHVyZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBjYWxsRGF0YTogcmVxdWVzdC5kYXRhLFxuICAgICAgICAgICAgICAgIHRhcmdldDogcmVxdWVzdC50byxcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGNvbnN0IGNhbGxkYXRhID0gZW5jb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgICAgICBhYmk6IG11bHRpY2FsbDNBYmksXG4gICAgICAgICAgICAgICAgYXJnczogW2NhbGxzXSxcbiAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWU6ICdhZ2dyZWdhdGUzJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgICAgICAgICBtZXRob2Q6ICdldGhfY2FsbCcsXG4gICAgICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLihtdWx0aWNhbGxBZGRyZXNzID09PSBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHRvRGVwbG95bGVzc0NhbGxWaWFCeXRlY29kZURhdGEoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogbXVsdGljYWxsM0J5dGVjb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogY2FsbGRhdGEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHsgdG86IG11bHRpY2FsbEFkZHJlc3MsIGRhdGE6IGNhbGxkYXRhIH0pLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBibG9jayxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlRnVuY3Rpb25SZXN1bHQoe1xuICAgICAgICAgICAgICAgIGFiaTogbXVsdGljYWxsM0FiaSxcbiAgICAgICAgICAgICAgICBhcmdzOiBbY2FsbHNdLFxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ2FnZ3JlZ2F0ZTMnLFxuICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEgfHwgJzB4JyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgIH0pO1xuICAgIGNvbnN0IFt7IHJldHVybkRhdGEsIHN1Y2Nlc3MgfV0gPSBhd2FpdCBzY2hlZHVsZSh7IGRhdGEsIHRvIH0pO1xuICAgIGlmICghc3VjY2VzcylcbiAgICAgICAgdGhyb3cgbmV3IFJhd0NvbnRyYWN0RXJyb3IoeyBkYXRhOiByZXR1cm5EYXRhIH0pO1xuICAgIGlmIChyZXR1cm5EYXRhID09PSAnMHgnKVxuICAgICAgICByZXR1cm4geyBkYXRhOiB1bmRlZmluZWQgfTtcbiAgICByZXR1cm4geyBkYXRhOiByZXR1cm5EYXRhIH07XG59XG5mdW5jdGlvbiB0b0RlcGxveWxlc3NDYWxsVmlhQnl0ZWNvZGVEYXRhKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGNvZGUsIGRhdGEgfSA9IHBhcmFtZXRlcnM7XG4gICAgcmV0dXJuIGVuY29kZURlcGxveURhdGEoe1xuICAgICAgICBhYmk6IHBhcnNlQWJpKFsnY29uc3RydWN0b3IoYnl0ZXMsIGJ5dGVzKSddKSxcbiAgICAgICAgYnl0ZWNvZGU6IGRlcGxveWxlc3NDYWxsVmlhQnl0ZWNvZGVCeXRlY29kZSxcbiAgICAgICAgYXJnczogW2NvZGUsIGRhdGFdLFxuICAgIH0pO1xufVxuZnVuY3Rpb24gdG9EZXBsb3lsZXNzQ2FsbFZpYUZhY3RvcnlEYXRhKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGRhdGEsIGZhY3RvcnksIGZhY3RvcnlEYXRhLCB0byB9ID0gcGFyYW1ldGVycztcbiAgICByZXR1cm4gZW5jb2RlRGVwbG95RGF0YSh7XG4gICAgICAgIGFiaTogcGFyc2VBYmkoWydjb25zdHJ1Y3RvcihhZGRyZXNzLCBieXRlcywgYWRkcmVzcywgYnl0ZXMpJ10pLFxuICAgICAgICBieXRlY29kZTogZGVwbG95bGVzc0NhbGxWaWFGYWN0b3J5Qnl0ZWNvZGUsXG4gICAgICAgIGFyZ3M6IFt0bywgZGF0YSwgZmFjdG9yeSwgZmFjdG9yeURhdGFdLFxuICAgIH0pO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJldmVydEVycm9yRGF0YShlcnIpIHtcbiAgICBpZiAoIShlcnIgaW5zdGFuY2VvZiBCYXNlRXJyb3IpKVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IGVycm9yID0gZXJyLndhbGsoKTtcbiAgICByZXR1cm4gdHlwZW9mIGVycm9yPy5kYXRhID09PSAnb2JqZWN0JyA/IGVycm9yLmRhdGE/LmRhdGEgOiBlcnJvci5kYXRhO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FsbC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/call.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/createAccessList.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/createAccessList.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createAccessList: () => (/* binding */ createAccessList)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_errors_getCallError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/errors/getCallError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getCallError.js\");\n/* harmony import */ var _utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/formatters/extract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/extract.js\");\n/* harmony import */ var _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/formatters/transactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionRequest.js\");\n/* harmony import */ var _utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/transaction/assertRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js\");\n\n\n\n\n\n\n/**\n * Creates an EIP-2930 access list.\n *\n * - Docs: https://viem.sh/docs/actions/public/createAccessList\n * - JSON-RPC Methods: `eth_createAccessList`\n *\n * @param client - Client to use\n * @param parameters - {@link CreateAccessListParameters}\n * @returns The access list. {@link CreateAccessListReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createAccessList } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const data = await createAccessList(client, {\n * account: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266',\n * data: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * })\n */\nasync function createAccessList(client, args) {\n const { account: account_ = client.account, blockNumber, blockTag = 'latest', blobs, data, gas, gasPrice, maxFeePerBlobGas, maxFeePerGas, maxPriorityFeePerGas, to, value, ...rest } = args;\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__.parseAccount)(account_) : undefined;\n try {\n (0,_utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_1__.assertRequest)(args);\n const blockNumberHex = typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(blockNumber) : undefined;\n const block = blockNumberHex || blockTag;\n const chainFormat = client.chain?.formatters?.transactionRequest?.format;\n const format = chainFormat || _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_3__.formatTransactionRequest;\n const request = format({\n // Pick out extra data that might exist on the chain's transaction request type.\n ...(0,_utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_4__.extract)(rest, { format: chainFormat }),\n from: account?.address,\n blobs,\n data,\n gas,\n gasPrice,\n maxFeePerBlobGas,\n maxFeePerGas,\n maxPriorityFeePerGas,\n to,\n value,\n }, 'createAccessList');\n const response = await client.request({\n method: 'eth_createAccessList',\n params: [request, block],\n });\n return {\n accessList: response.accessList,\n gasUsed: BigInt(response.gasUsed),\n };\n }\n catch (err) {\n throw (0,_utils_errors_getCallError_js__WEBPACK_IMPORTED_MODULE_5__.getCallError)(err, {\n ...args,\n account,\n chain: client.chain,\n });\n }\n}\n//# sourceMappingURL=createAccessList.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvY3JlYXRlQWNjZXNzTGlzdC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQXFFO0FBQ1I7QUFDTTtBQUNQO0FBQzZCO0FBQ2hCO0FBQ3pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDhCQUE4QjtBQUM5QjtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksbUJBQW1CO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLDZLQUE2SztBQUN6TCwrQkFBK0IsNkVBQVk7QUFDM0M7QUFDQSxRQUFRLGtGQUFhO0FBQ3JCLGlFQUFpRSxxRUFBVztBQUM1RTtBQUNBO0FBQ0Esc0NBQXNDLDZGQUF3QjtBQUM5RDtBQUNBO0FBQ0EsZUFBZSxxRUFBTyxTQUFTLHFCQUFxQjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYywyRUFBWTtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9jcmVhdGVBY2Nlc3NMaXN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgbnVtYmVyVG9IZXgsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5jb2RpbmcvdG9IZXguanMnO1xuaW1wb3J0IHsgZ2V0Q2FsbEVycm9yLCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vycm9ycy9nZXRDYWxsRXJyb3IuanMnO1xuaW1wb3J0IHsgZXh0cmFjdCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvZXh0cmFjdC5qcyc7XG5pbXBvcnQgeyBmb3JtYXRUcmFuc2FjdGlvblJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy90cmFuc2FjdGlvblJlcXVlc3QuanMnO1xuaW1wb3J0IHsgYXNzZXJ0UmVxdWVzdCB9IGZyb20gJy4uLy4uL3V0aWxzL3RyYW5zYWN0aW9uL2Fzc2VydFJlcXVlc3QuanMnO1xuLyoqXG4gKiBDcmVhdGVzIGFuIEVJUC0yOTMwIGFjY2VzcyBsaXN0LlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvY3JlYXRlQWNjZXNzTGlzdFxuICogLSBKU09OLVJQQyBNZXRob2RzOiBgZXRoX2NyZWF0ZUFjY2Vzc0xpc3RgXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIENyZWF0ZUFjY2Vzc0xpc3RQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIGFjY2VzcyBsaXN0LiB7QGxpbmsgQ3JlYXRlQWNjZXNzTGlzdFJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBjcmVhdGVBY2Nlc3NMaXN0IH0gZnJvbSAndmllbS9wdWJsaWMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGRhdGEgPSBhd2FpdCBjcmVhdGVBY2Nlc3NMaXN0KGNsaWVudCwge1xuICogICBhY2NvdW50OiAnMHhmMzlmZDZlNTFhYWQ4OGY2ZjRjZTZhYjg4MjcyNzljZmZmYjkyMjY2JyxcbiAqICAgZGF0YTogJzB4YzAyYWFhMzliMjIzZmU4ZDBhMGU1YzRmMjdlYWQ5MDgzYzc1NmNjMicsXG4gKiAgIHRvOiAnMHg3MDk5Nzk3MGM1MTgxMmRjM2EwMTBjN2QwMWI1MGUwZDE3ZGM3OWM4JyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVBY2Nlc3NMaXN0KGNsaWVudCwgYXJncykge1xuICAgIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudF8gPSBjbGllbnQuYWNjb3VudCwgYmxvY2tOdW1iZXIsIGJsb2NrVGFnID0gJ2xhdGVzdCcsIGJsb2JzLCBkYXRhLCBnYXMsIGdhc1ByaWNlLCBtYXhGZWVQZXJCbG9iR2FzLCBtYXhGZWVQZXJHYXMsIG1heFByaW9yaXR5RmVlUGVyR2FzLCB0bywgdmFsdWUsIC4uLnJlc3QgfSA9IGFyZ3M7XG4gICAgY29uc3QgYWNjb3VudCA9IGFjY291bnRfID8gcGFyc2VBY2NvdW50KGFjY291bnRfKSA6IHVuZGVmaW5lZDtcbiAgICB0cnkge1xuICAgICAgICBhc3NlcnRSZXF1ZXN0KGFyZ3MpO1xuICAgICAgICBjb25zdCBibG9ja051bWJlckhleCA9IHR5cGVvZiBibG9ja051bWJlciA9PT0gJ2JpZ2ludCcgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tOdW1iZXJIZXggfHwgYmxvY2tUYWc7XG4gICAgICAgIGNvbnN0IGNoYWluRm9ybWF0ID0gY2xpZW50LmNoYWluPy5mb3JtYXR0ZXJzPy50cmFuc2FjdGlvblJlcXVlc3Q/LmZvcm1hdDtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gY2hhaW5Gb3JtYXQgfHwgZm9ybWF0VHJhbnNhY3Rpb25SZXF1ZXN0O1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gZm9ybWF0KHtcbiAgICAgICAgICAgIC8vIFBpY2sgb3V0IGV4dHJhIGRhdGEgdGhhdCBtaWdodCBleGlzdCBvbiB0aGUgY2hhaW4ncyB0cmFuc2FjdGlvbiByZXF1ZXN0IHR5cGUuXG4gICAgICAgICAgICAuLi5leHRyYWN0KHJlc3QsIHsgZm9ybWF0OiBjaGFpbkZvcm1hdCB9KSxcbiAgICAgICAgICAgIGZyb206IGFjY291bnQ/LmFkZHJlc3MsXG4gICAgICAgICAgICBibG9icyxcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICBnYXMsXG4gICAgICAgICAgICBnYXNQcmljZSxcbiAgICAgICAgICAgIG1heEZlZVBlckJsb2JHYXMsXG4gICAgICAgICAgICBtYXhGZWVQZXJHYXMsXG4gICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhcyxcbiAgICAgICAgICAgIHRvLFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgIH0sICdjcmVhdGVBY2Nlc3NMaXN0Jyk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnZXRoX2NyZWF0ZUFjY2Vzc0xpc3QnLFxuICAgICAgICAgICAgcGFyYW1zOiBbcmVxdWVzdCwgYmxvY2tdLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFjY2Vzc0xpc3Q6IHJlc3BvbnNlLmFjY2Vzc0xpc3QsXG4gICAgICAgICAgICBnYXNVc2VkOiBCaWdJbnQocmVzcG9uc2UuZ2FzVXNlZCksXG4gICAgICAgIH07XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhyb3cgZ2V0Q2FsbEVycm9yKGVyciwge1xuICAgICAgICAgICAgLi4uYXJncyxcbiAgICAgICAgICAgIGFjY291bnQsXG4gICAgICAgICAgICBjaGFpbjogY2xpZW50LmNoYWluLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jcmVhdGVBY2Nlc3NMaXN0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/createAccessList.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/createBlockFilter.js": /*!********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/createBlockFilter.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createBlockFilter: () => (/* binding */ createBlockFilter)\n/* harmony export */ });\n/* harmony import */ var _utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/filters/createFilterRequestScope.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/filters/createFilterRequestScope.js\");\n\n/**\n * Creates a [`Filter`](https://viem.sh/docs/glossary/types#filter) to listen for new block hashes that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n *\n * - Docs: https://viem.sh/docs/actions/public/createBlockFilter\n * - JSON-RPC Methods: [`eth_newBlockFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newBlockFilter)\n *\n * @param client - Client to use\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateBlockFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createBlockFilter } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createBlockFilter(client)\n * // { id: \"0x345a6572337856574a76364e457a4366\", type: 'block' }\n */\nasync function createBlockFilter(client) {\n const getRequest = (0,_utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__.createFilterRequestScope)(client, {\n method: 'eth_newBlockFilter',\n });\n const id = await client.request({\n method: 'eth_newBlockFilter',\n });\n return { id, request: getRequest(id), type: 'block' };\n}\n//# sourceMappingURL=createBlockFilter.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvY3JlYXRlQmxvY2tGaWx0ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBMkY7QUFDM0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxRUFBcUU7QUFDckU7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLG9CQUFvQjtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLFFBQVE7QUFDUjtBQUNPO0FBQ1AsdUJBQXVCLG9HQUF3QjtBQUMvQztBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSztBQUNMLGFBQWE7QUFDYjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9jcmVhdGVCbG9ja0ZpbHRlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUgfSBmcm9tICcuLi8uLi91dGlscy9maWx0ZXJzL2NyZWF0ZUZpbHRlclJlcXVlc3RTY29wZS5qcyc7XG4vKipcbiAqIENyZWF0ZXMgYSBbYEZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2dsb3NzYXJ5L3R5cGVzI2ZpbHRlcikgdG8gbGlzdGVuIGZvciBuZXcgYmxvY2sgaGFzaGVzIHRoYXQgY2FuIGJlIHVzZWQgd2l0aCBbYGdldEZpbHRlckNoYW5nZXNgXShodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9nZXRGaWx0ZXJDaGFuZ2VzKS5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2NyZWF0ZUJsb2NrRmlsdGVyXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6IFtgZXRoX25ld0Jsb2NrRmlsdGVyYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9uZXdCbG9ja0ZpbHRlcilcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHJldHVybnMgW2BGaWx0ZXJgXShodHRwczovL3ZpZW0uc2gvZG9jcy9nbG9zc2FyeS90eXBlcyNmaWx0ZXIpLiB7QGxpbmsgQ3JlYXRlQmxvY2tGaWx0ZXJSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgY3JlYXRlQmxvY2tGaWx0ZXIgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgZmlsdGVyID0gYXdhaXQgY3JlYXRlQmxvY2tGaWx0ZXIoY2xpZW50KVxuICogLy8geyBpZDogXCIweDM0NWE2NTcyMzM3ODU2NTc0YTc2MzY0ZTQ1N2E0MzY2XCIsIHR5cGU6ICdibG9jaycgfVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlQmxvY2tGaWx0ZXIoY2xpZW50KSB7XG4gICAgY29uc3QgZ2V0UmVxdWVzdCA9IGNyZWF0ZUZpbHRlclJlcXVlc3RTY29wZShjbGllbnQsIHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX25ld0Jsb2NrRmlsdGVyJyxcbiAgICB9KTtcbiAgICBjb25zdCBpZCA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX25ld0Jsb2NrRmlsdGVyJyxcbiAgICB9KTtcbiAgICByZXR1cm4geyBpZCwgcmVxdWVzdDogZ2V0UmVxdWVzdChpZCksIHR5cGU6ICdibG9jaycgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyZWF0ZUJsb2NrRmlsdGVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/createBlockFilter.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/createContractEventFilter.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/createContractEventFilter.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createContractEventFilter: () => (/* binding */ createContractEventFilter)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/abi/encodeEventTopics.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeEventTopics.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/filters/createFilterRequestScope.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/filters/createFilterRequestScope.js\");\n\n\n\n/**\n * Creates a Filter to retrieve event logs that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges) or [`getFilterLogs`](https://viem.sh/docs/actions/public/getFilterLogs).\n *\n * - Docs: https://viem.sh/docs/contract/createContractEventFilter\n *\n * @param client - Client to use\n * @param parameters - {@link CreateContractEventFilterParameters}\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateContractEventFilterReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createContractEventFilter } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createContractEventFilter(client, {\n * abi: parseAbi(['event Transfer(address indexed, address indexed, uint256)']),\n * })\n */\nasync function createContractEventFilter(client, parameters) {\n const { address, abi, args, eventName, fromBlock, strict, toBlock } = parameters;\n const getRequest = (0,_utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__.createFilterRequestScope)(client, {\n method: 'eth_newFilter',\n });\n const topics = eventName\n ? (0,_utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_1__.encodeEventTopics)({\n abi,\n args,\n eventName,\n })\n : undefined;\n const id = await client.request({\n method: 'eth_newFilter',\n params: [\n {\n address,\n fromBlock: typeof fromBlock === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(fromBlock) : fromBlock,\n toBlock: typeof toBlock === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(toBlock) : toBlock,\n topics,\n },\n ],\n });\n return {\n abi,\n args,\n eventName,\n id,\n request: getRequest(id),\n strict: Boolean(strict),\n type: 'event',\n };\n}\n//# sourceMappingURL=createContractEventFilter.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQTBFO0FBQ2I7QUFDOEI7QUFDM0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHFFQUFxRTtBQUNyRTtBQUNBO0FBQ0EsWUFBWSxxQ0FBcUM7QUFDakQsWUFBWSxVQUFVO0FBQ3RCLFlBQVksNEJBQTRCO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTztBQUNQLFlBQVksNERBQTREO0FBQ3hFLHVCQUF1QixvR0FBd0I7QUFDL0M7QUFDQSxLQUFLO0FBQ0w7QUFDQSxVQUFVLGtGQUFpQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkRBQTJELHFFQUFXO0FBQ3RFLHVEQUF1RCxxRUFBVztBQUNsRTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9jcmVhdGVDb250cmFjdEV2ZW50RmlsdGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVuY29kZUV2ZW50VG9waWNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9lbmNvZGVFdmVudFRvcGljcy5qcyc7XG5pbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBjcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUgfSBmcm9tICcuLi8uLi91dGlscy9maWx0ZXJzL2NyZWF0ZUZpbHRlclJlcXVlc3RTY29wZS5qcyc7XG4vKipcbiAqIENyZWF0ZXMgYSBGaWx0ZXIgdG8gcmV0cmlldmUgZXZlbnQgbG9ncyB0aGF0IGNhbiBiZSB1c2VkIHdpdGggW2BnZXRGaWx0ZXJDaGFuZ2VzYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0RmlsdGVyQ2hhbmdlcykgb3IgW2BnZXRGaWx0ZXJMb2dzYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0RmlsdGVyTG9ncykuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9jb250cmFjdC9jcmVhdGVDb250cmFjdEV2ZW50RmlsdGVyXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIENyZWF0ZUNvbnRyYWN0RXZlbnRGaWx0ZXJQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgW2BGaWx0ZXJgXShodHRwczovL3ZpZW0uc2gvZG9jcy9nbG9zc2FyeS90eXBlcyNmaWx0ZXIpLiB7QGxpbmsgQ3JlYXRlQ29udHJhY3RFdmVudEZpbHRlclJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgcGFyc2VBYmkgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlciB9IGZyb20gJ3ZpZW0vY29udHJhY3QnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGZpbHRlciA9IGF3YWl0IGNyZWF0ZUNvbnRyYWN0RXZlbnRGaWx0ZXIoY2xpZW50LCB7XG4gKiAgIGFiaTogcGFyc2VBYmkoWydldmVudCBUcmFuc2ZlcihhZGRyZXNzIGluZGV4ZWQsIGFkZHJlc3MgaW5kZXhlZCwgdWludDI1NiknXSksXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlcihjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGFiaSwgYXJncywgZXZlbnROYW1lLCBmcm9tQmxvY2ssIHN0cmljdCwgdG9CbG9jayB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBnZXRSZXF1ZXN0ID0gY3JlYXRlRmlsdGVyUmVxdWVzdFNjb3BlKGNsaWVudCwge1xuICAgICAgICBtZXRob2Q6ICdldGhfbmV3RmlsdGVyJyxcbiAgICB9KTtcbiAgICBjb25zdCB0b3BpY3MgPSBldmVudE5hbWVcbiAgICAgICAgPyBlbmNvZGVFdmVudFRvcGljcyh7XG4gICAgICAgICAgICBhYmksXG4gICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICB9KVxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCBpZCA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX25ld0ZpbHRlcicsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICAgICAgZnJvbUJsb2NrOiB0eXBlb2YgZnJvbUJsb2NrID09PSAnYmlnaW50JyA/IG51bWJlclRvSGV4KGZyb21CbG9jaykgOiBmcm9tQmxvY2ssXG4gICAgICAgICAgICAgICAgdG9CbG9jazogdHlwZW9mIHRvQmxvY2sgPT09ICdiaWdpbnQnID8gbnVtYmVyVG9IZXgodG9CbG9jaykgOiB0b0Jsb2NrLFxuICAgICAgICAgICAgICAgIHRvcGljcyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYWJpLFxuICAgICAgICBhcmdzLFxuICAgICAgICBldmVudE5hbWUsXG4gICAgICAgIGlkLFxuICAgICAgICByZXF1ZXN0OiBnZXRSZXF1ZXN0KGlkKSxcbiAgICAgICAgc3RyaWN0OiBCb29sZWFuKHN0cmljdCksXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyZWF0ZUNvbnRyYWN0RXZlbnRGaWx0ZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/createContractEventFilter.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/createEventFilter.js": /*!********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/createEventFilter.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createEventFilter: () => (/* binding */ createEventFilter)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/abi/encodeEventTopics.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeEventTopics.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/filters/createFilterRequestScope.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/filters/createFilterRequestScope.js\");\n\n\n\n/**\n * Creates a [`Filter`](https://viem.sh/docs/glossary/types#filter) to listen for new events that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n *\n * - Docs: https://viem.sh/docs/actions/public/createEventFilter\n * - JSON-RPC Methods: [`eth_newFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newfilter)\n *\n * @param client - Client to use\n * @param parameters - {@link CreateEventFilterParameters}\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateEventFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createEventFilter } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createEventFilter(client, {\n * address: '0xfba3912ca04dd458c843e2ee08967fc04f3579c2',\n * })\n */\nasync function createEventFilter(client, { address, args, event, events: events_, fromBlock, strict, toBlock, } = {}) {\n const events = events_ ?? (event ? [event] : undefined);\n const getRequest = (0,_utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__.createFilterRequestScope)(client, {\n method: 'eth_newFilter',\n });\n let topics = [];\n if (events) {\n const encoded = events.flatMap((event) => (0,_utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_1__.encodeEventTopics)({\n abi: [event],\n eventName: event.name,\n args,\n }));\n // TODO: Clean up type casting\n topics = [encoded];\n if (event)\n topics = topics[0];\n }\n const id = await client.request({\n method: 'eth_newFilter',\n params: [\n {\n address,\n fromBlock: typeof fromBlock === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(fromBlock) : fromBlock,\n toBlock: typeof toBlock === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(toBlock) : toBlock,\n ...(topics.length ? { topics } : {}),\n },\n ],\n });\n return {\n abi: events,\n args,\n eventName: event ? event.name : undefined,\n fromBlock,\n id,\n request: getRequest(id),\n strict: Boolean(strict),\n toBlock,\n type: 'event',\n };\n}\n//# sourceMappingURL=createEventFilter.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvY3JlYXRlRXZlbnRGaWx0ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUEwRTtBQUNiO0FBQzhCO0FBQzNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHFFQUFxRTtBQUNyRTtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksb0JBQW9CO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTywyQ0FBMkMscUVBQXFFLElBQUk7QUFDM0g7QUFDQSx1QkFBdUIsb0dBQXdCO0FBQy9DO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxrREFBa0Qsa0ZBQWlCO0FBQ25FO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJEQUEyRCxxRUFBVztBQUN0RSx1REFBdUQscUVBQVc7QUFDbEUsc0NBQXNDLFNBQVMsSUFBSTtBQUNuRCxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2NyZWF0ZUV2ZW50RmlsdGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVuY29kZUV2ZW50VG9waWNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9lbmNvZGVFdmVudFRvcGljcy5qcyc7XG5pbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBjcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUgfSBmcm9tICcuLi8uLi91dGlscy9maWx0ZXJzL2NyZWF0ZUZpbHRlclJlcXVlc3RTY29wZS5qcyc7XG4vKipcbiAqIENyZWF0ZXMgYSBbYEZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2dsb3NzYXJ5L3R5cGVzI2ZpbHRlcikgdG8gbGlzdGVuIGZvciBuZXcgZXZlbnRzIHRoYXQgY2FuIGJlIHVzZWQgd2l0aCBbYGdldEZpbHRlckNoYW5nZXNgXShodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9nZXRGaWx0ZXJDaGFuZ2VzKS5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2NyZWF0ZUV2ZW50RmlsdGVyXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6IFtgZXRoX25ld0ZpbHRlcmBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfbmV3ZmlsdGVyKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBDcmVhdGVFdmVudEZpbHRlclBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBbYEZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2dsb3NzYXJ5L3R5cGVzI2ZpbHRlcikuIHtAbGluayBDcmVhdGVFdmVudEZpbHRlclJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBjcmVhdGVFdmVudEZpbHRlciB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBmaWx0ZXIgPSBhd2FpdCBjcmVhdGVFdmVudEZpbHRlcihjbGllbnQsIHtcbiAqICAgYWRkcmVzczogJzB4ZmJhMzkxMmNhMDRkZDQ1OGM4NDNlMmVlMDg5NjdmYzA0ZjM1NzljMicsXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlRXZlbnRGaWx0ZXIoY2xpZW50LCB7IGFkZHJlc3MsIGFyZ3MsIGV2ZW50LCBldmVudHM6IGV2ZW50c18sIGZyb21CbG9jaywgc3RyaWN0LCB0b0Jsb2NrLCB9ID0ge30pIHtcbiAgICBjb25zdCBldmVudHMgPSBldmVudHNfID8/IChldmVudCA/IFtldmVudF0gOiB1bmRlZmluZWQpO1xuICAgIGNvbnN0IGdldFJlcXVlc3QgPSBjcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUoY2xpZW50LCB7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9uZXdGaWx0ZXInLFxuICAgIH0pO1xuICAgIGxldCB0b3BpY3MgPSBbXTtcbiAgICBpZiAoZXZlbnRzKSB7XG4gICAgICAgIGNvbnN0IGVuY29kZWQgPSBldmVudHMuZmxhdE1hcCgoZXZlbnQpID0+IGVuY29kZUV2ZW50VG9waWNzKHtcbiAgICAgICAgICAgIGFiaTogW2V2ZW50XSxcbiAgICAgICAgICAgIGV2ZW50TmFtZTogZXZlbnQubmFtZSxcbiAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgIH0pKTtcbiAgICAgICAgLy8gVE9ETzogQ2xlYW4gdXAgdHlwZSBjYXN0aW5nXG4gICAgICAgIHRvcGljcyA9IFtlbmNvZGVkXTtcbiAgICAgICAgaWYgKGV2ZW50KVxuICAgICAgICAgICAgdG9waWNzID0gdG9waWNzWzBdO1xuICAgIH1cbiAgICBjb25zdCBpZCA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX25ld0ZpbHRlcicsXG4gICAgICAgIHBhcmFtczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICAgICAgZnJvbUJsb2NrOiB0eXBlb2YgZnJvbUJsb2NrID09PSAnYmlnaW50JyA/IG51bWJlclRvSGV4KGZyb21CbG9jaykgOiBmcm9tQmxvY2ssXG4gICAgICAgICAgICAgICAgdG9CbG9jazogdHlwZW9mIHRvQmxvY2sgPT09ICdiaWdpbnQnID8gbnVtYmVyVG9IZXgodG9CbG9jaykgOiB0b0Jsb2NrLFxuICAgICAgICAgICAgICAgIC4uLih0b3BpY3MubGVuZ3RoID8geyB0b3BpY3MgfSA6IHt9KSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYWJpOiBldmVudHMsXG4gICAgICAgIGFyZ3MsXG4gICAgICAgIGV2ZW50TmFtZTogZXZlbnQgPyBldmVudC5uYW1lIDogdW5kZWZpbmVkLFxuICAgICAgICBmcm9tQmxvY2ssXG4gICAgICAgIGlkLFxuICAgICAgICByZXF1ZXN0OiBnZXRSZXF1ZXN0KGlkKSxcbiAgICAgICAgc3RyaWN0OiBCb29sZWFuKHN0cmljdCksXG4gICAgICAgIHRvQmxvY2ssXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyZWF0ZUV2ZW50RmlsdGVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/createEventFilter.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/createPendingTransactionFilter.js": /*!*********************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/createPendingTransactionFilter.js ***! \*********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createPendingTransactionFilter: () => (/* binding */ createPendingTransactionFilter)\n/* harmony export */ });\n/* harmony import */ var _utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/filters/createFilterRequestScope.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/filters/createFilterRequestScope.js\");\n\n/**\n * Creates a Filter to listen for new pending transaction hashes that can be used with [`getFilterChanges`](https://viem.sh/docs/actions/public/getFilterChanges).\n *\n * - Docs: https://viem.sh/docs/actions/public/createPendingTransactionFilter\n * - JSON-RPC Methods: [`eth_newPendingTransactionFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newpendingtransactionfilter)\n *\n * @param client - Client to use\n * @returns [`Filter`](https://viem.sh/docs/glossary/types#filter). {@link CreateBlockFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createPendingTransactionFilter } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createPendingTransactionFilter(client)\n * // { id: \"0x345a6572337856574a76364e457a4366\", type: 'transaction' }\n */\nasync function createPendingTransactionFilter(client) {\n const getRequest = (0,_utils_filters_createFilterRequestScope_js__WEBPACK_IMPORTED_MODULE_0__.createFilterRequestScope)(client, {\n method: 'eth_newPendingTransactionFilter',\n });\n const id = await client.request({\n method: 'eth_newPendingTransactionFilter',\n });\n return { id, request: getRequest(id), type: 'transaction' };\n}\n//# sourceMappingURL=createPendingTransactionFilter.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvY3JlYXRlUGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQTJGO0FBQzNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUVBQXFFO0FBQ3JFO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxpQ0FBaUM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxRQUFRO0FBQ1I7QUFDTztBQUNQLHVCQUF1QixvR0FBd0I7QUFDL0M7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLEtBQUs7QUFDTCxhQUFhO0FBQ2I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvY3JlYXRlUGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUZpbHRlclJlcXVlc3RTY29wZSB9IGZyb20gJy4uLy4uL3V0aWxzL2ZpbHRlcnMvY3JlYXRlRmlsdGVyUmVxdWVzdFNjb3BlLmpzJztcbi8qKlxuICogQ3JlYXRlcyBhIEZpbHRlciB0byBsaXN0ZW4gZm9yIG5ldyBwZW5kaW5nIHRyYW5zYWN0aW9uIGhhc2hlcyB0aGF0IGNhbiBiZSB1c2VkIHdpdGggW2BnZXRGaWx0ZXJDaGFuZ2VzYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0RmlsdGVyQ2hhbmdlcykuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9jcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXJcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfbmV3UGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9uZXdwZW5kaW5ndHJhbnNhY3Rpb25maWx0ZXIpXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEByZXR1cm5zIFtgRmlsdGVyYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZ2xvc3NhcnkvdHlwZXMjZmlsdGVyKS4ge0BsaW5rIENyZWF0ZUJsb2NrRmlsdGVyUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlciB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBmaWx0ZXIgPSBhd2FpdCBjcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXIoY2xpZW50KVxuICogLy8geyBpZDogXCIweDM0NWE2NTcyMzM3ODU2NTc0YTc2MzY0ZTQ1N2E0MzY2XCIsIHR5cGU6ICd0cmFuc2FjdGlvbicgfVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlUGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyKGNsaWVudCkge1xuICAgIGNvbnN0IGdldFJlcXVlc3QgPSBjcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUoY2xpZW50LCB7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9uZXdQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXInLFxuICAgIH0pO1xuICAgIGNvbnN0IGlkID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICBtZXRob2Q6ICdldGhfbmV3UGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyJyxcbiAgICB9KTtcbiAgICByZXR1cm4geyBpZCwgcmVxdWVzdDogZ2V0UmVxdWVzdChpZCksIHR5cGU6ICd0cmFuc2FjdGlvbicgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/createPendingTransactionFilter.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateContractGas.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/estimateContractGas.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ estimateContractGas: () => (/* binding */ estimateContractGas)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/errors/getContractError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getContractError.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _estimateGas_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./estimateGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateGas.js\");\n\n\n\n\n\n/**\n * Estimates the gas required to successfully execute a contract write function call.\n *\n * - Docs: https://viem.sh/docs/contract/estimateContractGas\n *\n * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`estimateGas` action](https://viem.sh/docs/actions/public/estimateGas) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n *\n * @param client - Client to use\n * @param parameters - {@link EstimateContractGasParameters}\n * @returns The gas estimate (in wei). {@link EstimateContractGasReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateContractGas } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const gas = await estimateContractGas(client, {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi(['function mint() public']),\n * functionName: 'mint',\n * account: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266',\n * })\n */\nasync function estimateContractGas(client, parameters) {\n const { abi, address, args, functionName, dataSuffix, ...request } = parameters;\n const data = (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__.encodeFunctionData)({\n abi,\n args,\n functionName,\n });\n try {\n const gas = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _estimateGas_js__WEBPACK_IMPORTED_MODULE_2__.estimateGas, 'estimateGas')({\n data: `${data}${dataSuffix ? dataSuffix.replace('0x', '') : ''}`,\n to: address,\n ...request,\n });\n return gas;\n }\n catch (error) {\n const account = request.account ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_3__.parseAccount)(request.account) : undefined;\n throw (0,_utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_4__.getContractError)(error, {\n abi,\n address,\n args,\n docsPath: '/docs/contract/estimateContractGas',\n functionName,\n sender: account?.address,\n });\n }\n}\n//# sourceMappingURL=estimateContractGas.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVDb250cmFjdEdhcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBcUU7QUFDTztBQUNEO0FBQ3RCO0FBQ0w7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4Qix3Q0FBd0M7QUFDeEM7QUFDQTtBQUNBLFlBQVkscUNBQXFDO0FBQ2pELFlBQVksVUFBVTtBQUN0QixZQUFZLHNCQUFzQjtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLDJEQUEyRDtBQUN2RSxpQkFBaUIsb0ZBQWtCO0FBQ25DO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLDBCQUEwQiw4REFBUyxTQUFTLHdEQUFXO0FBQ3ZELHFCQUFxQixLQUFLLEVBQUUsK0NBQStDO0FBQzNFO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLDZFQUFZO0FBQ3RELGNBQWMsbUZBQWdCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2VzdGltYXRlQ29udHJhY3RHYXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VBY2NvdW50LCB9IGZyb20gJy4uLy4uL2FjY291bnRzL3V0aWxzL3BhcnNlQWNjb3VudC5qcyc7XG5pbXBvcnQgeyBlbmNvZGVGdW5jdGlvbkRhdGEsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2VuY29kZUZ1bmN0aW9uRGF0YS5qcyc7XG5pbXBvcnQgeyBnZXRDb250cmFjdEVycm9yLCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vycm9ycy9nZXRDb250cmFjdEVycm9yLmpzJztcbmltcG9ydCB7IGdldEFjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2dldEFjdGlvbi5qcyc7XG5pbXBvcnQgeyBlc3RpbWF0ZUdhcywgfSBmcm9tICcuL2VzdGltYXRlR2FzLmpzJztcbi8qKlxuICogRXN0aW1hdGVzIHRoZSBnYXMgcmVxdWlyZWQgdG8gc3VjY2Vzc2Z1bGx5IGV4ZWN1dGUgYSBjb250cmFjdCB3cml0ZSBmdW5jdGlvbiBjYWxsLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvY29udHJhY3QvZXN0aW1hdGVDb250cmFjdEdhc1xuICpcbiAqIEludGVybmFsbHksIHVzZXMgYSBbUHVibGljIENsaWVudF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvY2xpZW50cy9wdWJsaWMpIHRvIGNhbGwgdGhlIFtgZXN0aW1hdGVHYXNgIGFjdGlvbl0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVHYXMpIHdpdGggW0FCSS1lbmNvZGVkIGBkYXRhYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvY29udHJhY3QvZW5jb2RlRnVuY3Rpb25EYXRhKS5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgRXN0aW1hdGVDb250cmFjdEdhc1BhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgZ2FzIGVzdGltYXRlIChpbiB3ZWkpLiB7QGxpbmsgRXN0aW1hdGVDb250cmFjdEdhc1JldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgcGFyc2VBYmkgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZXN0aW1hdGVDb250cmFjdEdhcyB9IGZyb20gJ3ZpZW0vY29udHJhY3QnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGdhcyA9IGF3YWl0IGVzdGltYXRlQ29udHJhY3RHYXMoY2xpZW50LCB7XG4gKiAgIGFkZHJlc3M6ICcweEZCQTM5MTJDYTA0ZGQ0NThjODQzZTJFRTA4OTY3ZkMwNGYzNTc5YzInLFxuICogICBhYmk6IHBhcnNlQWJpKFsnZnVuY3Rpb24gbWludCgpIHB1YmxpYyddKSxcbiAqICAgZnVuY3Rpb25OYW1lOiAnbWludCcsXG4gKiAgIGFjY291bnQ6ICcweGYzOWZkNmU1MWFhZDg4ZjZmNGNlNmFiODgyNzI3OWNmZmZiOTIyNjYnLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVzdGltYXRlQ29udHJhY3RHYXMoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhYmksIGFkZHJlc3MsIGFyZ3MsIGZ1bmN0aW9uTmFtZSwgZGF0YVN1ZmZpeCwgLi4ucmVxdWVzdCB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgYWJpLFxuICAgICAgICBhcmdzLFxuICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgfSk7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZ2FzID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZXN0aW1hdGVHYXMsICdlc3RpbWF0ZUdhcycpKHtcbiAgICAgICAgICAgIGRhdGE6IGAke2RhdGF9JHtkYXRhU3VmZml4ID8gZGF0YVN1ZmZpeC5yZXBsYWNlKCcweCcsICcnKSA6ICcnfWAsXG4gICAgICAgICAgICB0bzogYWRkcmVzcyxcbiAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gZ2FzO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc3QgYWNjb3VudCA9IHJlcXVlc3QuYWNjb3VudCA/IHBhcnNlQWNjb3VudChyZXF1ZXN0LmFjY291bnQpIDogdW5kZWZpbmVkO1xuICAgICAgICB0aHJvdyBnZXRDb250cmFjdEVycm9yKGVycm9yLCB7XG4gICAgICAgICAgICBhYmksXG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIGRvY3NQYXRoOiAnL2RvY3MvY29udHJhY3QvZXN0aW1hdGVDb250cmFjdEdhcycsXG4gICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICBzZW5kZXI6IGFjY291bnQ/LmFkZHJlc3MsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVzdGltYXRlQ29udHJhY3RHYXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateContractGas.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateFeesPerGas.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/estimateFeesPerGas.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ estimateFeesPerGas: () => (/* binding */ estimateFeesPerGas),\n/* harmony export */ internal_estimateFeesPerGas: () => (/* binding */ internal_estimateFeesPerGas)\n/* harmony export */ });\n/* harmony import */ var _errors_fee_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/fee.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/fee.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _estimateMaxPriorityFeePerGas_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./estimateMaxPriorityFeePerGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateMaxPriorityFeePerGas.js\");\n/* harmony import */ var _getBlock_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getBlock.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js\");\n/* harmony import */ var _getGasPrice_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getGasPrice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getGasPrice.js\");\n\n\n\n\n\n/**\n * Returns an estimate for the fees per gas (in wei) for a\n * transaction to be likely included in the next block.\n * Defaults to [`chain.fees.estimateFeesPerGas`](/docs/clients/chains#fees-estimatefeespergas) if set.\n *\n * - Docs: https://viem.sh/docs/actions/public/estimateFeesPerGas\n *\n * @param client - Client to use\n * @param parameters - {@link EstimateFeesPerGasParameters}\n * @returns An estimate (in wei) for the fees per gas. {@link EstimateFeesPerGasReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateFeesPerGas } from 'viem/actions'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const maxPriorityFeePerGas = await estimateFeesPerGas(client)\n * // { maxFeePerGas: ..., maxPriorityFeePerGas: ... }\n */\nasync function estimateFeesPerGas(client, args) {\n return internal_estimateFeesPerGas(client, args);\n}\nasync function internal_estimateFeesPerGas(client, args) {\n const { block: block_, chain = client.chain, request, type = 'eip1559', } = args || {};\n const baseFeeMultiplier = await (async () => {\n if (typeof chain?.fees?.baseFeeMultiplier === 'function')\n return chain.fees.baseFeeMultiplier({\n block: block_,\n client,\n request,\n });\n return chain?.fees?.baseFeeMultiplier ?? 1.2;\n })();\n if (baseFeeMultiplier < 1)\n throw new _errors_fee_js__WEBPACK_IMPORTED_MODULE_0__.BaseFeeScalarError();\n const decimals = baseFeeMultiplier.toString().split('.')[1]?.length ?? 0;\n const denominator = 10 ** decimals;\n const multiply = (base) => (base * BigInt(Math.ceil(baseFeeMultiplier * denominator))) /\n BigInt(denominator);\n const block = block_\n ? block_\n : await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_2__.getBlock, 'getBlock')({});\n if (typeof chain?.fees?.estimateFeesPerGas === 'function') {\n const fees = (await chain.fees.estimateFeesPerGas({\n block: block_,\n client,\n multiply,\n request,\n type,\n }));\n if (fees !== null)\n return fees;\n }\n if (type === 'eip1559') {\n if (typeof block.baseFeePerGas !== 'bigint')\n throw new _errors_fee_js__WEBPACK_IMPORTED_MODULE_0__.Eip1559FeesNotSupportedError();\n const maxPriorityFeePerGas = typeof request?.maxPriorityFeePerGas === 'bigint'\n ? request.maxPriorityFeePerGas\n : await (0,_estimateMaxPriorityFeePerGas_js__WEBPACK_IMPORTED_MODULE_3__.internal_estimateMaxPriorityFeePerGas)(client, {\n block: block,\n chain,\n request,\n });\n const baseFeePerGas = multiply(block.baseFeePerGas);\n const maxFeePerGas = request?.maxFeePerGas ?? baseFeePerGas + maxPriorityFeePerGas;\n return {\n maxFeePerGas,\n maxPriorityFeePerGas,\n };\n }\n const gasPrice = request?.gasPrice ??\n multiply(await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _getGasPrice_js__WEBPACK_IMPORTED_MODULE_4__.getGasPrice, 'getGasPrice')({}));\n return {\n gasPrice,\n };\n}\n//# sourceMappingURL=estimateFeesPerGas.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVGZWVzUGVyR2FzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBd0Y7QUFDbkM7QUFDc0M7QUFDbEQ7QUFDTTtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHdEQUF3RDtBQUN4RDtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVkscUJBQXFCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsUUFBUTtBQUNSO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDUCxZQUFZLGtFQUFrRTtBQUM5RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQSxrQkFBa0IsOERBQWtCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiw4REFBUyxTQUFTLGtEQUFRLGdCQUFnQjtBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHdFQUE0QjtBQUNsRDtBQUNBO0FBQ0Esb0JBQW9CLHVHQUFxQztBQUN6RDtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qiw4REFBUyxTQUFTLHdEQUFXLG1CQUFtQjtBQUN2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9lc3RpbWF0ZUZlZXNQZXJHYXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUZlZVNjYWxhckVycm9yLCBFaXAxNTU5RmVlc05vdFN1cHBvcnRlZEVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9mZWUuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGludGVybmFsX2VzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMsIH0gZnJvbSAnLi9lc3RpbWF0ZU1heFByaW9yaXR5RmVlUGVyR2FzLmpzJztcbmltcG9ydCB7IGdldEJsb2NrIH0gZnJvbSAnLi9nZXRCbG9jay5qcyc7XG5pbXBvcnQgeyBnZXRHYXNQcmljZSB9IGZyb20gJy4vZ2V0R2FzUHJpY2UuanMnO1xuLyoqXG4gKiBSZXR1cm5zIGFuIGVzdGltYXRlIGZvciB0aGUgZmVlcyBwZXIgZ2FzIChpbiB3ZWkpIGZvciBhXG4gKiB0cmFuc2FjdGlvbiB0byBiZSBsaWtlbHkgaW5jbHVkZWQgaW4gdGhlIG5leHQgYmxvY2suXG4gKiBEZWZhdWx0cyB0byBbYGNoYWluLmZlZXMuZXN0aW1hdGVGZWVzUGVyR2FzYF0oL2RvY3MvY2xpZW50cy9jaGFpbnMjZmVlcy1lc3RpbWF0ZWZlZXNwZXJnYXMpIGlmIHNldC5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2VzdGltYXRlRmVlc1Blckdhc1xuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBFc3RpbWF0ZUZlZXNQZXJHYXNQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQW4gZXN0aW1hdGUgKGluIHdlaSkgZm9yIHRoZSBmZWVzIHBlciBnYXMuIHtAbGluayBFc3RpbWF0ZUZlZXNQZXJHYXNSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZXN0aW1hdGVGZWVzUGVyR2FzIH0gZnJvbSAndmllbS9hY3Rpb25zJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBtYXhQcmlvcml0eUZlZVBlckdhcyA9IGF3YWl0IGVzdGltYXRlRmVlc1BlckdhcyhjbGllbnQpXG4gKiAvLyB7IG1heEZlZVBlckdhczogLi4uLCBtYXhQcmlvcml0eUZlZVBlckdhczogLi4uIH1cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVzdGltYXRlRmVlc1BlckdhcyhjbGllbnQsIGFyZ3MpIHtcbiAgICByZXR1cm4gaW50ZXJuYWxfZXN0aW1hdGVGZWVzUGVyR2FzKGNsaWVudCwgYXJncyk7XG59XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW50ZXJuYWxfZXN0aW1hdGVGZWVzUGVyR2FzKGNsaWVudCwgYXJncykge1xuICAgIGNvbnN0IHsgYmxvY2s6IGJsb2NrXywgY2hhaW4gPSBjbGllbnQuY2hhaW4sIHJlcXVlc3QsIHR5cGUgPSAnZWlwMTU1OScsIH0gPSBhcmdzIHx8IHt9O1xuICAgIGNvbnN0IGJhc2VGZWVNdWx0aXBsaWVyID0gYXdhaXQgKGFzeW5jICgpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBjaGFpbj8uZmVlcz8uYmFzZUZlZU11bHRpcGxpZXIgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICByZXR1cm4gY2hhaW4uZmVlcy5iYXNlRmVlTXVsdGlwbGllcih7XG4gICAgICAgICAgICAgICAgYmxvY2s6IGJsb2NrXyxcbiAgICAgICAgICAgICAgICBjbGllbnQsXG4gICAgICAgICAgICAgICAgcmVxdWVzdCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gY2hhaW4/LmZlZXM/LmJhc2VGZWVNdWx0aXBsaWVyID8/IDEuMjtcbiAgICB9KSgpO1xuICAgIGlmIChiYXNlRmVlTXVsdGlwbGllciA8IDEpXG4gICAgICAgIHRocm93IG5ldyBCYXNlRmVlU2NhbGFyRXJyb3IoKTtcbiAgICBjb25zdCBkZWNpbWFscyA9IGJhc2VGZWVNdWx0aXBsaWVyLnRvU3RyaW5nKCkuc3BsaXQoJy4nKVsxXT8ubGVuZ3RoID8/IDA7XG4gICAgY29uc3QgZGVub21pbmF0b3IgPSAxMCAqKiBkZWNpbWFscztcbiAgICBjb25zdCBtdWx0aXBseSA9IChiYXNlKSA9PiAoYmFzZSAqIEJpZ0ludChNYXRoLmNlaWwoYmFzZUZlZU11bHRpcGxpZXIgKiBkZW5vbWluYXRvcikpKSAvXG4gICAgICAgIEJpZ0ludChkZW5vbWluYXRvcik7XG4gICAgY29uc3QgYmxvY2sgPSBibG9ja19cbiAgICAgICAgPyBibG9ja19cbiAgICAgICAgOiBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBnZXRCbG9jaywgJ2dldEJsb2NrJykoe30pO1xuICAgIGlmICh0eXBlb2YgY2hhaW4/LmZlZXM/LmVzdGltYXRlRmVlc1BlckdhcyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBjb25zdCBmZWVzID0gKGF3YWl0IGNoYWluLmZlZXMuZXN0aW1hdGVGZWVzUGVyR2FzKHtcbiAgICAgICAgICAgIGJsb2NrOiBibG9ja18sXG4gICAgICAgICAgICBjbGllbnQsXG4gICAgICAgICAgICBtdWx0aXBseSxcbiAgICAgICAgICAgIHJlcXVlc3QsXG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICB9KSk7XG4gICAgICAgIGlmIChmZWVzICE9PSBudWxsKVxuICAgICAgICAgICAgcmV0dXJuIGZlZXM7XG4gICAgfVxuICAgIGlmICh0eXBlID09PSAnZWlwMTU1OScpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBibG9jay5iYXNlRmVlUGVyR2FzICE9PSAnYmlnaW50JylcbiAgICAgICAgICAgIHRocm93IG5ldyBFaXAxNTU5RmVlc05vdFN1cHBvcnRlZEVycm9yKCk7XG4gICAgICAgIGNvbnN0IG1heFByaW9yaXR5RmVlUGVyR2FzID0gdHlwZW9mIHJlcXVlc3Q/Lm1heFByaW9yaXR5RmVlUGVyR2FzID09PSAnYmlnaW50J1xuICAgICAgICAgICAgPyByZXF1ZXN0Lm1heFByaW9yaXR5RmVlUGVyR2FzXG4gICAgICAgICAgICA6IGF3YWl0IGludGVybmFsX2VzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMoY2xpZW50LCB7XG4gICAgICAgICAgICAgICAgYmxvY2s6IGJsb2NrLFxuICAgICAgICAgICAgICAgIGNoYWluLFxuICAgICAgICAgICAgICAgIHJlcXVlc3QsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgYmFzZUZlZVBlckdhcyA9IG11bHRpcGx5KGJsb2NrLmJhc2VGZWVQZXJHYXMpO1xuICAgICAgICBjb25zdCBtYXhGZWVQZXJHYXMgPSByZXF1ZXN0Py5tYXhGZWVQZXJHYXMgPz8gYmFzZUZlZVBlckdhcyArIG1heFByaW9yaXR5RmVlUGVyR2FzO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbWF4RmVlUGVyR2FzLFxuICAgICAgICAgICAgbWF4UHJpb3JpdHlGZWVQZXJHYXMsXG4gICAgICAgIH07XG4gICAgfVxuICAgIGNvbnN0IGdhc1ByaWNlID0gcmVxdWVzdD8uZ2FzUHJpY2UgPz9cbiAgICAgICAgbXVsdGlwbHkoYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZ2V0R2FzUHJpY2UsICdnZXRHYXNQcmljZScpKHt9KSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZ2FzUHJpY2UsXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVzdGltYXRlRmVlc1Blckdhcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateFeesPerGas.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateGas.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/estimateGas.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ estimateGas: () => (/* binding */ estimateGas)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _utils_authorization_recoverAuthorizationAddress_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/authorization/recoverAuthorizationAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/recoverAuthorizationAddress.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_errors_getEstimateGasError_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/errors/getEstimateGasError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getEstimateGasError.js\");\n/* harmony import */ var _utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils/formatters/extract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/extract.js\");\n/* harmony import */ var _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/formatters/transactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionRequest.js\");\n/* harmony import */ var _utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/stateOverride.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stateOverride.js\");\n/* harmony import */ var _utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/transaction/assertRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js\");\n/* harmony import */ var _wallet_prepareTransactionRequest_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../wallet/prepareTransactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareTransactionRequest.js\");\n\n\n\n\n\n\n\n\n\n\n/**\n * Estimates the gas necessary to complete a transaction without submitting it to the network.\n *\n * - Docs: https://viem.sh/docs/actions/public/estimateGas\n * - JSON-RPC Methods: [`eth_estimateGas`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_estimategas)\n *\n * @param client - Client to use\n * @param parameters - {@link EstimateGasParameters}\n * @returns The gas estimate (in gas units). {@link EstimateGasReturnType}\n *\n * @example\n * import { createPublicClient, http, parseEther } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateGas } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const gasEstimate = await estimateGas(client, {\n * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * value: parseEther('1'),\n * })\n */\nasync function estimateGas(client, args) {\n const { account: account_ = client.account } = args;\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__.parseAccount)(account_) : undefined;\n try {\n const { accessList, authorizationList, blobs, blobVersionedHashes, blockNumber, blockTag, data, gas, gasPrice, maxFeePerBlobGas, maxFeePerGas, maxPriorityFeePerGas, nonce, value, stateOverride, ...rest } = (await (0,_wallet_prepareTransactionRequest_js__WEBPACK_IMPORTED_MODULE_1__.prepareTransactionRequest)(client, {\n ...args,\n parameters: \n // Some RPC Providers do not compute versioned hashes from blobs. We will need\n // to compute them.\n account?.type === 'local' ? undefined : ['blobVersionedHashes'],\n }));\n const blockNumberHex = typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(blockNumber) : undefined;\n const block = blockNumberHex || blockTag;\n const rpcStateOverride = (0,_utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_3__.serializeStateOverride)(stateOverride);\n const to = await (async () => {\n // If `to` exists on the parameters, use that.\n if (rest.to)\n return rest.to;\n // If no `to` exists, and we are sending a EIP-7702 transaction, use the\n // address of the first authorization in the list.\n if (authorizationList && authorizationList.length > 0)\n return await (0,_utils_authorization_recoverAuthorizationAddress_js__WEBPACK_IMPORTED_MODULE_4__.recoverAuthorizationAddress)({\n authorization: authorizationList[0],\n }).catch(() => {\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_5__.BaseError('`to` is required. Could not infer from `authorizationList`');\n });\n // Otherwise, we are sending a deployment transaction.\n return undefined;\n })();\n (0,_utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_6__.assertRequest)(args);\n const chainFormat = client.chain?.formatters?.transactionRequest?.format;\n const format = chainFormat || _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_7__.formatTransactionRequest;\n const request = format({\n // Pick out extra data that might exist on the chain's transaction request type.\n ...(0,_utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_8__.extract)(rest, { format: chainFormat }),\n from: account?.address,\n accessList,\n authorizationList,\n blobs,\n blobVersionedHashes,\n data,\n gas,\n gasPrice,\n maxFeePerBlobGas,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n value,\n }, 'estimateGas');\n return BigInt(await client.request({\n method: 'eth_estimateGas',\n params: rpcStateOverride\n ? [\n request,\n block ?? client.experimental_blockTag ?? 'latest',\n rpcStateOverride,\n ]\n : block\n ? [request, block]\n : [request],\n }));\n }\n catch (err) {\n throw (0,_utils_errors_getEstimateGasError_js__WEBPACK_IMPORTED_MODULE_9__.getEstimateGasError)(err, {\n ...args,\n account,\n chain: client.chain,\n });\n }\n}\n//# sourceMappingURL=estimateGas.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVHYXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBcUU7QUFDcEI7QUFDdUQ7QUFDM0M7QUFDb0I7QUFDckI7QUFDNkI7QUFDbkI7QUFDSTtBQUNVO0FBQ3BGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDhDQUE4QztBQUM5QztBQUNBO0FBQ0EsWUFBWSx1Q0FBdUM7QUFDbkQsWUFBWSxVQUFVO0FBQ3RCLFlBQVksY0FBYztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPO0FBQ1AsWUFBWSxxQ0FBcUM7QUFDakQsK0JBQStCLDZFQUFZO0FBQzNDO0FBQ0EsZ0JBQWdCLG9NQUFvTSxTQUFTLCtGQUF5QjtBQUN0UDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULGlFQUFpRSxxRUFBVztBQUM1RTtBQUNBLGlDQUFpQywrRUFBc0I7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsZ0hBQTJCO0FBQ3hEO0FBQ0EsaUJBQWlCO0FBQ2pCLDhCQUE4QixzREFBUztBQUN2QyxpQkFBaUI7QUFDakI7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRLGtGQUFhO0FBQ3JCO0FBQ0Esc0NBQXNDLDZGQUF3QjtBQUM5RDtBQUNBO0FBQ0EsZUFBZSxxRUFBTyxTQUFTLHFCQUFxQjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLGNBQWMseUZBQW1CO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2VzdGltYXRlR2FzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2Jhc2UuanMnO1xuaW1wb3J0IHsgcmVjb3ZlckF1dGhvcml6YXRpb25BZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2F1dGhvcml6YXRpb24vcmVjb3ZlckF1dGhvcml6YXRpb25BZGRyZXNzLmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4LCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGdldEVzdGltYXRlR2FzRXJyb3IsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3JzL2dldEVzdGltYXRlR2FzRXJyb3IuanMnO1xuaW1wb3J0IHsgZXh0cmFjdCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvZXh0cmFjdC5qcyc7XG5pbXBvcnQgeyBmb3JtYXRUcmFuc2FjdGlvblJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy90cmFuc2FjdGlvblJlcXVlc3QuanMnO1xuaW1wb3J0IHsgc2VyaWFsaXplU3RhdGVPdmVycmlkZSB9IGZyb20gJy4uLy4uL3V0aWxzL3N0YXRlT3ZlcnJpZGUuanMnO1xuaW1wb3J0IHsgYXNzZXJ0UmVxdWVzdCwgfSBmcm9tICcuLi8uLi91dGlscy90cmFuc2FjdGlvbi9hc3NlcnRSZXF1ZXN0LmpzJztcbmltcG9ydCB7IHByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3QsIH0gZnJvbSAnLi4vd2FsbGV0L3ByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3QuanMnO1xuLyoqXG4gKiBFc3RpbWF0ZXMgdGhlIGdhcyBuZWNlc3NhcnkgdG8gY29tcGxldGUgYSB0cmFuc2FjdGlvbiB3aXRob3V0IHN1Ym1pdHRpbmcgaXQgdG8gdGhlIG5ldHdvcmsuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9lc3RpbWF0ZUdhc1xuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYGV0aF9lc3RpbWF0ZUdhc2BdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZXN0aW1hdGVnYXMpXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIEVzdGltYXRlR2FzUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSBnYXMgZXN0aW1hdGUgKGluIGdhcyB1bml0cykuIHtAbGluayBFc3RpbWF0ZUdhc1JldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgcGFyc2VFdGhlciB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBlc3RpbWF0ZUdhcyB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBnYXNFc3RpbWF0ZSA9IGF3YWl0IGVzdGltYXRlR2FzKGNsaWVudCwge1xuICogICBhY2NvdW50OiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqICAgdG86ICcweDcwOTk3OTcwYzUxODEyZGMzYTAxMGM3ZDAxYjUwZTBkMTdkYzc5YzgnLFxuICogICB2YWx1ZTogcGFyc2VFdGhlcignMScpLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVzdGltYXRlR2FzKGNsaWVudCwgYXJncykge1xuICAgIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudF8gPSBjbGllbnQuYWNjb3VudCB9ID0gYXJncztcbiAgICBjb25zdCBhY2NvdW50ID0gYWNjb3VudF8gPyBwYXJzZUFjY291bnQoYWNjb3VudF8pIDogdW5kZWZpbmVkO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgYWNjZXNzTGlzdCwgYXV0aG9yaXphdGlvbkxpc3QsIGJsb2JzLCBibG9iVmVyc2lvbmVkSGFzaGVzLCBibG9ja051bWJlciwgYmxvY2tUYWcsIGRhdGEsIGdhcywgZ2FzUHJpY2UsIG1heEZlZVBlckJsb2JHYXMsIG1heEZlZVBlckdhcywgbWF4UHJpb3JpdHlGZWVQZXJHYXMsIG5vbmNlLCB2YWx1ZSwgc3RhdGVPdmVycmlkZSwgLi4ucmVzdCB9ID0gKGF3YWl0IHByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3QoY2xpZW50LCB7XG4gICAgICAgICAgICAuLi5hcmdzLFxuICAgICAgICAgICAgcGFyYW1ldGVyczogXG4gICAgICAgICAgICAvLyBTb21lIFJQQyBQcm92aWRlcnMgZG8gbm90IGNvbXB1dGUgdmVyc2lvbmVkIGhhc2hlcyBmcm9tIGJsb2JzLiBXZSB3aWxsIG5lZWRcbiAgICAgICAgICAgIC8vIHRvIGNvbXB1dGUgdGhlbS5cbiAgICAgICAgICAgIGFjY291bnQ/LnR5cGUgPT09ICdsb2NhbCcgPyB1bmRlZmluZWQgOiBbJ2Jsb2JWZXJzaW9uZWRIYXNoZXMnXSxcbiAgICAgICAgfSkpO1xuICAgICAgICBjb25zdCBibG9ja051bWJlckhleCA9IHR5cGVvZiBibG9ja051bWJlciA9PT0gJ2JpZ2ludCcgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tOdW1iZXJIZXggfHwgYmxvY2tUYWc7XG4gICAgICAgIGNvbnN0IHJwY1N0YXRlT3ZlcnJpZGUgPSBzZXJpYWxpemVTdGF0ZU92ZXJyaWRlKHN0YXRlT3ZlcnJpZGUpO1xuICAgICAgICBjb25zdCB0byA9IGF3YWl0IChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAvLyBJZiBgdG9gIGV4aXN0cyBvbiB0aGUgcGFyYW1ldGVycywgdXNlIHRoYXQuXG4gICAgICAgICAgICBpZiAocmVzdC50bylcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdC50bztcbiAgICAgICAgICAgIC8vIElmIG5vIGB0b2AgZXhpc3RzLCBhbmQgd2UgYXJlIHNlbmRpbmcgYSBFSVAtNzcwMiB0cmFuc2FjdGlvbiwgdXNlIHRoZVxuICAgICAgICAgICAgLy8gYWRkcmVzcyBvZiB0aGUgZmlyc3QgYXV0aG9yaXphdGlvbiBpbiB0aGUgbGlzdC5cbiAgICAgICAgICAgIGlmIChhdXRob3JpemF0aW9uTGlzdCAmJiBhdXRob3JpemF0aW9uTGlzdC5sZW5ndGggPiAwKVxuICAgICAgICAgICAgICAgIHJldHVybiBhd2FpdCByZWNvdmVyQXV0aG9yaXphdGlvbkFkZHJlc3Moe1xuICAgICAgICAgICAgICAgICAgICBhdXRob3JpemF0aW9uOiBhdXRob3JpemF0aW9uTGlzdFswXSxcbiAgICAgICAgICAgICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBCYXNlRXJyb3IoJ2B0b2AgaXMgcmVxdWlyZWQuIENvdWxkIG5vdCBpbmZlciBmcm9tIGBhdXRob3JpemF0aW9uTGlzdGAnKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgd2UgYXJlIHNlbmRpbmcgYSBkZXBsb3ltZW50IHRyYW5zYWN0aW9uLlxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSkoKTtcbiAgICAgICAgYXNzZXJ0UmVxdWVzdChhcmdzKTtcbiAgICAgICAgY29uc3QgY2hhaW5Gb3JtYXQgPSBjbGllbnQuY2hhaW4/LmZvcm1hdHRlcnM/LnRyYW5zYWN0aW9uUmVxdWVzdD8uZm9ybWF0O1xuICAgICAgICBjb25zdCBmb3JtYXQgPSBjaGFpbkZvcm1hdCB8fCBmb3JtYXRUcmFuc2FjdGlvblJlcXVlc3Q7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSBmb3JtYXQoe1xuICAgICAgICAgICAgLy8gUGljayBvdXQgZXh0cmEgZGF0YSB0aGF0IG1pZ2h0IGV4aXN0IG9uIHRoZSBjaGFpbidzIHRyYW5zYWN0aW9uIHJlcXVlc3QgdHlwZS5cbiAgICAgICAgICAgIC4uLmV4dHJhY3QocmVzdCwgeyBmb3JtYXQ6IGNoYWluRm9ybWF0IH0pLFxuICAgICAgICAgICAgZnJvbTogYWNjb3VudD8uYWRkcmVzcyxcbiAgICAgICAgICAgIGFjY2Vzc0xpc3QsXG4gICAgICAgICAgICBhdXRob3JpemF0aW9uTGlzdCxcbiAgICAgICAgICAgIGJsb2JzLFxuICAgICAgICAgICAgYmxvYlZlcnNpb25lZEhhc2hlcyxcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICBnYXMsXG4gICAgICAgICAgICBnYXNQcmljZSxcbiAgICAgICAgICAgIG1heEZlZVBlckJsb2JHYXMsXG4gICAgICAgICAgICBtYXhGZWVQZXJHYXMsXG4gICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhcyxcbiAgICAgICAgICAgIG5vbmNlLFxuICAgICAgICAgICAgdG8sXG4gICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgfSwgJ2VzdGltYXRlR2FzJyk7XG4gICAgICAgIHJldHVybiBCaWdJbnQoYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnZXRoX2VzdGltYXRlR2FzJyxcbiAgICAgICAgICAgIHBhcmFtczogcnBjU3RhdGVPdmVycmlkZVxuICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0LFxuICAgICAgICAgICAgICAgICAgICBibG9jayA/PyBjbGllbnQuZXhwZXJpbWVudGFsX2Jsb2NrVGFnID8/ICdsYXRlc3QnLFxuICAgICAgICAgICAgICAgICAgICBycGNTdGF0ZU92ZXJyaWRlLFxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICA6IGJsb2NrXG4gICAgICAgICAgICAgICAgICAgID8gW3JlcXVlc3QsIGJsb2NrXVxuICAgICAgICAgICAgICAgICAgICA6IFtyZXF1ZXN0XSxcbiAgICAgICAgfSkpO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHRocm93IGdldEVzdGltYXRlR2FzRXJyb3IoZXJyLCB7XG4gICAgICAgICAgICAuLi5hcmdzLFxuICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICAgIGNoYWluOiBjbGllbnQuY2hhaW4sXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVzdGltYXRlR2FzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateGas.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateMaxPriorityFeePerGas.js": /*!*******************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/estimateMaxPriorityFeePerGas.js ***! \*******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ estimateMaxPriorityFeePerGas: () => (/* binding */ estimateMaxPriorityFeePerGas),\n/* harmony export */ internal_estimateMaxPriorityFeePerGas: () => (/* binding */ internal_estimateMaxPriorityFeePerGas)\n/* harmony export */ });\n/* harmony import */ var _errors_fee_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../errors/fee.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/fee.js\");\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _getBlock_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getBlock.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js\");\n/* harmony import */ var _getGasPrice_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getGasPrice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getGasPrice.js\");\n\n\n\n\n\n/**\n * Returns an estimate for the max priority fee per gas (in wei) for a\n * transaction to be likely included in the next block.\n * Defaults to [`chain.fees.defaultPriorityFee`](/docs/clients/chains#fees-defaultpriorityfee) if set.\n *\n * - Docs: https://viem.sh/docs/actions/public/estimateMaxPriorityFeePerGas\n *\n * @param client - Client to use\n * @returns An estimate (in wei) for the max priority fee per gas. {@link EstimateMaxPriorityFeePerGasReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { estimateMaxPriorityFeePerGas } from 'viem/actions'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const maxPriorityFeePerGas = await estimateMaxPriorityFeePerGas(client)\n * // 10000000n\n */\nasync function estimateMaxPriorityFeePerGas(client, args) {\n return internal_estimateMaxPriorityFeePerGas(client, args);\n}\nasync function internal_estimateMaxPriorityFeePerGas(client, args) {\n const { block: block_, chain = client.chain, request } = args || {};\n try {\n const maxPriorityFeePerGas = chain?.fees?.maxPriorityFeePerGas ?? chain?.fees?.defaultPriorityFee;\n if (typeof maxPriorityFeePerGas === 'function') {\n const block = block_ || (await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_1__.getBlock, 'getBlock')({}));\n const maxPriorityFeePerGas_ = await maxPriorityFeePerGas({\n block,\n client,\n request,\n });\n if (maxPriorityFeePerGas_ === null)\n throw new Error();\n return maxPriorityFeePerGas_;\n }\n if (typeof maxPriorityFeePerGas !== 'undefined')\n return maxPriorityFeePerGas;\n const maxPriorityFeePerGasHex = await client.request({\n method: 'eth_maxPriorityFeePerGas',\n });\n return (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToBigInt)(maxPriorityFeePerGasHex);\n }\n catch {\n // If the RPC Provider does not support `eth_maxPriorityFeePerGas`\n // fall back to calculating it manually via `gasPrice - baseFeePerGas`.\n // See: https://github.com/ethereum/pm/issues/328#:~:text=eth_maxPriorityFeePerGas%20after%20London%20will%20effectively%20return%20eth_gasPrice%20%2D%20baseFee\n const [block, gasPrice] = await Promise.all([\n block_\n ? Promise.resolve(block_)\n : (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_1__.getBlock, 'getBlock')({}),\n (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__.getAction)(client, _getGasPrice_js__WEBPACK_IMPORTED_MODULE_3__.getGasPrice, 'getGasPrice')({}),\n ]);\n if (typeof block.baseFeePerGas !== 'bigint')\n throw new _errors_fee_js__WEBPACK_IMPORTED_MODULE_4__.Eip1559FeesNotSupportedError();\n const maxPriorityFeePerGas = gasPrice - block.baseFeePerGas;\n if (maxPriorityFeePerGas < 0n)\n return 0n;\n return maxPriorityFeePerGas;\n }\n}\n//# sourceMappingURL=estimateMaxPriorityFeePerGas.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVNYXhQcmlvcml0eUZlZVBlckdhcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQW9FO0FBQ0w7QUFDVjtBQUNaO0FBQ007QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9FQUFvRTtBQUNwRTtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksK0JBQStCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNPO0FBQ1AsWUFBWSwrQ0FBK0M7QUFDM0Q7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDLDhEQUFTLFNBQVMsa0RBQVEsZ0JBQWdCO0FBQ3JGO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsZUFBZSx1RUFBVztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLDhEQUFTLFNBQVMsa0RBQVEsZ0JBQWdCO0FBQzVELFlBQVksOERBQVMsU0FBUyx3REFBVyxtQkFBbUI7QUFDNUQ7QUFDQTtBQUNBLHNCQUFzQix3RUFBNEI7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2VzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWlwMTU1OUZlZXNOb3RTdXBwb3J0ZWRFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvZmVlLmpzJztcbmltcG9ydCB7IGhleFRvQmlnSW50LCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL2Zyb21IZXguanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGdldEJsb2NrIH0gZnJvbSAnLi9nZXRCbG9jay5qcyc7XG5pbXBvcnQgeyBnZXRHYXNQcmljZSB9IGZyb20gJy4vZ2V0R2FzUHJpY2UuanMnO1xuLyoqXG4gKiBSZXR1cm5zIGFuIGVzdGltYXRlIGZvciB0aGUgbWF4IHByaW9yaXR5IGZlZSBwZXIgZ2FzIChpbiB3ZWkpIGZvciBhXG4gKiB0cmFuc2FjdGlvbiB0byBiZSBsaWtlbHkgaW5jbHVkZWQgaW4gdGhlIG5leHQgYmxvY2suXG4gKiBEZWZhdWx0cyB0byBbYGNoYWluLmZlZXMuZGVmYXVsdFByaW9yaXR5RmVlYF0oL2RvY3MvY2xpZW50cy9jaGFpbnMjZmVlcy1kZWZhdWx0cHJpb3JpdHlmZWUpIGlmIHNldC5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2VzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXNcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHJldHVybnMgQW4gZXN0aW1hdGUgKGluIHdlaSkgZm9yIHRoZSBtYXggcHJpb3JpdHkgZmVlIHBlciBnYXMuIHtAbGluayBFc3RpbWF0ZU1heFByaW9yaXR5RmVlUGVyR2FzUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGVzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMgfSBmcm9tICd2aWVtL2FjdGlvbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IG1heFByaW9yaXR5RmVlUGVyR2FzID0gYXdhaXQgZXN0aW1hdGVNYXhQcmlvcml0eUZlZVBlckdhcyhjbGllbnQpXG4gKiAvLyAxMDAwMDAwMG5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMoY2xpZW50LCBhcmdzKSB7XG4gICAgcmV0dXJuIGludGVybmFsX2VzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMoY2xpZW50LCBhcmdzKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbnRlcm5hbF9lc3RpbWF0ZU1heFByaW9yaXR5RmVlUGVyR2FzKGNsaWVudCwgYXJncykge1xuICAgIGNvbnN0IHsgYmxvY2s6IGJsb2NrXywgY2hhaW4gPSBjbGllbnQuY2hhaW4sIHJlcXVlc3QgfSA9IGFyZ3MgfHwge307XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgbWF4UHJpb3JpdHlGZWVQZXJHYXMgPSBjaGFpbj8uZmVlcz8ubWF4UHJpb3JpdHlGZWVQZXJHYXMgPz8gY2hhaW4/LmZlZXM/LmRlZmF1bHRQcmlvcml0eUZlZTtcbiAgICAgICAgaWYgKHR5cGVvZiBtYXhQcmlvcml0eUZlZVBlckdhcyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja18gfHwgKGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrLCAnZ2V0QmxvY2snKSh7fSkpO1xuICAgICAgICAgICAgY29uc3QgbWF4UHJpb3JpdHlGZWVQZXJHYXNfID0gYXdhaXQgbWF4UHJpb3JpdHlGZWVQZXJHYXMoe1xuICAgICAgICAgICAgICAgIGJsb2NrLFxuICAgICAgICAgICAgICAgIGNsaWVudCxcbiAgICAgICAgICAgICAgICByZXF1ZXN0LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAobWF4UHJpb3JpdHlGZWVQZXJHYXNfID09PSBudWxsKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigpO1xuICAgICAgICAgICAgcmV0dXJuIG1heFByaW9yaXR5RmVlUGVyR2FzXztcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIG1heFByaW9yaXR5RmVlUGVyR2FzICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgICAgIHJldHVybiBtYXhQcmlvcml0eUZlZVBlckdhcztcbiAgICAgICAgY29uc3QgbWF4UHJpb3JpdHlGZWVQZXJHYXNIZXggPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfbWF4UHJpb3JpdHlGZWVQZXJHYXMnLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGhleFRvQmlnSW50KG1heFByaW9yaXR5RmVlUGVyR2FzSGV4KTtcbiAgICB9XG4gICAgY2F0Y2gge1xuICAgICAgICAvLyBJZiB0aGUgUlBDIFByb3ZpZGVyIGRvZXMgbm90IHN1cHBvcnQgYGV0aF9tYXhQcmlvcml0eUZlZVBlckdhc2BcbiAgICAgICAgLy8gZmFsbCBiYWNrIHRvIGNhbGN1bGF0aW5nIGl0IG1hbnVhbGx5IHZpYSBgZ2FzUHJpY2UgLSBiYXNlRmVlUGVyR2FzYC5cbiAgICAgICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vZXRoZXJldW0vcG0vaXNzdWVzLzMyOCM6fjp0ZXh0PWV0aF9tYXhQcmlvcml0eUZlZVBlckdhcyUyMGFmdGVyJTIwTG9uZG9uJTIwd2lsbCUyMGVmZmVjdGl2ZWx5JTIwcmV0dXJuJTIwZXRoX2dhc1ByaWNlJTIwJTJEJTIwYmFzZUZlZVxuICAgICAgICBjb25zdCBbYmxvY2ssIGdhc1ByaWNlXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgIGJsb2NrX1xuICAgICAgICAgICAgICAgID8gUHJvbWlzZS5yZXNvbHZlKGJsb2NrXylcbiAgICAgICAgICAgICAgICA6IGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrLCAnZ2V0QmxvY2snKSh7fSksXG4gICAgICAgICAgICBnZXRBY3Rpb24oY2xpZW50LCBnZXRHYXNQcmljZSwgJ2dldEdhc1ByaWNlJykoe30pLFxuICAgICAgICBdKTtcbiAgICAgICAgaWYgKHR5cGVvZiBibG9jay5iYXNlRmVlUGVyR2FzICE9PSAnYmlnaW50JylcbiAgICAgICAgICAgIHRocm93IG5ldyBFaXAxNTU5RmVlc05vdFN1cHBvcnRlZEVycm9yKCk7XG4gICAgICAgIGNvbnN0IG1heFByaW9yaXR5RmVlUGVyR2FzID0gZ2FzUHJpY2UgLSBibG9jay5iYXNlRmVlUGVyR2FzO1xuICAgICAgICBpZiAobWF4UHJpb3JpdHlGZWVQZXJHYXMgPCAwbilcbiAgICAgICAgICAgIHJldHVybiAwbjtcbiAgICAgICAgcmV0dXJuIG1heFByaW9yaXR5RmVlUGVyR2FzO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateMaxPriorityFeePerGas.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBalance.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getBalance.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getBalance: () => (/* binding */ getBalance)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n/**\n * Returns the balance of an address in wei.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBalance\n * - JSON-RPC Methods: [`eth_getBalance`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getbalance)\n *\n * You can convert the balance to ether units with [`formatEther`](https://viem.sh/docs/utilities/formatEther).\n *\n * ```ts\n * const balance = await getBalance(client, {\n * address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * blockTag: 'safe'\n * })\n * const balanceAsEther = formatEther(balance)\n * // \"6.942\"\n * ```\n *\n * @param client - Client to use\n * @param parameters - {@link GetBalanceParameters}\n * @returns The balance of the address in wei. {@link GetBalanceReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBalance } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const balance = await getBalance(client, {\n * address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n * // 10000000000000000000000n (wei)\n */\nasync function getBalance(client, { address, blockNumber, blockTag = client.experimental_blockTag ?? 'latest', }) {\n const blockNumberHex = typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n const balance = await client.request({\n method: 'eth_getBalance',\n params: [address, blockNumberHex || blockTag],\n });\n return BigInt(balance);\n}\n//# sourceMappingURL=getBalance.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0QmFsYW5jZS5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE2RDtBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixnREFBZ0Q7QUFDaEQ7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLGFBQWE7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ08sb0NBQW9DLDRFQUE0RTtBQUN2SCw2REFBNkQscUVBQVc7QUFDeEU7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0QmFsYW5jZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG4vKipcbiAqIFJldHVybnMgdGhlIGJhbGFuY2Ugb2YgYW4gYWRkcmVzcyBpbiB3ZWkuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9nZXRCYWxhbmNlXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6IFtgZXRoX2dldEJhbGFuY2VgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldGJhbGFuY2UpXG4gKlxuICogWW91IGNhbiBjb252ZXJ0IHRoZSBiYWxhbmNlIHRvIGV0aGVyIHVuaXRzIHdpdGggW2Bmb3JtYXRFdGhlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL3V0aWxpdGllcy9mb3JtYXRFdGhlcikuXG4gKlxuICogYGBgdHNcbiAqIGNvbnN0IGJhbGFuY2UgPSBhd2FpdCBnZXRCYWxhbmNlKGNsaWVudCwge1xuICogICBhZGRyZXNzOiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqICAgYmxvY2tUYWc6ICdzYWZlJ1xuICogfSlcbiAqIGNvbnN0IGJhbGFuY2VBc0V0aGVyID0gZm9ybWF0RXRoZXIoYmFsYW5jZSlcbiAqIC8vIFwiNi45NDJcIlxuICogYGBgXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIEdldEJhbGFuY2VQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIGJhbGFuY2Ugb2YgdGhlIGFkZHJlc3MgaW4gd2VpLiB7QGxpbmsgR2V0QmFsYW5jZVJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRCYWxhbmNlIH0gZnJvbSAndmllbS9wdWJsaWMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGJhbGFuY2UgPSBhd2FpdCBnZXRCYWxhbmNlKGNsaWVudCwge1xuICogICBhZGRyZXNzOiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqIH0pXG4gKiAvLyAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMG4gKHdlaSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEJhbGFuY2UoY2xpZW50LCB7IGFkZHJlc3MsIGJsb2NrTnVtYmVyLCBibG9ja1RhZyA9IGNsaWVudC5leHBlcmltZW50YWxfYmxvY2tUYWcgPz8gJ2xhdGVzdCcsIH0pIHtcbiAgICBjb25zdCBibG9ja051bWJlckhleCA9IHR5cGVvZiBibG9ja051bWJlciA9PT0gJ2JpZ2ludCcgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgYmFsYW5jZSA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX2dldEJhbGFuY2UnLFxuICAgICAgICBwYXJhbXM6IFthZGRyZXNzLCBibG9ja051bWJlckhleCB8fCBibG9ja1RhZ10sXG4gICAgfSk7XG4gICAgcmV0dXJuIEJpZ0ludChiYWxhbmNlKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldEJhbGFuY2UuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBalance.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlobBaseFee.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getBlobBaseFee.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getBlobBaseFee: () => (/* binding */ getBlobBaseFee)\n/* harmony export */ });\n/**\n * Returns the base fee per blob gas in wei.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlobBaseFee\n * - JSON-RPC Methods: [`eth_blobBaseFee`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blobBaseFee)\n *\n * @param client - Client to use\n * @returns The blob base fee (in wei). {@link GetBlobBaseFeeReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlobBaseFee } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const blobBaseFee = await getBlobBaseFee(client)\n */\nasync function getBlobBaseFee(client) {\n const baseFee = await client.request({\n method: 'eth_blobBaseFee',\n });\n return BigInt(baseFee);\n}\n//# sourceMappingURL=getBlobBaseFee.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvYkJhc2VGZWUuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDO0FBQ3pDO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxpQkFBaUI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldEJsb2JCYXNlRmVlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmV0dXJucyB0aGUgYmFzZSBmZWUgcGVyIGJsb2IgZ2FzIGluIHdlaS5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2dldEJsb2JCYXNlRmVlXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6IFtgZXRoX2Jsb2JCYXNlRmVlYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9ibG9iQmFzZUZlZSlcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHJldHVybnMgVGhlIGJsb2IgYmFzZSBmZWUgKGluIHdlaSkuIHtAbGluayBHZXRCbG9iQmFzZUZlZVJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRCbG9iQmFzZUZlZSB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBibG9iQmFzZUZlZSA9IGF3YWl0IGdldEJsb2JCYXNlRmVlKGNsaWVudClcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEJsb2JCYXNlRmVlKGNsaWVudCkge1xuICAgIGNvbnN0IGJhc2VGZWUgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9ibG9iQmFzZUZlZScsXG4gICAgfSk7XG4gICAgcmV0dXJuIEJpZ0ludChiYXNlRmVlKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldEJsb2JCYXNlRmVlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlobBaseFee.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js": /*!***********************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getBlock.js ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getBlock: () => (/* binding */ getBlock)\n/* harmony export */ });\n/* harmony import */ var _errors_block_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/block.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/block.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_formatters_block_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/formatters/block.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/block.js\");\n\n\n\n/**\n * Returns information about a block at a block number, hash, or tag.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlock\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_fetching-blocks\n * - JSON-RPC Methods:\n * - Calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbynumber) for `blockNumber` & `blockTag`.\n * - Calls [`eth_getBlockByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbyhash) for `blockHash`.\n *\n * @param client - Client to use\n * @param parameters - {@link GetBlockParameters}\n * @returns Information about the block. {@link GetBlockReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlock } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const block = await getBlock(client)\n */\nasync function getBlock(client, { blockHash, blockNumber, blockTag = client.experimental_blockTag ?? 'latest', includeTransactions: includeTransactions_, } = {}) {\n const includeTransactions = includeTransactions_ ?? false;\n const blockNumberHex = blockNumber !== undefined ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n let block = null;\n if (blockHash) {\n block = await client.request({\n method: 'eth_getBlockByHash',\n params: [blockHash, includeTransactions],\n }, { dedupe: true });\n }\n else {\n block = await client.request({\n method: 'eth_getBlockByNumber',\n params: [blockNumberHex || blockTag, includeTransactions],\n }, { dedupe: Boolean(blockNumberHex) });\n }\n if (!block)\n throw new _errors_block_js__WEBPACK_IMPORTED_MODULE_1__.BlockNotFoundError({ blockHash, blockNumber });\n const format = client.chain?.formatters?.block?.format || _utils_formatters_block_js__WEBPACK_IMPORTED_MODULE_2__.formatBlock;\n return format(block, 'getBlock');\n}\n//# sourceMappingURL=getBlock.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2suanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE0RDtBQUNDO0FBQ0U7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsMENBQTBDO0FBQzFDO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDTyxrQ0FBa0MsMEhBQTBILElBQUk7QUFDdks7QUFDQSx1REFBdUQscUVBQVc7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVMsSUFBSSxjQUFjO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLElBQUksaUNBQWlDO0FBQzlDO0FBQ0E7QUFDQSxrQkFBa0IsZ0VBQWtCLEdBQUcsd0JBQXdCO0FBQy9ELDhEQUE4RCxtRUFBVztBQUN6RTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldEJsb2NrLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJsb2NrTm90Rm91bmRFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYmxvY2suanMnO1xuaW1wb3J0IHsgbnVtYmVyVG9IZXgsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5jb2RpbmcvdG9IZXguanMnO1xuaW1wb3J0IHsgZm9ybWF0QmxvY2ssIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy9ibG9jay5qcyc7XG4vKipcbiAqIFJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgYSBibG9jayBhdCBhIGJsb2NrIG51bWJlciwgaGFzaCwgb3IgdGFnLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2tcbiAqIC0gRXhhbXBsZXM6IGh0dHBzOi8vc3RhY2tibGl0ei5jb20vZ2l0aHViL3dldm0vdmllbS90cmVlL21haW4vZXhhbXBsZXMvYmxvY2tzX2ZldGNoaW5nLWJsb2Nrc1xuICogLSBKU09OLVJQQyBNZXRob2RzOlxuICogICAtIENhbGxzIFtgZXRoX2dldEJsb2NrQnlOdW1iZXJgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldGJsb2NrYnludW1iZXIpIGZvciBgYmxvY2tOdW1iZXJgICYgYGJsb2NrVGFnYC5cbiAqICAgLSBDYWxscyBbYGV0aF9nZXRCbG9ja0J5SGFzaGBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0YmxvY2tieWhhc2gpIGZvciBgYmxvY2tIYXNoYC5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0QmxvY2tQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgSW5mb3JtYXRpb24gYWJvdXQgdGhlIGJsb2NrLiB7QGxpbmsgR2V0QmxvY2tSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZ2V0QmxvY2sgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgYmxvY2sgPSBhd2FpdCBnZXRCbG9jayhjbGllbnQpXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRCbG9jayhjbGllbnQsIHsgYmxvY2tIYXNoLCBibG9ja051bWJlciwgYmxvY2tUYWcgPSBjbGllbnQuZXhwZXJpbWVudGFsX2Jsb2NrVGFnID8/ICdsYXRlc3QnLCBpbmNsdWRlVHJhbnNhY3Rpb25zOiBpbmNsdWRlVHJhbnNhY3Rpb25zXywgfSA9IHt9KSB7XG4gICAgY29uc3QgaW5jbHVkZVRyYW5zYWN0aW9ucyA9IGluY2x1ZGVUcmFuc2FjdGlvbnNfID8/IGZhbHNlO1xuICAgIGNvbnN0IGJsb2NrTnVtYmVySGV4ID0gYmxvY2tOdW1iZXIgIT09IHVuZGVmaW5lZCA/IG51bWJlclRvSGV4KGJsb2NrTnVtYmVyKSA6IHVuZGVmaW5lZDtcbiAgICBsZXQgYmxvY2sgPSBudWxsO1xuICAgIGlmIChibG9ja0hhc2gpIHtcbiAgICAgICAgYmxvY2sgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfZ2V0QmxvY2tCeUhhc2gnLFxuICAgICAgICAgICAgcGFyYW1zOiBbYmxvY2tIYXNoLCBpbmNsdWRlVHJhbnNhY3Rpb25zXSxcbiAgICAgICAgfSwgeyBkZWR1cGU6IHRydWUgfSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBibG9jayA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogJ2V0aF9nZXRCbG9ja0J5TnVtYmVyJyxcbiAgICAgICAgICAgIHBhcmFtczogW2Jsb2NrTnVtYmVySGV4IHx8IGJsb2NrVGFnLCBpbmNsdWRlVHJhbnNhY3Rpb25zXSxcbiAgICAgICAgfSwgeyBkZWR1cGU6IEJvb2xlYW4oYmxvY2tOdW1iZXJIZXgpIH0pO1xuICAgIH1cbiAgICBpZiAoIWJsb2NrKVxuICAgICAgICB0aHJvdyBuZXcgQmxvY2tOb3RGb3VuZEVycm9yKHsgYmxvY2tIYXNoLCBibG9ja051bWJlciB9KTtcbiAgICBjb25zdCBmb3JtYXQgPSBjbGllbnQuY2hhaW4/LmZvcm1hdHRlcnM/LmJsb2NrPy5mb3JtYXQgfHwgZm9ybWF0QmxvY2s7XG4gICAgcmV0dXJuIGZvcm1hdChibG9jaywgJ2dldEJsb2NrJyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRCbG9jay5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockNumber.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getBlockNumber.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getBlockNumber: () => (/* binding */ getBlockNumber),\n/* harmony export */ getBlockNumberCache: () => (/* binding */ getBlockNumberCache)\n/* harmony export */ });\n/* harmony import */ var _utils_promise_withCache_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/promise/withCache.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/promise/withCache.js\");\n\nconst cacheKey = (id) => `blockNumber.${id}`;\n/** @internal */\nfunction getBlockNumberCache(id) {\n return (0,_utils_promise_withCache_js__WEBPACK_IMPORTED_MODULE_0__.getCache)(cacheKey(id));\n}\n/**\n * Returns the number of the most recent block seen.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlockNumber\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_fetching-blocks\n * - JSON-RPC Methods: [`eth_blockNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blocknumber)\n *\n * @param client - Client to use\n * @param parameters - {@link GetBlockNumberParameters}\n * @returns The number of the block. {@link GetBlockNumberReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlockNumber } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const blockNumber = await getBlockNumber(client)\n * // 69420n\n */\nasync function getBlockNumber(client, { cacheTime = client.cacheTime } = {}) {\n const blockNumberHex = await (0,_utils_promise_withCache_js__WEBPACK_IMPORTED_MODULE_0__.withCache)(() => client.request({\n method: 'eth_blockNumber',\n }), { cacheKey: cacheKey(client.uid), cacheTime });\n return BigInt(blockNumberHex);\n}\n//# sourceMappingURL=getBlockNumber.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2tOdW1iZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXdFO0FBQ3hFLHdDQUF3QyxHQUFHO0FBQzNDO0FBQ087QUFDUCxXQUFXLHFFQUFRO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLGlCQUFpQjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDTyx3Q0FBd0MsK0JBQStCLElBQUk7QUFDbEYsaUNBQWlDLHNFQUFTO0FBQzFDO0FBQ0EsS0FBSyxLQUFLLDJDQUEyQztBQUNyRDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldEJsb2NrTnVtYmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldENhY2hlLCB3aXRoQ2FjaGUsIH0gZnJvbSAnLi4vLi4vdXRpbHMvcHJvbWlzZS93aXRoQ2FjaGUuanMnO1xuY29uc3QgY2FjaGVLZXkgPSAoaWQpID0+IGBibG9ja051bWJlci4ke2lkfWA7XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmxvY2tOdW1iZXJDYWNoZShpZCkge1xuICAgIHJldHVybiBnZXRDYWNoZShjYWNoZUtleShpZCkpO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgdGhlIG1vc3QgcmVjZW50IGJsb2NrIHNlZW4uXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9nZXRCbG9ja051bWJlclxuICogLSBFeGFtcGxlczogaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9naXRodWIvd2V2bS92aWVtL3RyZWUvbWFpbi9leGFtcGxlcy9ibG9ja3NfZmV0Y2hpbmctYmxvY2tzXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6IFtgZXRoX2Jsb2NrTnVtYmVyYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9ibG9ja251bWJlcilcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0QmxvY2tOdW1iZXJQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIG51bWJlciBvZiB0aGUgYmxvY2suIHtAbGluayBHZXRCbG9ja051bWJlclJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRCbG9ja051bWJlciB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBibG9ja051bWJlciA9IGF3YWl0IGdldEJsb2NrTnVtYmVyKGNsaWVudClcbiAqIC8vIDY5NDIwblxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0QmxvY2tOdW1iZXIoY2xpZW50LCB7IGNhY2hlVGltZSA9IGNsaWVudC5jYWNoZVRpbWUgfSA9IHt9KSB7XG4gICAgY29uc3QgYmxvY2tOdW1iZXJIZXggPSBhd2FpdCB3aXRoQ2FjaGUoKCkgPT4gY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICBtZXRob2Q6ICdldGhfYmxvY2tOdW1iZXInLFxuICAgIH0pLCB7IGNhY2hlS2V5OiBjYWNoZUtleShjbGllbnQudWlkKSwgY2FjaGVUaW1lIH0pO1xuICAgIHJldHVybiBCaWdJbnQoYmxvY2tOdW1iZXJIZXgpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0QmxvY2tOdW1iZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockNumber.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockTransactionCount.js": /*!***************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getBlockTransactionCount.js ***! \***************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getBlockTransactionCount: () => (/* binding */ getBlockTransactionCount)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n/**\n * Returns the number of Transactions at a block number, hash, or tag.\n *\n * - Docs: https://viem.sh/docs/actions/public/getBlockTransactionCount\n * - JSON-RPC Methods:\n * - Calls [`eth_getBlockTransactionCountByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblocktransactioncountbynumber) for `blockNumber` & `blockTag`.\n * - Calls [`eth_getBlockTransactionCountByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblocktransactioncountbyhash) for `blockHash`.\n *\n * @param client - Client to use\n * @param parameters - {@link GetBlockTransactionCountParameters}\n * @returns The block transaction count. {@link GetBlockTransactionCountReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getBlockTransactionCount } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const count = await getBlockTransactionCount(client)\n */\nasync function getBlockTransactionCount(client, { blockHash, blockNumber, blockTag = 'latest', } = {}) {\n const blockNumberHex = blockNumber !== undefined ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n let count;\n if (blockHash) {\n count = await client.request({\n method: 'eth_getBlockTransactionCountByHash',\n params: [blockHash],\n }, { dedupe: true });\n }\n else {\n count = await client.request({\n method: 'eth_getBlockTransactionCountByNumber',\n params: [blockNumberHex || blockTag],\n }, { dedupe: Boolean(blockNumberHex) });\n }\n return (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.hexToNumber)(count);\n}\n//# sourceMappingURL=getBlockTransactionCount.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50LmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUErRDtBQUNGO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QiwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLDJCQUEyQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ08sa0RBQWtELCtDQUErQyxJQUFJO0FBQzVHLHVEQUF1RCxxRUFBVztBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUyxJQUFJLGNBQWM7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVMsSUFBSSxpQ0FBaUM7QUFDOUM7QUFDQSxXQUFXLHVFQUFXO0FBQ3RCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldEJsb2NrVHJhbnNhY3Rpb25Db3VudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBoZXhUb051bWJlciwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy9mcm9tSGV4LmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4LCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbi8qKlxuICogUmV0dXJucyB0aGUgbnVtYmVyIG9mIFRyYW5zYWN0aW9ucyBhdCBhIGJsb2NrIG51bWJlciwgaGFzaCwgb3IgdGFnLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50XG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6XG4gKiAgIC0gQ2FsbHMgW2BldGhfZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50QnlOdW1iZXJgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldGJsb2NrdHJhbnNhY3Rpb25jb3VudGJ5bnVtYmVyKSBmb3IgYGJsb2NrTnVtYmVyYCAmIGBibG9ja1RhZ2AuXG4gKiAgIC0gQ2FsbHMgW2BldGhfZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50QnlIYXNoYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9nZXRibG9ja3RyYW5zYWN0aW9uY291bnRieWhhc2gpIGZvciBgYmxvY2tIYXNoYC5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSBibG9jayB0cmFuc2FjdGlvbiBjb3VudC4ge0BsaW5rIEdldEJsb2NrVHJhbnNhY3Rpb25Db3VudFJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRCbG9ja1RyYW5zYWN0aW9uQ291bnQgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgY291bnQgPSBhd2FpdCBnZXRCbG9ja1RyYW5zYWN0aW9uQ291bnQoY2xpZW50KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50KGNsaWVudCwgeyBibG9ja0hhc2gsIGJsb2NrTnVtYmVyLCBibG9ja1RhZyA9ICdsYXRlc3QnLCB9ID0ge30pIHtcbiAgICBjb25zdCBibG9ja051bWJlckhleCA9IGJsb2NrTnVtYmVyICE9PSB1bmRlZmluZWQgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgbGV0IGNvdW50O1xuICAgIGlmIChibG9ja0hhc2gpIHtcbiAgICAgICAgY291bnQgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50QnlIYXNoJyxcbiAgICAgICAgICAgIHBhcmFtczogW2Jsb2NrSGFzaF0sXG4gICAgICAgIH0sIHsgZGVkdXBlOiB0cnVlIH0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY291bnQgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50QnlOdW1iZXInLFxuICAgICAgICAgICAgcGFyYW1zOiBbYmxvY2tOdW1iZXJIZXggfHwgYmxvY2tUYWddLFxuICAgICAgICB9LCB7IGRlZHVwZTogQm9vbGVhbihibG9ja051bWJlckhleCkgfSk7XG4gICAgfVxuICAgIHJldHVybiBoZXhUb051bWJlcihjb3VudCk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRCbG9ja1RyYW5zYWN0aW9uQ291bnQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockTransactionCount.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getChainId.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getChainId: () => (/* binding */ getChainId)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n\n/**\n * Returns the chain ID associated with the current network.\n *\n * - Docs: https://viem.sh/docs/actions/public/getChainId\n * - JSON-RPC Methods: [`eth_chainId`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_chainid)\n *\n * @param client - Client to use\n * @returns The current chain ID. {@link GetChainIdReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getChainId } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const chainId = await getChainId(client)\n * // 1\n */\nasync function getChainId(client) {\n const chainIdHex = await client.request({\n method: 'eth_chainId',\n }, { dedupe: true });\n return (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_0__.hexToNumber)(chainIdHex);\n}\n//# sourceMappingURL=getChainId.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0Q2hhaW5JZC5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUErRDtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQztBQUNuQztBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSxLQUFLLElBQUksY0FBYztBQUN2QixXQUFXLHVFQUFXO0FBQ3RCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldENoYWluSWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGV4VG9OdW1iZXIsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5jb2RpbmcvZnJvbUhleC5qcyc7XG4vKipcbiAqIFJldHVybnMgdGhlIGNoYWluIElEIGFzc29jaWF0ZWQgd2l0aCB0aGUgY3VycmVudCBuZXR3b3JrLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0Q2hhaW5JZFxuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYGV0aF9jaGFpbklkYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9jaGFpbmlkKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcmV0dXJucyBUaGUgY3VycmVudCBjaGFpbiBJRC4ge0BsaW5rIEdldENoYWluSWRSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZ2V0Q2hhaW5JZCB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBjaGFpbklkID0gYXdhaXQgZ2V0Q2hhaW5JZChjbGllbnQpXG4gKiAvLyAxXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRDaGFpbklkKGNsaWVudCkge1xuICAgIGNvbnN0IGNoYWluSWRIZXggPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9jaGFpbklkJyxcbiAgICB9LCB7IGRlZHVwZTogdHJ1ZSB9KTtcbiAgICByZXR1cm4gaGV4VG9OdW1iZXIoY2hhaW5JZEhleCk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRDaGFpbklkLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getCode.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getCode.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getCode: () => (/* binding */ getCode)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n/**\n * Retrieves the bytecode at an address.\n *\n * - Docs: https://viem.sh/docs/contract/getCode\n * - JSON-RPC Methods: [`eth_getCode`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getcode)\n *\n * @param client - Client to use\n * @param parameters - {@link GetCodeParameters}\n * @returns The contract's bytecode. {@link GetCodeReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getCode } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const code = await getCode(client, {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * })\n */\nasync function getCode(client, { address, blockNumber, blockTag = 'latest' }) {\n const blockNumberHex = blockNumber !== undefined ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n const hex = await client.request({\n method: 'eth_getCode',\n params: [address, blockNumberHex || blockTag],\n }, { dedupe: Boolean(blockNumberHex) });\n if (hex === '0x')\n return undefined;\n return hex;\n}\n//# sourceMappingURL=getCode.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0Q29kZS5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE2RDtBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPLGlDQUFpQywyQ0FBMkM7QUFDbkYsdURBQXVELHFFQUFXO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBLEtBQUssSUFBSSxpQ0FBaUM7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0Q29kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG4vKipcbiAqIFJldHJpZXZlcyB0aGUgYnl0ZWNvZGUgYXQgYW4gYWRkcmVzcy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L2dldENvZGVcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfZ2V0Q29kZWBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0Y29kZSlcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0Q29kZVBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgY29udHJhY3QncyBieXRlY29kZS4ge0BsaW5rIEdldENvZGVSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZ2V0Q29kZSB9IGZyb20gJ3ZpZW0vY29udHJhY3QnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGNvZGUgPSBhd2FpdCBnZXRDb2RlKGNsaWVudCwge1xuICogICBhZGRyZXNzOiAnMHhGQkEzOTEyQ2EwNGRkNDU4Yzg0M2UyRUUwODk2N2ZDMDRmMzU3OWMyJyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRDb2RlKGNsaWVudCwgeyBhZGRyZXNzLCBibG9ja051bWJlciwgYmxvY2tUYWcgPSAnbGF0ZXN0JyB9KSB7XG4gICAgY29uc3QgYmxvY2tOdW1iZXJIZXggPSBibG9ja051bWJlciAhPT0gdW5kZWZpbmVkID8gbnVtYmVyVG9IZXgoYmxvY2tOdW1iZXIpIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IGhleCA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX2dldENvZGUnLFxuICAgICAgICBwYXJhbXM6IFthZGRyZXNzLCBibG9ja051bWJlckhleCB8fCBibG9ja1RhZ10sXG4gICAgfSwgeyBkZWR1cGU6IEJvb2xlYW4oYmxvY2tOdW1iZXJIZXgpIH0pO1xuICAgIGlmIChoZXggPT09ICcweCcpXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIGhleDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldENvZGUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getCode.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getContractEvents.js": /*!********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getContractEvents.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getContractEvents: () => (/* binding */ getContractEvents)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/abi/getAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _getLogs_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getLogs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getLogs.js\");\n\n\n\n/**\n * Returns a list of event logs emitted by a contract.\n *\n * - Docs: https://viem.sh/docs/contract/getContractEvents#getcontractevents\n * - JSON-RPC Methods: [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs)\n *\n * @param client - Client to use\n * @param parameters - {@link GetContractEventsParameters}\n * @returns A list of event logs. {@link GetContractEventsReturnType}\n *\n * @example\n * import { createClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getContractEvents } from 'viem/public'\n * import { wagmiAbi } from './abi'\n *\n * const client = createClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const logs = await getContractEvents(client, {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: wagmiAbi,\n * eventName: 'Transfer'\n * })\n */\nasync function getContractEvents(client, parameters) {\n const { abi, address, args, blockHash, eventName, fromBlock, toBlock, strict, } = parameters;\n const event = eventName\n ? (0,_utils_abi_getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__.getAbiItem)({ abi, name: eventName })\n : undefined;\n const events = !event\n ? abi.filter((x) => x.type === 'event')\n : undefined;\n return (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _getLogs_js__WEBPACK_IMPORTED_MODULE_2__.getLogs, 'getLogs')({\n address,\n args,\n blockHash,\n event,\n events,\n fromBlock,\n toBlock,\n strict,\n });\n}\n//# sourceMappingURL=getContractEvents.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0Q29udHJhY3RFdmVudHMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE0RDtBQUNQO0FBQ2I7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsbUNBQW1DO0FBQ25DO0FBQ0E7QUFDQSxZQUFZLHFCQUFxQjtBQUNqQyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxvQkFBb0I7QUFDaEMsWUFBWSxXQUFXO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLHdFQUF3RTtBQUNwRjtBQUNBLFVBQVUsb0VBQVUsR0FBRyxzQkFBc0I7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLDhEQUFTLFNBQVMsZ0RBQU87QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9nZXRDb250cmFjdEV2ZW50cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBYmlJdGVtLCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9nZXRBYmlJdGVtLmpzJztcbmltcG9ydCB7IGdldEFjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2dldEFjdGlvbi5qcyc7XG5pbXBvcnQgeyBnZXRMb2dzLCB9IGZyb20gJy4vZ2V0TG9ncy5qcyc7XG4vKipcbiAqIFJldHVybnMgYSBsaXN0IG9mIGV2ZW50IGxvZ3MgZW1pdHRlZCBieSBhIGNvbnRyYWN0LlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvY29udHJhY3QvZ2V0Q29udHJhY3RFdmVudHMjZ2V0Y29udHJhY3RldmVudHNcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfZ2V0TG9nc2BdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0bG9ncylcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0Q29udHJhY3RFdmVudHNQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQSBsaXN0IG9mIGV2ZW50IGxvZ3MuIHtAbGluayBHZXRDb250cmFjdEV2ZW50c1JldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZUNsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRDb250cmFjdEV2ZW50cyB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICogaW1wb3J0IHsgd2FnbWlBYmkgfSBmcm9tICcuL2FiaSdcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgbG9ncyA9IGF3YWl0IGdldENvbnRyYWN0RXZlbnRzKGNsaWVudCwge1xuICogIGFkZHJlc3M6ICcweEZCQTM5MTJDYTA0ZGQ0NThjODQzZTJFRTA4OTY3ZkMwNGYzNTc5YzInLFxuICogIGFiaTogd2FnbWlBYmksXG4gKiAgZXZlbnROYW1lOiAnVHJhbnNmZXInXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q29udHJhY3RFdmVudHMoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhYmksIGFkZHJlc3MsIGFyZ3MsIGJsb2NrSGFzaCwgZXZlbnROYW1lLCBmcm9tQmxvY2ssIHRvQmxvY2ssIHN0cmljdCwgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgZXZlbnQgPSBldmVudE5hbWVcbiAgICAgICAgPyBnZXRBYmlJdGVtKHsgYWJpLCBuYW1lOiBldmVudE5hbWUgfSlcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZXZlbnRzID0gIWV2ZW50XG4gICAgICAgID8gYWJpLmZpbHRlcigoeCkgPT4geC50eXBlID09PSAnZXZlbnQnKVxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gZ2V0QWN0aW9uKGNsaWVudCwgZ2V0TG9ncywgJ2dldExvZ3MnKSh7XG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIGFyZ3MsXG4gICAgICAgIGJsb2NrSGFzaCxcbiAgICAgICAgZXZlbnQsXG4gICAgICAgIGV2ZW50cyxcbiAgICAgICAgZnJvbUJsb2NrLFxuICAgICAgICB0b0Jsb2NrLFxuICAgICAgICBzdHJpY3QsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRDb250cmFjdEV2ZW50cy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getContractEvents.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getEip712Domain.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getEip712Domain.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEip712Domain: () => (/* binding */ getEip712Domain)\n/* harmony export */ });\n/* harmony import */ var _errors_eip712_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/eip712.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/eip712.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _readContract_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n\n\n\n/**\n * Reads the EIP-712 domain from a contract, based on the ERC-5267 specification.\n *\n * @param client - A {@link Client} instance.\n * @param parameters - The parameters of the action. {@link GetEip712DomainParameters}\n * @returns The EIP-712 domain, fields, and extensions. {@link GetEip712DomainReturnType}\n *\n * @example\n * ```ts\n * import { createPublicClient, http, getEip712Domain } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const domain = await getEip712Domain(client, {\n * address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n * })\n * // {\n * // domain: {\n * // name: 'ExampleContract',\n * // version: '1',\n * // chainId: 1,\n * // verifyingContract: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',\n * // },\n * // fields: '0x0f',\n * // extensions: [],\n * // }\n * ```\n */\nasync function getEip712Domain(client, parameters) {\n const { address, factory, factoryData } = parameters;\n try {\n const [fields, name, version, chainId, verifyingContract, salt, extensions,] = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__.getAction)(client, _readContract_js__WEBPACK_IMPORTED_MODULE_1__.readContract, 'readContract')({\n abi,\n address,\n functionName: 'eip712Domain',\n factory,\n factoryData,\n });\n return {\n domain: {\n name,\n version,\n chainId: Number(chainId),\n verifyingContract,\n salt,\n },\n extensions,\n fields,\n };\n }\n catch (e) {\n const error = e;\n if (error.name === 'ContractFunctionExecutionError' &&\n error.cause.name === 'ContractFunctionZeroDataError') {\n throw new _errors_eip712_js__WEBPACK_IMPORTED_MODULE_2__.Eip712DomainNotFoundError({ address });\n }\n throw error;\n }\n}\nconst abi = [\n {\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', type: 'bytes1' },\n { name: 'name', type: 'string' },\n { name: 'version', type: 'string' },\n { name: 'chainId', type: 'uint256' },\n { name: 'verifyingContract', type: 'address' },\n { name: 'salt', type: 'bytes32' },\n { name: 'extensions', type: 'uint256[]' },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n];\n//# sourceMappingURL=getEip712Domain.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0RWlwNzEyRG9tYWluLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBb0U7QUFDZjtBQUNIO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixjQUFjO0FBQ3BDLHNEQUFzRDtBQUN0RCx5REFBeUQ7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSw0Q0FBNEM7QUFDeEQsWUFBWSxVQUFVO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSxnQ0FBZ0M7QUFDNUM7QUFDQSw2RkFBNkYsOERBQVMsU0FBUywwREFBWTtBQUMzSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isd0VBQXlCLEdBQUcsU0FBUztBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLGdDQUFnQztBQUM5QyxjQUFjLDhCQUE4QjtBQUM1QyxjQUFjLGlDQUFpQztBQUMvQyxjQUFjLGtDQUFrQztBQUNoRCxjQUFjLDRDQUE0QztBQUMxRCxjQUFjLCtCQUErQjtBQUM3QyxjQUFjLHVDQUF1QztBQUNyRDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0RWlwNzEyRG9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVpcDcxMkRvbWFpbk5vdEZvdW5kRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2VpcDcxMi5qcyc7XG5pbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgcmVhZENvbnRyYWN0LCB9IGZyb20gJy4vcmVhZENvbnRyYWN0LmpzJztcbi8qKlxuICogUmVhZHMgdGhlIEVJUC03MTIgZG9tYWluIGZyb20gYSBjb250cmFjdCwgYmFzZWQgb24gdGhlIEVSQy01MjY3IHNwZWNpZmljYXRpb24uXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIEEge0BsaW5rIENsaWVudH0gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIFRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBhY3Rpb24uIHtAbGluayBHZXRFaXA3MTJEb21haW5QYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIEVJUC03MTIgZG9tYWluLCBmaWVsZHMsIGFuZCBleHRlbnNpb25zLiB7QGxpbmsgR2V0RWlwNzEyRG9tYWluUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgZ2V0RWlwNzEyRG9tYWluIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICpcbiAqIGNvbnN0IGRvbWFpbiA9IGF3YWl0IGdldEVpcDcxMkRvbWFpbihjbGllbnQsIHtcbiAqICAgYWRkcmVzczogJzB4QTBiODY5OTFjNjIxOGIzNmMxZDE5RDRhMmU5RWIwY0UzNjA2ZUI0OCcsXG4gKiB9KVxuICogLy8ge1xuICogLy8gICBkb21haW46IHtcbiAqIC8vICAgICBuYW1lOiAnRXhhbXBsZUNvbnRyYWN0JyxcbiAqIC8vICAgICB2ZXJzaW9uOiAnMScsXG4gKiAvLyAgICAgY2hhaW5JZDogMSxcbiAqIC8vICAgICB2ZXJpZnlpbmdDb250cmFjdDogJzB4QTBiODY5OTFjNjIxOGIzNmMxZDE5RDRhMmU5RWIwY0UzNjA2ZUI0OCcsXG4gKiAvLyAgIH0sXG4gKiAvLyAgIGZpZWxkczogJzB4MGYnLFxuICogLy8gICBleHRlbnNpb25zOiBbXSxcbiAqIC8vIH1cbiAqIGBgYFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RWlwNzEyRG9tYWluKGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWRkcmVzcywgZmFjdG9yeSwgZmFjdG9yeURhdGEgfSA9IHBhcmFtZXRlcnM7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgW2ZpZWxkcywgbmFtZSwgdmVyc2lvbiwgY2hhaW5JZCwgdmVyaWZ5aW5nQ29udHJhY3QsIHNhbHQsIGV4dGVuc2lvbnMsXSA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIHJlYWRDb250cmFjdCwgJ3JlYWRDb250cmFjdCcpKHtcbiAgICAgICAgICAgIGFiaSxcbiAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICBmdW5jdGlvbk5hbWU6ICdlaXA3MTJEb21haW4nLFxuICAgICAgICAgICAgZmFjdG9yeSxcbiAgICAgICAgICAgIGZhY3RvcnlEYXRhLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRvbWFpbjoge1xuICAgICAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAgICAgdmVyc2lvbixcbiAgICAgICAgICAgICAgICBjaGFpbklkOiBOdW1iZXIoY2hhaW5JZCksXG4gICAgICAgICAgICAgICAgdmVyaWZ5aW5nQ29udHJhY3QsXG4gICAgICAgICAgICAgICAgc2FsdCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleHRlbnNpb25zLFxuICAgICAgICAgICAgZmllbGRzLFxuICAgICAgICB9O1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICBjb25zdCBlcnJvciA9IGU7XG4gICAgICAgIGlmIChlcnJvci5uYW1lID09PSAnQ29udHJhY3RGdW5jdGlvbkV4ZWN1dGlvbkVycm9yJyAmJlxuICAgICAgICAgICAgZXJyb3IuY2F1c2UubmFtZSA9PT0gJ0NvbnRyYWN0RnVuY3Rpb25aZXJvRGF0YUVycm9yJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVpcDcxMkRvbWFpbk5vdEZvdW5kRXJyb3IoeyBhZGRyZXNzIH0pO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbn1cbmNvbnN0IGFiaSA9IFtcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICdlaXA3MTJEb21haW4nLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICdmaWVsZHMnLCB0eXBlOiAnYnl0ZXMxJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd2ZXJzaW9uJywgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NoYWluSWQnLCB0eXBlOiAndWludDI1NicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3ZlcmlmeWluZ0NvbnRyYWN0JywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdzYWx0JywgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdleHRlbnNpb25zJywgdHlwZTogJ3VpbnQyNTZbXScgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbl07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRFaXA3MTJEb21haW4uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getEip712Domain.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFeeHistory.js": /*!****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getFeeHistory.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeeHistory: () => (/* binding */ getFeeHistory)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_formatters_feeHistory_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/formatters/feeHistory.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/feeHistory.js\");\n\n\n/**\n * Returns a collection of historical gas information.\n *\n * - Docs: https://viem.sh/docs/actions/public/getFeeHistory\n * - JSON-RPC Methods: [`eth_feeHistory`](https://docs.alchemy.com/reference/eth-feehistory)\n *\n * @param client - Client to use\n * @param parameters - {@link GetFeeHistoryParameters}\n * @returns The gas estimate (in wei). {@link GetFeeHistoryReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getFeeHistory } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const feeHistory = await getFeeHistory(client, {\n * blockCount: 4,\n * rewardPercentiles: [25, 75],\n * })\n */\nasync function getFeeHistory(client, { blockCount, blockNumber, blockTag = 'latest', rewardPercentiles, }) {\n const blockNumberHex = typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n const feeHistory = await client.request({\n method: 'eth_feeHistory',\n params: [\n (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockCount),\n blockNumberHex || blockTag,\n rewardPercentiles,\n ],\n }, { dedupe: Boolean(blockNumberHex) });\n return (0,_utils_formatters_feeHistory_js__WEBPACK_IMPORTED_MODULE_1__.formatFeeHistory)(feeHistory);\n}\n//# sourceMappingURL=getFeeHistory.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0RmVlSGlzdG9yeS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBNkQ7QUFDWTtBQUN6RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4Qix3Q0FBd0M7QUFDeEM7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTyx1Q0FBdUMsa0VBQWtFO0FBQ2hILDZEQUE2RCxxRUFBVztBQUN4RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLHFFQUFXO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBLEtBQUssSUFBSSxpQ0FBaUM7QUFDMUMsV0FBVyxpRkFBZ0I7QUFDM0I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0RmVlSGlzdG9yeS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBmb3JtYXRGZWVIaXN0b3J5LCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvZmVlSGlzdG9yeS5qcyc7XG4vKipcbiAqIFJldHVybnMgYSBjb2xsZWN0aW9uIG9mIGhpc3RvcmljYWwgZ2FzIGluZm9ybWF0aW9uLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0RmVlSGlzdG9yeVxuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYGV0aF9mZWVIaXN0b3J5YF0oaHR0cHM6Ly9kb2NzLmFsY2hlbXkuY29tL3JlZmVyZW5jZS9ldGgtZmVlaGlzdG9yeSlcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0RmVlSGlzdG9yeVBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgZ2FzIGVzdGltYXRlIChpbiB3ZWkpLiB7QGxpbmsgR2V0RmVlSGlzdG9yeVJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRGZWVIaXN0b3J5IH0gZnJvbSAndmllbS9wdWJsaWMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGZlZUhpc3RvcnkgPSBhd2FpdCBnZXRGZWVIaXN0b3J5KGNsaWVudCwge1xuICogICBibG9ja0NvdW50OiA0LFxuICogICByZXdhcmRQZXJjZW50aWxlczogWzI1LCA3NV0sXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlSGlzdG9yeShjbGllbnQsIHsgYmxvY2tDb3VudCwgYmxvY2tOdW1iZXIsIGJsb2NrVGFnID0gJ2xhdGVzdCcsIHJld2FyZFBlcmNlbnRpbGVzLCB9KSB7XG4gICAgY29uc3QgYmxvY2tOdW1iZXJIZXggPSB0eXBlb2YgYmxvY2tOdW1iZXIgPT09ICdiaWdpbnQnID8gbnVtYmVyVG9IZXgoYmxvY2tOdW1iZXIpIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IGZlZUhpc3RvcnkgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9mZWVIaXN0b3J5JyxcbiAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICBudW1iZXJUb0hleChibG9ja0NvdW50KSxcbiAgICAgICAgICAgIGJsb2NrTnVtYmVySGV4IHx8IGJsb2NrVGFnLFxuICAgICAgICAgICAgcmV3YXJkUGVyY2VudGlsZXMsXG4gICAgICAgIF0sXG4gICAgfSwgeyBkZWR1cGU6IEJvb2xlYW4oYmxvY2tOdW1iZXJIZXgpIH0pO1xuICAgIHJldHVybiBmb3JtYXRGZWVIaXN0b3J5KGZlZUhpc3RvcnkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0RmVlSGlzdG9yeS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFeeHistory.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterChanges.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getFilterChanges.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFilterChanges: () => (/* binding */ getFilterChanges)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_parseEventLogs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/abi/parseEventLogs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/parseEventLogs.js\");\n/* harmony import */ var _utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/formatters/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/log.js\");\n\n\n/**\n * Returns a list of logs or hashes based on a [Filter](/docs/glossary/terms#filter) since the last time it was called.\n *\n * - Docs: https://viem.sh/docs/actions/public/getFilterChanges\n * - JSON-RPC Methods: [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterchanges)\n *\n * A Filter can be created from the following actions:\n *\n * - [`createBlockFilter`](https://viem.sh/docs/actions/public/createBlockFilter)\n * - [`createContractEventFilter`](https://viem.sh/docs/contract/createContractEventFilter)\n * - [`createEventFilter`](https://viem.sh/docs/actions/public/createEventFilter)\n * - [`createPendingTransactionFilter`](https://viem.sh/docs/actions/public/createPendingTransactionFilter)\n *\n * Depending on the type of filter, the return value will be different:\n *\n * - If the filter was created with `createContractEventFilter` or `createEventFilter`, it returns a list of logs.\n * - If the filter was created with `createPendingTransactionFilter`, it returns a list of transaction hashes.\n * - If the filter was created with `createBlockFilter`, it returns a list of block hashes.\n *\n * @param client - Client to use\n * @param parameters - {@link GetFilterChangesParameters}\n * @returns Logs or hashes. {@link GetFilterChangesReturnType}\n *\n * @example\n * // Blocks\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createBlockFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createBlockFilter(client)\n * const hashes = await getFilterChanges(client, { filter })\n *\n * @example\n * // Contract Events\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createContractEventFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createContractEventFilter(client, {\n * address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n * abi: parseAbi(['event Transfer(address indexed, address indexed, uint256)']),\n * eventName: 'Transfer',\n * })\n * const logs = await getFilterChanges(client, { filter })\n *\n * @example\n * // Raw Events\n * import { createPublicClient, http, parseAbiItem } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createEventFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createEventFilter(client, {\n * address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n * event: parseAbiItem('event Transfer(address indexed, address indexed, uint256)'),\n * })\n * const logs = await getFilterChanges(client, { filter })\n *\n * @example\n * // Transactions\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createPendingTransactionFilter, getFilterChanges } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createPendingTransactionFilter(client)\n * const hashes = await getFilterChanges(client, { filter })\n */\nasync function getFilterChanges(_client, { filter, }) {\n const strict = 'strict' in filter && filter.strict;\n const logs = await filter.request({\n method: 'eth_getFilterChanges',\n params: [filter.id],\n });\n if (typeof logs[0] === 'string')\n return logs;\n const formattedLogs = logs.map((log) => (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_0__.formatLog)(log));\n if (!('abi' in filter) || !filter.abi)\n return formattedLogs;\n return (0,_utils_abi_parseEventLogs_js__WEBPACK_IMPORTED_MODULE_1__.parseEventLogs)({\n abi: filter.abi,\n logs: formattedLogs,\n strict,\n });\n}\n//# sourceMappingURL=getFilterChanges.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0RmlsdGVyQ2hhbmdlcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBbUU7QUFDUjtBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxzQ0FBc0M7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxtREFBbUQsUUFBUTtBQUMzRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLHFDQUFxQztBQUNqRCxZQUFZLFVBQVU7QUFDdEIsWUFBWSw4Q0FBOEM7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0osaURBQWlELFFBQVE7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSx5Q0FBeUM7QUFDckQsWUFBWSxVQUFVO0FBQ3RCLFlBQVksc0NBQXNDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSixpREFBaUQsUUFBUTtBQUN6RDtBQUNBO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxtREFBbUQ7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxtREFBbUQsUUFBUTtBQUMzRDtBQUNPLDJDQUEyQyxTQUFTO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSw0Q0FBNEMsbUVBQVM7QUFDckQ7QUFDQTtBQUNBLFdBQVcsNEVBQWM7QUFDekI7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldEZpbHRlckNoYW5nZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VFdmVudExvZ3MgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvcGFyc2VFdmVudExvZ3MuanMnO1xuaW1wb3J0IHsgZm9ybWF0TG9nLCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvbG9nLmpzJztcbi8qKlxuICogUmV0dXJucyBhIGxpc3Qgb2YgbG9ncyBvciBoYXNoZXMgYmFzZWQgb24gYSBbRmlsdGVyXSgvZG9jcy9nbG9zc2FyeS90ZXJtcyNmaWx0ZXIpIHNpbmNlIHRoZSBsYXN0IHRpbWUgaXQgd2FzIGNhbGxlZC5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2dldEZpbHRlckNoYW5nZXNcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfZ2V0RmlsdGVyQ2hhbmdlc2BdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0ZmlsdGVyY2hhbmdlcylcbiAqXG4gKiBBIEZpbHRlciBjYW4gYmUgY3JlYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgYWN0aW9uczpcbiAqXG4gKiAtIFtgY3JlYXRlQmxvY2tGaWx0ZXJgXShodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9jcmVhdGVCbG9ja0ZpbHRlcilcbiAqIC0gW2BjcmVhdGVDb250cmFjdEV2ZW50RmlsdGVyYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvY29udHJhY3QvY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlcilcbiAqIC0gW2BjcmVhdGVFdmVudEZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2NyZWF0ZUV2ZW50RmlsdGVyKVxuICogLSBbYGNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2NyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcilcbiAqXG4gKiBEZXBlbmRpbmcgb24gdGhlIHR5cGUgb2YgZmlsdGVyLCB0aGUgcmV0dXJuIHZhbHVlIHdpbGwgYmUgZGlmZmVyZW50OlxuICpcbiAqIC0gSWYgdGhlIGZpbHRlciB3YXMgY3JlYXRlZCB3aXRoIGBjcmVhdGVDb250cmFjdEV2ZW50RmlsdGVyYCBvciBgY3JlYXRlRXZlbnRGaWx0ZXJgLCBpdCByZXR1cm5zIGEgbGlzdCBvZiBsb2dzLlxuICogLSBJZiB0aGUgZmlsdGVyIHdhcyBjcmVhdGVkIHdpdGggYGNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcmAsIGl0IHJldHVybnMgYSBsaXN0IG9mIHRyYW5zYWN0aW9uIGhhc2hlcy5cbiAqIC0gSWYgdGhlIGZpbHRlciB3YXMgY3JlYXRlZCB3aXRoIGBjcmVhdGVCbG9ja0ZpbHRlcmAsIGl0IHJldHVybnMgYSBsaXN0IG9mIGJsb2NrIGhhc2hlcy5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0RmlsdGVyQ2hhbmdlc1BhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBMb2dzIG9yIGhhc2hlcy4ge0BsaW5rIEdldEZpbHRlckNoYW5nZXNSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBCbG9ja3NcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBjcmVhdGVCbG9ja0ZpbHRlciwgZ2V0RmlsdGVyQ2hhbmdlcyB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBmaWx0ZXIgPSBhd2FpdCBjcmVhdGVCbG9ja0ZpbHRlcihjbGllbnQpXG4gKiBjb25zdCBoYXNoZXMgPSBhd2FpdCBnZXRGaWx0ZXJDaGFuZ2VzKGNsaWVudCwgeyBmaWx0ZXIgfSlcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gQ29udHJhY3QgRXZlbnRzXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAsIHBhcnNlQWJpIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGNyZWF0ZUNvbnRyYWN0RXZlbnRGaWx0ZXIsIGdldEZpbHRlckNoYW5nZXMgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgZmlsdGVyID0gYXdhaXQgY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlcihjbGllbnQsIHtcbiAqICAgYWRkcmVzczogJzB4YTBiODY5OTFjNjIxOGIzNmMxZDE5ZDRhMmU5ZWIwY2UzNjA2ZWI0OCcsXG4gKiAgIGFiaTogcGFyc2VBYmkoWydldmVudCBUcmFuc2ZlcihhZGRyZXNzIGluZGV4ZWQsIGFkZHJlc3MgaW5kZXhlZCwgdWludDI1NiknXSksXG4gKiAgIGV2ZW50TmFtZTogJ1RyYW5zZmVyJyxcbiAqIH0pXG4gKiBjb25zdCBsb2dzID0gYXdhaXQgZ2V0RmlsdGVyQ2hhbmdlcyhjbGllbnQsIHsgZmlsdGVyIH0pXG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIFJhdyBFdmVudHNcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgcGFyc2VBYmlJdGVtIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGNyZWF0ZUV2ZW50RmlsdGVyLCBnZXRGaWx0ZXJDaGFuZ2VzIH0gZnJvbSAndmllbS9wdWJsaWMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGZpbHRlciA9IGF3YWl0IGNyZWF0ZUV2ZW50RmlsdGVyKGNsaWVudCwge1xuICogICBhZGRyZXNzOiAnMHhhMGI4Njk5MWM2MjE4YjM2YzFkMTlkNGEyZTllYjBjZTM2MDZlYjQ4JyxcbiAqICAgZXZlbnQ6IHBhcnNlQWJpSXRlbSgnZXZlbnQgVHJhbnNmZXIoYWRkcmVzcyBpbmRleGVkLCBhZGRyZXNzIGluZGV4ZWQsIHVpbnQyNTYpJyksXG4gKiB9KVxuICogY29uc3QgbG9ncyA9IGF3YWl0IGdldEZpbHRlckNoYW5nZXMoY2xpZW50LCB7IGZpbHRlciB9KVxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBUcmFuc2FjdGlvbnNcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBjcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXIsIGdldEZpbHRlckNoYW5nZXMgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgZmlsdGVyID0gYXdhaXQgY3JlYXRlUGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyKGNsaWVudClcbiAqIGNvbnN0IGhhc2hlcyA9IGF3YWl0IGdldEZpbHRlckNoYW5nZXMoY2xpZW50LCB7IGZpbHRlciB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmlsdGVyQ2hhbmdlcyhfY2xpZW50LCB7IGZpbHRlciwgfSkge1xuICAgIGNvbnN0IHN0cmljdCA9ICdzdHJpY3QnIGluIGZpbHRlciAmJiBmaWx0ZXIuc3RyaWN0O1xuICAgIGNvbnN0IGxvZ3MgPSBhd2FpdCBmaWx0ZXIucmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9nZXRGaWx0ZXJDaGFuZ2VzJyxcbiAgICAgICAgcGFyYW1zOiBbZmlsdGVyLmlkXSxcbiAgICB9KTtcbiAgICBpZiAodHlwZW9mIGxvZ3NbMF0gPT09ICdzdHJpbmcnKVxuICAgICAgICByZXR1cm4gbG9ncztcbiAgICBjb25zdCBmb3JtYXR0ZWRMb2dzID0gbG9ncy5tYXAoKGxvZykgPT4gZm9ybWF0TG9nKGxvZykpO1xuICAgIGlmICghKCdhYmknIGluIGZpbHRlcikgfHwgIWZpbHRlci5hYmkpXG4gICAgICAgIHJldHVybiBmb3JtYXR0ZWRMb2dzO1xuICAgIHJldHVybiBwYXJzZUV2ZW50TG9ncyh7XG4gICAgICAgIGFiaTogZmlsdGVyLmFiaSxcbiAgICAgICAgbG9nczogZm9ybWF0dGVkTG9ncyxcbiAgICAgICAgc3RyaWN0LFxuICAgIH0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0RmlsdGVyQ2hhbmdlcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterChanges.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterLogs.js": /*!****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getFilterLogs.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFilterLogs: () => (/* binding */ getFilterLogs)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_parseEventLogs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/abi/parseEventLogs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/parseEventLogs.js\");\n/* harmony import */ var _utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/formatters/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/log.js\");\n\n\n/**\n * Returns a list of event logs since the filter was created.\n *\n * - Docs: https://viem.sh/docs/actions/public/getFilterLogs\n * - JSON-RPC Methods: [`eth_getFilterLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterlogs)\n *\n * `getFilterLogs` is only compatible with **event filters**.\n *\n * @param client - Client to use\n * @param parameters - {@link GetFilterLogsParameters}\n * @returns A list of event logs. {@link GetFilterLogsReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbiItem } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createEventFilter, getFilterLogs } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const filter = await createEventFilter(client, {\n * address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n * event: parseAbiItem('event Transfer(address indexed, address indexed, uint256)'),\n * })\n * const logs = await getFilterLogs(client, { filter })\n */\nasync function getFilterLogs(_client, { filter, }) {\n const strict = filter.strict ?? false;\n const logs = await filter.request({\n method: 'eth_getFilterLogs',\n params: [filter.id],\n });\n const formattedLogs = logs.map((log) => (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_0__.formatLog)(log));\n if (!filter.abi)\n return formattedLogs;\n return (0,_utils_abi_parseEventLogs_js__WEBPACK_IMPORTED_MODULE_1__.parseEventLogs)({\n abi: filter.abi,\n logs: formattedLogs,\n strict,\n });\n}\n//# sourceMappingURL=getFilterLogs.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0RmlsdGVyTG9ncy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBbUU7QUFDUjtBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsbUNBQW1DO0FBQ25DO0FBQ0E7QUFDQSxZQUFZLHlDQUF5QztBQUNyRCxZQUFZLFVBQVU7QUFDdEIsWUFBWSxtQ0FBbUM7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKLDhDQUE4QyxRQUFRO0FBQ3REO0FBQ08sd0NBQXdDLFNBQVM7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsNENBQTRDLG1FQUFTO0FBQ3JEO0FBQ0E7QUFDQSxXQUFXLDRFQUFjO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9nZXRGaWx0ZXJMb2dzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlRXZlbnRMb2dzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL3BhcnNlRXZlbnRMb2dzLmpzJztcbmltcG9ydCB7IGZvcm1hdExvZywgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtYXR0ZXJzL2xvZy5qcyc7XG4vKipcbiAqIFJldHVybnMgYSBsaXN0IG9mIGV2ZW50IGxvZ3Mgc2luY2UgdGhlIGZpbHRlciB3YXMgY3JlYXRlZC5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2dldEZpbHRlckxvZ3NcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfZ2V0RmlsdGVyTG9nc2BdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0ZmlsdGVybG9ncylcbiAqXG4gKiBgZ2V0RmlsdGVyTG9nc2AgaXMgb25seSBjb21wYXRpYmxlIHdpdGggKipldmVudCBmaWx0ZXJzKiouXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIEdldEZpbHRlckxvZ3NQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQSBsaXN0IG9mIGV2ZW50IGxvZ3MuIHtAbGluayBHZXRGaWx0ZXJMb2dzUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwLCBwYXJzZUFiaUl0ZW0gfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgY3JlYXRlRXZlbnRGaWx0ZXIsIGdldEZpbHRlckxvZ3MgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgZmlsdGVyID0gYXdhaXQgY3JlYXRlRXZlbnRGaWx0ZXIoY2xpZW50LCB7XG4gKiAgIGFkZHJlc3M6ICcweGEwYjg2OTkxYzYyMThiMzZjMWQxOWQ0YTJlOWViMGNlMzYwNmViNDgnLFxuICogICBldmVudDogcGFyc2VBYmlJdGVtKCdldmVudCBUcmFuc2ZlcihhZGRyZXNzIGluZGV4ZWQsIGFkZHJlc3MgaW5kZXhlZCwgdWludDI1NiknKSxcbiAqIH0pXG4gKiBjb25zdCBsb2dzID0gYXdhaXQgZ2V0RmlsdGVyTG9ncyhjbGllbnQsIHsgZmlsdGVyIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRGaWx0ZXJMb2dzKF9jbGllbnQsIHsgZmlsdGVyLCB9KSB7XG4gICAgY29uc3Qgc3RyaWN0ID0gZmlsdGVyLnN0cmljdCA/PyBmYWxzZTtcbiAgICBjb25zdCBsb2dzID0gYXdhaXQgZmlsdGVyLnJlcXVlc3Qoe1xuICAgICAgICBtZXRob2Q6ICdldGhfZ2V0RmlsdGVyTG9ncycsXG4gICAgICAgIHBhcmFtczogW2ZpbHRlci5pZF0sXG4gICAgfSk7XG4gICAgY29uc3QgZm9ybWF0dGVkTG9ncyA9IGxvZ3MubWFwKChsb2cpID0+IGZvcm1hdExvZyhsb2cpKTtcbiAgICBpZiAoIWZpbHRlci5hYmkpXG4gICAgICAgIHJldHVybiBmb3JtYXR0ZWRMb2dzO1xuICAgIHJldHVybiBwYXJzZUV2ZW50TG9ncyh7XG4gICAgICAgIGFiaTogZmlsdGVyLmFiaSxcbiAgICAgICAgbG9nczogZm9ybWF0dGVkTG9ncyxcbiAgICAgICAgc3RyaWN0LFxuICAgIH0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0RmlsdGVyTG9ncy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterLogs.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getGasPrice.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getGasPrice.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getGasPrice: () => (/* binding */ getGasPrice)\n/* harmony export */ });\n/**\n * Returns the current price of gas (in wei).\n *\n * - Docs: https://viem.sh/docs/actions/public/getGasPrice\n * - JSON-RPC Methods: [`eth_gasPrice`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gasprice)\n *\n * @param client - Client to use\n * @returns The gas price (in wei). {@link GetGasPriceReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getGasPrice } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const gasPrice = await getGasPrice(client)\n */\nasync function getGasPrice(client) {\n const gasPrice = await client.request({\n method: 'eth_gasPrice',\n });\n return BigInt(gasPrice);\n}\n//# sourceMappingURL=getGasPrice.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0R2FzUHJpY2UuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUNBQXFDO0FBQ3JDO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxjQUFjO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9nZXRHYXNQcmljZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJldHVybnMgdGhlIGN1cnJlbnQgcHJpY2Ugb2YgZ2FzIChpbiB3ZWkpLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0R2FzUHJpY2VcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfZ2FzUHJpY2VgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dhc3ByaWNlKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcmV0dXJucyBUaGUgZ2FzIHByaWNlIChpbiB3ZWkpLiB7QGxpbmsgR2V0R2FzUHJpY2VSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgZ2V0R2FzUHJpY2UgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgZ2FzUHJpY2UgPSBhd2FpdCBnZXRHYXNQcmljZShjbGllbnQpXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRHYXNQcmljZShjbGllbnQpIHtcbiAgICBjb25zdCBnYXNQcmljZSA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX2dhc1ByaWNlJyxcbiAgICB9KTtcbiAgICByZXR1cm4gQmlnSW50KGdhc1ByaWNlKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldEdhc1ByaWNlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getGasPrice.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getLogs.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getLogs.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getLogs: () => (/* binding */ getLogs)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/abi/encodeEventTopics.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeEventTopics.js\");\n/* harmony import */ var _utils_abi_parseEventLogs_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/abi/parseEventLogs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/parseEventLogs.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/formatters/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/log.js\");\n\n\n\n\n/**\n * Returns a list of event logs matching the provided parameters.\n *\n * - Docs: https://viem.sh/docs/actions/public/getLogs\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/logs_event-logs\n * - JSON-RPC Methods: [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs)\n *\n * @param client - Client to use\n * @param parameters - {@link GetLogsParameters}\n * @returns A list of event logs. {@link GetLogsReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbiItem } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getLogs } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const logs = await getLogs(client)\n */\nasync function getLogs(client, { address, blockHash, fromBlock, toBlock, event, events: events_, args, strict: strict_, } = {}) {\n const strict = strict_ ?? false;\n const events = events_ ?? (event ? [event] : undefined);\n let topics = [];\n if (events) {\n const encoded = events.flatMap((event) => (0,_utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_0__.encodeEventTopics)({\n abi: [event],\n eventName: event.name,\n args: events_ ? undefined : args,\n }));\n // TODO: Clean up type casting\n topics = [encoded];\n if (event)\n topics = topics[0];\n }\n let logs;\n if (blockHash) {\n logs = await client.request({\n method: 'eth_getLogs',\n params: [{ address, topics, blockHash }],\n });\n }\n else {\n logs = await client.request({\n method: 'eth_getLogs',\n params: [\n {\n address,\n topics,\n fromBlock: typeof fromBlock === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(fromBlock) : fromBlock,\n toBlock: typeof toBlock === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(toBlock) : toBlock,\n },\n ],\n });\n }\n const formattedLogs = logs.map((log) => (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_2__.formatLog)(log));\n if (!events)\n return formattedLogs;\n return (0,_utils_abi_parseEventLogs_js__WEBPACK_IMPORTED_MODULE_3__.parseEventLogs)({\n abi: events,\n args: args,\n logs: formattedLogs,\n strict,\n });\n}\n//# sourceMappingURL=getLogs.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0TG9ncy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUEwRTtBQUNQO0FBQ047QUFDRjtBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLG1DQUFtQztBQUNuQztBQUNBO0FBQ0EsWUFBWSx5Q0FBeUM7QUFDckQsWUFBWSxVQUFVO0FBQ3RCLFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ08saUNBQWlDLHlGQUF5RixJQUFJO0FBQ3JJO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtELGtGQUFpQjtBQUNuRTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLDRCQUE0QjtBQUNuRCxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtEQUErRCxxRUFBVztBQUMxRSwyREFBMkQscUVBQVc7QUFDdEUsaUJBQWlCO0FBQ2pCO0FBQ0EsU0FBUztBQUNUO0FBQ0EsNENBQTRDLG1FQUFTO0FBQ3JEO0FBQ0E7QUFDQSxXQUFXLDRFQUFjO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldExvZ3MuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZW5jb2RlRXZlbnRUb3BpY3MsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2VuY29kZUV2ZW50VG9waWNzLmpzJztcbmltcG9ydCB7IHBhcnNlRXZlbnRMb2dzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL3BhcnNlRXZlbnRMb2dzLmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4LCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGZvcm1hdExvZywgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtYXR0ZXJzL2xvZy5qcyc7XG4vKipcbiAqIFJldHVybnMgYSBsaXN0IG9mIGV2ZW50IGxvZ3MgbWF0Y2hpbmcgdGhlIHByb3ZpZGVkIHBhcmFtZXRlcnMuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9nZXRMb2dzXG4gKiAtIEV4YW1wbGVzOiBodHRwczovL3N0YWNrYmxpdHouY29tL2dpdGh1Yi93ZXZtL3ZpZW0vdHJlZS9tYWluL2V4YW1wbGVzL2xvZ3NfZXZlbnQtbG9nc1xuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYGV0aF9nZXRMb2dzYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9nZXRsb2dzKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRMb2dzUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIEEgbGlzdCBvZiBldmVudCBsb2dzLiB7QGxpbmsgR2V0TG9nc1JldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgcGFyc2VBYmlJdGVtIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldExvZ3MgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgbG9ncyA9IGF3YWl0IGdldExvZ3MoY2xpZW50KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TG9ncyhjbGllbnQsIHsgYWRkcmVzcywgYmxvY2tIYXNoLCBmcm9tQmxvY2ssIHRvQmxvY2ssIGV2ZW50LCBldmVudHM6IGV2ZW50c18sIGFyZ3MsIHN0cmljdDogc3RyaWN0XywgfSA9IHt9KSB7XG4gICAgY29uc3Qgc3RyaWN0ID0gc3RyaWN0XyA/PyBmYWxzZTtcbiAgICBjb25zdCBldmVudHMgPSBldmVudHNfID8/IChldmVudCA/IFtldmVudF0gOiB1bmRlZmluZWQpO1xuICAgIGxldCB0b3BpY3MgPSBbXTtcbiAgICBpZiAoZXZlbnRzKSB7XG4gICAgICAgIGNvbnN0IGVuY29kZWQgPSBldmVudHMuZmxhdE1hcCgoZXZlbnQpID0+IGVuY29kZUV2ZW50VG9waWNzKHtcbiAgICAgICAgICAgIGFiaTogW2V2ZW50XSxcbiAgICAgICAgICAgIGV2ZW50TmFtZTogZXZlbnQubmFtZSxcbiAgICAgICAgICAgIGFyZ3M6IGV2ZW50c18gPyB1bmRlZmluZWQgOiBhcmdzLFxuICAgICAgICB9KSk7XG4gICAgICAgIC8vIFRPRE86IENsZWFuIHVwIHR5cGUgY2FzdGluZ1xuICAgICAgICB0b3BpY3MgPSBbZW5jb2RlZF07XG4gICAgICAgIGlmIChldmVudClcbiAgICAgICAgICAgIHRvcGljcyA9IHRvcGljc1swXTtcbiAgICB9XG4gICAgbGV0IGxvZ3M7XG4gICAgaWYgKGJsb2NrSGFzaCkge1xuICAgICAgICBsb2dzID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnZXRoX2dldExvZ3MnLFxuICAgICAgICAgICAgcGFyYW1zOiBbeyBhZGRyZXNzLCB0b3BpY3MsIGJsb2NrSGFzaCB9XSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBsb2dzID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICAgICAgbWV0aG9kOiAnZXRoX2dldExvZ3MnLFxuICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICB0b3BpY3MsXG4gICAgICAgICAgICAgICAgICAgIGZyb21CbG9jazogdHlwZW9mIGZyb21CbG9jayA9PT0gJ2JpZ2ludCcgPyBudW1iZXJUb0hleChmcm9tQmxvY2spIDogZnJvbUJsb2NrLFxuICAgICAgICAgICAgICAgICAgICB0b0Jsb2NrOiB0eXBlb2YgdG9CbG9jayA9PT0gJ2JpZ2ludCcgPyBudW1iZXJUb0hleCh0b0Jsb2NrKSA6IHRvQmxvY2ssXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBmb3JtYXR0ZWRMb2dzID0gbG9ncy5tYXAoKGxvZykgPT4gZm9ybWF0TG9nKGxvZykpO1xuICAgIGlmICghZXZlbnRzKVxuICAgICAgICByZXR1cm4gZm9ybWF0dGVkTG9ncztcbiAgICByZXR1cm4gcGFyc2VFdmVudExvZ3Moe1xuICAgICAgICBhYmk6IGV2ZW50cyxcbiAgICAgICAgYXJnczogYXJncyxcbiAgICAgICAgbG9nczogZm9ybWF0dGVkTG9ncyxcbiAgICAgICAgc3RyaWN0LFxuICAgIH0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0TG9ncy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getLogs.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getProof.js": /*!***********************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getProof.js ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getProof: () => (/* binding */ getProof)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_formatters_proof_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/formatters/proof.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/proof.js\");\n\n\n/**\n * Returns the account and storage values of the specified account including the Merkle-proof.\n *\n * - Docs: https://viem.sh/docs/actions/public/getProof\n * - JSON-RPC Methods:\n * - Calls [`eth_getProof`](https://eips.ethereum.org/EIPS/eip-1186)\n *\n * @param client - Client to use\n * @param parameters - {@link GetProofParameters}\n * @returns Proof data. {@link GetProofReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getProof } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const block = await getProof(client, {\n * address: '0x...',\n * storageKeys: ['0x...'],\n * })\n */\nasync function getProof(client, { address, blockNumber, blockTag: blockTag_, storageKeys, }) {\n const blockTag = blockTag_ ?? 'latest';\n const blockNumberHex = blockNumber !== undefined ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n const proof = await client.request({\n method: 'eth_getProof',\n params: [address, storageKeys, blockNumberHex || blockTag],\n });\n return (0,_utils_formatters_proof_js__WEBPACK_IMPORTED_MODULE_1__.formatProof)(proof);\n}\n//# sourceMappingURL=getProof.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0UHJvb2YuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQTZEO0FBQ0U7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4Qix5QkFBeUI7QUFDekI7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLFdBQVc7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ08sa0NBQWtDLHlEQUF5RDtBQUNsRztBQUNBLHVEQUF1RCxxRUFBVztBQUNsRTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsV0FBVyx1RUFBVztBQUN0QjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9nZXRQcm9vZi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBmb3JtYXRQcm9vZiwgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtYXR0ZXJzL3Byb29mLmpzJztcbi8qKlxuICogUmV0dXJucyB0aGUgYWNjb3VudCBhbmQgc3RvcmFnZSB2YWx1ZXMgb2YgdGhlIHNwZWNpZmllZCBhY2NvdW50IGluY2x1ZGluZyB0aGUgTWVya2xlLXByb29mLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0UHJvb2ZcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczpcbiAqICAgLSBDYWxscyBbYGV0aF9nZXRQcm9vZmBdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtMTE4NilcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0UHJvb2ZQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgUHJvb2YgZGF0YS4ge0BsaW5rIEdldFByb29mUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldFByb29mIH0gZnJvbSAndmllbS9wdWJsaWMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGJsb2NrID0gYXdhaXQgZ2V0UHJvb2YoY2xpZW50LCB7XG4gKiAgYWRkcmVzczogJzB4Li4uJyxcbiAqICBzdG9yYWdlS2V5czogWycweC4uLiddLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFByb29mKGNsaWVudCwgeyBhZGRyZXNzLCBibG9ja051bWJlciwgYmxvY2tUYWc6IGJsb2NrVGFnXywgc3RvcmFnZUtleXMsIH0pIHtcbiAgICBjb25zdCBibG9ja1RhZyA9IGJsb2NrVGFnXyA/PyAnbGF0ZXN0JztcbiAgICBjb25zdCBibG9ja051bWJlckhleCA9IGJsb2NrTnVtYmVyICE9PSB1bmRlZmluZWQgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgcHJvb2YgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9nZXRQcm9vZicsXG4gICAgICAgIHBhcmFtczogW2FkZHJlc3MsIHN0b3JhZ2VLZXlzLCBibG9ja051bWJlckhleCB8fCBibG9ja1RhZ10sXG4gICAgfSk7XG4gICAgcmV0dXJuIGZvcm1hdFByb29mKHByb29mKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldFByb29mLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getProof.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getStorageAt.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getStorageAt.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getStorageAt: () => (/* binding */ getStorageAt)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n/**\n * Returns the value from a storage slot at a given address.\n *\n * - Docs: https://viem.sh/docs/contract/getStorageAt\n * - JSON-RPC Methods: [`eth_getStorageAt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getstorageat)\n *\n * @param client - Client to use\n * @param parameters - {@link GetStorageAtParameters}\n * @returns The value of the storage slot. {@link GetStorageAtReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getStorageAt } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const code = await getStorageAt(client, {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * slot: toHex(0),\n * })\n */\nasync function getStorageAt(client, { address, blockNumber, blockTag = 'latest', slot }) {\n const blockNumberHex = blockNumber !== undefined ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n const data = await client.request({\n method: 'eth_getStorageAt',\n params: [address, slot, blockNumberHex || blockTag],\n });\n return data;\n}\n//# sourceMappingURL=getStorageAt.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0U3RvcmFnZUF0LmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQTZEO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDRDQUE0QztBQUM1QztBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTyxzQ0FBc0MsaURBQWlEO0FBQzlGLHVEQUF1RCxxRUFBVztBQUNsRTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9nZXRTdG9yYWdlQXQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbnVtYmVyVG9IZXgsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5jb2RpbmcvdG9IZXguanMnO1xuLyoqXG4gKiBSZXR1cm5zIHRoZSB2YWx1ZSBmcm9tIGEgc3RvcmFnZSBzbG90IGF0IGEgZ2l2ZW4gYWRkcmVzcy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L2dldFN0b3JhZ2VBdFxuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYGV0aF9nZXRTdG9yYWdlQXRgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldHN0b3JhZ2VhdClcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0U3RvcmFnZUF0UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgc3RvcmFnZSBzbG90LiB7QGxpbmsgR2V0U3RvcmFnZUF0UmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldFN0b3JhZ2VBdCB9IGZyb20gJ3ZpZW0vY29udHJhY3QnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGNvZGUgPSBhd2FpdCBnZXRTdG9yYWdlQXQoY2xpZW50LCB7XG4gKiAgIGFkZHJlc3M6ICcweEZCQTM5MTJDYTA0ZGQ0NThjODQzZTJFRTA4OTY3ZkMwNGYzNTc5YzInLFxuICogICBzbG90OiB0b0hleCgwKSxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRTdG9yYWdlQXQoY2xpZW50LCB7IGFkZHJlc3MsIGJsb2NrTnVtYmVyLCBibG9ja1RhZyA9ICdsYXRlc3QnLCBzbG90IH0pIHtcbiAgICBjb25zdCBibG9ja051bWJlckhleCA9IGJsb2NrTnVtYmVyICE9PSB1bmRlZmluZWQgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX2dldFN0b3JhZ2VBdCcsXG4gICAgICAgIHBhcmFtczogW2FkZHJlc3MsIHNsb3QsIGJsb2NrTnVtYmVySGV4IHx8IGJsb2NrVGFnXSxcbiAgICB9KTtcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldFN0b3JhZ2VBdC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getStorageAt.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransaction.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getTransaction.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getTransaction: () => (/* binding */ getTransaction)\n/* harmony export */ });\n/* harmony import */ var _errors_transaction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_formatters_transaction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/formatters/transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transaction.js\");\n\n\n\n/**\n * Returns information about a [Transaction](https://viem.sh/docs/glossary/terms#transaction) given a hash or block identifier.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransaction\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n * - JSON-RPC Methods: [`eth_getTransactionByHash`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionByHash)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionParameters}\n * @returns The transaction information. {@link GetTransactionReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransaction } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const transaction = await getTransaction(client, {\n * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nasync function getTransaction(client, { blockHash, blockNumber, blockTag: blockTag_, hash, index, }) {\n const blockTag = blockTag_ || 'latest';\n const blockNumberHex = blockNumber !== undefined ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : undefined;\n let transaction = null;\n if (hash) {\n transaction = await client.request({\n method: 'eth_getTransactionByHash',\n params: [hash],\n }, { dedupe: true });\n }\n else if (blockHash) {\n transaction = await client.request({\n method: 'eth_getTransactionByBlockHashAndIndex',\n params: [blockHash, (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(index)],\n }, { dedupe: true });\n }\n else if (blockNumberHex || blockTag) {\n transaction = await client.request({\n method: 'eth_getTransactionByBlockNumberAndIndex',\n params: [blockNumberHex || blockTag, (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(index)],\n }, { dedupe: Boolean(blockNumberHex) });\n }\n if (!transaction)\n throw new _errors_transaction_js__WEBPACK_IMPORTED_MODULE_1__.TransactionNotFoundError({\n blockHash,\n blockNumber,\n blockTag,\n hash,\n index,\n });\n const format = client.chain?.formatters?.transaction?.format || _utils_formatters_transaction_js__WEBPACK_IMPORTED_MODULE_2__.formatTransaction;\n return format(transaction, 'getTransaction');\n}\n//# sourceMappingURL=getTransaction.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0VHJhbnNhY3Rpb24uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF3RTtBQUNYO0FBQ2M7QUFDM0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QiwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLGlCQUFpQjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ08sd0NBQXdDLDJEQUEyRDtBQUMxRztBQUNBLHVEQUF1RCxxRUFBVztBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUyxJQUFJLGNBQWM7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MscUVBQVc7QUFDM0MsU0FBUyxJQUFJLGNBQWM7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpREFBaUQscUVBQVc7QUFDNUQsU0FBUyxJQUFJLGlDQUFpQztBQUM5QztBQUNBO0FBQ0Esa0JBQWtCLDRFQUF3QjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULG9FQUFvRSwrRUFBaUI7QUFDckY7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9nZXRUcmFuc2FjdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbk5vdEZvdW5kRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL3RyYW5zYWN0aW9uLmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4LCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGZvcm1hdFRyYW5zYWN0aW9uLCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvdHJhbnNhY3Rpb24uanMnO1xuLyoqXG4gKiBSZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgW1RyYW5zYWN0aW9uXShodHRwczovL3ZpZW0uc2gvZG9jcy9nbG9zc2FyeS90ZXJtcyN0cmFuc2FjdGlvbikgZ2l2ZW4gYSBoYXNoIG9yIGJsb2NrIGlkZW50aWZpZXIuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9nZXRUcmFuc2FjdGlvblxuICogLSBFeGFtcGxlOiBodHRwczovL3N0YWNrYmxpdHouY29tL2dpdGh1Yi93ZXZtL3ZpZW0vdHJlZS9tYWluL2V4YW1wbGVzL3RyYW5zYWN0aW9uc19mZXRjaGluZy10cmFuc2FjdGlvbnNcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfZ2V0VHJhbnNhY3Rpb25CeUhhc2hgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldFRyYW5zYWN0aW9uQnlIYXNoKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRUcmFuc2FjdGlvblBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgdHJhbnNhY3Rpb24gaW5mb3JtYXRpb24uIHtAbGluayBHZXRUcmFuc2FjdGlvblJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRUcmFuc2FjdGlvbiB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCB0cmFuc2FjdGlvbiA9IGF3YWl0IGdldFRyYW5zYWN0aW9uKGNsaWVudCwge1xuICogICBoYXNoOiAnMHg0Y2E3ZWU2NTJkNTc2NzhmMjZlODg3YzE0OWFiMDczNWY0MWRlMzdiY2FkNThjOWY2ZDNlZDU4MjRmMTViNzRkJyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRUcmFuc2FjdGlvbihjbGllbnQsIHsgYmxvY2tIYXNoLCBibG9ja051bWJlciwgYmxvY2tUYWc6IGJsb2NrVGFnXywgaGFzaCwgaW5kZXgsIH0pIHtcbiAgICBjb25zdCBibG9ja1RhZyA9IGJsb2NrVGFnXyB8fCAnbGF0ZXN0JztcbiAgICBjb25zdCBibG9ja051bWJlckhleCA9IGJsb2NrTnVtYmVyICE9PSB1bmRlZmluZWQgPyBudW1iZXJUb0hleChibG9ja051bWJlcikgOiB1bmRlZmluZWQ7XG4gICAgbGV0IHRyYW5zYWN0aW9uID0gbnVsbDtcbiAgICBpZiAoaGFzaCkge1xuICAgICAgICB0cmFuc2FjdGlvbiA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogJ2V0aF9nZXRUcmFuc2FjdGlvbkJ5SGFzaCcsXG4gICAgICAgICAgICBwYXJhbXM6IFtoYXNoXSxcbiAgICAgICAgfSwgeyBkZWR1cGU6IHRydWUgfSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGJsb2NrSGFzaCkge1xuICAgICAgICB0cmFuc2FjdGlvbiA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogJ2V0aF9nZXRUcmFuc2FjdGlvbkJ5QmxvY2tIYXNoQW5kSW5kZXgnLFxuICAgICAgICAgICAgcGFyYW1zOiBbYmxvY2tIYXNoLCBudW1iZXJUb0hleChpbmRleCldLFxuICAgICAgICB9LCB7IGRlZHVwZTogdHJ1ZSB9KTtcbiAgICB9XG4gICAgZWxzZSBpZiAoYmxvY2tOdW1iZXJIZXggfHwgYmxvY2tUYWcpIHtcbiAgICAgICAgdHJhbnNhY3Rpb24gPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfZ2V0VHJhbnNhY3Rpb25CeUJsb2NrTnVtYmVyQW5kSW5kZXgnLFxuICAgICAgICAgICAgcGFyYW1zOiBbYmxvY2tOdW1iZXJIZXggfHwgYmxvY2tUYWcsIG51bWJlclRvSGV4KGluZGV4KV0sXG4gICAgICAgIH0sIHsgZGVkdXBlOiBCb29sZWFuKGJsb2NrTnVtYmVySGV4KSB9KTtcbiAgICB9XG4gICAgaWYgKCF0cmFuc2FjdGlvbilcbiAgICAgICAgdGhyb3cgbmV3IFRyYW5zYWN0aW9uTm90Rm91bmRFcnJvcih7XG4gICAgICAgICAgICBibG9ja0hhc2gsXG4gICAgICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgICAgIGJsb2NrVGFnLFxuICAgICAgICAgICAgaGFzaCxcbiAgICAgICAgICAgIGluZGV4LFxuICAgICAgICB9KTtcbiAgICBjb25zdCBmb3JtYXQgPSBjbGllbnQuY2hhaW4/LmZvcm1hdHRlcnM/LnRyYW5zYWN0aW9uPy5mb3JtYXQgfHwgZm9ybWF0VHJhbnNhY3Rpb247XG4gICAgcmV0dXJuIGZvcm1hdCh0cmFuc2FjdGlvbiwgJ2dldFRyYW5zYWN0aW9uJyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRUcmFuc2FjdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransaction.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionConfirmations.js": /*!******************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getTransactionConfirmations.js ***! \******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getTransactionConfirmations: () => (/* binding */ getTransactionConfirmations)\n/* harmony export */ });\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getBlockNumber.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockNumber.js\");\n/* harmony import */ var _getTransaction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getTransaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransaction.js\");\n\n\n\n/**\n * Returns the number of blocks passed (confirmations) since the transaction was processed on a block.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransactionConfirmations\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n * - JSON-RPC Methods: [`eth_getTransactionConfirmations`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionConfirmations)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionConfirmationsParameters}\n * @returns The number of blocks passed since the transaction was processed. If confirmations is 0, then the Transaction has not been confirmed & processed yet. {@link GetTransactionConfirmationsReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransactionConfirmations } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const confirmations = await getTransactionConfirmations(client, {\n * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nasync function getTransactionConfirmations(client, { hash, transactionReceipt }) {\n const [blockNumber, transaction] = await Promise.all([\n (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__.getAction)(client, _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_1__.getBlockNumber, 'getBlockNumber')({}),\n hash\n ? (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__.getAction)(client, _getTransaction_js__WEBPACK_IMPORTED_MODULE_2__.getTransaction, 'getTransaction')({ hash })\n : undefined,\n ]);\n const transactionBlockNumber = transactionReceipt?.blockNumber || transaction?.blockNumber;\n if (!transactionBlockNumber)\n return 0n;\n return blockNumber - transactionBlockNumber + 1n;\n}\n//# sourceMappingURL=getTransactionConfirmations.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0VHJhbnNhY3Rpb25Db25maXJtYXRpb25zLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBcUQ7QUFDQztBQUNBO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsa0tBQWtLO0FBQ2xLO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSw4QkFBOEI7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPLHFEQUFxRCwwQkFBMEI7QUFDdEY7QUFDQSxRQUFRLDhEQUFTLFNBQVMsOERBQWMsc0JBQXNCO0FBQzlEO0FBQ0EsY0FBYyw4REFBUyxTQUFTLDhEQUFjLHNCQUFzQixNQUFNO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9ucy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgZ2V0QmxvY2tOdW1iZXIsIH0gZnJvbSAnLi9nZXRCbG9ja051bWJlci5qcyc7XG5pbXBvcnQgeyBnZXRUcmFuc2FjdGlvbiwgfSBmcm9tICcuL2dldFRyYW5zYWN0aW9uLmpzJztcbi8qKlxuICogUmV0dXJucyB0aGUgbnVtYmVyIG9mIGJsb2NrcyBwYXNzZWQgKGNvbmZpcm1hdGlvbnMpIHNpbmNlIHRoZSB0cmFuc2FjdGlvbiB3YXMgcHJvY2Vzc2VkIG9uIGEgYmxvY2suXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9nZXRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvbnNcbiAqIC0gRXhhbXBsZTogaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9naXRodWIvd2V2bS92aWVtL3RyZWUvbWFpbi9leGFtcGxlcy90cmFuc2FjdGlvbnNfZmV0Y2hpbmctdHJhbnNhY3Rpb25zXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6IFtgZXRoX2dldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uc2BdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0VHJhbnNhY3Rpb25Db25maXJtYXRpb25zKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBHZXRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvbnNQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIG51bWJlciBvZiBibG9ja3MgcGFzc2VkIHNpbmNlIHRoZSB0cmFuc2FjdGlvbiB3YXMgcHJvY2Vzc2VkLiBJZiBjb25maXJtYXRpb25zIGlzIDAsIHRoZW4gdGhlIFRyYW5zYWN0aW9uIGhhcyBub3QgYmVlbiBjb25maXJtZWQgJiBwcm9jZXNzZWQgeWV0LiB7QGxpbmsgR2V0VHJhbnNhY3Rpb25Db25maXJtYXRpb25zUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9ucyB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBjb25maXJtYXRpb25zID0gYXdhaXQgZ2V0VHJhbnNhY3Rpb25Db25maXJtYXRpb25zKGNsaWVudCwge1xuICogICBoYXNoOiAnMHg0Y2E3ZWU2NTJkNTc2NzhmMjZlODg3YzE0OWFiMDczNWY0MWRlMzdiY2FkNThjOWY2ZDNlZDU4MjRmMTViNzRkJyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvbnMoY2xpZW50LCB7IGhhc2gsIHRyYW5zYWN0aW9uUmVjZWlwdCB9KSB7XG4gICAgY29uc3QgW2Jsb2NrTnVtYmVyLCB0cmFuc2FjdGlvbl0gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAgIGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrTnVtYmVyLCAnZ2V0QmxvY2tOdW1iZXInKSh7fSksXG4gICAgICAgIGhhc2hcbiAgICAgICAgICAgID8gZ2V0QWN0aW9uKGNsaWVudCwgZ2V0VHJhbnNhY3Rpb24sICdnZXRUcmFuc2FjdGlvbicpKHsgaGFzaCB9KVxuICAgICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgXSk7XG4gICAgY29uc3QgdHJhbnNhY3Rpb25CbG9ja051bWJlciA9IHRyYW5zYWN0aW9uUmVjZWlwdD8uYmxvY2tOdW1iZXIgfHwgdHJhbnNhY3Rpb24/LmJsb2NrTnVtYmVyO1xuICAgIGlmICghdHJhbnNhY3Rpb25CbG9ja051bWJlcilcbiAgICAgICAgcmV0dXJuIDBuO1xuICAgIHJldHVybiBibG9ja051bWJlciAtIHRyYW5zYWN0aW9uQmxvY2tOdW1iZXIgKyAxbjtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9ucy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionConfirmations.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionCount.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getTransactionCount.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getTransactionCount: () => (/* binding */ getTransactionCount)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n/**\n * Returns the number of [Transactions](https://viem.sh/docs/glossary/terms#transaction) an Account has sent.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransactionCount\n * - JSON-RPC Methods: [`eth_getTransactionCount`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gettransactioncount)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionCountParameters}\n * @returns The number of transactions an account has sent. {@link GetTransactionCountReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransactionCount } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const transactionCount = await getTransactionCount(client, {\n * address: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n */\nasync function getTransactionCount(client, { address, blockTag = 'latest', blockNumber }) {\n const count = await client.request({\n method: 'eth_getTransactionCount',\n params: [\n address,\n typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(blockNumber) : blockTag,\n ],\n }, {\n dedupe: Boolean(blockNumber),\n });\n return (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.hexToNumber)(count);\n}\n//# sourceMappingURL=getTransactionCount.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0VHJhbnNhY3Rpb25Db3VudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBK0Q7QUFDRjtBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4Qiw2REFBNkQ7QUFDN0Q7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksVUFBVTtBQUN0QixZQUFZLHNCQUFzQjtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ08sNkNBQTZDLDJDQUEyQztBQUMvRjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhDQUE4QyxxRUFBVztBQUN6RDtBQUNBLEtBQUs7QUFDTDtBQUNBLEtBQUs7QUFDTCxXQUFXLHVFQUFXO0FBQ3RCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldFRyYW5zYWN0aW9uQ291bnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGV4VG9OdW1iZXIsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5jb2RpbmcvZnJvbUhleC5qcyc7XG5pbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG4vKipcbiAqIFJldHVybnMgdGhlIG51bWJlciBvZiBbVHJhbnNhY3Rpb25zXShodHRwczovL3ZpZW0uc2gvZG9jcy9nbG9zc2FyeS90ZXJtcyN0cmFuc2FjdGlvbikgYW4gQWNjb3VudCBoYXMgc2VudC5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2dldFRyYW5zYWN0aW9uQ291bnRcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfZ2V0VHJhbnNhY3Rpb25Db3VudGBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0dHJhbnNhY3Rpb25jb3VudClcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0VHJhbnNhY3Rpb25Db3VudFBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgbnVtYmVyIG9mIHRyYW5zYWN0aW9ucyBhbiBhY2NvdW50IGhhcyBzZW50LiB7QGxpbmsgR2V0VHJhbnNhY3Rpb25Db3VudFJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBnZXRUcmFuc2FjdGlvbkNvdW50IH0gZnJvbSAndmllbS9wdWJsaWMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IHRyYW5zYWN0aW9uQ291bnQgPSBhd2FpdCBnZXRUcmFuc2FjdGlvbkNvdW50KGNsaWVudCwge1xuICogICBhZGRyZXNzOiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRUcmFuc2FjdGlvbkNvdW50KGNsaWVudCwgeyBhZGRyZXNzLCBibG9ja1RhZyA9ICdsYXRlc3QnLCBibG9ja051bWJlciB9KSB7XG4gICAgY29uc3QgY291bnQgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ2V0aF9nZXRUcmFuc2FjdGlvbkNvdW50JyxcbiAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgdHlwZW9mIGJsb2NrTnVtYmVyID09PSAnYmlnaW50JyA/IG51bWJlclRvSGV4KGJsb2NrTnVtYmVyKSA6IGJsb2NrVGFnLFxuICAgICAgICBdLFxuICAgIH0sIHtcbiAgICAgICAgZGVkdXBlOiBCb29sZWFuKGJsb2NrTnVtYmVyKSxcbiAgICB9KTtcbiAgICByZXR1cm4gaGV4VG9OdW1iZXIoY291bnQpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0VHJhbnNhY3Rpb25Db3VudC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionCount.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionReceipt.js": /*!************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/getTransactionReceipt.js ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getTransactionReceipt: () => (/* binding */ getTransactionReceipt)\n/* harmony export */ });\n/* harmony import */ var _errors_transaction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n/* harmony import */ var _utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/formatters/transactionReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionReceipt.js\");\n\n\n/**\n * Returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms#transaction-receipt) given a [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash.\n *\n * - Docs: https://viem.sh/docs/actions/public/getTransactionReceipt\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions\n * - JSON-RPC Methods: [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gettransactionreceipt)\n *\n * @param client - Client to use\n * @param parameters - {@link GetTransactionReceiptParameters}\n * @returns The transaction receipt. {@link GetTransactionReceiptReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getTransactionReceipt } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const transactionReceipt = await getTransactionReceipt(client, {\n * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nasync function getTransactionReceipt(client, { hash }) {\n const receipt = await client.request({\n method: 'eth_getTransactionReceipt',\n params: [hash],\n }, { dedupe: true });\n if (!receipt)\n throw new _errors_transaction_js__WEBPACK_IMPORTED_MODULE_0__.TransactionReceiptNotFoundError({ hash });\n const format = client.chain?.formatters?.transactionReceipt?.format ||\n _utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_1__.formatTransactionReceipt;\n return format(receipt, 'getTransactionReceipt');\n}\n//# sourceMappingURL=getTransactionReceipt.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvZ2V0VHJhbnNhY3Rpb25SZWNlaXB0LmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUErRTtBQUNVO0FBQ3pGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsc0NBQXNDO0FBQ3RDO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSx3QkFBd0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPLCtDQUErQyxNQUFNO0FBQzVEO0FBQ0E7QUFDQTtBQUNBLEtBQUssSUFBSSxjQUFjO0FBQ3ZCO0FBQ0Esa0JBQWtCLG1GQUErQixHQUFHLE1BQU07QUFDMUQ7QUFDQSxRQUFRLDZGQUF3QjtBQUNoQztBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL2dldFRyYW5zYWN0aW9uUmVjZWlwdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHROb3RGb3VuZEVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy90cmFuc2FjdGlvbi5qcyc7XG5pbXBvcnQgeyBmb3JtYXRUcmFuc2FjdGlvblJlY2VpcHQsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy90cmFuc2FjdGlvblJlY2VpcHQuanMnO1xuLyoqXG4gKiBSZXR1cm5zIHRoZSBbVHJhbnNhY3Rpb24gUmVjZWlwdF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZ2xvc3NhcnkvdGVybXMjdHJhbnNhY3Rpb24tcmVjZWlwdCkgZ2l2ZW4gYSBbVHJhbnNhY3Rpb25dKGh0dHBzOi8vdmllbS5zaC9kb2NzL2dsb3NzYXJ5L3Rlcm1zI3RyYW5zYWN0aW9uKSBoYXNoLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0VHJhbnNhY3Rpb25SZWNlaXB0XG4gKiAtIEV4YW1wbGU6IGh0dHBzOi8vc3RhY2tibGl0ei5jb20vZ2l0aHViL3dldm0vdmllbS90cmVlL21haW4vZXhhbXBsZXMvdHJhbnNhY3Rpb25zX2ZldGNoaW5nLXRyYW5zYWN0aW9uc1xuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYGV0aF9nZXRUcmFuc2FjdGlvblJlY2VpcHRgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldHRyYW5zYWN0aW9ucmVjZWlwdClcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgR2V0VHJhbnNhY3Rpb25SZWNlaXB0UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSB0cmFuc2FjdGlvbiByZWNlaXB0LiB7QGxpbmsgR2V0VHJhbnNhY3Rpb25SZWNlaXB0UmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldFRyYW5zYWN0aW9uUmVjZWlwdCB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCB0cmFuc2FjdGlvblJlY2VpcHQgPSBhd2FpdCBnZXRUcmFuc2FjdGlvblJlY2VpcHQoY2xpZW50LCB7XG4gKiAgIGhhc2g6ICcweDRjYTdlZTY1MmQ1NzY3OGYyNmU4ODdjMTQ5YWIwNzM1ZjQxZGUzN2JjYWQ1OGM5ZjZkM2VkNTgyNGYxNWI3NGQnLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFRyYW5zYWN0aW9uUmVjZWlwdChjbGllbnQsIHsgaGFzaCB9KSB7XG4gICAgY29uc3QgcmVjZWlwdCA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgbWV0aG9kOiAnZXRoX2dldFRyYW5zYWN0aW9uUmVjZWlwdCcsXG4gICAgICAgIHBhcmFtczogW2hhc2hdLFxuICAgIH0sIHsgZGVkdXBlOiB0cnVlIH0pO1xuICAgIGlmICghcmVjZWlwdClcbiAgICAgICAgdGhyb3cgbmV3IFRyYW5zYWN0aW9uUmVjZWlwdE5vdEZvdW5kRXJyb3IoeyBoYXNoIH0pO1xuICAgIGNvbnN0IGZvcm1hdCA9IGNsaWVudC5jaGFpbj8uZm9ybWF0dGVycz8udHJhbnNhY3Rpb25SZWNlaXB0Py5mb3JtYXQgfHxcbiAgICAgICAgZm9ybWF0VHJhbnNhY3Rpb25SZWNlaXB0O1xuICAgIHJldHVybiBmb3JtYXQocmVjZWlwdCwgJ2dldFRyYW5zYWN0aW9uUmVjZWlwdCcpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0VHJhbnNhY3Rpb25SZWNlaXB0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionReceipt.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/multicall.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/multicall.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ multicall: () => (/* binding */ multicall)\n/* harmony export */ });\n/* harmony import */ var _constants_abis_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../constants/abis.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var _constants_contracts_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../constants/contracts.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/contracts.js\");\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n/* harmony import */ var _utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/abi/decodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/chain/getChainContractAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js\");\n/* harmony import */ var _utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/errors/getContractError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getContractError.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _readContract_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Similar to [`readContract`](https://viem.sh/docs/contract/readContract), but batches up multiple functions on a contract in a single RPC call via the [`multicall3` contract](https://github.com/mds1/multicall).\n *\n * - Docs: https://viem.sh/docs/contract/multicall\n *\n * @param client - Client to use\n * @param parameters - {@link MulticallParameters}\n * @returns An array of results with accompanying status. {@link MulticallReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { multicall } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const abi = parseAbi([\n * 'function balanceOf(address) view returns (uint256)',\n * 'function totalSupply() view returns (uint256)',\n * ])\n * const results = await multicall(client, {\n * contracts: [\n * {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi,\n * functionName: 'balanceOf',\n * args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n * },\n * {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi,\n * functionName: 'totalSupply',\n * },\n * ],\n * })\n * // [{ result: 424122n, status: 'success' }, { result: 1000000n, status: 'success' }]\n */\nasync function multicall(client, parameters) {\n const { account, authorizationList, allowFailure = true, blockNumber, blockOverrides, blockTag, stateOverride, } = parameters;\n const contracts = parameters.contracts;\n const { batchSize = parameters.batchSize ?? 1024, deployless = parameters.deployless ?? false, } = typeof client.batch?.multicall === 'object' ? client.batch.multicall : {};\n const multicallAddress = (() => {\n if (parameters.multicallAddress)\n return parameters.multicallAddress;\n if (deployless)\n return null;\n if (client.chain) {\n return (0,_utils_chain_getChainContractAddress_js__WEBPACK_IMPORTED_MODULE_0__.getChainContractAddress)({\n blockNumber,\n chain: client.chain,\n contract: 'multicall3',\n });\n }\n throw new Error('client chain not configured. multicallAddress is required.');\n })();\n const chunkedCalls = [[]];\n let currentChunk = 0;\n let currentChunkSize = 0;\n for (let i = 0; i < contracts.length; i++) {\n const { abi, address, args, functionName } = contracts[i];\n try {\n const callData = (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_1__.encodeFunctionData)({ abi, args, functionName });\n currentChunkSize += (callData.length - 2) / 2;\n // Check to see if we need to create a new chunk.\n if (\n // Check if batching is enabled.\n batchSize > 0 &&\n // Check if the current size of the batch exceeds the size limit.\n currentChunkSize > batchSize &&\n // Check if the current chunk is not already empty.\n chunkedCalls[currentChunk].length > 0) {\n currentChunk++;\n currentChunkSize = (callData.length - 2) / 2;\n chunkedCalls[currentChunk] = [];\n }\n chunkedCalls[currentChunk] = [\n ...chunkedCalls[currentChunk],\n {\n allowFailure: true,\n callData,\n target: address,\n },\n ];\n }\n catch (err) {\n const error = (0,_utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_2__.getContractError)(err, {\n abi,\n address,\n args,\n docsPath: '/docs/contract/multicall',\n functionName,\n sender: account,\n });\n if (!allowFailure)\n throw error;\n chunkedCalls[currentChunk] = [\n ...chunkedCalls[currentChunk],\n {\n allowFailure: true,\n callData: '0x',\n target: address,\n },\n ];\n }\n }\n const aggregate3Results = await Promise.allSettled(chunkedCalls.map((calls) => (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _readContract_js__WEBPACK_IMPORTED_MODULE_4__.readContract, 'readContract')({\n ...(multicallAddress === null\n ? { code: _constants_contracts_js__WEBPACK_IMPORTED_MODULE_5__.multicall3Bytecode }\n : { address: multicallAddress }),\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_6__.multicall3Abi,\n account,\n args: [calls],\n authorizationList,\n blockNumber,\n blockOverrides,\n blockTag,\n functionName: 'aggregate3',\n stateOverride,\n })));\n const results = [];\n for (let i = 0; i < aggregate3Results.length; i++) {\n const result = aggregate3Results[i];\n // If an error occurred in a `readContract` invocation (ie. network error),\n // then append the failure reason to each contract result.\n if (result.status === 'rejected') {\n if (!allowFailure)\n throw result.reason;\n for (let j = 0; j < chunkedCalls[i].length; j++) {\n results.push({\n status: 'failure',\n error: result.reason,\n result: undefined,\n });\n }\n continue;\n }\n // If the `readContract` call was successful, then decode the results.\n const aggregate3Result = result.value;\n for (let j = 0; j < aggregate3Result.length; j++) {\n // Extract the response from `readContract`\n const { returnData, success } = aggregate3Result[j];\n // Extract the request call data from the original call.\n const { callData } = chunkedCalls[i][j];\n // Extract the contract config for this call from the `contracts` argument\n // for decoding.\n const { abi, address, functionName, args } = contracts[results.length];\n try {\n if (callData === '0x')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_7__.AbiDecodingZeroDataError();\n if (!success)\n throw new _errors_contract_js__WEBPACK_IMPORTED_MODULE_8__.RawContractError({ data: returnData });\n const result = (0,_utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_9__.decodeFunctionResult)({\n abi,\n args,\n data: returnData,\n functionName,\n });\n results.push(allowFailure ? { result, status: 'success' } : result);\n }\n catch (err) {\n const error = (0,_utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_2__.getContractError)(err, {\n abi,\n address,\n args,\n docsPath: '/docs/contract/multicall',\n functionName,\n });\n if (!allowFailure)\n throw error;\n results.push({ error, result: undefined, status: 'failure' });\n }\n }\n }\n if (results.length !== contracts.length)\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_10__.BaseError('multicall results mismatch');\n return results;\n}\n//# sourceMappingURL=multicall.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvbXVsdGljYWxsLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUF3RDtBQUNVO0FBQ0g7QUFDZDtBQUNXO0FBQ29CO0FBQ0o7QUFDWTtBQUNiO0FBQ3RCO0FBQ0o7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLDJEQUEyRDtBQUMzRDtBQUNBO0FBQ0EsWUFBWSxxQ0FBcUM7QUFDakQsWUFBWSxVQUFVO0FBQ3RCLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKLFNBQVMsb0NBQW9DLElBQUkscUNBQXFDO0FBQ3RGO0FBQ087QUFDUCxZQUFZLHlHQUF5RztBQUNySDtBQUNBLFlBQVkseUZBQXlGO0FBQ3JHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixnR0FBdUI7QUFDMUM7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHNCQUFzQjtBQUMxQyxnQkFBZ0IsbUNBQW1DO0FBQ25EO0FBQ0EsNkJBQTZCLG9GQUFrQixHQUFHLHlCQUF5QjtBQUMzRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsbUZBQWdCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLG1GQUFtRiw4REFBUyxTQUFTLDBEQUFZO0FBQ2pIO0FBQ0EsZ0JBQWdCLE1BQU0sdUVBQWtCO0FBQ3hDLGdCQUFnQiwyQkFBMkI7QUFDM0MsYUFBYSw2REFBYTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0Esb0JBQW9CLDhCQUE4QjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsNEJBQTRCO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsNkJBQTZCO0FBQ3JEO0FBQ0Esb0JBQW9CLHNCQUFzQjtBQUMxQztBQUNBLG9CQUFvQixXQUFXO0FBQy9CO0FBQ0E7QUFDQSxvQkFBb0IsbUNBQW1DO0FBQ3ZEO0FBQ0E7QUFDQSw4QkFBOEIsb0VBQXdCO0FBQ3REO0FBQ0EsOEJBQThCLGlFQUFnQixHQUFHLGtCQUFrQjtBQUNuRSwrQkFBK0Isd0ZBQW9CO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCLDhDQUE4Qyw0QkFBNEI7QUFDMUU7QUFDQTtBQUNBLDhCQUE4QixtRkFBZ0I7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0EsK0JBQStCLDZDQUE2QztBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQix1REFBUztBQUMzQjtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL211bHRpY2FsbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtdWx0aWNhbGwzQWJpIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2FiaXMuanMnO1xuaW1wb3J0IHsgbXVsdGljYWxsM0J5dGVjb2RlIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbnRyYWN0cy5qcyc7XG5pbXBvcnQgeyBBYmlEZWNvZGluZ1plcm9EYXRhRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9iYXNlLmpzJztcbmltcG9ydCB7IFJhd0NvbnRyYWN0RXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvY29udHJhY3QuanMnO1xuaW1wb3J0IHsgZGVjb2RlRnVuY3Rpb25SZXN1bHQsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2RlY29kZUZ1bmN0aW9uUmVzdWx0LmpzJztcbmltcG9ydCB7IGVuY29kZUZ1bmN0aW9uRGF0YSwgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRnVuY3Rpb25EYXRhLmpzJztcbmltcG9ydCB7IGdldENoYWluQ29udHJhY3RBZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2NoYWluL2dldENoYWluQ29udHJhY3RBZGRyZXNzLmpzJztcbmltcG9ydCB7IGdldENvbnRyYWN0RXJyb3IsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3JzL2dldENvbnRyYWN0RXJyb3IuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IHJlYWRDb250cmFjdCB9IGZyb20gJy4vcmVhZENvbnRyYWN0LmpzJztcbi8qKlxuICogU2ltaWxhciB0byBbYHJlYWRDb250cmFjdGBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L3JlYWRDb250cmFjdCksIGJ1dCBiYXRjaGVzIHVwIG11bHRpcGxlIGZ1bmN0aW9ucyBvbiBhIGNvbnRyYWN0IGluIGEgc2luZ2xlIFJQQyBjYWxsIHZpYSB0aGUgW2BtdWx0aWNhbGwzYCBjb250cmFjdF0oaHR0cHM6Ly9naXRodWIuY29tL21kczEvbXVsdGljYWxsKS5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L211bHRpY2FsbFxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBNdWx0aWNhbGxQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVzdWx0cyB3aXRoIGFjY29tcGFueWluZyBzdGF0dXMuIHtAbGluayBNdWx0aWNhbGxSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAsIHBhcnNlQWJpIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IG11bHRpY2FsbCB9IGZyb20gJ3ZpZW0vY29udHJhY3QnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGFiaSA9IHBhcnNlQWJpKFtcbiAqICAgJ2Z1bmN0aW9uIGJhbGFuY2VPZihhZGRyZXNzKSB2aWV3IHJldHVybnMgKHVpbnQyNTYpJyxcbiAqICAgJ2Z1bmN0aW9uIHRvdGFsU3VwcGx5KCkgdmlldyByZXR1cm5zICh1aW50MjU2KScsXG4gKiBdKVxuICogY29uc3QgcmVzdWx0cyA9IGF3YWl0IG11bHRpY2FsbChjbGllbnQsIHtcbiAqICAgY29udHJhY3RzOiBbXG4gKiAgICAge1xuICogICAgICAgYWRkcmVzczogJzB4RkJBMzkxMkNhMDRkZDQ1OGM4NDNlMkVFMDg5NjdmQzA0ZjM1NzljMicsXG4gKiAgICAgICBhYmksXG4gKiAgICAgICBmdW5jdGlvbk5hbWU6ICdiYWxhbmNlT2YnLFxuICogICAgICAgYXJnczogWycweEEwQ2Y3OTg4MTZENGI5Yjk4NjZiNTMzMEVFYTQ2YTE4MzgyZjI1MWUnXSxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIGFkZHJlc3M6ICcweEZCQTM5MTJDYTA0ZGQ0NThjODQzZTJFRTA4OTY3ZkMwNGYzNTc5YzInLFxuICogICAgICAgYWJpLFxuICogICAgICAgZnVuY3Rpb25OYW1lOiAndG90YWxTdXBwbHknLFxuICogICAgIH0sXG4gKiAgIF0sXG4gKiB9KVxuICogLy8gW3sgcmVzdWx0OiA0MjQxMjJuLCBzdGF0dXM6ICdzdWNjZXNzJyB9LCB7IHJlc3VsdDogMTAwMDAwMG4sIHN0YXR1czogJ3N1Y2Nlc3MnIH1dXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtdWx0aWNhbGwoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhY2NvdW50LCBhdXRob3JpemF0aW9uTGlzdCwgYWxsb3dGYWlsdXJlID0gdHJ1ZSwgYmxvY2tOdW1iZXIsIGJsb2NrT3ZlcnJpZGVzLCBibG9ja1RhZywgc3RhdGVPdmVycmlkZSwgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgY29udHJhY3RzID0gcGFyYW1ldGVycy5jb250cmFjdHM7XG4gICAgY29uc3QgeyBiYXRjaFNpemUgPSBwYXJhbWV0ZXJzLmJhdGNoU2l6ZSA/PyAxMDI0LCBkZXBsb3lsZXNzID0gcGFyYW1ldGVycy5kZXBsb3lsZXNzID8/IGZhbHNlLCB9ID0gdHlwZW9mIGNsaWVudC5iYXRjaD8ubXVsdGljYWxsID09PSAnb2JqZWN0JyA/IGNsaWVudC5iYXRjaC5tdWx0aWNhbGwgOiB7fTtcbiAgICBjb25zdCBtdWx0aWNhbGxBZGRyZXNzID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHBhcmFtZXRlcnMubXVsdGljYWxsQWRkcmVzcylcbiAgICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzLm11bHRpY2FsbEFkZHJlc3M7XG4gICAgICAgIGlmIChkZXBsb3lsZXNzKVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIGlmIChjbGllbnQuY2hhaW4pIHtcbiAgICAgICAgICAgIHJldHVybiBnZXRDaGFpbkNvbnRyYWN0QWRkcmVzcyh7XG4gICAgICAgICAgICAgICAgYmxvY2tOdW1iZXIsXG4gICAgICAgICAgICAgICAgY2hhaW46IGNsaWVudC5jaGFpbixcbiAgICAgICAgICAgICAgICBjb250cmFjdDogJ211bHRpY2FsbDMnLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdjbGllbnQgY2hhaW4gbm90IGNvbmZpZ3VyZWQuIG11bHRpY2FsbEFkZHJlc3MgaXMgcmVxdWlyZWQuJyk7XG4gICAgfSkoKTtcbiAgICBjb25zdCBjaHVua2VkQ2FsbHMgPSBbW11dO1xuICAgIGxldCBjdXJyZW50Q2h1bmsgPSAwO1xuICAgIGxldCBjdXJyZW50Q2h1bmtTaXplID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbnRyYWN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCB7IGFiaSwgYWRkcmVzcywgYXJncywgZnVuY3Rpb25OYW1lIH0gPSBjb250cmFjdHNbaV07XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBjYWxsRGF0YSA9IGVuY29kZUZ1bmN0aW9uRGF0YSh7IGFiaSwgYXJncywgZnVuY3Rpb25OYW1lIH0pO1xuICAgICAgICAgICAgY3VycmVudENodW5rU2l6ZSArPSAoY2FsbERhdGEubGVuZ3RoIC0gMikgLyAyO1xuICAgICAgICAgICAgLy8gQ2hlY2sgdG8gc2VlIGlmIHdlIG5lZWQgdG8gY3JlYXRlIGEgbmV3IGNodW5rLlxuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgLy8gQ2hlY2sgaWYgYmF0Y2hpbmcgaXMgZW5hYmxlZC5cbiAgICAgICAgICAgIGJhdGNoU2l6ZSA+IDAgJiZcbiAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgY3VycmVudCBzaXplIG9mIHRoZSBiYXRjaCBleGNlZWRzIHRoZSBzaXplIGxpbWl0LlxuICAgICAgICAgICAgICAgIGN1cnJlbnRDaHVua1NpemUgPiBiYXRjaFNpemUgJiZcbiAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgY3VycmVudCBjaHVuayBpcyBub3QgYWxyZWFkeSBlbXB0eS5cbiAgICAgICAgICAgICAgICBjaHVua2VkQ2FsbHNbY3VycmVudENodW5rXS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgY3VycmVudENodW5rKys7XG4gICAgICAgICAgICAgICAgY3VycmVudENodW5rU2l6ZSA9IChjYWxsRGF0YS5sZW5ndGggLSAyKSAvIDI7XG4gICAgICAgICAgICAgICAgY2h1bmtlZENhbGxzW2N1cnJlbnRDaHVua10gPSBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNodW5rZWRDYWxsc1tjdXJyZW50Q2h1bmtdID0gW1xuICAgICAgICAgICAgICAgIC4uLmNodW5rZWRDYWxsc1tjdXJyZW50Q2h1bmtdLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dGYWlsdXJlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBjYWxsRGF0YSxcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBhZGRyZXNzLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGNvbnN0IGVycm9yID0gZ2V0Q29udHJhY3RFcnJvcihlcnIsIHtcbiAgICAgICAgICAgICAgICBhYmksXG4gICAgICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgICAgIGRvY3NQYXRoOiAnL2RvY3MvY29udHJhY3QvbXVsdGljYWxsJyxcbiAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICAgICAgc2VuZGVyOiBhY2NvdW50LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAoIWFsbG93RmFpbHVyZSlcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgICAgIGNodW5rZWRDYWxsc1tjdXJyZW50Q2h1bmtdID0gW1xuICAgICAgICAgICAgICAgIC4uLmNodW5rZWRDYWxsc1tjdXJyZW50Q2h1bmtdLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dGYWlsdXJlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBjYWxsRGF0YTogJzB4JyxcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBhZGRyZXNzLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGFnZ3JlZ2F0ZTNSZXN1bHRzID0gYXdhaXQgUHJvbWlzZS5hbGxTZXR0bGVkKGNodW5rZWRDYWxscy5tYXAoKGNhbGxzKSA9PiBnZXRBY3Rpb24oY2xpZW50LCByZWFkQ29udHJhY3QsICdyZWFkQ29udHJhY3QnKSh7XG4gICAgICAgIC4uLihtdWx0aWNhbGxBZGRyZXNzID09PSBudWxsXG4gICAgICAgICAgICA/IHsgY29kZTogbXVsdGljYWxsM0J5dGVjb2RlIH1cbiAgICAgICAgICAgIDogeyBhZGRyZXNzOiBtdWx0aWNhbGxBZGRyZXNzIH0pLFxuICAgICAgICBhYmk6IG11bHRpY2FsbDNBYmksXG4gICAgICAgIGFjY291bnQsXG4gICAgICAgIGFyZ3M6IFtjYWxsc10sXG4gICAgICAgIGF1dGhvcml6YXRpb25MaXN0LFxuICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgYmxvY2tPdmVycmlkZXMsXG4gICAgICAgIGJsb2NrVGFnLFxuICAgICAgICBmdW5jdGlvbk5hbWU6ICdhZ2dyZWdhdGUzJyxcbiAgICAgICAgc3RhdGVPdmVycmlkZSxcbiAgICB9KSkpO1xuICAgIGNvbnN0IHJlc3VsdHMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFnZ3JlZ2F0ZTNSZXN1bHRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGFnZ3JlZ2F0ZTNSZXN1bHRzW2ldO1xuICAgICAgICAvLyBJZiBhbiBlcnJvciBvY2N1cnJlZCBpbiBhIGByZWFkQ29udHJhY3RgIGludm9jYXRpb24gKGllLiBuZXR3b3JrIGVycm9yKSxcbiAgICAgICAgLy8gdGhlbiBhcHBlbmQgdGhlIGZhaWx1cmUgcmVhc29uIHRvIGVhY2ggY29udHJhY3QgcmVzdWx0LlxuICAgICAgICBpZiAocmVzdWx0LnN0YXR1cyA9PT0gJ3JlamVjdGVkJykge1xuICAgICAgICAgICAgaWYgKCFhbGxvd0ZhaWx1cmUpXG4gICAgICAgICAgICAgICAgdGhyb3cgcmVzdWx0LnJlYXNvbjtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgY2h1bmtlZENhbGxzW2ldLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiAnZmFpbHVyZScsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiByZXN1bHQucmVhc29uLFxuICAgICAgICAgICAgICAgICAgICByZXN1bHQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIC8vIElmIHRoZSBgcmVhZENvbnRyYWN0YCBjYWxsIHdhcyBzdWNjZXNzZnVsLCB0aGVuIGRlY29kZSB0aGUgcmVzdWx0cy5cbiAgICAgICAgY29uc3QgYWdncmVnYXRlM1Jlc3VsdCA9IHJlc3VsdC52YWx1ZTtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBhZ2dyZWdhdGUzUmVzdWx0Lmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAvLyBFeHRyYWN0IHRoZSByZXNwb25zZSBmcm9tIGByZWFkQ29udHJhY3RgXG4gICAgICAgICAgICBjb25zdCB7IHJldHVybkRhdGEsIHN1Y2Nlc3MgfSA9IGFnZ3JlZ2F0ZTNSZXN1bHRbal07XG4gICAgICAgICAgICAvLyBFeHRyYWN0IHRoZSByZXF1ZXN0IGNhbGwgZGF0YSBmcm9tIHRoZSBvcmlnaW5hbCBjYWxsLlxuICAgICAgICAgICAgY29uc3QgeyBjYWxsRGF0YSB9ID0gY2h1bmtlZENhbGxzW2ldW2pdO1xuICAgICAgICAgICAgLy8gRXh0cmFjdCB0aGUgY29udHJhY3QgY29uZmlnIGZvciB0aGlzIGNhbGwgZnJvbSB0aGUgYGNvbnRyYWN0c2AgYXJndW1lbnRcbiAgICAgICAgICAgIC8vIGZvciBkZWNvZGluZy5cbiAgICAgICAgICAgIGNvbnN0IHsgYWJpLCBhZGRyZXNzLCBmdW5jdGlvbk5hbWUsIGFyZ3MgfSA9IGNvbnRyYWN0c1tyZXN1bHRzLmxlbmd0aF07XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmIChjYWxsRGF0YSA9PT0gJzB4JylcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEFiaURlY29kaW5nWmVyb0RhdGFFcnJvcigpO1xuICAgICAgICAgICAgICAgIGlmICghc3VjY2VzcylcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFJhd0NvbnRyYWN0RXJyb3IoeyBkYXRhOiByZXR1cm5EYXRhIH0pO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGRlY29kZUZ1bmN0aW9uUmVzdWx0KHtcbiAgICAgICAgICAgICAgICAgICAgYWJpLFxuICAgICAgICAgICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiByZXR1cm5EYXRhLFxuICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKGFsbG93RmFpbHVyZSA/IHsgcmVzdWx0LCBzdGF0dXM6ICdzdWNjZXNzJyB9IDogcmVzdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvciA9IGdldENvbnRyYWN0RXJyb3IoZXJyLCB7XG4gICAgICAgICAgICAgICAgICAgIGFiaSxcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgICAgICAgICAgZG9jc1BhdGg6ICcvZG9jcy9jb250cmFjdC9tdWx0aWNhbGwnLFxuICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaWYgKCFhbGxvd0ZhaWx1cmUpXG4gICAgICAgICAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICAgICAgICAgIHJlc3VsdHMucHVzaCh7IGVycm9yLCByZXN1bHQ6IHVuZGVmaW5lZCwgc3RhdHVzOiAnZmFpbHVyZScgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKHJlc3VsdHMubGVuZ3RoICE9PSBjb250cmFjdHMubGVuZ3RoKVxuICAgICAgICB0aHJvdyBuZXcgQmFzZUVycm9yKCdtdWx0aWNhbGwgcmVzdWx0cyBtaXNtYXRjaCcpO1xuICAgIHJldHVybiByZXN1bHRzO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bXVsdGljYWxsLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/multicall.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/readContract.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ readContract: () => (/* binding */ readContract)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/abi/decodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/errors/getContractError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getContractError.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _call_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./call.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/call.js\");\n\n\n\n\n\n/**\n * Calls a read-only function on a contract, and returns the response.\n *\n * - Docs: https://viem.sh/docs/contract/readContract\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_reading-contracts\n *\n * A \"read-only\" function (constant function) on a Solidity contract is denoted by a `view` or `pure` keyword. They can only read the state of the contract, and cannot make any changes to it. Since read-only methods do not change the state of the contract, they do not require any gas to be executed, and can be called by any user without the need to pay for gas.\n *\n * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`call` action](https://viem.sh/docs/actions/public/call) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n *\n * @param client - Client to use\n * @param parameters - {@link ReadContractParameters}\n * @returns The response from the contract. Type is inferred. {@link ReadContractReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { readContract } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const result = await readContract(client, {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi(['function balanceOf(address) view returns (uint256)']),\n * functionName: 'balanceOf',\n * args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n * })\n * // 424122n\n */\nasync function readContract(client, parameters) {\n const { abi, address, args, functionName, ...rest } = parameters;\n const calldata = (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__.encodeFunctionData)({\n abi,\n args,\n functionName,\n });\n try {\n const { data } = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _call_js__WEBPACK_IMPORTED_MODULE_2__.call, 'call')({\n ...rest,\n data: calldata,\n to: address,\n });\n return (0,_utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_3__.decodeFunctionResult)({\n abi,\n args,\n functionName,\n data: data || '0x',\n });\n }\n catch (error) {\n throw (0,_utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_4__.getContractError)(error, {\n abi,\n address,\n args,\n docsPath: '/docs/contract/readContract',\n functionName,\n });\n }\n}\n//# sourceMappingURL=readContract.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvcmVhZENvbnRyYWN0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFnRjtBQUNKO0FBQ0Q7QUFDdEI7QUFDcEI7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QiwrREFBK0Q7QUFDL0Q7QUFDQTtBQUNBLFlBQVkscUNBQXFDO0FBQ2pELFlBQVksVUFBVTtBQUN0QixZQUFZLGVBQWU7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ087QUFDUCxZQUFZLDRDQUE0QztBQUN4RCxxQkFBcUIsb0ZBQWtCO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLGdCQUFnQixPQUFPLFFBQVEsOERBQVMsU0FBUywwQ0FBSTtBQUNyRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsZUFBZSx3RkFBb0I7QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLGNBQWMsbUZBQWdCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9yZWFkQ29udHJhY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVjb2RlRnVuY3Rpb25SZXN1bHQsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2RlY29kZUZ1bmN0aW9uUmVzdWx0LmpzJztcbmltcG9ydCB7IGVuY29kZUZ1bmN0aW9uRGF0YSwgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRnVuY3Rpb25EYXRhLmpzJztcbmltcG9ydCB7IGdldENvbnRyYWN0RXJyb3IsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3JzL2dldENvbnRyYWN0RXJyb3IuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGNhbGwgfSBmcm9tICcuL2NhbGwuanMnO1xuLyoqXG4gKiBDYWxscyBhIHJlYWQtb25seSBmdW5jdGlvbiBvbiBhIGNvbnRyYWN0LCBhbmQgcmV0dXJucyB0aGUgcmVzcG9uc2UuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9jb250cmFjdC9yZWFkQ29udHJhY3RcbiAqIC0gRXhhbXBsZXM6IGh0dHBzOi8vc3RhY2tibGl0ei5jb20vZ2l0aHViL3dldm0vdmllbS90cmVlL21haW4vZXhhbXBsZXMvY29udHJhY3RzX3JlYWRpbmctY29udHJhY3RzXG4gKlxuICogQSBcInJlYWQtb25seVwiIGZ1bmN0aW9uIChjb25zdGFudCBmdW5jdGlvbikgb24gYSBTb2xpZGl0eSBjb250cmFjdCBpcyBkZW5vdGVkIGJ5IGEgYHZpZXdgIG9yIGBwdXJlYCBrZXl3b3JkLiBUaGV5IGNhbiBvbmx5IHJlYWQgdGhlIHN0YXRlIG9mIHRoZSBjb250cmFjdCwgYW5kIGNhbm5vdCBtYWtlIGFueSBjaGFuZ2VzIHRvIGl0LiBTaW5jZSByZWFkLW9ubHkgbWV0aG9kcyBkbyBub3QgY2hhbmdlIHRoZSBzdGF0ZSBvZiB0aGUgY29udHJhY3QsIHRoZXkgZG8gbm90IHJlcXVpcmUgYW55IGdhcyB0byBiZSBleGVjdXRlZCwgYW5kIGNhbiBiZSBjYWxsZWQgYnkgYW55IHVzZXIgd2l0aG91dCB0aGUgbmVlZCB0byBwYXkgZm9yIGdhcy5cbiAqXG4gKiBJbnRlcm5hbGx5LCB1c2VzIGEgW1B1YmxpYyBDbGllbnRdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2NsaWVudHMvcHVibGljKSB0byBjYWxsIHRoZSBbYGNhbGxgIGFjdGlvbl0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvY2FsbCkgd2l0aCBbQUJJLWVuY29kZWQgYGRhdGFgXShodHRwczovL3ZpZW0uc2gvZG9jcy9jb250cmFjdC9lbmNvZGVGdW5jdGlvbkRhdGEpLlxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBSZWFkQ29udHJhY3RQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIHJlc3BvbnNlIGZyb20gdGhlIGNvbnRyYWN0LiBUeXBlIGlzIGluZmVycmVkLiB7QGxpbmsgUmVhZENvbnRyYWN0UmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwLCBwYXJzZUFiaSB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyByZWFkQ29udHJhY3QgfSBmcm9tICd2aWVtL2NvbnRyYWN0J1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCByZXN1bHQgPSBhd2FpdCByZWFkQ29udHJhY3QoY2xpZW50LCB7XG4gKiAgIGFkZHJlc3M6ICcweEZCQTM5MTJDYTA0ZGQ0NThjODQzZTJFRTA4OTY3ZkMwNGYzNTc5YzInLFxuICogICBhYmk6IHBhcnNlQWJpKFsnZnVuY3Rpb24gYmFsYW5jZU9mKGFkZHJlc3MpIHZpZXcgcmV0dXJucyAodWludDI1NiknXSksXG4gKiAgIGZ1bmN0aW9uTmFtZTogJ2JhbGFuY2VPZicsXG4gKiAgIGFyZ3M6IFsnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJ10sXG4gKiB9KVxuICogLy8gNDI0MTIyblxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVhZENvbnRyYWN0KGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWJpLCBhZGRyZXNzLCBhcmdzLCBmdW5jdGlvbk5hbWUsIC4uLnJlc3QgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgY2FsbGRhdGEgPSBlbmNvZGVGdW5jdGlvbkRhdGEoe1xuICAgICAgICBhYmksXG4gICAgICAgIGFyZ3MsXG4gICAgICAgIGZ1bmN0aW9uTmFtZSxcbiAgICB9KTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGNhbGwsICdjYWxsJykoe1xuICAgICAgICAgICAgLi4ucmVzdCxcbiAgICAgICAgICAgIGRhdGE6IGNhbGxkYXRhLFxuICAgICAgICAgICAgdG86IGFkZHJlc3MsXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gZGVjb2RlRnVuY3Rpb25SZXN1bHQoe1xuICAgICAgICAgICAgYWJpLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIGZ1bmN0aW9uTmFtZSxcbiAgICAgICAgICAgIGRhdGE6IGRhdGEgfHwgJzB4JyxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aHJvdyBnZXRDb250cmFjdEVycm9yKGVycm9yLCB7XG4gICAgICAgICAgICBhYmksXG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIGRvY3NQYXRoOiAnL2RvY3MvY29udHJhY3QvcmVhZENvbnRyYWN0JyxcbiAgICAgICAgICAgIGZ1bmN0aW9uTmFtZSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cmVhZENvbnRyYWN0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateBlocks.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/simulateBlocks.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ simulateBlocks: () => (/* binding */ simulateBlocks)\n/* harmony export */ });\n/* harmony import */ var ox_BlockOverrides__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ox/BlockOverrides */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/BlockOverrides.js\");\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n/* harmony import */ var _errors_node_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../errors/node.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/node.js\");\n/* harmony import */ var _utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/abi/decodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_data_concat_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../utils/errors/getContractError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getContractError.js\");\n/* harmony import */ var _utils_errors_getNodeError_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../utils/errors/getNodeError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getNodeError.js\");\n/* harmony import */ var _utils_formatters_block_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils/formatters/block.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/block.js\");\n/* harmony import */ var _utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/formatters/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/log.js\");\n/* harmony import */ var _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/formatters/transactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionRequest.js\");\n/* harmony import */ var _utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/stateOverride.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stateOverride.js\");\n/* harmony import */ var _utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/transaction/assertRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Simulates a set of calls on block(s) with optional block and state overrides.\n *\n * @example\n * ```ts\n * import { createClient, http, parseEther } from 'viem'\n * import { simulate } from 'viem/actions'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const result = await simulate(client, {\n * blocks: [{\n * blockOverrides: {\n * number: 69420n,\n * },\n * calls: [{\n * {\n * account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n * data: '0xdeadbeef',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * },\n * {\n * account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * value: parseEther('1'),\n * },\n * }],\n * stateOverrides: [{\n * address: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n * balance: parseEther('10'),\n * }],\n * }]\n * })\n * ```\n *\n * @param client - Client to use.\n * @param parameters - {@link SimulateBlocksParameters}\n * @returns Simulated blocks. {@link SimulateBlocksReturnType}\n */\nasync function simulateBlocks(client, parameters) {\n const { blockNumber, blockTag = client.experimental_blockTag ?? 'latest', blocks, returnFullTransactions, traceTransfers, validation, } = parameters;\n try {\n const blockStateCalls = [];\n for (const block of blocks) {\n const blockOverrides = block.blockOverrides\n ? ox_BlockOverrides__WEBPACK_IMPORTED_MODULE_0__.toRpc(block.blockOverrides)\n : undefined;\n const calls = block.calls.map((call_) => {\n const call = call_;\n const account = call.account ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(call.account) : undefined;\n const data = call.abi ? (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_2__.encodeFunctionData)(call) : call.data;\n const request = {\n ...call,\n data: call.dataSuffix\n ? (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_3__.concat)([data || '0x', call.dataSuffix])\n : data,\n from: call.from ?? account?.address,\n };\n (0,_utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_4__.assertRequest)(request);\n return (0,_utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_5__.formatTransactionRequest)(request);\n });\n const stateOverrides = block.stateOverrides\n ? (0,_utils_stateOverride_js__WEBPACK_IMPORTED_MODULE_6__.serializeStateOverride)(block.stateOverrides)\n : undefined;\n blockStateCalls.push({\n blockOverrides,\n calls,\n stateOverrides,\n });\n }\n const blockNumberHex = typeof blockNumber === 'bigint' ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_7__.numberToHex)(blockNumber) : undefined;\n const block = blockNumberHex || blockTag;\n const result = await client.request({\n method: 'eth_simulateV1',\n params: [\n { blockStateCalls, returnFullTransactions, traceTransfers, validation },\n block,\n ],\n });\n return result.map((block, i) => ({\n ...(0,_utils_formatters_block_js__WEBPACK_IMPORTED_MODULE_8__.formatBlock)(block),\n calls: block.calls.map((call, j) => {\n const { abi, args, functionName, to } = blocks[i].calls[j];\n const data = call.error?.data ?? call.returnData;\n const gasUsed = BigInt(call.gasUsed);\n const logs = call.logs?.map((log) => (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_9__.formatLog)(log));\n const status = call.status === '0x1' ? 'success' : 'failure';\n const result = abi && status === 'success' && data !== '0x'\n ? (0,_utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_10__.decodeFunctionResult)({\n abi,\n data,\n functionName,\n })\n : null;\n const error = (() => {\n if (status === 'success')\n return undefined;\n let error;\n if (call.error?.data === '0x')\n error = new _errors_abi_js__WEBPACK_IMPORTED_MODULE_11__.AbiDecodingZeroDataError();\n else if (call.error)\n error = new _errors_contract_js__WEBPACK_IMPORTED_MODULE_12__.RawContractError(call.error);\n if (!error)\n return undefined;\n return (0,_utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_13__.getContractError)(error, {\n abi: (abi ?? []),\n address: to ?? '0x',\n args,\n functionName: functionName ?? '<unknown>',\n });\n })();\n return {\n data,\n gasUsed,\n logs,\n status,\n ...(status === 'success'\n ? {\n result,\n }\n : {\n error,\n }),\n };\n }),\n }));\n }\n catch (e) {\n const cause = e;\n const error = (0,_utils_errors_getNodeError_js__WEBPACK_IMPORTED_MODULE_14__.getNodeError)(cause, {});\n if (error instanceof _errors_node_js__WEBPACK_IMPORTED_MODULE_15__.UnknownNodeError)\n throw cause;\n throw error;\n }\n}\n//# sourceMappingURL=simulateBlocks.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvc2ltdWxhdGVCbG9ja3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBb0Q7QUFDaUI7QUFDTjtBQUNIO0FBQ0o7QUFDd0I7QUFDSjtBQUN4QjtBQUNTO0FBQ2E7QUFDUDtBQUNKO0FBQ0w7QUFDK0I7QUFDbEI7QUFDRztBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxpQ0FBaUM7QUFDN0MsWUFBWSxXQUFXO0FBQ3ZCLFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1YsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUixNQUFNO0FBQ04sSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QiwrQkFBK0I7QUFDL0I7QUFDTztBQUNQLFlBQVksZ0lBQWdJO0FBQzVJO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9EQUFvQjtBQUN0QztBQUNBO0FBQ0E7QUFDQSwrQ0FBK0MsNkVBQVk7QUFDM0Qsd0NBQXdDLG9GQUFrQjtBQUMxRDtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsNkRBQU07QUFDaEM7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGtGQUFhO0FBQzdCLHVCQUF1QixpR0FBd0I7QUFDL0MsYUFBYTtBQUNiO0FBQ0Esa0JBQWtCLCtFQUFzQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsaUVBQWlFLHFFQUFXO0FBQzVFO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLHFFQUFxRTtBQUN2RjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsZUFBZSx1RUFBVztBQUMxQjtBQUNBLHdCQUF3Qiw4QkFBOEI7QUFDdEQ7QUFDQTtBQUNBLHFEQUFxRCxtRUFBUztBQUM5RDtBQUNBO0FBQ0Esc0JBQXNCLHlGQUFvQjtBQUMxQztBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLHFFQUF3QjtBQUM1RDtBQUNBLG9DQUFvQyxrRUFBZ0I7QUFDcEQ7QUFDQTtBQUNBLDJCQUEyQixvRkFBZ0I7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiw0RUFBWSxVQUFVO0FBQzVDLDZCQUE2Qiw4REFBZ0I7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvc2ltdWxhdGVCbG9ja3MuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQmxvY2tPdmVycmlkZXMgZnJvbSAnb3gvQmxvY2tPdmVycmlkZXMnO1xuaW1wb3J0IHsgcGFyc2VBY2NvdW50LCB9IGZyb20gJy4uLy4uL2FjY291bnRzL3V0aWxzL3BhcnNlQWNjb3VudC5qcyc7XG5pbXBvcnQgeyBBYmlEZWNvZGluZ1plcm9EYXRhRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IFJhd0NvbnRyYWN0RXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvY29udHJhY3QuanMnO1xuaW1wb3J0IHsgVW5rbm93bk5vZGVFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9ub2RlLmpzJztcbmltcG9ydCB7IGRlY29kZUZ1bmN0aW9uUmVzdWx0LCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9kZWNvZGVGdW5jdGlvblJlc3VsdC5qcyc7XG5pbXBvcnQgeyBlbmNvZGVGdW5jdGlvbkRhdGEsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2VuY29kZUZ1bmN0aW9uRGF0YS5qcyc7XG5pbXBvcnQgeyBjb25jYXQgfSBmcm9tICcuLi8uLi91dGlscy9kYXRhL2NvbmNhdC5qcyc7XG5pbXBvcnQgeyBudW1iZXJUb0hleCwgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBnZXRDb250cmFjdEVycm9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3JzL2dldENvbnRyYWN0RXJyb3IuanMnO1xuaW1wb3J0IHsgZ2V0Tm9kZUVycm9yLCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vycm9ycy9nZXROb2RlRXJyb3IuanMnO1xuaW1wb3J0IHsgZm9ybWF0QmxvY2ssIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy9ibG9jay5qcyc7XG5pbXBvcnQgeyBmb3JtYXRMb2cgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtYXR0ZXJzL2xvZy5qcyc7XG5pbXBvcnQgeyBmb3JtYXRUcmFuc2FjdGlvblJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy90cmFuc2FjdGlvblJlcXVlc3QuanMnO1xuaW1wb3J0IHsgc2VyaWFsaXplU3RhdGVPdmVycmlkZSwgfSBmcm9tICcuLi8uLi91dGlscy9zdGF0ZU92ZXJyaWRlLmpzJztcbmltcG9ydCB7IGFzc2VydFJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vdXRpbHMvdHJhbnNhY3Rpb24vYXNzZXJ0UmVxdWVzdC5qcyc7XG4vKipcbiAqIFNpbXVsYXRlcyBhIHNldCBvZiBjYWxscyBvbiBibG9jayhzKSB3aXRoIG9wdGlvbmFsIGJsb2NrIGFuZCBzdGF0ZSBvdmVycmlkZXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBjcmVhdGVDbGllbnQsIGh0dHAsIHBhcnNlRXRoZXIgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgc2ltdWxhdGUgfSBmcm9tICd2aWVtL2FjdGlvbnMnXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqXG4gKiBjb25zdCByZXN1bHQgPSBhd2FpdCBzaW11bGF0ZShjbGllbnQsIHtcbiAqICAgYmxvY2tzOiBbe1xuICogICAgIGJsb2NrT3ZlcnJpZGVzOiB7XG4gKiAgICAgICBudW1iZXI6IDY5NDIwbixcbiAqICAgICB9LFxuICogICAgIGNhbGxzOiBbe1xuICogICAgICAge1xuICogICAgICAgICBhY2NvdW50OiAnMHg1YTBiNTRkNWRjMTdlNDgyZmU4YjBiZGNhNTMyMDE2MWI5NWZiOTI5JyxcbiAqICAgICAgICAgZGF0YTogJzB4ZGVhZGJlZWYnLFxuICogICAgICAgICB0bzogJzB4NzA5OTc5NzBjNTE4MTJkYzNhMDEwYzdkMDFiNTBlMGQxN2RjNzljOCcsXG4gKiAgICAgICB9LFxuICogICAgICAge1xuICogICAgICAgICBhY2NvdW50OiAnMHg1YTBiNTRkNWRjMTdlNDgyZmU4YjBiZGNhNTMyMDE2MWI5NWZiOTI5JyxcbiAqICAgICAgICAgdG86ICcweDcwOTk3OTcwYzUxODEyZGMzYTAxMGM3ZDAxYjUwZTBkMTdkYzc5YzgnLFxuICogICAgICAgICB2YWx1ZTogcGFyc2VFdGhlcignMScpLFxuICogICAgICAgfSxcbiAqICAgICB9XSxcbiAqICAgICBzdGF0ZU92ZXJyaWRlczogW3tcbiAqICAgICAgIGFkZHJlc3M6ICcweDVhMGI1NGQ1ZGMxN2U0ODJmZThiMGJkY2E1MzIwMTYxYjk1ZmI5MjknLFxuICogICAgICAgYmFsYW5jZTogcGFyc2VFdGhlcignMTAnKSxcbiAqICAgICB9XSxcbiAqICAgfV1cbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZS5cbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIFNpbXVsYXRlQmxvY2tzUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFNpbXVsYXRlZCBibG9ja3MuIHtAbGluayBTaW11bGF0ZUJsb2Nrc1JldHVyblR5cGV9XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaW11bGF0ZUJsb2NrcyhjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGJsb2NrTnVtYmVyLCBibG9ja1RhZyA9IGNsaWVudC5leHBlcmltZW50YWxfYmxvY2tUYWcgPz8gJ2xhdGVzdCcsIGJsb2NrcywgcmV0dXJuRnVsbFRyYW5zYWN0aW9ucywgdHJhY2VUcmFuc2ZlcnMsIHZhbGlkYXRpb24sIH0gPSBwYXJhbWV0ZXJzO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGJsb2NrU3RhdGVDYWxscyA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IGJsb2NrIG9mIGJsb2Nrcykge1xuICAgICAgICAgICAgY29uc3QgYmxvY2tPdmVycmlkZXMgPSBibG9jay5ibG9ja092ZXJyaWRlc1xuICAgICAgICAgICAgICAgID8gQmxvY2tPdmVycmlkZXMudG9ScGMoYmxvY2suYmxvY2tPdmVycmlkZXMpXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBjYWxscyA9IGJsb2NrLmNhbGxzLm1hcCgoY2FsbF8pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjYWxsID0gY2FsbF87XG4gICAgICAgICAgICAgICAgY29uc3QgYWNjb3VudCA9IGNhbGwuYWNjb3VudCA/IHBhcnNlQWNjb3VudChjYWxsLmFjY291bnQpIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBjYWxsLmFiaSA/IGVuY29kZUZ1bmN0aW9uRGF0YShjYWxsKSA6IGNhbGwuZGF0YTtcbiAgICAgICAgICAgICAgICBjb25zdCByZXF1ZXN0ID0ge1xuICAgICAgICAgICAgICAgICAgICAuLi5jYWxsLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBjYWxsLmRhdGFTdWZmaXhcbiAgICAgICAgICAgICAgICAgICAgICAgID8gY29uY2F0KFtkYXRhIHx8ICcweCcsIGNhbGwuZGF0YVN1ZmZpeF0pXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGRhdGEsXG4gICAgICAgICAgICAgICAgICAgIGZyb206IGNhbGwuZnJvbSA/PyBhY2NvdW50Py5hZGRyZXNzLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgYXNzZXJ0UmVxdWVzdChyZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZm9ybWF0VHJhbnNhY3Rpb25SZXF1ZXN0KHJlcXVlc3QpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZU92ZXJyaWRlcyA9IGJsb2NrLnN0YXRlT3ZlcnJpZGVzXG4gICAgICAgICAgICAgICAgPyBzZXJpYWxpemVTdGF0ZU92ZXJyaWRlKGJsb2NrLnN0YXRlT3ZlcnJpZGVzKVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgYmxvY2tTdGF0ZUNhbGxzLnB1c2goe1xuICAgICAgICAgICAgICAgIGJsb2NrT3ZlcnJpZGVzLFxuICAgICAgICAgICAgICAgIGNhbGxzLFxuICAgICAgICAgICAgICAgIHN0YXRlT3ZlcnJpZGVzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgYmxvY2tOdW1iZXJIZXggPSB0eXBlb2YgYmxvY2tOdW1iZXIgPT09ICdiaWdpbnQnID8gbnVtYmVyVG9IZXgoYmxvY2tOdW1iZXIpIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBibG9jayA9IGJsb2NrTnVtYmVySGV4IHx8IGJsb2NrVGFnO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdldGhfc2ltdWxhdGVWMScsXG4gICAgICAgICAgICBwYXJhbXM6IFtcbiAgICAgICAgICAgICAgICB7IGJsb2NrU3RhdGVDYWxscywgcmV0dXJuRnVsbFRyYW5zYWN0aW9ucywgdHJhY2VUcmFuc2ZlcnMsIHZhbGlkYXRpb24gfSxcbiAgICAgICAgICAgICAgICBibG9jayxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzdWx0Lm1hcCgoYmxvY2ssIGkpID0+ICh7XG4gICAgICAgICAgICAuLi5mb3JtYXRCbG9jayhibG9jayksXG4gICAgICAgICAgICBjYWxsczogYmxvY2suY2FsbHMubWFwKChjYWxsLCBqKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBhYmksIGFyZ3MsIGZ1bmN0aW9uTmFtZSwgdG8gfSA9IGJsb2Nrc1tpXS5jYWxsc1tqXTtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0gY2FsbC5lcnJvcj8uZGF0YSA/PyBjYWxsLnJldHVybkRhdGE7XG4gICAgICAgICAgICAgICAgY29uc3QgZ2FzVXNlZCA9IEJpZ0ludChjYWxsLmdhc1VzZWQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxvZ3MgPSBjYWxsLmxvZ3M/Lm1hcCgobG9nKSA9PiBmb3JtYXRMb2cobG9nKSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhdHVzID0gY2FsbC5zdGF0dXMgPT09ICcweDEnID8gJ3N1Y2Nlc3MnIDogJ2ZhaWx1cmUnO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGFiaSAmJiBzdGF0dXMgPT09ICdzdWNjZXNzJyAmJiBkYXRhICE9PSAnMHgnXG4gICAgICAgICAgICAgICAgICAgID8gZGVjb2RlRnVuY3Rpb25SZXN1bHQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYWJpLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVycm9yID0gKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXR1cyA9PT0gJ3N1Y2Nlc3MnKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGVycm9yO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2FsbC5lcnJvcj8uZGF0YSA9PT0gJzB4JylcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gbmV3IEFiaURlY29kaW5nWmVyb0RhdGFFcnJvcigpO1xuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjYWxsLmVycm9yKVxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IgPSBuZXcgUmF3Q29udHJhY3RFcnJvcihjYWxsLmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlcnJvcilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBnZXRDb250cmFjdEVycm9yKGVycm9yLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhYmk6IChhYmkgPz8gW10pLFxuICAgICAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogdG8gPz8gJzB4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWU6IGZ1bmN0aW9uTmFtZSA/PyAnPHVua25vd24+JyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSkoKTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICAgICAgICBnYXNVc2VkLFxuICAgICAgICAgICAgICAgICAgICBsb2dzLFxuICAgICAgICAgICAgICAgICAgICBzdGF0dXMsXG4gICAgICAgICAgICAgICAgICAgIC4uLihzdGF0dXMgPT09ICdzdWNjZXNzJ1xuICAgICAgICAgICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSksXG4gICAgICAgIH0pKTtcbiAgICB9XG4gICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc3QgY2F1c2UgPSBlO1xuICAgICAgICBjb25zdCBlcnJvciA9IGdldE5vZGVFcnJvcihjYXVzZSwge30pO1xuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBVbmtub3duTm9kZUVycm9yKVxuICAgICAgICAgICAgdGhyb3cgY2F1c2U7XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNpbXVsYXRlQmxvY2tzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateBlocks.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateCalls.js": /*!****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/simulateCalls.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ simulateCalls: () => (/* binding */ simulateCalls)\n/* harmony export */ });\n/* harmony import */ var ox_AbiConstructor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ox/AbiConstructor */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiConstructor.js\");\n/* harmony import */ var ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ox/AbiFunction */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiFunction.js\");\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _constants_address_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../constants/address.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/address.js\");\n/* harmony import */ var _constants_contracts_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../constants/contracts.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/contracts.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/index.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _createAccessList_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./createAccessList.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createAccessList.js\");\n/* harmony import */ var _simulateBlocks_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./simulateBlocks.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateBlocks.js\");\n\n\n\n\n\n\n\n\n\n\nconst getBalanceCode = '0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033';\n/**\n * Simulates execution of a batch of calls.\n *\n * @param client - Client to use\n * @param parameters - {@link SimulateCallsParameters}\n * @returns Results. {@link SimulateCallsReturnType}\n *\n * @example\n * ```ts\n * import { createPublicClient, http, parseEther } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { simulateCalls } from 'viem/actions'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const result = await simulateCalls(client, {\n * account: '0x5a0b54d5dc17e482fe8b0bdca5320161b95fb929',\n * calls: [{\n * {\n * data: '0xdeadbeef',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * },\n * {\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * value: parseEther('1'),\n * },\n * ]\n * })\n * ```\n */\nasync function simulateCalls(client, parameters) {\n const { blockNumber, blockTag, calls, stateOverrides, traceAssetChanges, traceTransfers, validation, } = parameters;\n const account = parameters.account\n ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__.parseAccount)(parameters.account)\n : undefined;\n if (traceAssetChanges && !account)\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_1__.BaseError('`account` is required when `traceAssetChanges` is true');\n // Derive bytecode to extract ETH balance via a contract call.\n const getBalanceData = account\n ? ox_AbiConstructor__WEBPACK_IMPORTED_MODULE_2__.encode(ox_AbiConstructor__WEBPACK_IMPORTED_MODULE_2__.from('constructor(bytes, bytes)'), {\n bytecode: _constants_contracts_js__WEBPACK_IMPORTED_MODULE_3__.deploylessCallViaBytecodeBytecode,\n args: [\n getBalanceCode,\n ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__.encodeData(ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__.from('function getBalance(address)'), [account.address]),\n ],\n })\n : undefined;\n // Fetch ERC20/721 addresses that were \"touched\" from the calls.\n const assetAddresses = traceAssetChanges\n ? await Promise.all(parameters.calls.map(async (call) => {\n if (!call.data && !call.abi)\n return;\n const { accessList } = await (0,_createAccessList_js__WEBPACK_IMPORTED_MODULE_5__.createAccessList)(client, {\n account: account.address,\n ...call,\n data: call.abi ? (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_6__.encodeFunctionData)(call) : call.data,\n });\n return accessList.map(({ address, storageKeys }) => storageKeys.length > 0 ? address : null);\n })).then((x) => x.flat().filter(Boolean))\n : [];\n const blocks = await (0,_simulateBlocks_js__WEBPACK_IMPORTED_MODULE_7__.simulateBlocks)(client, {\n blockNumber,\n blockTag: blockTag,\n blocks: [\n ...(traceAssetChanges\n ? [\n // ETH pre balances\n {\n calls: [{ data: getBalanceData }],\n stateOverrides,\n },\n // Asset pre balances\n {\n calls: assetAddresses.map((address, i) => ({\n abi: [\n ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__.from('function balanceOf(address) returns (uint256)'),\n ],\n functionName: 'balanceOf',\n args: [account.address],\n to: address,\n from: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: i,\n })),\n stateOverrides: [\n {\n address: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: 0,\n },\n ],\n },\n ]\n : []),\n {\n calls: [...calls, {}].map((call) => ({\n ...call,\n from: account?.address,\n })),\n stateOverrides,\n },\n ...(traceAssetChanges\n ? [\n // ETH post balances\n {\n calls: [{ data: getBalanceData }],\n },\n // Asset post balances\n {\n calls: assetAddresses.map((address, i) => ({\n abi: [\n ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__.from('function balanceOf(address) returns (uint256)'),\n ],\n functionName: 'balanceOf',\n args: [account.address],\n to: address,\n from: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: i,\n })),\n stateOverrides: [\n {\n address: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: 0,\n },\n ],\n },\n // Decimals\n {\n calls: assetAddresses.map((address, i) => ({\n to: address,\n abi: [\n ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__.from('function decimals() returns (uint256)'),\n ],\n functionName: 'decimals',\n from: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: i,\n })),\n stateOverrides: [\n {\n address: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: 0,\n },\n ],\n },\n // Token URI\n {\n calls: assetAddresses.map((address, i) => ({\n to: address,\n abi: [\n ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__.from('function tokenURI(uint256) returns (string)'),\n ],\n functionName: 'tokenURI',\n args: [0n],\n from: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: i,\n })),\n stateOverrides: [\n {\n address: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: 0,\n },\n ],\n },\n // Symbols\n {\n calls: assetAddresses.map((address, i) => ({\n to: address,\n abi: [ox_AbiFunction__WEBPACK_IMPORTED_MODULE_4__.from('function symbol() returns (string)')],\n functionName: 'symbol',\n from: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: i,\n })),\n stateOverrides: [\n {\n address: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.zeroAddress,\n nonce: 0,\n },\n ],\n },\n ]\n : []),\n ],\n traceTransfers,\n validation,\n });\n const block_results = traceAssetChanges ? blocks[2] : blocks[0];\n const [block_ethPre, block_assetsPre, , block_ethPost, block_assetsPost, block_decimals, block_tokenURI, block_symbols,] = traceAssetChanges ? blocks : [];\n // Extract call results from the simulation.\n const { calls: block_calls, ...block } = block_results;\n const results = block_calls.slice(0, -1) ?? [];\n // Extract pre-execution ETH and asset balances.\n const ethPre = block_ethPre?.calls ?? [];\n const assetsPre = block_assetsPre?.calls ?? [];\n const balancesPre = [...ethPre, ...assetsPre].map((call) => call.status === 'success' ? (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_9__.hexToBigInt)(call.data) : null);\n // Extract post-execution ETH and asset balances.\n const ethPost = block_ethPost?.calls ?? [];\n const assetsPost = block_assetsPost?.calls ?? [];\n const balancesPost = [...ethPost, ...assetsPost].map((call) => call.status === 'success' ? (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_9__.hexToBigInt)(call.data) : null);\n // Extract asset symbols & decimals.\n const decimals = (block_decimals?.calls ?? []).map((x) => x.status === 'success' ? x.result : null);\n const symbols = (block_symbols?.calls ?? []).map((x) => x.status === 'success' ? x.result : null);\n const tokenURI = (block_tokenURI?.calls ?? []).map((x) => x.status === 'success' ? x.result : null);\n const changes = [];\n for (const [i, balancePost] of balancesPost.entries()) {\n const balancePre = balancesPre[i];\n if (typeof balancePost !== 'bigint')\n continue;\n if (typeof balancePre !== 'bigint')\n continue;\n const decimals_ = decimals[i - 1];\n const symbol_ = symbols[i - 1];\n const tokenURI_ = tokenURI[i - 1];\n const token = (() => {\n if (i === 0)\n return {\n address: _constants_address_js__WEBPACK_IMPORTED_MODULE_8__.ethAddress,\n decimals: 18,\n symbol: 'ETH',\n };\n return {\n address: assetAddresses[i - 1],\n decimals: tokenURI_ || decimals_ ? Number(decimals_ ?? 1) : undefined,\n symbol: symbol_ ?? undefined,\n };\n })();\n if (changes.some((change) => change.token.address === token.address))\n continue;\n changes.push({\n token,\n value: {\n pre: balancePre,\n post: balancePost,\n diff: balancePost - balancePre,\n },\n });\n }\n return {\n assetChanges: changes,\n block,\n results,\n };\n}\n//# sourceMappingURL=simulateCalls.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvc2ltdWxhdGVDYWxscy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFvRDtBQUNOO0FBQ3NCO0FBQ0M7QUFDWTtBQUNoQztBQUMyQjtBQUN6QjtBQUNPO0FBQ0o7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixzQkFBc0I7QUFDdEI7QUFDQTtBQUNBO0FBQ0EsWUFBWSx1Q0FBdUM7QUFDbkQsWUFBWSxVQUFVO0FBQ3RCLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ087QUFDUCxZQUFZLCtGQUErRjtBQUMzRztBQUNBLFVBQVUsNkVBQVk7QUFDdEI7QUFDQTtBQUNBLGtCQUFrQixzREFBUztBQUMzQjtBQUNBO0FBQ0EsVUFBVSxxREFBcUIsQ0FBQyxtREFBbUI7QUFDbkQsc0JBQXNCLHNGQUFpQztBQUN2RDtBQUNBO0FBQ0EsZ0JBQWdCLHNEQUFzQixDQUFDLGdEQUFnQjtBQUN2RDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsYUFBYSxRQUFRLHNFQUFnQjtBQUN6RDtBQUNBO0FBQ0EsaUNBQWlDLG9GQUFrQjtBQUNuRCxhQUFhO0FBQ2IscUNBQXFDLHNCQUFzQjtBQUMzRCxTQUFTO0FBQ1Q7QUFDQSx5QkFBeUIsa0VBQWM7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0Msc0JBQXNCO0FBQ3hEO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLGdEQUFnQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyw4REFBVztBQUM3QztBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0EseUNBQXlDLDhEQUFXO0FBQ3BEO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQztBQUNwQztBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHNCQUFzQjtBQUN4RCxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsZ0RBQWdCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLDhEQUFXO0FBQzdDO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQSx5Q0FBeUMsOERBQVc7QUFDcEQ7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyxnREFBZ0I7QUFDaEQ7QUFDQTtBQUNBLGtDQUFrQyw4REFBVztBQUM3QztBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0EseUNBQXlDLDhEQUFXO0FBQ3BEO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsZ0RBQWdCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyw4REFBVztBQUM3QztBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0EseUNBQXlDLDhEQUFXO0FBQ3BEO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLGdEQUFnQjtBQUNsRDtBQUNBLGtDQUFrQyw4REFBVztBQUM3QztBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0EseUNBQXlDLDhEQUFXO0FBQ3BEO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsWUFBWSwrQkFBK0I7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0RkFBNEYsNERBQVc7QUFDdkc7QUFDQTtBQUNBO0FBQ0EsK0ZBQStGLDREQUFXO0FBQzFHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsNkRBQVU7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9zaW11bGF0ZUNhbGxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEFiaUNvbnN0cnVjdG9yIGZyb20gJ294L0FiaUNvbnN0cnVjdG9yJztcbmltcG9ydCAqIGFzIEFiaUZ1bmN0aW9uIGZyb20gJ294L0FiaUZ1bmN0aW9uJztcbmltcG9ydCB7IHBhcnNlQWNjb3VudCB9IGZyb20gJy4uLy4uL2FjY291bnRzL3V0aWxzL3BhcnNlQWNjb3VudC5qcyc7XG5pbXBvcnQgeyBldGhBZGRyZXNzLCB6ZXJvQWRkcmVzcyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9hZGRyZXNzLmpzJztcbmltcG9ydCB7IGRlcGxveWxlc3NDYWxsVmlhQnl0ZWNvZGVCeXRlY29kZSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb250cmFjdHMuanMnO1xuaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2Jhc2UuanMnO1xuaW1wb3J0IHsgZW5jb2RlRnVuY3Rpb25EYXRhLCB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9lbmNvZGVGdW5jdGlvbkRhdGEuanMnO1xuaW1wb3J0IHsgaGV4VG9CaWdJbnQgfSBmcm9tICcuLi8uLi91dGlscy9pbmRleC5qcyc7XG5pbXBvcnQgeyBjcmVhdGVBY2Nlc3NMaXN0LCB9IGZyb20gJy4vY3JlYXRlQWNjZXNzTGlzdC5qcyc7XG5pbXBvcnQgeyBzaW11bGF0ZUJsb2NrcywgfSBmcm9tICcuL3NpbXVsYXRlQmxvY2tzLmpzJztcbmNvbnN0IGdldEJhbGFuY2VDb2RlID0gJzB4NjA4MDYwNDA1MjM0ODAxNTYwMGU1NzVmODBmZDViNTA2MTAxNmQ4MDYxMDAxYzVmMzk1ZmYzZmU2MDgwNjA0MDUyMzQ4MDE1NjEwMDBmNTc1ZjgwZmQ1YjUwNjAwNDM2MTA2MTAwMjk1NzVmMzU2MGUwMWM4MDYzZjhiMmNiNGYxNDYxMDAyZDU3NWI1ZjgwZmQ1YjYxMDA0NzYwMDQ4MDM2MDM4MTAxOTA2MTAwNDI5MTkwNjEwMGRiNTY1YjYxMDA1ZDU2NWI2MDQwNTE2MTAwNTQ5MTkwNjEwMTFlNTY1YjYwNDA1MTgwOTEwMzkwZjM1YjVmODE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjMxOTA1MDkxOTA1MDU2NWI1ZjgwZmQ1YjVmNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmODIxNjkwNTA5MTkwNTA1NjViNWY2MTAwYWE4MjYxMDA4MTU2NWI5MDUwOTE5MDUwNTY1YjYxMDBiYTgxNjEwMGEwNTY1YjgxMTQ2MTAwYzQ1NzVmODBmZDViNTA1NjViNWY4MTM1OTA1MDYxMDBkNTgxNjEwMGIxNTY1YjkyOTE1MDUwNTY1YjVmNjAyMDgyODQwMzEyMTU2MTAwZjA1NzYxMDBlZjYxMDA3ZDU2NWI1YjVmNjEwMGZkODQ4Mjg1MDE2MTAwYzc1NjViOTE1MDUwOTI5MTUwNTA1NjViNWY4MTkwNTA5MTkwNTA1NjViNjEwMTE4ODE2MTAxMDY1NjViODI1MjUwNTA1NjViNWY2MDIwODIwMTkwNTA2MTAxMzE1ZjgzMDE4NDYxMDEwZjU2NWI5MjkxNTA1MDU2ZmVhMjY0Njk3MDY2NzM1ODIyMTIyMDNiOWZlOTI5ZmU5OTVjN2NmOTg4N2YwYmRiYThhMzZkZDc4ZThiNzNmMTQ5YjE3ZDJkOWFkN2NkMDlkMmRjNjI2NDczNmY2YzYzNDMwMDA4MWEwMDMzJztcbi8qKlxuICogU2ltdWxhdGVzIGV4ZWN1dGlvbiBvZiBhIGJhdGNoIG9mIGNhbGxzLlxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBTaW11bGF0ZUNhbGxzUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFJlc3VsdHMuIHtAbGluayBTaW11bGF0ZUNhbGxzUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgcGFyc2VFdGhlciB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBzaW11bGF0ZUNhbGxzIH0gZnJvbSAndmllbS9hY3Rpb25zJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKlxuICogY29uc3QgcmVzdWx0ID0gYXdhaXQgc2ltdWxhdGVDYWxscyhjbGllbnQsIHtcbiAqICAgYWNjb3VudDogJzB4NWEwYjU0ZDVkYzE3ZTQ4MmZlOGIwYmRjYTUzMjAxNjFiOTVmYjkyOScsXG4gKiAgIGNhbGxzOiBbe1xuICogICAgIHtcbiAqICAgICAgIGRhdGE6ICcweGRlYWRiZWVmJyxcbiAqICAgICAgIHRvOiAnMHg3MDk5Nzk3MGM1MTgxMmRjM2EwMTBjN2QwMWI1MGUwZDE3ZGM3OWM4JyxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIHRvOiAnMHg3MDk5Nzk3MGM1MTgxMmRjM2EwMTBjN2QwMWI1MGUwZDE3ZGM3OWM4JyxcbiAqICAgICAgIHZhbHVlOiBwYXJzZUV0aGVyKCcxJyksXG4gKiAgICAgfSxcbiAqICAgXVxuICogfSlcbiAqIGBgYFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2ltdWxhdGVDYWxscyhjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGJsb2NrTnVtYmVyLCBibG9ja1RhZywgY2FsbHMsIHN0YXRlT3ZlcnJpZGVzLCB0cmFjZUFzc2V0Q2hhbmdlcywgdHJhY2VUcmFuc2ZlcnMsIHZhbGlkYXRpb24sIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IGFjY291bnQgPSBwYXJhbWV0ZXJzLmFjY291bnRcbiAgICAgICAgPyBwYXJzZUFjY291bnQocGFyYW1ldGVycy5hY2NvdW50KVxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICBpZiAodHJhY2VBc3NldENoYW5nZXMgJiYgIWFjY291bnQpXG4gICAgICAgIHRocm93IG5ldyBCYXNlRXJyb3IoJ2BhY2NvdW50YCBpcyByZXF1aXJlZCB3aGVuIGB0cmFjZUFzc2V0Q2hhbmdlc2AgaXMgdHJ1ZScpO1xuICAgIC8vIERlcml2ZSBieXRlY29kZSB0byBleHRyYWN0IEVUSCBiYWxhbmNlIHZpYSBhIGNvbnRyYWN0IGNhbGwuXG4gICAgY29uc3QgZ2V0QmFsYW5jZURhdGEgPSBhY2NvdW50XG4gICAgICAgID8gQWJpQ29uc3RydWN0b3IuZW5jb2RlKEFiaUNvbnN0cnVjdG9yLmZyb20oJ2NvbnN0cnVjdG9yKGJ5dGVzLCBieXRlcyknKSwge1xuICAgICAgICAgICAgYnl0ZWNvZGU6IGRlcGxveWxlc3NDYWxsVmlhQnl0ZWNvZGVCeXRlY29kZSxcbiAgICAgICAgICAgIGFyZ3M6IFtcbiAgICAgICAgICAgICAgICBnZXRCYWxhbmNlQ29kZSxcbiAgICAgICAgICAgICAgICBBYmlGdW5jdGlvbi5lbmNvZGVEYXRhKEFiaUZ1bmN0aW9uLmZyb20oJ2Z1bmN0aW9uIGdldEJhbGFuY2UoYWRkcmVzcyknKSwgW2FjY291bnQuYWRkcmVzc10pLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSlcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgLy8gRmV0Y2ggRVJDMjAvNzIxIGFkZHJlc3NlcyB0aGF0IHdlcmUgXCJ0b3VjaGVkXCIgZnJvbSB0aGUgY2FsbHMuXG4gICAgY29uc3QgYXNzZXRBZGRyZXNzZXMgPSB0cmFjZUFzc2V0Q2hhbmdlc1xuICAgICAgICA/IGF3YWl0IFByb21pc2UuYWxsKHBhcmFtZXRlcnMuY2FsbHMubWFwKGFzeW5jIChjYWxsKSA9PiB7XG4gICAgICAgICAgICBpZiAoIWNhbGwuZGF0YSAmJiAhY2FsbC5hYmkpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgeyBhY2Nlc3NMaXN0IH0gPSBhd2FpdCBjcmVhdGVBY2Nlc3NMaXN0KGNsaWVudCwge1xuICAgICAgICAgICAgICAgIGFjY291bnQ6IGFjY291bnQuYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAuLi5jYWxsLFxuICAgICAgICAgICAgICAgIGRhdGE6IGNhbGwuYWJpID8gZW5jb2RlRnVuY3Rpb25EYXRhKGNhbGwpIDogY2FsbC5kYXRhLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gYWNjZXNzTGlzdC5tYXAoKHsgYWRkcmVzcywgc3RvcmFnZUtleXMgfSkgPT4gc3RvcmFnZUtleXMubGVuZ3RoID4gMCA/IGFkZHJlc3MgOiBudWxsKTtcbiAgICAgICAgfSkpLnRoZW4oKHgpID0+IHguZmxhdCgpLmZpbHRlcihCb29sZWFuKSlcbiAgICAgICAgOiBbXTtcbiAgICBjb25zdCBibG9ja3MgPSBhd2FpdCBzaW11bGF0ZUJsb2NrcyhjbGllbnQsIHtcbiAgICAgICAgYmxvY2tOdW1iZXIsXG4gICAgICAgIGJsb2NrVGFnOiBibG9ja1RhZyxcbiAgICAgICAgYmxvY2tzOiBbXG4gICAgICAgICAgICAuLi4odHJhY2VBc3NldENoYW5nZXNcbiAgICAgICAgICAgICAgICA/IFtcbiAgICAgICAgICAgICAgICAgICAgLy8gRVRIIHByZSBiYWxhbmNlc1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsczogW3sgZGF0YTogZ2V0QmFsYW5jZURhdGEgfV0sXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZU92ZXJyaWRlcyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgLy8gQXNzZXQgcHJlIGJhbGFuY2VzXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxzOiBhc3NldEFkZHJlc3Nlcy5tYXAoKGFkZHJlc3MsIGkpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJpOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFiaUZ1bmN0aW9uLmZyb20oJ2Z1bmN0aW9uIGJhbGFuY2VPZihhZGRyZXNzKSByZXR1cm5zICh1aW50MjU2KScpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnYmFsYW5jZU9mJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzOiBbYWNjb3VudC5hZGRyZXNzXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bzogYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tOiB6ZXJvQWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub25jZTogaSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlT3ZlcnJpZGVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiB6ZXJvQWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uY2U6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIDogW10pLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNhbGxzOiBbLi4uY2FsbHMsIHt9XS5tYXAoKGNhbGwpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmNhbGwsXG4gICAgICAgICAgICAgICAgICAgIGZyb206IGFjY291bnQ/LmFkZHJlc3MsXG4gICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgIHN0YXRlT3ZlcnJpZGVzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC4uLih0cmFjZUFzc2V0Q2hhbmdlc1xuICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgICAvLyBFVEggcG9zdCBiYWxhbmNlc1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsczogW3sgZGF0YTogZ2V0QmFsYW5jZURhdGEgfV0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIC8vIEFzc2V0IHBvc3QgYmFsYW5jZXNcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbHM6IGFzc2V0QWRkcmVzc2VzLm1hcCgoYWRkcmVzcywgaSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYmk6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWJpRnVuY3Rpb24uZnJvbSgnZnVuY3Rpb24gYmFsYW5jZU9mKGFkZHJlc3MpIHJldHVybnMgKHVpbnQyNTYpJyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWU6ICdiYWxhbmNlT2YnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M6IFthY2NvdW50LmFkZHJlc3NdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvOiBhZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb206IHplcm9BZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmNlOiBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGVPdmVycmlkZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6IHplcm9BZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub25jZTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgLy8gRGVjaW1hbHNcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbHM6IGFzc2V0QWRkcmVzc2VzLm1hcCgoYWRkcmVzcywgaSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bzogYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYmk6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWJpRnVuY3Rpb24uZnJvbSgnZnVuY3Rpb24gZGVjaW1hbHMoKSByZXR1cm5zICh1aW50MjU2KScpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnZGVjaW1hbHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb206IHplcm9BZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmNlOiBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGVPdmVycmlkZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6IHplcm9BZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub25jZTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgLy8gVG9rZW4gVVJJXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxzOiBhc3NldEFkZHJlc3Nlcy5tYXAoKGFkZHJlc3MsIGkpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG86IGFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJpOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFiaUZ1bmN0aW9uLmZyb20oJ2Z1bmN0aW9uIHRva2VuVVJJKHVpbnQyNTYpIHJldHVybnMgKHN0cmluZyknKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ3Rva2VuVVJJJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzOiBbMG5dLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb206IHplcm9BZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmNlOiBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGVPdmVycmlkZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6IHplcm9BZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub25jZTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgLy8gU3ltYm9sc1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsczogYXNzZXRBZGRyZXNzZXMubWFwKChhZGRyZXNzLCBpKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvOiBhZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFiaTogW0FiaUZ1bmN0aW9uLmZyb20oJ2Z1bmN0aW9uIHN5bWJvbCgpIHJldHVybnMgKHN0cmluZyknKV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnc3ltYm9sJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tOiB6ZXJvQWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub25jZTogaSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlT3ZlcnJpZGVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiB6ZXJvQWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uY2U6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIDogW10pLFxuICAgICAgICBdLFxuICAgICAgICB0cmFjZVRyYW5zZmVycyxcbiAgICAgICAgdmFsaWRhdGlvbixcbiAgICB9KTtcbiAgICBjb25zdCBibG9ja19yZXN1bHRzID0gdHJhY2VBc3NldENoYW5nZXMgPyBibG9ja3NbMl0gOiBibG9ja3NbMF07XG4gICAgY29uc3QgW2Jsb2NrX2V0aFByZSwgYmxvY2tfYXNzZXRzUHJlLCAsIGJsb2NrX2V0aFBvc3QsIGJsb2NrX2Fzc2V0c1Bvc3QsIGJsb2NrX2RlY2ltYWxzLCBibG9ja190b2tlblVSSSwgYmxvY2tfc3ltYm9scyxdID0gdHJhY2VBc3NldENoYW5nZXMgPyBibG9ja3MgOiBbXTtcbiAgICAvLyBFeHRyYWN0IGNhbGwgcmVzdWx0cyBmcm9tIHRoZSBzaW11bGF0aW9uLlxuICAgIGNvbnN0IHsgY2FsbHM6IGJsb2NrX2NhbGxzLCAuLi5ibG9jayB9ID0gYmxvY2tfcmVzdWx0cztcbiAgICBjb25zdCByZXN1bHRzID0gYmxvY2tfY2FsbHMuc2xpY2UoMCwgLTEpID8/IFtdO1xuICAgIC8vIEV4dHJhY3QgcHJlLWV4ZWN1dGlvbiBFVEggYW5kIGFzc2V0IGJhbGFuY2VzLlxuICAgIGNvbnN0IGV0aFByZSA9IGJsb2NrX2V0aFByZT8uY2FsbHMgPz8gW107XG4gICAgY29uc3QgYXNzZXRzUHJlID0gYmxvY2tfYXNzZXRzUHJlPy5jYWxscyA/PyBbXTtcbiAgICBjb25zdCBiYWxhbmNlc1ByZSA9IFsuLi5ldGhQcmUsIC4uLmFzc2V0c1ByZV0ubWFwKChjYWxsKSA9PiBjYWxsLnN0YXR1cyA9PT0gJ3N1Y2Nlc3MnID8gaGV4VG9CaWdJbnQoY2FsbC5kYXRhKSA6IG51bGwpO1xuICAgIC8vIEV4dHJhY3QgcG9zdC1leGVjdXRpb24gRVRIIGFuZCBhc3NldCBiYWxhbmNlcy5cbiAgICBjb25zdCBldGhQb3N0ID0gYmxvY2tfZXRoUG9zdD8uY2FsbHMgPz8gW107XG4gICAgY29uc3QgYXNzZXRzUG9zdCA9IGJsb2NrX2Fzc2V0c1Bvc3Q/LmNhbGxzID8/IFtdO1xuICAgIGNvbnN0IGJhbGFuY2VzUG9zdCA9IFsuLi5ldGhQb3N0LCAuLi5hc3NldHNQb3N0XS5tYXAoKGNhbGwpID0+IGNhbGwuc3RhdHVzID09PSAnc3VjY2VzcycgPyBoZXhUb0JpZ0ludChjYWxsLmRhdGEpIDogbnVsbCk7XG4gICAgLy8gRXh0cmFjdCBhc3NldCBzeW1ib2xzICYgZGVjaW1hbHMuXG4gICAgY29uc3QgZGVjaW1hbHMgPSAoYmxvY2tfZGVjaW1hbHM/LmNhbGxzID8/IFtdKS5tYXAoKHgpID0+IHguc3RhdHVzID09PSAnc3VjY2VzcycgPyB4LnJlc3VsdCA6IG51bGwpO1xuICAgIGNvbnN0IHN5bWJvbHMgPSAoYmxvY2tfc3ltYm9scz8uY2FsbHMgPz8gW10pLm1hcCgoeCkgPT4geC5zdGF0dXMgPT09ICdzdWNjZXNzJyA/IHgucmVzdWx0IDogbnVsbCk7XG4gICAgY29uc3QgdG9rZW5VUkkgPSAoYmxvY2tfdG9rZW5VUkk/LmNhbGxzID8/IFtdKS5tYXAoKHgpID0+IHguc3RhdHVzID09PSAnc3VjY2VzcycgPyB4LnJlc3VsdCA6IG51bGwpO1xuICAgIGNvbnN0IGNoYW5nZXMgPSBbXTtcbiAgICBmb3IgKGNvbnN0IFtpLCBiYWxhbmNlUG9zdF0gb2YgYmFsYW5jZXNQb3N0LmVudHJpZXMoKSkge1xuICAgICAgICBjb25zdCBiYWxhbmNlUHJlID0gYmFsYW5jZXNQcmVbaV07XG4gICAgICAgIGlmICh0eXBlb2YgYmFsYW5jZVBvc3QgIT09ICdiaWdpbnQnKVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIGlmICh0eXBlb2YgYmFsYW5jZVByZSAhPT0gJ2JpZ2ludCcpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgY29uc3QgZGVjaW1hbHNfID0gZGVjaW1hbHNbaSAtIDFdO1xuICAgICAgICBjb25zdCBzeW1ib2xfID0gc3ltYm9sc1tpIC0gMV07XG4gICAgICAgIGNvbnN0IHRva2VuVVJJXyA9IHRva2VuVVJJW2kgLSAxXTtcbiAgICAgICAgY29uc3QgdG9rZW4gPSAoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGkgPT09IDApXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogZXRoQWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgZGVjaW1hbHM6IDE4LFxuICAgICAgICAgICAgICAgICAgICBzeW1ib2w6ICdFVEgnLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGFkZHJlc3M6IGFzc2V0QWRkcmVzc2VzW2kgLSAxXSxcbiAgICAgICAgICAgICAgICBkZWNpbWFsczogdG9rZW5VUklfIHx8IGRlY2ltYWxzXyA/IE51bWJlcihkZWNpbWFsc18gPz8gMSkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgc3ltYm9sOiBzeW1ib2xfID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pKCk7XG4gICAgICAgIGlmIChjaGFuZ2VzLnNvbWUoKGNoYW5nZSkgPT4gY2hhbmdlLnRva2VuLmFkZHJlc3MgPT09IHRva2VuLmFkZHJlc3MpKVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIGNoYW5nZXMucHVzaCh7XG4gICAgICAgICAgICB0b2tlbixcbiAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgcHJlOiBiYWxhbmNlUHJlLFxuICAgICAgICAgICAgICAgIHBvc3Q6IGJhbGFuY2VQb3N0LFxuICAgICAgICAgICAgICAgIGRpZmY6IGJhbGFuY2VQb3N0IC0gYmFsYW5jZVByZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICBhc3NldENoYW5nZXM6IGNoYW5nZXMsXG4gICAgICAgIGJsb2NrLFxuICAgICAgICByZXN1bHRzLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zaW11bGF0ZUNhbGxzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateCalls.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateContract.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/simulateContract.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ simulateContract: () => (/* binding */ simulateContract)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/abi/decodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/errors/getContractError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getContractError.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _call_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./call.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/call.js\");\n\n\n\n\n\n\n/**\n * Simulates/validates a contract interaction. This is useful for retrieving **return data** and **revert reasons** of contract write functions.\n *\n * - Docs: https://viem.sh/docs/contract/simulateContract\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/contracts_writing-to-contracts\n *\n * This function does not require gas to execute and _**does not**_ change the state of the blockchain. It is almost identical to [`readContract`](https://viem.sh/docs/contract/readContract), but also supports contract write functions.\n *\n * Internally, uses a [Public Client](https://viem.sh/docs/clients/public) to call the [`call` action](https://viem.sh/docs/actions/public/call) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).\n *\n * @param client - Client to use\n * @param parameters - {@link SimulateContractParameters}\n * @returns The simulation result and write request. {@link SimulateContractReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { simulateContract } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const result = await simulateContract(client, {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi(['function mint(uint32) view returns (uint32)']),\n * functionName: 'mint',\n * args: ['69420'],\n * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n */\nasync function simulateContract(client, parameters) {\n const { abi, address, args, dataSuffix, functionName, ...callRequest } = parameters;\n const account = callRequest.account\n ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__.parseAccount)(callRequest.account)\n : client.account;\n const calldata = (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_1__.encodeFunctionData)({ abi, args, functionName });\n try {\n const { data } = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(client, _call_js__WEBPACK_IMPORTED_MODULE_3__.call, 'call')({\n batch: false,\n data: `${calldata}${dataSuffix ? dataSuffix.replace('0x', '') : ''}`,\n to: address,\n ...callRequest,\n account,\n });\n const result = (0,_utils_abi_decodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_4__.decodeFunctionResult)({\n abi,\n args,\n functionName,\n data: data || '0x',\n });\n const minimizedAbi = abi.filter((abiItem) => 'name' in abiItem && abiItem.name === parameters.functionName);\n return {\n result,\n request: {\n abi: minimizedAbi,\n address,\n args,\n dataSuffix,\n functionName,\n ...callRequest,\n account,\n },\n };\n }\n catch (error) {\n throw (0,_utils_errors_getContractError_js__WEBPACK_IMPORTED_MODULE_5__.getContractError)(error, {\n abi,\n address,\n args,\n docsPath: '/docs/contract/simulateContract',\n functionName,\n sender: account?.address,\n });\n }\n}\n//# sourceMappingURL=simulateContract.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvc2ltdWxhdGVDb250cmFjdC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQXFFO0FBQ1c7QUFDSjtBQUNEO0FBQ3RCO0FBQ3BCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsc0RBQXNEO0FBQ3REO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLCtEQUErRDtBQUMzRTtBQUNBLFVBQVUsNkVBQVk7QUFDdEI7QUFDQSxxQkFBcUIsb0ZBQWtCLEdBQUcseUJBQXlCO0FBQ25FO0FBQ0EsZ0JBQWdCLE9BQU8sUUFBUSw4REFBUyxTQUFTLDBDQUFJO0FBQ3JEO0FBQ0EscUJBQXFCLFNBQVMsRUFBRSwrQ0FBK0M7QUFDL0U7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULHVCQUF1Qix3RkFBb0I7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxjQUFjLG1GQUFnQjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy9zaW11bGF0ZUNvbnRyYWN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgZGVjb2RlRnVuY3Rpb25SZXN1bHQsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2RlY29kZUZ1bmN0aW9uUmVzdWx0LmpzJztcbmltcG9ydCB7IGVuY29kZUZ1bmN0aW9uRGF0YSwgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRnVuY3Rpb25EYXRhLmpzJztcbmltcG9ydCB7IGdldENvbnRyYWN0RXJyb3IsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3JzL2dldENvbnRyYWN0RXJyb3IuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IGNhbGwgfSBmcm9tICcuL2NhbGwuanMnO1xuLyoqXG4gKiBTaW11bGF0ZXMvdmFsaWRhdGVzIGEgY29udHJhY3QgaW50ZXJhY3Rpb24uIFRoaXMgaXMgdXNlZnVsIGZvciByZXRyaWV2aW5nICoqcmV0dXJuIGRhdGEqKiBhbmQgKipyZXZlcnQgcmVhc29ucyoqIG9mIGNvbnRyYWN0IHdyaXRlIGZ1bmN0aW9ucy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L3NpbXVsYXRlQ29udHJhY3RcbiAqIC0gRXhhbXBsZXM6IGh0dHBzOi8vc3RhY2tibGl0ei5jb20vZ2l0aHViL3dldm0vdmllbS90cmVlL21haW4vZXhhbXBsZXMvY29udHJhY3RzX3dyaXRpbmctdG8tY29udHJhY3RzXG4gKlxuICogVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCByZXF1aXJlIGdhcyB0byBleGVjdXRlIGFuZCBfKipkb2VzIG5vdCoqXyBjaGFuZ2UgdGhlIHN0YXRlIG9mIHRoZSBibG9ja2NoYWluLiBJdCBpcyBhbG1vc3QgaWRlbnRpY2FsIHRvIFtgcmVhZENvbnRyYWN0YF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvY29udHJhY3QvcmVhZENvbnRyYWN0KSwgYnV0IGFsc28gc3VwcG9ydHMgY29udHJhY3Qgd3JpdGUgZnVuY3Rpb25zLlxuICpcbiAqIEludGVybmFsbHksIHVzZXMgYSBbUHVibGljIENsaWVudF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvY2xpZW50cy9wdWJsaWMpIHRvIGNhbGwgdGhlIFtgY2FsbGAgYWN0aW9uXShodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9jYWxsKSB3aXRoIFtBQkktZW5jb2RlZCBgZGF0YWBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L2VuY29kZUZ1bmN0aW9uRGF0YSkuXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIFNpbXVsYXRlQ29udHJhY3RQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIHNpbXVsYXRpb24gcmVzdWx0IGFuZCB3cml0ZSByZXF1ZXN0LiB7QGxpbmsgU2ltdWxhdGVDb250cmFjdFJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBzaW11bGF0ZUNvbnRyYWN0IH0gZnJvbSAndmllbS9jb250cmFjdCdcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgcmVzdWx0ID0gYXdhaXQgc2ltdWxhdGVDb250cmFjdChjbGllbnQsIHtcbiAqICAgYWRkcmVzczogJzB4RkJBMzkxMkNhMDRkZDQ1OGM4NDNlMkVFMDg5NjdmQzA0ZjM1NzljMicsXG4gKiAgIGFiaTogcGFyc2VBYmkoWydmdW5jdGlvbiBtaW50KHVpbnQzMikgdmlldyByZXR1cm5zICh1aW50MzIpJ10pLFxuICogICBmdW5jdGlvbk5hbWU6ICdtaW50JyxcbiAqICAgYXJnczogWyc2OTQyMCddLFxuICogICBhY2NvdW50OiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaW11bGF0ZUNvbnRyYWN0KGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWJpLCBhZGRyZXNzLCBhcmdzLCBkYXRhU3VmZml4LCBmdW5jdGlvbk5hbWUsIC4uLmNhbGxSZXF1ZXN0IH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IGFjY291bnQgPSBjYWxsUmVxdWVzdC5hY2NvdW50XG4gICAgICAgID8gcGFyc2VBY2NvdW50KGNhbGxSZXF1ZXN0LmFjY291bnQpXG4gICAgICAgIDogY2xpZW50LmFjY291bnQ7XG4gICAgY29uc3QgY2FsbGRhdGEgPSBlbmNvZGVGdW5jdGlvbkRhdGEoeyBhYmksIGFyZ3MsIGZ1bmN0aW9uTmFtZSB9KTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGNhbGwsICdjYWxsJykoe1xuICAgICAgICAgICAgYmF0Y2g6IGZhbHNlLFxuICAgICAgICAgICAgZGF0YTogYCR7Y2FsbGRhdGF9JHtkYXRhU3VmZml4ID8gZGF0YVN1ZmZpeC5yZXBsYWNlKCcweCcsICcnKSA6ICcnfWAsXG4gICAgICAgICAgICB0bzogYWRkcmVzcyxcbiAgICAgICAgICAgIC4uLmNhbGxSZXF1ZXN0LFxuICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGRlY29kZUZ1bmN0aW9uUmVzdWx0KHtcbiAgICAgICAgICAgIGFiaSxcbiAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICBkYXRhOiBkYXRhIHx8ICcweCcsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBtaW5pbWl6ZWRBYmkgPSBhYmkuZmlsdGVyKChhYmlJdGVtKSA9PiAnbmFtZScgaW4gYWJpSXRlbSAmJiBhYmlJdGVtLm5hbWUgPT09IHBhcmFtZXRlcnMuZnVuY3Rpb25OYW1lKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHJlc3VsdCxcbiAgICAgICAgICAgIHJlcXVlc3Q6IHtcbiAgICAgICAgICAgICAgICBhYmk6IG1pbmltaXplZEFiaSxcbiAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgICAgICAgZGF0YVN1ZmZpeCxcbiAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICAgICAgLi4uY2FsbFJlcXVlc3QsXG4gICAgICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aHJvdyBnZXRDb250cmFjdEVycm9yKGVycm9yLCB7XG4gICAgICAgICAgICBhYmksXG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIGRvY3NQYXRoOiAnL2RvY3MvY29udHJhY3Qvc2ltdWxhdGVDb250cmFjdCcsXG4gICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICBzZW5kZXI6IGFjY291bnQ/LmFkZHJlc3MsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNpbXVsYXRlQ29udHJhY3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateContract.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/uninstallFilter.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/uninstallFilter.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ uninstallFilter: () => (/* binding */ uninstallFilter)\n/* harmony export */ });\n/**\n * Destroys a [`Filter`](https://viem.sh/docs/glossary/types#filter).\n *\n * - Docs: https://viem.sh/docs/actions/public/uninstallFilter\n * - JSON-RPC Methods: [`eth_uninstallFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_uninstallFilter)\n *\n * Destroys a Filter that was created from one of the following Actions:\n * - [`createBlockFilter`](https://viem.sh/docs/actions/public/createBlockFilter)\n * - [`createEventFilter`](https://viem.sh/docs/actions/public/createEventFilter)\n * - [`createPendingTransactionFilter`](https://viem.sh/docs/actions/public/createPendingTransactionFilter)\n *\n * @param client - Client to use\n * @param parameters - {@link UninstallFilterParameters}\n * @returns A boolean indicating if the Filter was successfully uninstalled. {@link UninstallFilterReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { createPendingTransactionFilter, uninstallFilter } from 'viem/public'\n *\n * const filter = await createPendingTransactionFilter(client)\n * const uninstalled = await uninstallFilter(client, { filter })\n * // true\n */\nasync function uninstallFilter(_client, { filter }) {\n return filter.request({\n method: 'eth_uninstallFilter',\n params: [filter.id],\n });\n}\n//# sourceMappingURL=uninstallFilter.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvdW5pbnN0YWxsRmlsdGVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsOEVBQThFO0FBQzlFO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxrREFBa0Q7QUFDOUQ7QUFDQTtBQUNBLHVEQUF1RCxRQUFRO0FBQy9EO0FBQ0E7QUFDTywwQ0FBMEMsUUFBUTtBQUN6RDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvdW5pbnN0YWxsRmlsdGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRGVzdHJveXMgYSBbYEZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2dsb3NzYXJ5L3R5cGVzI2ZpbHRlcikuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy91bmluc3RhbGxGaWx0ZXJcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2BldGhfdW5pbnN0YWxsRmlsdGVyYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF91bmluc3RhbGxGaWx0ZXIpXG4gKlxuICogRGVzdHJveXMgYSBGaWx0ZXIgdGhhdCB3YXMgY3JlYXRlZCBmcm9tIG9uZSBvZiB0aGUgZm9sbG93aW5nIEFjdGlvbnM6XG4gKiAtIFtgY3JlYXRlQmxvY2tGaWx0ZXJgXShodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy9jcmVhdGVCbG9ja0ZpbHRlcilcbiAqIC0gW2BjcmVhdGVFdmVudEZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2NyZWF0ZUV2ZW50RmlsdGVyKVxuICogLSBbYGNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcmBdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2NyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcilcbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgVW5pbnN0YWxsRmlsdGVyUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBGaWx0ZXIgd2FzIHN1Y2Nlc3NmdWxseSB1bmluc3RhbGxlZC4ge0BsaW5rIFVuaW5zdGFsbEZpbHRlclJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBjcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXIsIHVuaW5zdGFsbEZpbHRlciB9IGZyb20gJ3ZpZW0vcHVibGljJ1xuICpcbiAqIGNvbnN0IGZpbHRlciA9IGF3YWl0IGNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcihjbGllbnQpXG4gKiBjb25zdCB1bmluc3RhbGxlZCA9IGF3YWl0IHVuaW5zdGFsbEZpbHRlcihjbGllbnQsIHsgZmlsdGVyIH0pXG4gKiAvLyB0cnVlXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1bmluc3RhbGxGaWx0ZXIoX2NsaWVudCwgeyBmaWx0ZXIgfSkge1xuICAgIHJldHVybiBmaWx0ZXIucmVxdWVzdCh7XG4gICAgICAgIG1ldGhvZDogJ2V0aF91bmluc3RhbGxGaWx0ZXInLFxuICAgICAgICBwYXJhbXM6IFtmaWx0ZXIuaWRdLFxuICAgIH0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dW5pbnN0YWxsRmlsdGVyLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/uninstallFilter.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyHash.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/verifyHash.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ verifyErc1271: () => (/* binding */ verifyErc1271),\n/* harmony export */ verifyErc8010: () => (/* binding */ verifyErc8010),\n/* harmony export */ verifyHash: () => (/* binding */ verifyHash)\n/* harmony export */ });\n/* harmony import */ var ox_erc6492__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ox/erc6492 */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/erc6492/SignatureErc6492.js\");\n/* harmony import */ var ox_erc8010__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ox/erc8010 */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/erc8010/SignatureErc8010.js\");\n/* harmony import */ var _constants_abis_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../constants/abis.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var _constants_contracts_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../constants/contracts.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/contracts.js\");\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n/* harmony import */ var _utils_abi_encodeDeployData_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../utils/abi/encodeDeployData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeDeployData.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_address_getAddress_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/address/getAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/getAddress.js\");\n/* harmony import */ var _utils_address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/address/isAddressEqual.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js\");\n/* harmony import */ var _utils_authorization_verifyAuthorization_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/authorization/verifyAuthorization.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/verifyAuthorization.js\");\n/* harmony import */ var _utils_data_concat_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils/data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _utils_data_isHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/data/isHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/isHex.js\");\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_signature_recoverAddress_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/signature/recoverAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/recoverAddress.js\");\n/* harmony import */ var _utils_signature_serializeSignature_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/signature/serializeSignature.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/serializeSignature.js\");\n/* harmony import */ var _call_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./call.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/call.js\");\n/* harmony import */ var _getCode_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getCode.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getCode.js\");\n/* harmony import */ var _readContract_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Verifies a message hash onchain using ERC-6492.\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifyHashParameters}\n * @returns Whether or not the signature is valid. {@link VerifyHashReturnType}\n */\nasync function verifyHash(client, parameters) {\n const { address, hash, erc6492VerifierAddress: verifierAddress = parameters.universalSignatureVerifierAddress ??\n client.chain?.contracts?.erc6492Verifier?.address, multicallAddress = parameters.multicallAddress ??\n client.chain?.contracts?.multicall3?.address, } = parameters;\n const signature = (() => {\n const signature = parameters.signature;\n if ((0,_utils_data_isHex_js__WEBPACK_IMPORTED_MODULE_0__.isHex)(signature))\n return signature;\n if (typeof signature === 'object' && 'r' in signature && 's' in signature)\n return (0,_utils_signature_serializeSignature_js__WEBPACK_IMPORTED_MODULE_1__.serializeSignature)(signature);\n return (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.bytesToHex)(signature);\n })();\n try {\n if (ox_erc8010__WEBPACK_IMPORTED_MODULE_3__.validate(signature))\n return await verifyErc8010(client, {\n ...parameters,\n multicallAddress,\n signature,\n });\n return await verifyErc6492(client, {\n ...parameters,\n verifierAddress,\n signature,\n });\n }\n catch (error) {\n // Fallback attempt to verify the signature via ECDSA recovery.\n try {\n const verified = (0,_utils_address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_4__.isAddressEqual)((0,_utils_address_getAddress_js__WEBPACK_IMPORTED_MODULE_5__.getAddress)(address), await (0,_utils_signature_recoverAddress_js__WEBPACK_IMPORTED_MODULE_6__.recoverAddress)({ hash, signature }));\n if (verified)\n return true;\n }\n catch { }\n if (error instanceof VerificationError) {\n // if the execution fails, the signature was not valid and an internal method inside of the validator reverted\n // this can happen for many reasons, for example if signer can not be recovered from the signature\n // or if the signature has no valid format\n return false;\n }\n throw error;\n }\n}\n/** @internal */\nasync function verifyErc8010(client, parameters) {\n const { address, blockNumber, blockTag, hash, multicallAddress } = parameters;\n const { authorization: authorization_ox, data: initData, signature, to, } = ox_erc8010__WEBPACK_IMPORTED_MODULE_3__.unwrap(parameters.signature);\n // Check if already delegated\n const code = await (0,_getCode_js__WEBPACK_IMPORTED_MODULE_7__.getCode)(client, {\n address,\n blockNumber,\n blockTag,\n });\n // If already delegated, perform standard ERC-1271 verification.\n if (code === (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_8__.concatHex)(['0xef0100', authorization_ox.address]))\n return await verifyErc1271(client, {\n address,\n blockNumber,\n blockTag,\n hash,\n signature,\n });\n const authorization = {\n address: authorization_ox.address,\n chainId: Number(authorization_ox.chainId),\n nonce: Number(authorization_ox.nonce),\n r: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(authorization_ox.r, { size: 32 }),\n s: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(authorization_ox.s, { size: 32 }),\n yParity: authorization_ox.yParity,\n };\n const valid = await (0,_utils_authorization_verifyAuthorization_js__WEBPACK_IMPORTED_MODULE_9__.verifyAuthorization)({\n address,\n authorization,\n });\n if (!valid)\n throw new VerificationError();\n // Deployless verification.\n const results = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_10__.getAction)(client, _readContract_js__WEBPACK_IMPORTED_MODULE_11__.readContract, 'readContract')({\n ...(multicallAddress\n ? { address: multicallAddress }\n : { code: _constants_contracts_js__WEBPACK_IMPORTED_MODULE_12__.multicall3Bytecode }),\n authorizationList: [authorization],\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_13__.multicall3Abi,\n blockNumber,\n blockTag: 'pending',\n functionName: 'aggregate3',\n args: [\n [\n ...(initData\n ? [\n {\n allowFailure: true,\n target: to ?? address,\n callData: initData,\n },\n ]\n : []),\n {\n allowFailure: true,\n target: address,\n callData: (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_14__.encodeFunctionData)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_13__.erc1271Abi,\n functionName: 'isValidSignature',\n args: [hash, signature],\n }),\n },\n ],\n ],\n });\n const data = results[results.length - 1]?.returnData;\n if (data?.startsWith('0x1626ba7e'))\n return true;\n throw new VerificationError();\n}\n/** @internal */\n// biome-ignore lint/correctness/noUnusedVariables: _\nasync function verifyErc6492(client, parameters) {\n const { address, factory, factoryData, hash, signature, verifierAddress, ...rest } = parameters;\n const wrappedSignature = await (async () => {\n // If no `factory` or `factoryData` is provided, it is assumed that the\n // address is not a Smart Account, or the Smart Account is already deployed.\n if (!factory && !factoryData)\n return signature;\n // If the signature is already wrapped, return the signature.\n if (ox_erc6492__WEBPACK_IMPORTED_MODULE_15__.validate(signature))\n return signature;\n // If the Smart Account is not deployed, wrap the signature with a 6492 wrapper\n // to perform counterfactual validation.\n return ox_erc6492__WEBPACK_IMPORTED_MODULE_15__.wrap({\n data: factoryData,\n signature,\n to: factory,\n });\n })();\n const args = verifierAddress\n ? {\n to: verifierAddress,\n data: (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_14__.encodeFunctionData)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_13__.erc6492SignatureValidatorAbi,\n functionName: 'isValidSig',\n args: [address, hash, wrappedSignature],\n }),\n ...rest,\n }\n : {\n data: (0,_utils_abi_encodeDeployData_js__WEBPACK_IMPORTED_MODULE_16__.encodeDeployData)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_13__.erc6492SignatureValidatorAbi,\n args: [address, hash, wrappedSignature],\n bytecode: _constants_contracts_js__WEBPACK_IMPORTED_MODULE_12__.erc6492SignatureValidatorByteCode,\n }),\n ...rest,\n };\n const { data } = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_10__.getAction)(client, _call_js__WEBPACK_IMPORTED_MODULE_17__.call, 'call')(args).catch((error) => {\n if (error instanceof _errors_contract_js__WEBPACK_IMPORTED_MODULE_18__.CallExecutionError)\n throw new VerificationError();\n throw error;\n });\n if ((0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_19__.hexToBool)(data ?? '0x0'))\n return true;\n throw new VerificationError();\n}\n/** @internal */\nasync function verifyErc1271(client, parameters) {\n const { address, blockNumber, blockTag, hash, signature } = parameters;\n const result = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_10__.getAction)(client, _readContract_js__WEBPACK_IMPORTED_MODULE_11__.readContract, 'readContract')({\n address,\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_13__.erc1271Abi,\n args: [hash, signature],\n blockNumber,\n blockTag,\n functionName: 'isValidSignature',\n }).catch((error) => {\n if (error instanceof _errors_contract_js__WEBPACK_IMPORTED_MODULE_18__.ContractFunctionExecutionError)\n throw new VerificationError();\n throw error;\n });\n if (result.startsWith('0x1626ba7e'))\n return true;\n throw new VerificationError();\n}\nclass VerificationError extends Error {\n}\n//# sourceMappingURL=verifyHash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvdmVyaWZ5SGFzaC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUE4QztBQUNBO0FBQ3FEO0FBQ0c7QUFDUDtBQUN2QjtBQUNJO0FBQ1o7QUFDUTtBQUNlO0FBQ2hDO0FBQ0w7QUFDVTtBQUNhO0FBQ3BCO0FBQ3FCO0FBQ1E7QUFDakQ7QUFDTTtBQUNVO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLG9EQUFvRDtBQUNwRDtBQUNPO0FBQ1AsWUFBWTtBQUNaO0FBQ0Esd0RBQXdEO0FBQ3hEO0FBQ0E7QUFDQSxZQUFZLDJEQUFLO0FBQ2pCO0FBQ0E7QUFDQSxtQkFBbUIsMEZBQWtCO0FBQ3JDLGVBQWUsb0VBQVU7QUFDekIsS0FBSztBQUNMO0FBQ0EsWUFBWSxnREFBeUI7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsZ0ZBQWMsQ0FBQyx3RUFBVSxpQkFBaUIsa0ZBQWMsR0FBRyxpQkFBaUI7QUFDekc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSx5REFBeUQ7QUFDckUsWUFBWSxrRUFBa0UsRUFBRSw4Q0FBdUI7QUFDdkc7QUFDQSx1QkFBdUIsb0RBQU87QUFDOUI7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsaUJBQWlCLGdFQUFTO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcscUVBQVcsdUJBQXVCLFVBQVU7QUFDdkQsV0FBVyxxRUFBVyx1QkFBdUIsVUFBVTtBQUN2RDtBQUNBO0FBQ0Esd0JBQXdCLGdHQUFtQjtBQUMzQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwrREFBUyxTQUFTLDJEQUFZO0FBQ3hEO0FBQ0EsZ0JBQWdCO0FBQ2hCLGdCQUFnQixNQUFNLHdFQUFrQixFQUFFO0FBQzFDO0FBQ0EsYUFBYSw4REFBYTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIscUZBQWtCO0FBQ2hELDZCQUE2QiwyREFBVTtBQUN2QztBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDJFQUEyRTtBQUN2RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGlEQUF5QjtBQUNyQztBQUNBO0FBQ0E7QUFDQSxlQUFlLDZDQUFxQjtBQUNwQztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixxRkFBa0I7QUFDcEMscUJBQXFCLDZFQUE0QjtBQUNqRDtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixpRkFBZ0I7QUFDbEMscUJBQXFCLDZFQUE0QjtBQUNqRDtBQUNBLDBCQUEwQix1RkFBaUM7QUFDM0QsYUFBYTtBQUNiO0FBQ0E7QUFDQSxZQUFZLE9BQU8sUUFBUSwrREFBUyxTQUFTLDJDQUFJO0FBQ2pELDZCQUE2QixvRUFBa0I7QUFDL0M7QUFDQTtBQUNBLEtBQUs7QUFDTCxRQUFRLHNFQUFTO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLGtEQUFrRDtBQUM5RCx5QkFBeUIsK0RBQVMsU0FBUywyREFBWTtBQUN2RDtBQUNBLGFBQWEsMkRBQVU7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsNkJBQTZCLGdGQUE4QjtBQUMzRDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy92ZXJpZnlIYXNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpZ25hdHVyZUVyYzY0OTIgfSBmcm9tICdveC9lcmM2NDkyJztcbmltcG9ydCB7IFNpZ25hdHVyZUVyYzgwMTAgfSBmcm9tICdveC9lcmM4MDEwJztcbmltcG9ydCB7IGVyYzEyNzFBYmksIGVyYzY0OTJTaWduYXR1cmVWYWxpZGF0b3JBYmksIG11bHRpY2FsbDNBYmksIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2FiaXMuanMnO1xuaW1wb3J0IHsgZXJjNjQ5MlNpZ25hdHVyZVZhbGlkYXRvckJ5dGVDb2RlLCBtdWx0aWNhbGwzQnl0ZWNvZGUsIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbnRyYWN0cy5qcyc7XG5pbXBvcnQgeyBDYWxsRXhlY3V0aW9uRXJyb3IsIENvbnRyYWN0RnVuY3Rpb25FeGVjdXRpb25FcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvY29udHJhY3QuanMnO1xuaW1wb3J0IHsgZW5jb2RlRGVwbG95RGF0YSwgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRGVwbG95RGF0YS5qcyc7XG5pbXBvcnQgeyBlbmNvZGVGdW5jdGlvbkRhdGEsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2VuY29kZUZ1bmN0aW9uRGF0YS5qcyc7XG5pbXBvcnQgeyBnZXRBZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2FkZHJlc3MvZ2V0QWRkcmVzcy5qcyc7XG5pbXBvcnQgeyBpc0FkZHJlc3NFcXVhbCwgfSBmcm9tICcuLi8uLi91dGlscy9hZGRyZXNzL2lzQWRkcmVzc0VxdWFsLmpzJztcbmltcG9ydCB7IHZlcmlmeUF1dGhvcml6YXRpb24gfSBmcm9tICcuLi8uLi91dGlscy9hdXRob3JpemF0aW9uL3ZlcmlmeUF1dGhvcml6YXRpb24uanMnO1xuaW1wb3J0IHsgY29uY2F0SGV4IH0gZnJvbSAnLi4vLi4vdXRpbHMvZGF0YS9jb25jYXQuanMnO1xuaW1wb3J0IHsgaXNIZXggfSBmcm9tICcuLi8uLi91dGlscy9kYXRhL2lzSGV4LmpzJztcbmltcG9ydCB7IGhleFRvQm9vbCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL2Zyb21IZXguanMnO1xuaW1wb3J0IHsgYnl0ZXNUb0hleCwgbnVtYmVyVG9IZXgsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW5jb2RpbmcvdG9IZXguanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IHJlY292ZXJBZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL3NpZ25hdHVyZS9yZWNvdmVyQWRkcmVzcy5qcyc7XG5pbXBvcnQgeyBzZXJpYWxpemVTaWduYXR1cmUsIH0gZnJvbSAnLi4vLi4vdXRpbHMvc2lnbmF0dXJlL3NlcmlhbGl6ZVNpZ25hdHVyZS5qcyc7XG5pbXBvcnQgeyBjYWxsIH0gZnJvbSAnLi9jYWxsLmpzJztcbmltcG9ydCB7IGdldENvZGUgfSBmcm9tICcuL2dldENvZGUuanMnO1xuaW1wb3J0IHsgcmVhZENvbnRyYWN0IH0gZnJvbSAnLi9yZWFkQ29udHJhY3QuanMnO1xuLyoqXG4gKiBWZXJpZmllcyBhIG1lc3NhZ2UgaGFzaCBvbmNoYWluIHVzaW5nIEVSQy02NDkyLlxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlLlxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgVmVyaWZ5SGFzaFBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBXaGV0aGVyIG9yIG5vdCB0aGUgc2lnbmF0dXJlIGlzIHZhbGlkLiB7QGxpbmsgVmVyaWZ5SGFzaFJldHVyblR5cGV9XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB2ZXJpZnlIYXNoKGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWRkcmVzcywgaGFzaCwgZXJjNjQ5MlZlcmlmaWVyQWRkcmVzczogdmVyaWZpZXJBZGRyZXNzID0gcGFyYW1ldGVycy51bml2ZXJzYWxTaWduYXR1cmVWZXJpZmllckFkZHJlc3MgPz9cbiAgICAgICAgY2xpZW50LmNoYWluPy5jb250cmFjdHM/LmVyYzY0OTJWZXJpZmllcj8uYWRkcmVzcywgbXVsdGljYWxsQWRkcmVzcyA9IHBhcmFtZXRlcnMubXVsdGljYWxsQWRkcmVzcyA/P1xuICAgICAgICBjbGllbnQuY2hhaW4/LmNvbnRyYWN0cz8ubXVsdGljYWxsMz8uYWRkcmVzcywgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3Qgc2lnbmF0dXJlID0gKCgpID0+IHtcbiAgICAgICAgY29uc3Qgc2lnbmF0dXJlID0gcGFyYW1ldGVycy5zaWduYXR1cmU7XG4gICAgICAgIGlmIChpc0hleChzaWduYXR1cmUpKVxuICAgICAgICAgICAgcmV0dXJuIHNpZ25hdHVyZTtcbiAgICAgICAgaWYgKHR5cGVvZiBzaWduYXR1cmUgPT09ICdvYmplY3QnICYmICdyJyBpbiBzaWduYXR1cmUgJiYgJ3MnIGluIHNpZ25hdHVyZSlcbiAgICAgICAgICAgIHJldHVybiBzZXJpYWxpemVTaWduYXR1cmUoc2lnbmF0dXJlKTtcbiAgICAgICAgcmV0dXJuIGJ5dGVzVG9IZXgoc2lnbmF0dXJlKTtcbiAgICB9KSgpO1xuICAgIHRyeSB7XG4gICAgICAgIGlmIChTaWduYXR1cmVFcmM4MDEwLnZhbGlkYXRlKHNpZ25hdHVyZSkpXG4gICAgICAgICAgICByZXR1cm4gYXdhaXQgdmVyaWZ5RXJjODAxMChjbGllbnQsIHtcbiAgICAgICAgICAgICAgICAuLi5wYXJhbWV0ZXJzLFxuICAgICAgICAgICAgICAgIG11bHRpY2FsbEFkZHJlc3MsXG4gICAgICAgICAgICAgICAgc2lnbmF0dXJlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBhd2FpdCB2ZXJpZnlFcmM2NDkyKGNsaWVudCwge1xuICAgICAgICAgICAgLi4ucGFyYW1ldGVycyxcbiAgICAgICAgICAgIHZlcmlmaWVyQWRkcmVzcyxcbiAgICAgICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAvLyBGYWxsYmFjayBhdHRlbXB0IHRvIHZlcmlmeSB0aGUgc2lnbmF0dXJlIHZpYSBFQ0RTQSByZWNvdmVyeS5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkID0gaXNBZGRyZXNzRXF1YWwoZ2V0QWRkcmVzcyhhZGRyZXNzKSwgYXdhaXQgcmVjb3ZlckFkZHJlc3MoeyBoYXNoLCBzaWduYXR1cmUgfSkpO1xuICAgICAgICAgICAgaWYgKHZlcmlmaWVkKVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIHsgfVxuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBWZXJpZmljYXRpb25FcnJvcikge1xuICAgICAgICAgICAgLy8gaWYgdGhlIGV4ZWN1dGlvbiBmYWlscywgdGhlIHNpZ25hdHVyZSB3YXMgbm90IHZhbGlkIGFuZCBhbiBpbnRlcm5hbCBtZXRob2QgaW5zaWRlIG9mIHRoZSB2YWxpZGF0b3IgcmV2ZXJ0ZWRcbiAgICAgICAgICAgIC8vIHRoaXMgY2FuIGhhcHBlbiBmb3IgbWFueSByZWFzb25zLCBmb3IgZXhhbXBsZSBpZiBzaWduZXIgY2FuIG5vdCBiZSByZWNvdmVyZWQgZnJvbSB0aGUgc2lnbmF0dXJlXG4gICAgICAgICAgICAvLyBvciBpZiB0aGUgc2lnbmF0dXJlIGhhcyBubyB2YWxpZCBmb3JtYXRcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdmVyaWZ5RXJjODAxMChjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGJsb2NrTnVtYmVyLCBibG9ja1RhZywgaGFzaCwgbXVsdGljYWxsQWRkcmVzcyB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCB7IGF1dGhvcml6YXRpb246IGF1dGhvcml6YXRpb25fb3gsIGRhdGE6IGluaXREYXRhLCBzaWduYXR1cmUsIHRvLCB9ID0gU2lnbmF0dXJlRXJjODAxMC51bndyYXAocGFyYW1ldGVycy5zaWduYXR1cmUpO1xuICAgIC8vIENoZWNrIGlmIGFscmVhZHkgZGVsZWdhdGVkXG4gICAgY29uc3QgY29kZSA9IGF3YWl0IGdldENvZGUoY2xpZW50LCB7XG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICBibG9ja1RhZyxcbiAgICB9KTtcbiAgICAvLyBJZiBhbHJlYWR5IGRlbGVnYXRlZCwgcGVyZm9ybSBzdGFuZGFyZCBFUkMtMTI3MSB2ZXJpZmljYXRpb24uXG4gICAgaWYgKGNvZGUgPT09IGNvbmNhdEhleChbJzB4ZWYwMTAwJywgYXV0aG9yaXphdGlvbl9veC5hZGRyZXNzXSkpXG4gICAgICAgIHJldHVybiBhd2FpdCB2ZXJpZnlFcmMxMjcxKGNsaWVudCwge1xuICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICAgICAgYmxvY2tUYWcsXG4gICAgICAgICAgICBoYXNoLFxuICAgICAgICAgICAgc2lnbmF0dXJlLFxuICAgICAgICB9KTtcbiAgICBjb25zdCBhdXRob3JpemF0aW9uID0ge1xuICAgICAgICBhZGRyZXNzOiBhdXRob3JpemF0aW9uX294LmFkZHJlc3MsXG4gICAgICAgIGNoYWluSWQ6IE51bWJlcihhdXRob3JpemF0aW9uX294LmNoYWluSWQpLFxuICAgICAgICBub25jZTogTnVtYmVyKGF1dGhvcml6YXRpb25fb3gubm9uY2UpLFxuICAgICAgICByOiBudW1iZXJUb0hleChhdXRob3JpemF0aW9uX294LnIsIHsgc2l6ZTogMzIgfSksXG4gICAgICAgIHM6IG51bWJlclRvSGV4KGF1dGhvcml6YXRpb25fb3gucywgeyBzaXplOiAzMiB9KSxcbiAgICAgICAgeVBhcml0eTogYXV0aG9yaXphdGlvbl9veC55UGFyaXR5LFxuICAgIH07XG4gICAgY29uc3QgdmFsaWQgPSBhd2FpdCB2ZXJpZnlBdXRob3JpemF0aW9uKHtcbiAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgYXV0aG9yaXphdGlvbixcbiAgICB9KTtcbiAgICBpZiAoIXZhbGlkKVxuICAgICAgICB0aHJvdyBuZXcgVmVyaWZpY2F0aW9uRXJyb3IoKTtcbiAgICAvLyBEZXBsb3lsZXNzIHZlcmlmaWNhdGlvbi5cbiAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgcmVhZENvbnRyYWN0LCAncmVhZENvbnRyYWN0Jykoe1xuICAgICAgICAuLi4obXVsdGljYWxsQWRkcmVzc1xuICAgICAgICAgICAgPyB7IGFkZHJlc3M6IG11bHRpY2FsbEFkZHJlc3MgfVxuICAgICAgICAgICAgOiB7IGNvZGU6IG11bHRpY2FsbDNCeXRlY29kZSB9KSxcbiAgICAgICAgYXV0aG9yaXphdGlvbkxpc3Q6IFthdXRob3JpemF0aW9uXSxcbiAgICAgICAgYWJpOiBtdWx0aWNhbGwzQWJpLFxuICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgYmxvY2tUYWc6ICdwZW5kaW5nJyxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiAnYWdncmVnYXRlMycsXG4gICAgICAgIGFyZ3M6IFtcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAuLi4oaW5pdERhdGFcbiAgICAgICAgICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dGYWlsdXJlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldDogdG8gPz8gYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsRGF0YTogaW5pdERhdGEsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgIDogW10pLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dGYWlsdXJlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IGFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgIGNhbGxEYXRhOiBlbmNvZGVGdW5jdGlvbkRhdGEoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYWJpOiBlcmMxMjcxQWJpLFxuICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnaXNWYWxpZFNpZ25hdHVyZScsXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmdzOiBbaGFzaCwgc2lnbmF0dXJlXSxcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIF0sXG4gICAgfSk7XG4gICAgY29uc3QgZGF0YSA9IHJlc3VsdHNbcmVzdWx0cy5sZW5ndGggLSAxXT8ucmV0dXJuRGF0YTtcbiAgICBpZiAoZGF0YT8uc3RhcnRzV2l0aCgnMHgxNjI2YmE3ZScpKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB0aHJvdyBuZXcgVmVyaWZpY2F0aW9uRXJyb3IoKTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbi8vIGJpb21lLWlnbm9yZSBsaW50L2NvcnJlY3RuZXNzL25vVW51c2VkVmFyaWFibGVzOiBfXG5hc3luYyBmdW5jdGlvbiB2ZXJpZnlFcmM2NDkyKGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWRkcmVzcywgZmFjdG9yeSwgZmFjdG9yeURhdGEsIGhhc2gsIHNpZ25hdHVyZSwgdmVyaWZpZXJBZGRyZXNzLCAuLi5yZXN0IH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHdyYXBwZWRTaWduYXR1cmUgPSBhd2FpdCAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAvLyBJZiBubyBgZmFjdG9yeWAgb3IgYGZhY3RvcnlEYXRhYCBpcyBwcm92aWRlZCwgaXQgaXMgYXNzdW1lZCB0aGF0IHRoZVxuICAgICAgICAvLyBhZGRyZXNzIGlzIG5vdCBhIFNtYXJ0IEFjY291bnQsIG9yIHRoZSBTbWFydCBBY2NvdW50IGlzIGFscmVhZHkgZGVwbG95ZWQuXG4gICAgICAgIGlmICghZmFjdG9yeSAmJiAhZmFjdG9yeURhdGEpXG4gICAgICAgICAgICByZXR1cm4gc2lnbmF0dXJlO1xuICAgICAgICAvLyBJZiB0aGUgc2lnbmF0dXJlIGlzIGFscmVhZHkgd3JhcHBlZCwgcmV0dXJuIHRoZSBzaWduYXR1cmUuXG4gICAgICAgIGlmIChTaWduYXR1cmVFcmM2NDkyLnZhbGlkYXRlKHNpZ25hdHVyZSkpXG4gICAgICAgICAgICByZXR1cm4gc2lnbmF0dXJlO1xuICAgICAgICAvLyBJZiB0aGUgU21hcnQgQWNjb3VudCBpcyBub3QgZGVwbG95ZWQsIHdyYXAgdGhlIHNpZ25hdHVyZSB3aXRoIGEgNjQ5MiB3cmFwcGVyXG4gICAgICAgIC8vIHRvIHBlcmZvcm0gY291bnRlcmZhY3R1YWwgdmFsaWRhdGlvbi5cbiAgICAgICAgcmV0dXJuIFNpZ25hdHVyZUVyYzY0OTIud3JhcCh7XG4gICAgICAgICAgICBkYXRhOiBmYWN0b3J5RGF0YSxcbiAgICAgICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgICAgIHRvOiBmYWN0b3J5LFxuICAgICAgICB9KTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IGFyZ3MgPSB2ZXJpZmllckFkZHJlc3NcbiAgICAgICAgPyB7XG4gICAgICAgICAgICB0bzogdmVyaWZpZXJBZGRyZXNzLFxuICAgICAgICAgICAgZGF0YTogZW5jb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgICAgICBhYmk6IGVyYzY0OTJTaWduYXR1cmVWYWxpZGF0b3JBYmksXG4gICAgICAgICAgICAgICAgZnVuY3Rpb25OYW1lOiAnaXNWYWxpZFNpZycsXG4gICAgICAgICAgICAgICAgYXJnczogW2FkZHJlc3MsIGhhc2gsIHdyYXBwZWRTaWduYXR1cmVdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAuLi5yZXN0LFxuICAgICAgICB9XG4gICAgICAgIDoge1xuICAgICAgICAgICAgZGF0YTogZW5jb2RlRGVwbG95RGF0YSh7XG4gICAgICAgICAgICAgICAgYWJpOiBlcmM2NDkyU2lnbmF0dXJlVmFsaWRhdG9yQWJpLFxuICAgICAgICAgICAgICAgIGFyZ3M6IFthZGRyZXNzLCBoYXNoLCB3cmFwcGVkU2lnbmF0dXJlXSxcbiAgICAgICAgICAgICAgICBieXRlY29kZTogZXJjNjQ5MlNpZ25hdHVyZVZhbGlkYXRvckJ5dGVDb2RlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAuLi5yZXN0LFxuICAgICAgICB9O1xuICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgY2FsbCwgJ2NhbGwnKShhcmdzKS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgQ2FsbEV4ZWN1dGlvbkVycm9yKVxuICAgICAgICAgICAgdGhyb3cgbmV3IFZlcmlmaWNhdGlvbkVycm9yKCk7XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xuICAgIGlmIChoZXhUb0Jvb2woZGF0YSA/PyAnMHgwJykpXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIHRocm93IG5ldyBWZXJpZmljYXRpb25FcnJvcigpO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHZlcmlmeUVyYzEyNzEoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhZGRyZXNzLCBibG9ja051bWJlciwgYmxvY2tUYWcsIGhhc2gsIHNpZ25hdHVyZSB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCByZWFkQ29udHJhY3QsICdyZWFkQ29udHJhY3QnKSh7XG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIGFiaTogZXJjMTI3MUFiaSxcbiAgICAgICAgYXJnczogW2hhc2gsIHNpZ25hdHVyZV0sXG4gICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICBibG9ja1RhZyxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiAnaXNWYWxpZFNpZ25hdHVyZScsXG4gICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIENvbnRyYWN0RnVuY3Rpb25FeGVjdXRpb25FcnJvcilcbiAgICAgICAgICAgIHRocm93IG5ldyBWZXJpZmljYXRpb25FcnJvcigpO1xuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbiAgICBpZiAocmVzdWx0LnN0YXJ0c1dpdGgoJzB4MTYyNmJhN2UnKSlcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgdGhyb3cgbmV3IFZlcmlmaWNhdGlvbkVycm9yKCk7XG59XG5jbGFzcyBWZXJpZmljYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXZlcmlmeUhhc2guanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyHash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyMessage.js": /*!****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/verifyMessage.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ verifyMessage: () => (/* binding */ verifyMessage)\n/* harmony export */ });\n/* harmony import */ var _utils_signature_hashMessage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/signature/hashMessage.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashMessage.js\");\n/* harmony import */ var _verifyHash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./verifyHash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyHash.js\");\n\n\n/**\n * Verify that a message was signed by the provided address.\n *\n * Compatible with Smart Contract Accounts & Externally Owned Accounts via [ERC-6492](https://eips.ethereum.org/EIPS/eip-6492).\n *\n * - Docs {@link https://viem.sh/docs/actions/public/verifyMessage}\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifyMessageParameters}\n * @returns Whether or not the signature is valid. {@link VerifyMessageReturnType}\n */\nasync function verifyMessage(client, { address, message, factory, factoryData, signature, ...callRequest }) {\n const hash = (0,_utils_signature_hashMessage_js__WEBPACK_IMPORTED_MODULE_0__.hashMessage)(message);\n return (0,_verifyHash_js__WEBPACK_IMPORTED_MODULE_1__.verifyHash)(client, {\n address,\n factory: factory,\n factoryData: factoryData,\n hash,\n signature,\n ...callRequest,\n });\n}\n//# sourceMappingURL=verifyMessage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvdmVyaWZ5TWVzc2FnZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBbUU7QUFDckI7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLG9EQUFvRDtBQUNwRDtBQUNPLHVDQUF1QyxtRUFBbUU7QUFDakgsaUJBQWlCLDRFQUFXO0FBQzVCLFdBQVcsMERBQVU7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL3ZlcmlmeU1lc3NhZ2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFzaE1lc3NhZ2UgfSBmcm9tICcuLi8uLi91dGlscy9zaWduYXR1cmUvaGFzaE1lc3NhZ2UuanMnO1xuaW1wb3J0IHsgdmVyaWZ5SGFzaCwgfSBmcm9tICcuL3ZlcmlmeUhhc2guanMnO1xuLyoqXG4gKiBWZXJpZnkgdGhhdCBhIG1lc3NhZ2Ugd2FzIHNpZ25lZCBieSB0aGUgcHJvdmlkZWQgYWRkcmVzcy5cbiAqXG4gKiBDb21wYXRpYmxlIHdpdGggU21hcnQgQ29udHJhY3QgQWNjb3VudHMgJiBFeHRlcm5hbGx5IE93bmVkIEFjY291bnRzIHZpYSBbRVJDLTY0OTJdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNjQ5MikuXG4gKlxuICogLSBEb2NzIHtAbGluayBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy92ZXJpZnlNZXNzYWdlfVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlLlxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgVmVyaWZ5TWVzc2FnZVBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBXaGV0aGVyIG9yIG5vdCB0aGUgc2lnbmF0dXJlIGlzIHZhbGlkLiB7QGxpbmsgVmVyaWZ5TWVzc2FnZVJldHVyblR5cGV9XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB2ZXJpZnlNZXNzYWdlKGNsaWVudCwgeyBhZGRyZXNzLCBtZXNzYWdlLCBmYWN0b3J5LCBmYWN0b3J5RGF0YSwgc2lnbmF0dXJlLCAuLi5jYWxsUmVxdWVzdCB9KSB7XG4gICAgY29uc3QgaGFzaCA9IGhhc2hNZXNzYWdlKG1lc3NhZ2UpO1xuICAgIHJldHVybiB2ZXJpZnlIYXNoKGNsaWVudCwge1xuICAgICAgICBhZGRyZXNzLFxuICAgICAgICBmYWN0b3J5OiBmYWN0b3J5LFxuICAgICAgICBmYWN0b3J5RGF0YTogZmFjdG9yeURhdGEsXG4gICAgICAgIGhhc2gsXG4gICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgLi4uY2FsbFJlcXVlc3QsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD12ZXJpZnlNZXNzYWdlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyMessage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyTypedData.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/verifyTypedData.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ verifyTypedData: () => (/* binding */ verifyTypedData)\n/* harmony export */ });\n/* harmony import */ var _utils_signature_hashTypedData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/signature/hashTypedData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashTypedData.js\");\n/* harmony import */ var _verifyHash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./verifyHash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyHash.js\");\n\n\n/**\n * Verify that typed data was signed by the provided address.\n *\n * - Docs {@link https://viem.sh/docs/actions/public/verifyTypedData}\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifyTypedDataParameters}\n * @returns Whether or not the signature is valid. {@link VerifyTypedDataReturnType}\n */\nasync function verifyTypedData(client, parameters) {\n const { address, factory, factoryData, signature, message, primaryType, types, domain, ...callRequest } = parameters;\n const hash = (0,_utils_signature_hashTypedData_js__WEBPACK_IMPORTED_MODULE_0__.hashTypedData)({ message, primaryType, types, domain });\n return (0,_verifyHash_js__WEBPACK_IMPORTED_MODULE_1__.verifyHash)(client, {\n address,\n factory: factory,\n factoryData: factoryData,\n hash,\n signature,\n ...callRequest,\n });\n}\n//# sourceMappingURL=verifyTypedData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvdmVyaWZ5VHlwZWREYXRhLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUF3RTtBQUMxQjtBQUM5QztBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixvREFBb0Q7QUFDcEQ7QUFDTztBQUNQLFlBQVksZ0dBQWdHO0FBQzVHLGlCQUFpQixnRkFBYSxHQUFHLHFDQUFxQztBQUN0RSxXQUFXLDBEQUFVO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy92ZXJpZnlUeXBlZERhdGEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFzaFR5cGVkRGF0YSwgfSBmcm9tICcuLi8uLi91dGlscy9zaWduYXR1cmUvaGFzaFR5cGVkRGF0YS5qcyc7XG5pbXBvcnQgeyB2ZXJpZnlIYXNoLCB9IGZyb20gJy4vdmVyaWZ5SGFzaC5qcyc7XG4vKipcbiAqIFZlcmlmeSB0aGF0IHR5cGVkIGRhdGEgd2FzIHNpZ25lZCBieSB0aGUgcHJvdmlkZWQgYWRkcmVzcy5cbiAqXG4gKiAtIERvY3Mge0BsaW5rIGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL3ZlcmlmeVR5cGVkRGF0YX1cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZS5cbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIFZlcmlmeVR5cGVkRGF0YVBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBXaGV0aGVyIG9yIG5vdCB0aGUgc2lnbmF0dXJlIGlzIHZhbGlkLiB7QGxpbmsgVmVyaWZ5VHlwZWREYXRhUmV0dXJuVHlwZX1cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHZlcmlmeVR5cGVkRGF0YShjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGZhY3RvcnksIGZhY3RvcnlEYXRhLCBzaWduYXR1cmUsIG1lc3NhZ2UsIHByaW1hcnlUeXBlLCB0eXBlcywgZG9tYWluLCAuLi5jYWxsUmVxdWVzdCB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBoYXNoID0gaGFzaFR5cGVkRGF0YSh7IG1lc3NhZ2UsIHByaW1hcnlUeXBlLCB0eXBlcywgZG9tYWluIH0pO1xuICAgIHJldHVybiB2ZXJpZnlIYXNoKGNsaWVudCwge1xuICAgICAgICBhZGRyZXNzLFxuICAgICAgICBmYWN0b3J5OiBmYWN0b3J5LFxuICAgICAgICBmYWN0b3J5RGF0YTogZmFjdG9yeURhdGEsXG4gICAgICAgIGhhc2gsXG4gICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgLi4uY2FsbFJlcXVlc3QsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD12ZXJpZnlUeXBlZERhdGEuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyTypedData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/waitForTransactionReceipt.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/waitForTransactionReceipt.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ waitForTransactionReceipt: () => (/* binding */ waitForTransactionReceipt)\n/* harmony export */ });\n/* harmony import */ var _errors_block_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../errors/block.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/block.js\");\n/* harmony import */ var _errors_transaction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_promise_withResolvers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/promise/withResolvers.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/promise/withResolvers.js\");\n/* harmony import */ var _utils_promise_withRetry_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/promise/withRetry.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/promise/withRetry.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _getBlock_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./getBlock.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js\");\n/* harmony import */ var _getTransaction_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./getTransaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransaction.js\");\n/* harmony import */ var _getTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getTransactionReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionReceipt.js\");\n/* harmony import */ var _watchBlockNumber_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./watchBlockNumber.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchBlockNumber.js\");\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Waits for the [Transaction](https://viem.sh/docs/glossary/terms#transaction) to be included on a [Block](https://viem.sh/docs/glossary/terms#block) (one confirmation), and then returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms#transaction-receipt).\n *\n * - Docs: https://viem.sh/docs/actions/public/waitForTransactionReceipt\n * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_sending-transactions\n * - JSON-RPC Methods:\n * - Polls [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionReceipt) on each block until it has been processed.\n * - If a Transaction has been replaced:\n * - Calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getblockbynumber) and extracts the transactions\n * - Checks if one of the Transactions is a replacement\n * - If so, calls [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getTransactionReceipt).\n *\n * The `waitForTransactionReceipt` action additionally supports Replacement detection (e.g. sped up Transactions).\n *\n * Transactions can be replaced when a user modifies their transaction in their wallet (to speed up or cancel). Transactions are replaced when they are sent from the same nonce.\n *\n * There are 3 types of Transaction Replacement reasons:\n *\n * - `repriced`: The gas price has been modified (e.g. different `maxFeePerGas`)\n * - `cancelled`: The Transaction has been cancelled (e.g. `value === 0n`)\n * - `replaced`: The Transaction has been replaced (e.g. different `value` or `data`)\n *\n * @param client - Client to use\n * @param parameters - {@link WaitForTransactionReceiptParameters}\n * @returns The transaction receipt. {@link WaitForTransactionReceiptReturnType}\n *\n * @example\n * import { createPublicClient, waitForTransactionReceipt, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const transactionReceipt = await waitForTransactionReceipt(client, {\n * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d',\n * })\n */\nasync function waitForTransactionReceipt(client, parameters) {\n const { checkReplacement = true, confirmations = 1, hash, onReplaced, retryCount = 6, retryDelay = ({ count }) => ~~(1 << count) * 200, // exponential backoff\n timeout = 180_000, } = parameters;\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)(['waitForTransactionReceipt', client.uid, hash]);\n const pollingInterval = (() => {\n if (parameters.pollingInterval)\n return parameters.pollingInterval;\n if (client.chain?.experimental_preconfirmationTime)\n return client.chain.experimental_preconfirmationTime;\n return client.pollingInterval;\n })();\n let transaction;\n let replacedTransaction;\n let receipt;\n let retrying = false;\n let _unobserve;\n let _unwatch;\n const { promise, resolve, reject } = (0,_utils_promise_withResolvers_js__WEBPACK_IMPORTED_MODULE_1__.withResolvers)();\n const timer = timeout\n ? setTimeout(() => {\n _unwatch?.();\n _unobserve?.();\n reject(new _errors_transaction_js__WEBPACK_IMPORTED_MODULE_2__.WaitForTransactionReceiptTimeoutError({ hash }));\n }, timeout)\n : undefined;\n _unobserve = (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_3__.observe)(observerId, { onReplaced, resolve, reject }, async (emit) => {\n receipt = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__.getAction)(client, _getTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_5__.getTransactionReceipt, 'getTransactionReceipt')({ hash }).catch(() => undefined);\n if (receipt && confirmations <= 1) {\n clearTimeout(timer);\n emit.resolve(receipt);\n _unobserve?.();\n return;\n }\n _unwatch = (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__.getAction)(client, _watchBlockNumber_js__WEBPACK_IMPORTED_MODULE_6__.watchBlockNumber, 'watchBlockNumber')({\n emitMissed: true,\n emitOnBegin: true,\n poll: true,\n pollingInterval,\n async onBlockNumber(blockNumber_) {\n const done = (fn) => {\n clearTimeout(timer);\n _unwatch?.();\n fn();\n _unobserve?.();\n };\n let blockNumber = blockNumber_;\n if (retrying)\n return;\n try {\n // If we already have a valid receipt, let's check if we have enough\n // confirmations. If we do, then we can resolve.\n if (receipt) {\n if (confirmations > 1 &&\n (!receipt.blockNumber ||\n blockNumber - receipt.blockNumber + 1n < confirmations))\n return;\n done(() => emit.resolve(receipt));\n return;\n }\n // Get the transaction to check if it's been replaced.\n // We need to retry as some RPC Providers may be slow to sync\n // up mined transactions.\n if (checkReplacement && !transaction) {\n retrying = true;\n await (0,_utils_promise_withRetry_js__WEBPACK_IMPORTED_MODULE_7__.withRetry)(async () => {\n transaction = (await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__.getAction)(client, _getTransaction_js__WEBPACK_IMPORTED_MODULE_8__.getTransaction, 'getTransaction')({ hash }));\n if (transaction.blockNumber)\n blockNumber = transaction.blockNumber;\n }, {\n delay: retryDelay,\n retryCount,\n });\n retrying = false;\n }\n // Get the receipt to check if it's been processed.\n receipt = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__.getAction)(client, _getTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_5__.getTransactionReceipt, 'getTransactionReceipt')({ hash });\n // Check if we have enough confirmations. If not, continue polling.\n if (confirmations > 1 &&\n (!receipt.blockNumber ||\n blockNumber - receipt.blockNumber + 1n < confirmations))\n return;\n done(() => emit.resolve(receipt));\n }\n catch (err) {\n // If the receipt is not found, the transaction will be pending.\n // We need to check if it has potentially been replaced.\n if (err instanceof _errors_transaction_js__WEBPACK_IMPORTED_MODULE_2__.TransactionNotFoundError ||\n err instanceof _errors_transaction_js__WEBPACK_IMPORTED_MODULE_2__.TransactionReceiptNotFoundError) {\n if (!transaction) {\n retrying = false;\n return;\n }\n try {\n replacedTransaction = transaction;\n // Let's retrieve the transactions from the current block.\n // We need to retry as some RPC Providers may be slow to sync\n // up mined blocks.\n retrying = true;\n const block = await (0,_utils_promise_withRetry_js__WEBPACK_IMPORTED_MODULE_7__.withRetry)(() => (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_9__.getBlock, 'getBlock')({\n blockNumber,\n includeTransactions: true,\n }), {\n delay: retryDelay,\n retryCount,\n shouldRetry: ({ error }) => error instanceof _errors_block_js__WEBPACK_IMPORTED_MODULE_10__.BlockNotFoundError,\n });\n retrying = false;\n const replacementTransaction = block.transactions.find(({ from, nonce }) => from === replacedTransaction.from &&\n nonce === replacedTransaction.nonce);\n // If we couldn't find a replacement transaction, continue polling.\n if (!replacementTransaction)\n return;\n // If we found a replacement transaction, return it's receipt.\n receipt = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_4__.getAction)(client, _getTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_5__.getTransactionReceipt, 'getTransactionReceipt')({\n hash: replacementTransaction.hash,\n });\n // Check if we have enough confirmations. If not, continue polling.\n if (confirmations > 1 &&\n (!receipt.blockNumber ||\n blockNumber - receipt.blockNumber + 1n < confirmations))\n return;\n let reason = 'replaced';\n if (replacementTransaction.to === replacedTransaction.to &&\n replacementTransaction.value === replacedTransaction.value &&\n replacementTransaction.input === replacedTransaction.input) {\n reason = 'repriced';\n }\n else if (replacementTransaction.from === replacementTransaction.to &&\n replacementTransaction.value === 0n) {\n reason = 'cancelled';\n }\n done(() => {\n emit.onReplaced?.({\n reason,\n replacedTransaction: replacedTransaction,\n transaction: replacementTransaction,\n transactionReceipt: receipt,\n });\n emit.resolve(receipt);\n });\n }\n catch (err_) {\n done(() => emit.reject(err_));\n }\n }\n else {\n done(() => emit.reject(err));\n }\n }\n },\n });\n });\n return promise;\n}\n//# sourceMappingURL=waitForTransactionReceipt.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2FpdEZvclRyYW5zYWN0aW9uUmVjZWlwdC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBMkQ7QUFDcUY7QUFDM0Y7QUFDSjtBQUNvQjtBQUNQO0FBQ1Q7QUFDWjtBQUNhO0FBQ2M7QUFDVjtBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHNDQUFzQztBQUN0QztBQUNBO0FBQ0EsWUFBWSxzREFBc0Q7QUFDbEUsWUFBWSxVQUFVO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTztBQUNQLFlBQVksOEZBQThGLE9BQU87QUFDakgseUJBQXlCO0FBQ3pCLHVCQUF1Qiw4REFBUztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSwyQkFBMkIsRUFBRSw4RUFBYTtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qix5RkFBcUMsR0FBRyxNQUFNO0FBQ3JFLFNBQVM7QUFDVDtBQUNBLGlCQUFpQiwwREFBTyxlQUFlLDZCQUE2QjtBQUNwRSx3QkFBd0IsOERBQVMsU0FBUyw0RUFBcUIsNkJBQTZCLE1BQU07QUFDbEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLDhEQUFTLFNBQVMsa0VBQWdCO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QixzRUFBUztBQUN2QyxpREFBaUQsOERBQVMsU0FBUyw4REFBYyxzQkFBc0IsTUFBTTtBQUM3RztBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLDhEQUFTLFNBQVMsNEVBQXFCLDZCQUE2QixNQUFNO0FBQzlHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDLDRFQUF3QjtBQUMvRCx1Q0FBdUMsbUZBQStCO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELHNFQUFTLE9BQU8sOERBQVMsU0FBUyxrREFBUTtBQUMxRjtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQSxnREFBZ0QsT0FBTyxzQkFBc0IsaUVBQWtCO0FBQy9GLDZCQUE2QjtBQUM3QjtBQUNBLHNGQUFzRixhQUFhO0FBQ25HO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0Q0FBNEMsOERBQVMsU0FBUyw0RUFBcUI7QUFDbkY7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2FpdEZvclRyYW5zYWN0aW9uUmVjZWlwdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCbG9ja05vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYmxvY2suanMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Ob3RGb3VuZEVycm9yLCBUcmFuc2FjdGlvblJlY2VpcHROb3RGb3VuZEVycm9yLCBXYWl0Rm9yVHJhbnNhY3Rpb25SZWNlaXB0VGltZW91dEVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy90cmFuc2FjdGlvbi5qcyc7XG5pbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgb2JzZXJ2ZSB9IGZyb20gJy4uLy4uL3V0aWxzL29ic2VydmUuanMnO1xuaW1wb3J0IHsgd2l0aFJlc29sdmVycyB9IGZyb20gJy4uLy4uL3V0aWxzL3Byb21pc2Uvd2l0aFJlc29sdmVycy5qcyc7XG5pbXBvcnQgeyB3aXRoUmV0cnksIH0gZnJvbSAnLi4vLi4vdXRpbHMvcHJvbWlzZS93aXRoUmV0cnkuanMnO1xuaW1wb3J0IHsgc3RyaW5naWZ5IH0gZnJvbSAnLi4vLi4vdXRpbHMvc3RyaW5naWZ5LmpzJztcbmltcG9ydCB7IGdldEJsb2NrIH0gZnJvbSAnLi9nZXRCbG9jay5qcyc7XG5pbXBvcnQgeyBnZXRUcmFuc2FjdGlvbiwgfSBmcm9tICcuL2dldFRyYW5zYWN0aW9uLmpzJztcbmltcG9ydCB7IGdldFRyYW5zYWN0aW9uUmVjZWlwdCwgfSBmcm9tICcuL2dldFRyYW5zYWN0aW9uUmVjZWlwdC5qcyc7XG5pbXBvcnQgeyB3YXRjaEJsb2NrTnVtYmVyLCB9IGZyb20gJy4vd2F0Y2hCbG9ja051bWJlci5qcyc7XG4vKipcbiAqIFdhaXRzIGZvciB0aGUgW1RyYW5zYWN0aW9uXShodHRwczovL3ZpZW0uc2gvZG9jcy9nbG9zc2FyeS90ZXJtcyN0cmFuc2FjdGlvbikgdG8gYmUgaW5jbHVkZWQgb24gYSBbQmxvY2tdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2dsb3NzYXJ5L3Rlcm1zI2Jsb2NrKSAob25lIGNvbmZpcm1hdGlvbiksIGFuZCB0aGVuIHJldHVybnMgdGhlIFtUcmFuc2FjdGlvbiBSZWNlaXB0XShodHRwczovL3ZpZW0uc2gvZG9jcy9nbG9zc2FyeS90ZXJtcyN0cmFuc2FjdGlvbi1yZWNlaXB0KS5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL3dhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHRcbiAqIC0gRXhhbXBsZTogaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9naXRodWIvd2V2bS92aWVtL3RyZWUvbWFpbi9leGFtcGxlcy90cmFuc2FjdGlvbnNfc2VuZGluZy10cmFuc2FjdGlvbnNcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczpcbiAqICAgLSBQb2xscyBbYGV0aF9nZXRUcmFuc2FjdGlvblJlY2VpcHRgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldFRyYW5zYWN0aW9uUmVjZWlwdCkgb24gZWFjaCBibG9jayB1bnRpbCBpdCBoYXMgYmVlbiBwcm9jZXNzZWQuXG4gKiAgIC0gSWYgYSBUcmFuc2FjdGlvbiBoYXMgYmVlbiByZXBsYWNlZDpcbiAqICAgICAtIENhbGxzIFtgZXRoX2dldEJsb2NrQnlOdW1iZXJgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX2dldGJsb2NrYnludW1iZXIpIGFuZCBleHRyYWN0cyB0aGUgdHJhbnNhY3Rpb25zXG4gKiAgICAgLSBDaGVja3MgaWYgb25lIG9mIHRoZSBUcmFuc2FjdGlvbnMgaXMgYSByZXBsYWNlbWVudFxuICogICAgIC0gSWYgc28sIGNhbGxzIFtgZXRoX2dldFRyYW5zYWN0aW9uUmVjZWlwdGBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0VHJhbnNhY3Rpb25SZWNlaXB0KS5cbiAqXG4gKiBUaGUgYHdhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHRgIGFjdGlvbiBhZGRpdGlvbmFsbHkgc3VwcG9ydHMgUmVwbGFjZW1lbnQgZGV0ZWN0aW9uIChlLmcuIHNwZWQgdXAgVHJhbnNhY3Rpb25zKS5cbiAqXG4gKiBUcmFuc2FjdGlvbnMgY2FuIGJlIHJlcGxhY2VkIHdoZW4gYSB1c2VyIG1vZGlmaWVzIHRoZWlyIHRyYW5zYWN0aW9uIGluIHRoZWlyIHdhbGxldCAodG8gc3BlZWQgdXAgb3IgY2FuY2VsKS4gVHJhbnNhY3Rpb25zIGFyZSByZXBsYWNlZCB3aGVuIHRoZXkgYXJlIHNlbnQgZnJvbSB0aGUgc2FtZSBub25jZS5cbiAqXG4gKiBUaGVyZSBhcmUgMyB0eXBlcyBvZiBUcmFuc2FjdGlvbiBSZXBsYWNlbWVudCByZWFzb25zOlxuICpcbiAqIC0gYHJlcHJpY2VkYDogVGhlIGdhcyBwcmljZSBoYXMgYmVlbiBtb2RpZmllZCAoZS5nLiBkaWZmZXJlbnQgYG1heEZlZVBlckdhc2ApXG4gKiAtIGBjYW5jZWxsZWRgOiBUaGUgVHJhbnNhY3Rpb24gaGFzIGJlZW4gY2FuY2VsbGVkIChlLmcuIGB2YWx1ZSA9PT0gMG5gKVxuICogLSBgcmVwbGFjZWRgOiBUaGUgVHJhbnNhY3Rpb24gaGFzIGJlZW4gcmVwbGFjZWQgKGUuZy4gZGlmZmVyZW50IGB2YWx1ZWAgb3IgYGRhdGFgKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBXYWl0Rm9yVHJhbnNhY3Rpb25SZWNlaXB0UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFRoZSB0cmFuc2FjdGlvbiByZWNlaXB0LiB7QGxpbmsgV2FpdEZvclRyYW5zYWN0aW9uUmVjZWlwdFJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgd2FpdEZvclRyYW5zYWN0aW9uUmVjZWlwdCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IHRyYW5zYWN0aW9uUmVjZWlwdCA9IGF3YWl0IHdhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHQoY2xpZW50LCB7XG4gKiAgIGhhc2g6ICcweDRjYTdlZTY1MmQ1NzY3OGYyNmU4ODdjMTQ5YWIwNzM1ZjQxZGUzN2JjYWQ1OGM5ZjZkM2VkNTgyNGYxNWI3NGQnLFxuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHQoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBjaGVja1JlcGxhY2VtZW50ID0gdHJ1ZSwgY29uZmlybWF0aW9ucyA9IDEsIGhhc2gsIG9uUmVwbGFjZWQsIHJldHJ5Q291bnQgPSA2LCByZXRyeURlbGF5ID0gKHsgY291bnQgfSkgPT4gfn4oMSA8PCBjb3VudCkgKiAyMDAsIC8vIGV4cG9uZW50aWFsIGJhY2tvZmZcbiAgICB0aW1lb3V0ID0gMTgwXzAwMCwgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3Qgb2JzZXJ2ZXJJZCA9IHN0cmluZ2lmeShbJ3dhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHQnLCBjbGllbnQudWlkLCBoYXNoXSk7XG4gICAgY29uc3QgcG9sbGluZ0ludGVydmFsID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHBhcmFtZXRlcnMucG9sbGluZ0ludGVydmFsKVxuICAgICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnMucG9sbGluZ0ludGVydmFsO1xuICAgICAgICBpZiAoY2xpZW50LmNoYWluPy5leHBlcmltZW50YWxfcHJlY29uZmlybWF0aW9uVGltZSlcbiAgICAgICAgICAgIHJldHVybiBjbGllbnQuY2hhaW4uZXhwZXJpbWVudGFsX3ByZWNvbmZpcm1hdGlvblRpbWU7XG4gICAgICAgIHJldHVybiBjbGllbnQucG9sbGluZ0ludGVydmFsO1xuICAgIH0pKCk7XG4gICAgbGV0IHRyYW5zYWN0aW9uO1xuICAgIGxldCByZXBsYWNlZFRyYW5zYWN0aW9uO1xuICAgIGxldCByZWNlaXB0O1xuICAgIGxldCByZXRyeWluZyA9IGZhbHNlO1xuICAgIGxldCBfdW5vYnNlcnZlO1xuICAgIGxldCBfdW53YXRjaDtcbiAgICBjb25zdCB7IHByb21pc2UsIHJlc29sdmUsIHJlamVjdCB9ID0gd2l0aFJlc29sdmVycygpO1xuICAgIGNvbnN0IHRpbWVyID0gdGltZW91dFxuICAgICAgICA/IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgX3Vud2F0Y2g/LigpO1xuICAgICAgICAgICAgX3Vub2JzZXJ2ZT8uKCk7XG4gICAgICAgICAgICByZWplY3QobmV3IFdhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHRUaW1lb3V0RXJyb3IoeyBoYXNoIH0pKTtcbiAgICAgICAgfSwgdGltZW91dClcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgX3Vub2JzZXJ2ZSA9IG9ic2VydmUob2JzZXJ2ZXJJZCwgeyBvblJlcGxhY2VkLCByZXNvbHZlLCByZWplY3QgfSwgYXN5bmMgKGVtaXQpID0+IHtcbiAgICAgICAgcmVjZWlwdCA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldFRyYW5zYWN0aW9uUmVjZWlwdCwgJ2dldFRyYW5zYWN0aW9uUmVjZWlwdCcpKHsgaGFzaCB9KS5jYXRjaCgoKSA9PiB1bmRlZmluZWQpO1xuICAgICAgICBpZiAocmVjZWlwdCAmJiBjb25maXJtYXRpb25zIDw9IDEpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lcik7XG4gICAgICAgICAgICBlbWl0LnJlc29sdmUocmVjZWlwdCk7XG4gICAgICAgICAgICBfdW5vYnNlcnZlPy4oKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBfdW53YXRjaCA9IGdldEFjdGlvbihjbGllbnQsIHdhdGNoQmxvY2tOdW1iZXIsICd3YXRjaEJsb2NrTnVtYmVyJykoe1xuICAgICAgICAgICAgZW1pdE1pc3NlZDogdHJ1ZSxcbiAgICAgICAgICAgIGVtaXRPbkJlZ2luOiB0cnVlLFxuICAgICAgICAgICAgcG9sbDogdHJ1ZSxcbiAgICAgICAgICAgIHBvbGxpbmdJbnRlcnZhbCxcbiAgICAgICAgICAgIGFzeW5jIG9uQmxvY2tOdW1iZXIoYmxvY2tOdW1iZXJfKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZG9uZSA9IChmbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZXIpO1xuICAgICAgICAgICAgICAgICAgICBfdW53YXRjaD8uKCk7XG4gICAgICAgICAgICAgICAgICAgIGZuKCk7XG4gICAgICAgICAgICAgICAgICAgIF91bm9ic2VydmU/LigpO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgbGV0IGJsb2NrTnVtYmVyID0gYmxvY2tOdW1iZXJfO1xuICAgICAgICAgICAgICAgIGlmIChyZXRyeWluZylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIElmIHdlIGFscmVhZHkgaGF2ZSBhIHZhbGlkIHJlY2VpcHQsIGxldCdzIGNoZWNrIGlmIHdlIGhhdmUgZW5vdWdoXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbmZpcm1hdGlvbnMuIElmIHdlIGRvLCB0aGVuIHdlIGNhbiByZXNvbHZlLlxuICAgICAgICAgICAgICAgICAgICBpZiAocmVjZWlwdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmZpcm1hdGlvbnMgPiAxICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKCFyZWNlaXB0LmJsb2NrTnVtYmVyIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrTnVtYmVyIC0gcmVjZWlwdC5ibG9ja051bWJlciArIDFuIDwgY29uZmlybWF0aW9ucykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgZG9uZSgoKSA9PiBlbWl0LnJlc29sdmUocmVjZWlwdCkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIEdldCB0aGUgdHJhbnNhY3Rpb24gdG8gY2hlY2sgaWYgaXQncyBiZWVuIHJlcGxhY2VkLlxuICAgICAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJldHJ5IGFzIHNvbWUgUlBDIFByb3ZpZGVycyBtYXkgYmUgc2xvdyB0byBzeW5jXG4gICAgICAgICAgICAgICAgICAgIC8vIHVwIG1pbmVkIHRyYW5zYWN0aW9ucy5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGNoZWNrUmVwbGFjZW1lbnQgJiYgIXRyYW5zYWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXRyeWluZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB3aXRoUmV0cnkoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uID0gKGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldFRyYW5zYWN0aW9uLCAnZ2V0VHJhbnNhY3Rpb24nKSh7IGhhc2ggfSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0cmFuc2FjdGlvbi5ibG9ja051bWJlcilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tOdW1iZXIgPSB0cmFuc2FjdGlvbi5ibG9ja051bWJlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxheTogcmV0cnlEZWxheSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXRyeUNvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXRyeWluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIEdldCB0aGUgcmVjZWlwdCB0byBjaGVjayBpZiBpdCdzIGJlZW4gcHJvY2Vzc2VkLlxuICAgICAgICAgICAgICAgICAgICByZWNlaXB0ID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZ2V0VHJhbnNhY3Rpb25SZWNlaXB0LCAnZ2V0VHJhbnNhY3Rpb25SZWNlaXB0JykoeyBoYXNoIH0pO1xuICAgICAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB3ZSBoYXZlIGVub3VnaCBjb25maXJtYXRpb25zLiBJZiBub3QsIGNvbnRpbnVlIHBvbGxpbmcuXG4gICAgICAgICAgICAgICAgICAgIGlmIChjb25maXJtYXRpb25zID4gMSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgKCFyZWNlaXB0LmJsb2NrTnVtYmVyIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tOdW1iZXIgLSByZWNlaXB0LmJsb2NrTnVtYmVyICsgMW4gPCBjb25maXJtYXRpb25zKSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgZG9uZSgoKSA9PiBlbWl0LnJlc29sdmUocmVjZWlwdCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSByZWNlaXB0IGlzIG5vdCBmb3VuZCwgdGhlIHRyYW5zYWN0aW9uIHdpbGwgYmUgcGVuZGluZy5cbiAgICAgICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBjaGVjayBpZiBpdCBoYXMgcG90ZW50aWFsbHkgYmVlbiByZXBsYWNlZC5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIFRyYW5zYWN0aW9uTm90Rm91bmRFcnJvciB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyIGluc3RhbmNlb2YgVHJhbnNhY3Rpb25SZWNlaXB0Tm90Rm91bmRFcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0cmFuc2FjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHJ5aW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXBsYWNlZFRyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTGV0J3MgcmV0cmlldmUgdGhlIHRyYW5zYWN0aW9ucyBmcm9tIHRoZSBjdXJyZW50IGJsb2NrLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gcmV0cnkgYXMgc29tZSBSUEMgUHJvdmlkZXJzIG1heSBiZSBzbG93IHRvIHN5bmNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB1cCBtaW5lZCBibG9ja3MuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0cnlpbmcgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYXdhaXQgd2l0aFJldHJ5KCgpID0+IGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrLCAnZ2V0QmxvY2snKSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrTnVtYmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlVHJhbnNhY3Rpb25zOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiByZXRyeURlbGF5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXRyeUNvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG91bGRSZXRyeTogKHsgZXJyb3IgfSkgPT4gZXJyb3IgaW5zdGFuY2VvZiBCbG9ja05vdEZvdW5kRXJyb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0cnlpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudFRyYW5zYWN0aW9uID0gYmxvY2sudHJhbnNhY3Rpb25zLmZpbmQoKHsgZnJvbSwgbm9uY2UgfSkgPT4gZnJvbSA9PT0gcmVwbGFjZWRUcmFuc2FjdGlvbi5mcm9tICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmNlID09PSByZXBsYWNlZFRyYW5zYWN0aW9uLm5vbmNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB3ZSBjb3VsZG4ndCBmaW5kIGEgcmVwbGFjZW1lbnQgdHJhbnNhY3Rpb24sIGNvbnRpbnVlIHBvbGxpbmcuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFyZXBsYWNlbWVudFRyYW5zYWN0aW9uKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgd2UgZm91bmQgYSByZXBsYWNlbWVudCB0cmFuc2FjdGlvbiwgcmV0dXJuIGl0J3MgcmVjZWlwdC5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNlaXB0ID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZ2V0VHJhbnNhY3Rpb25SZWNlaXB0LCAnZ2V0VHJhbnNhY3Rpb25SZWNlaXB0Jykoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNoOiByZXBsYWNlbWVudFRyYW5zYWN0aW9uLmhhc2gsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgd2UgaGF2ZSBlbm91Z2ggY29uZmlybWF0aW9ucy4gSWYgbm90LCBjb250aW51ZSBwb2xsaW5nLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb25maXJtYXRpb25zID4gMSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoIXJlY2VpcHQuYmxvY2tOdW1iZXIgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrTnVtYmVyIC0gcmVjZWlwdC5ibG9ja051bWJlciArIDFuIDwgY29uZmlybWF0aW9ucykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgcmVhc29uID0gJ3JlcGxhY2VkJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVwbGFjZW1lbnRUcmFuc2FjdGlvbi50byA9PT0gcmVwbGFjZWRUcmFuc2FjdGlvbi50byAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXBsYWNlbWVudFRyYW5zYWN0aW9uLnZhbHVlID09PSByZXBsYWNlZFRyYW5zYWN0aW9uLnZhbHVlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VtZW50VHJhbnNhY3Rpb24uaW5wdXQgPT09IHJlcGxhY2VkVHJhbnNhY3Rpb24uaW5wdXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uID0gJ3JlcHJpY2VkJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocmVwbGFjZW1lbnRUcmFuc2FjdGlvbi5mcm9tID09PSByZXBsYWNlbWVudFRyYW5zYWN0aW9uLnRvICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VtZW50VHJhbnNhY3Rpb24udmFsdWUgPT09IDBuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYXNvbiA9ICdjYW5jZWxsZWQnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb25lKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vblJlcGxhY2VkPy4oe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwbGFjZWRUcmFuc2FjdGlvbjogcmVwbGFjZWRUcmFuc2FjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uOiByZXBsYWNlbWVudFRyYW5zYWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25SZWNlaXB0OiByZWNlaXB0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5yZXNvbHZlKHJlY2VpcHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGVycl8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb25lKCgpID0+IGVtaXQucmVqZWN0KGVycl8pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUoKCkgPT4gZW1pdC5yZWplY3QoZXJyKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9KTtcbiAgICByZXR1cm4gcHJvbWlzZTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXdhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/waitForTransactionReceipt.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchBlockNumber.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/watchBlockNumber.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ watchBlockNumber: () => (/* binding */ watchBlockNumber)\n/* harmony export */ });\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_poll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/poll.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getBlockNumber.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockNumber.js\");\n\n\n\n\n\n\n/**\n * Watches and returns incoming block numbers.\n *\n * - Docs: https://viem.sh/docs/actions/public/watchBlockNumber\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_watching-blocks\n * - JSON-RPC Methods:\n * - When `poll: true`, calls [`eth_blockNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_blocknumber) on a polling interval.\n * - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newHeads\"` event.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchBlockNumberParameters}\n * @returns A function that can be invoked to stop watching for new block numbers. {@link WatchBlockNumberReturnType}\n *\n * @example\n * import { createPublicClient, watchBlockNumber, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const unwatch = watchBlockNumber(client, {\n * onBlockNumber: (blockNumber) => console.log(blockNumber),\n * })\n */\nfunction watchBlockNumber(client, { emitOnBegin = false, emitMissed = false, onBlockNumber, onError, poll: poll_, pollingInterval = client.pollingInterval, }) {\n const enablePolling = (() => {\n if (typeof poll_ !== 'undefined')\n return poll_;\n if (client.transport.type === 'webSocket' ||\n client.transport.type === 'ipc')\n return false;\n if (client.transport.type === 'fallback' &&\n (client.transport.transports[0].config.type === 'webSocket' ||\n client.transport.transports[0].config.type === 'ipc'))\n return false;\n return true;\n })();\n let prevBlockNumber;\n const pollBlockNumber = () => {\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'watchBlockNumber',\n client.uid,\n emitOnBegin,\n emitMissed,\n pollingInterval,\n ]);\n return (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { onBlockNumber, onError }, (emit) => (0,_utils_poll_js__WEBPACK_IMPORTED_MODULE_2__.poll)(async () => {\n try {\n const blockNumber = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_4__.getBlockNumber, 'getBlockNumber')({ cacheTime: 0 });\n if (prevBlockNumber !== undefined) {\n // If the current block number is the same as the previous,\n // we can skip.\n if (blockNumber === prevBlockNumber)\n return;\n // If we have missed out on some previous blocks, and the\n // `emitMissed` flag is truthy, let's emit those blocks.\n if (blockNumber - prevBlockNumber > 1 && emitMissed) {\n for (let i = prevBlockNumber + 1n; i < blockNumber; i++) {\n emit.onBlockNumber(i, prevBlockNumber);\n prevBlockNumber = i;\n }\n }\n }\n // If the next block number is greater than the previous,\n // it is not in the past, and we can emit the new block number.\n if (prevBlockNumber === undefined ||\n blockNumber > prevBlockNumber) {\n emit.onBlockNumber(blockNumber, prevBlockNumber);\n prevBlockNumber = blockNumber;\n }\n }\n catch (err) {\n emit.onError?.(err);\n }\n }, {\n emitOnBegin,\n interval: pollingInterval,\n }));\n };\n const subscribeBlockNumber = () => {\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'watchBlockNumber',\n client.uid,\n emitOnBegin,\n emitMissed,\n ]);\n return (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { onBlockNumber, onError }, (emit) => {\n let active = true;\n let unsubscribe = () => (active = false);\n (async () => {\n try {\n const transport = (() => {\n if (client.transport.type === 'fallback') {\n const transport = client.transport.transports.find((transport) => transport.config.type === 'webSocket' ||\n transport.config.type === 'ipc');\n if (!transport)\n return client.transport;\n return transport.value;\n }\n return client.transport;\n })();\n const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n params: ['newHeads'],\n onData(data) {\n if (!active)\n return;\n const blockNumber = (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_5__.hexToBigInt)(data.result?.number);\n emit.onBlockNumber(blockNumber, prevBlockNumber);\n prevBlockNumber = blockNumber;\n },\n onError(error) {\n emit.onError?.(error);\n },\n });\n unsubscribe = unsubscribe_;\n if (!active)\n unsubscribe();\n }\n catch (err) {\n onError?.(err);\n }\n })();\n return () => unsubscribe();\n });\n };\n return enablePolling ? pollBlockNumber() : subscribeBlockNumber();\n}\n//# sourceMappingURL=watchBlockNumber.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2F0Y2hCbG9ja051bWJlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQThEO0FBQ1Q7QUFDSjtBQUNOO0FBQ1U7QUFDQztBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixvRkFBb0Y7QUFDcEY7QUFDQTtBQUNBLFlBQVksNkNBQTZDO0FBQ3pELFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ08sb0NBQW9DLHlIQUF5SDtBQUNwSztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSwyQkFBMkIsOERBQVM7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSwwREFBTyxlQUFlLHdCQUF3QixZQUFZLG9EQUFJO0FBQzdFO0FBQ0EsMENBQTBDLDhEQUFTLFNBQVMsOERBQWMsc0JBQXNCLGNBQWM7QUFDOUc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJEQUEyRCxpQkFBaUI7QUFDNUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsMkJBQTJCLDhEQUFTO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLDBEQUFPLGVBQWUsd0JBQXdCO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLDRCQUE0Qiw0QkFBNEI7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsdUVBQVc7QUFDM0Q7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2F0Y2hCbG9ja051bWJlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBoZXhUb0JpZ0ludCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL2Zyb21IZXguanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IG9ic2VydmUgfSBmcm9tICcuLi8uLi91dGlscy9vYnNlcnZlLmpzJztcbmltcG9ydCB7IHBvbGwgfSBmcm9tICcuLi8uLi91dGlscy9wb2xsLmpzJztcbmltcG9ydCB7IHN0cmluZ2lmeSB9IGZyb20gJy4uLy4uL3V0aWxzL3N0cmluZ2lmeS5qcyc7XG5pbXBvcnQgeyBnZXRCbG9ja051bWJlciwgfSBmcm9tICcuL2dldEJsb2NrTnVtYmVyLmpzJztcbi8qKlxuICogV2F0Y2hlcyBhbmQgcmV0dXJucyBpbmNvbWluZyBibG9jayBudW1iZXJzLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvd2F0Y2hCbG9ja051bWJlclxuICogLSBFeGFtcGxlczogaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9naXRodWIvd2V2bS92aWVtL3RyZWUvbWFpbi9leGFtcGxlcy9ibG9ja3Nfd2F0Y2hpbmctYmxvY2tzXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6XG4gKiAgIC0gV2hlbiBgcG9sbDogdHJ1ZWAsIGNhbGxzIFtgZXRoX2Jsb2NrTnVtYmVyYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9ibG9ja251bWJlcikgb24gYSBwb2xsaW5nIGludGVydmFsLlxuICogICAtIFdoZW4gYHBvbGw6IGZhbHNlYCAmIFdlYlNvY2tldCBUcmFuc3BvcnQsIHVzZXMgYSBXZWJTb2NrZXQgc3Vic2NyaXB0aW9uIHZpYSBbYGV0aF9zdWJzY3JpYmVgXShodHRwczovL2RvY3MuYWxjaGVteS5jb20vcmVmZXJlbmNlL2V0aC1zdWJzY3JpYmUtcG9seWdvbikgYW5kIHRoZSBgXCJuZXdIZWFkc1wiYCBldmVudC5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgV2F0Y2hCbG9ja051bWJlclBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBBIGZ1bmN0aW9uIHRoYXQgY2FuIGJlIGludm9rZWQgdG8gc3RvcCB3YXRjaGluZyBmb3IgbmV3IGJsb2NrIG51bWJlcnMuIHtAbGluayBXYXRjaEJsb2NrTnVtYmVyUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCB3YXRjaEJsb2NrTnVtYmVyLCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgdW53YXRjaCA9IHdhdGNoQmxvY2tOdW1iZXIoY2xpZW50LCB7XG4gKiAgIG9uQmxvY2tOdW1iZXI6IChibG9ja051bWJlcikgPT4gY29uc29sZS5sb2coYmxvY2tOdW1iZXIpLFxuICogfSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhdGNoQmxvY2tOdW1iZXIoY2xpZW50LCB7IGVtaXRPbkJlZ2luID0gZmFsc2UsIGVtaXRNaXNzZWQgPSBmYWxzZSwgb25CbG9ja051bWJlciwgb25FcnJvciwgcG9sbDogcG9sbF8sIHBvbGxpbmdJbnRlcnZhbCA9IGNsaWVudC5wb2xsaW5nSW50ZXJ2YWwsIH0pIHtcbiAgICBjb25zdCBlbmFibGVQb2xsaW5nID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBwb2xsXyAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICByZXR1cm4gcG9sbF87XG4gICAgICAgIGlmIChjbGllbnQudHJhbnNwb3J0LnR5cGUgPT09ICd3ZWJTb2NrZXQnIHx8XG4gICAgICAgICAgICBjbGllbnQudHJhbnNwb3J0LnR5cGUgPT09ICdpcGMnKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBpZiAoY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnZmFsbGJhY2snICYmXG4gICAgICAgICAgICAoY2xpZW50LnRyYW5zcG9ydC50cmFuc3BvcnRzWzBdLmNvbmZpZy50eXBlID09PSAnd2ViU29ja2V0JyB8fFxuICAgICAgICAgICAgICAgIGNsaWVudC50cmFuc3BvcnQudHJhbnNwb3J0c1swXS5jb25maWcudHlwZSA9PT0gJ2lwYycpKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KSgpO1xuICAgIGxldCBwcmV2QmxvY2tOdW1iZXI7XG4gICAgY29uc3QgcG9sbEJsb2NrTnVtYmVyID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBvYnNlcnZlcklkID0gc3RyaW5naWZ5KFtcbiAgICAgICAgICAgICd3YXRjaEJsb2NrTnVtYmVyJyxcbiAgICAgICAgICAgIGNsaWVudC51aWQsXG4gICAgICAgICAgICBlbWl0T25CZWdpbixcbiAgICAgICAgICAgIGVtaXRNaXNzZWQsXG4gICAgICAgICAgICBwb2xsaW5nSW50ZXJ2YWwsXG4gICAgICAgIF0pO1xuICAgICAgICByZXR1cm4gb2JzZXJ2ZShvYnNlcnZlcklkLCB7IG9uQmxvY2tOdW1iZXIsIG9uRXJyb3IgfSwgKGVtaXQpID0+IHBvbGwoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCBibG9ja051bWJlciA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrTnVtYmVyLCAnZ2V0QmxvY2tOdW1iZXInKSh7IGNhY2hlVGltZTogMCB9KTtcbiAgICAgICAgICAgICAgICBpZiAocHJldkJsb2NrTnVtYmVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlIGN1cnJlbnQgYmxvY2sgbnVtYmVyIGlzIHRoZSBzYW1lIGFzIHRoZSBwcmV2aW91cyxcbiAgICAgICAgICAgICAgICAgICAgLy8gd2UgY2FuIHNraXAuXG4gICAgICAgICAgICAgICAgICAgIGlmIChibG9ja051bWJlciA9PT0gcHJldkJsb2NrTnVtYmVyKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIG1pc3NlZCBvdXQgb24gc29tZSBwcmV2aW91cyBibG9ja3MsIGFuZCB0aGVcbiAgICAgICAgICAgICAgICAgICAgLy8gYGVtaXRNaXNzZWRgIGZsYWcgaXMgdHJ1dGh5LCBsZXQncyBlbWl0IHRob3NlIGJsb2Nrcy5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrTnVtYmVyIC0gcHJldkJsb2NrTnVtYmVyID4gMSAmJiBlbWl0TWlzc2VkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gcHJldkJsb2NrTnVtYmVyICsgMW47IGkgPCBibG9ja051bWJlcjsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkJsb2NrTnVtYmVyKGksIHByZXZCbG9ja051bWJlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldkJsb2NrTnVtYmVyID0gaTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgbmV4dCBibG9jayBudW1iZXIgaXMgZ3JlYXRlciB0aGFuIHRoZSBwcmV2aW91cyxcbiAgICAgICAgICAgICAgICAvLyBpdCBpcyBub3QgaW4gdGhlIHBhc3QsIGFuZCB3ZSBjYW4gZW1pdCB0aGUgbmV3IGJsb2NrIG51bWJlci5cbiAgICAgICAgICAgICAgICBpZiAocHJldkJsb2NrTnVtYmVyID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgYmxvY2tOdW1iZXIgPiBwcmV2QmxvY2tOdW1iZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkJsb2NrTnVtYmVyKGJsb2NrTnVtYmVyLCBwcmV2QmxvY2tOdW1iZXIpO1xuICAgICAgICAgICAgICAgICAgICBwcmV2QmxvY2tOdW1iZXIgPSBibG9ja051bWJlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgZW1pdC5vbkVycm9yPy4oZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwge1xuICAgICAgICAgICAgZW1pdE9uQmVnaW4sXG4gICAgICAgICAgICBpbnRlcnZhbDogcG9sbGluZ0ludGVydmFsLFxuICAgICAgICB9KSk7XG4gICAgfTtcbiAgICBjb25zdCBzdWJzY3JpYmVCbG9ja051bWJlciA9ICgpID0+IHtcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXJJZCA9IHN0cmluZ2lmeShbXG4gICAgICAgICAgICAnd2F0Y2hCbG9ja051bWJlcicsXG4gICAgICAgICAgICBjbGllbnQudWlkLFxuICAgICAgICAgICAgZW1pdE9uQmVnaW4sXG4gICAgICAgICAgICBlbWl0TWlzc2VkLFxuICAgICAgICBdKTtcbiAgICAgICAgcmV0dXJuIG9ic2VydmUob2JzZXJ2ZXJJZCwgeyBvbkJsb2NrTnVtYmVyLCBvbkVycm9yIH0sIChlbWl0KSA9PiB7XG4gICAgICAgICAgICBsZXQgYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIGxldCB1bnN1YnNjcmliZSA9ICgpID0+IChhY3RpdmUgPSBmYWxzZSk7XG4gICAgICAgICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zcG9ydCA9ICgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnZmFsbGJhY2snKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdHJhbnNwb3J0ID0gY2xpZW50LnRyYW5zcG9ydC50cmFuc3BvcnRzLmZpbmQoKHRyYW5zcG9ydCkgPT4gdHJhbnNwb3J0LmNvbmZpZy50eXBlID09PSAnd2ViU29ja2V0JyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BvcnQuY29uZmlnLnR5cGUgPT09ICdpcGMnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRyYW5zcG9ydClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNsaWVudC50cmFuc3BvcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRyYW5zcG9ydC52YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjbGllbnQudHJhbnNwb3J0O1xuICAgICAgICAgICAgICAgICAgICB9KSgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IHVuc3Vic2NyaWJlOiB1bnN1YnNjcmliZV8gfSA9IGF3YWl0IHRyYW5zcG9ydC5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiBbJ25ld0hlYWRzJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICBvbkRhdGEoZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYWN0aXZlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYmxvY2tOdW1iZXIgPSBoZXhUb0JpZ0ludChkYXRhLnJlc3VsdD8ubnVtYmVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbWl0Lm9uQmxvY2tOdW1iZXIoYmxvY2tOdW1iZXIsIHByZXZCbG9ja051bWJlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldkJsb2NrTnVtYmVyID0gYmxvY2tOdW1iZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgb25FcnJvcihlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVtaXQub25FcnJvcj8uKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB1bnN1YnNjcmliZSA9IHVuc3Vic2NyaWJlXztcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFhY3RpdmUpXG4gICAgICAgICAgICAgICAgICAgICAgICB1bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3I/LihlcnIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKCk7XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICByZXR1cm4gZW5hYmxlUG9sbGluZyA/IHBvbGxCbG9ja051bWJlcigpIDogc3Vic2NyaWJlQmxvY2tOdW1iZXIoKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXdhdGNoQmxvY2tOdW1iZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchBlockNumber.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchBlocks.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/watchBlocks.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ watchBlocks: () => (/* binding */ watchBlocks)\n/* harmony export */ });\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_poll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/poll.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _getBlock_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getBlock.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js\");\n\n\n\n\n\n/**\n * Watches and returns information for incoming blocks.\n *\n * - Docs: https://viem.sh/docs/actions/public/watchBlocks\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/blocks_watching-blocks\n * - JSON-RPC Methods:\n * - When `poll: true`, calls [`eth_getBlockByNumber`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getBlockByNumber) on a polling interval.\n * - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newHeads\"` event.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchBlocksParameters}\n * @returns A function that can be invoked to stop watching for new block numbers. {@link WatchBlocksReturnType}\n *\n * @example\n * import { createPublicClient, watchBlocks, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const unwatch = watchBlocks(client, {\n * onBlock: (block) => console.log(block),\n * })\n */\nfunction watchBlocks(client, { blockTag = client.experimental_blockTag ?? 'latest', emitMissed = false, emitOnBegin = false, onBlock, onError, includeTransactions: includeTransactions_, poll: poll_, pollingInterval = client.pollingInterval, }) {\n const enablePolling = (() => {\n if (typeof poll_ !== 'undefined')\n return poll_;\n if (client.transport.type === 'webSocket' ||\n client.transport.type === 'ipc')\n return false;\n if (client.transport.type === 'fallback' &&\n (client.transport.transports[0].config.type === 'webSocket' ||\n client.transport.transports[0].config.type === 'ipc'))\n return false;\n return true;\n })();\n const includeTransactions = includeTransactions_ ?? false;\n let prevBlock;\n const pollBlocks = () => {\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'watchBlocks',\n client.uid,\n blockTag,\n emitMissed,\n emitOnBegin,\n includeTransactions,\n pollingInterval,\n ]);\n return (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { onBlock, onError }, (emit) => (0,_utils_poll_js__WEBPACK_IMPORTED_MODULE_2__.poll)(async () => {\n try {\n const block = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_4__.getBlock, 'getBlock')({\n blockTag,\n includeTransactions,\n });\n if (block.number !== null && prevBlock?.number != null) {\n // If the current block number is the same as the previous,\n // we can skip.\n if (block.number === prevBlock.number)\n return;\n // If we have missed out on some previous blocks, and the\n // `emitMissed` flag is truthy, let's emit those blocks.\n if (block.number - prevBlock.number > 1 && emitMissed) {\n for (let i = prevBlock?.number + 1n; i < block.number; i++) {\n const block = (await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_4__.getBlock, 'getBlock')({\n blockNumber: i,\n includeTransactions,\n }));\n emit.onBlock(block, prevBlock);\n prevBlock = block;\n }\n }\n }\n if (\n // If no previous block exists, emit.\n prevBlock?.number == null ||\n // If the block tag is \"pending\" with no block number, emit.\n (blockTag === 'pending' && block?.number == null) ||\n // If the next block number is greater than the previous block number, emit.\n // We don't want to emit blocks in the past.\n (block.number !== null && block.number > prevBlock.number)) {\n emit.onBlock(block, prevBlock);\n prevBlock = block;\n }\n }\n catch (err) {\n emit.onError?.(err);\n }\n }, {\n emitOnBegin,\n interval: pollingInterval,\n }));\n };\n const subscribeBlocks = () => {\n let active = true;\n let emitFetched = true;\n let unsubscribe = () => (active = false);\n (async () => {\n try {\n if (emitOnBegin) {\n (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_4__.getBlock, 'getBlock')({\n blockTag,\n includeTransactions,\n })\n .then((block) => {\n if (!active)\n return;\n if (!emitFetched)\n return;\n onBlock(block, undefined);\n emitFetched = false;\n })\n .catch(onError);\n }\n const transport = (() => {\n if (client.transport.type === 'fallback') {\n const transport = client.transport.transports.find((transport) => transport.config.type === 'webSocket' ||\n transport.config.type === 'ipc');\n if (!transport)\n return client.transport;\n return transport.value;\n }\n return client.transport;\n })();\n const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n params: ['newHeads'],\n async onData(data) {\n if (!active)\n return;\n const block = (await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getBlock_js__WEBPACK_IMPORTED_MODULE_4__.getBlock, 'getBlock')({\n blockNumber: data.result?.number,\n includeTransactions,\n }).catch(() => { }));\n if (!active)\n return;\n onBlock(block, prevBlock);\n emitFetched = false;\n prevBlock = block;\n },\n onError(error) {\n onError?.(error);\n },\n });\n unsubscribe = unsubscribe_;\n if (!active)\n unsubscribe();\n }\n catch (err) {\n onError?.(err);\n }\n })();\n return () => unsubscribe();\n };\n return enablePolling ? pollBlocks() : subscribeBlocks();\n}\n//# sourceMappingURL=watchBlocks.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2F0Y2hCbG9ja3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQXFEO0FBQ0o7QUFDTjtBQUNVO0FBQ1o7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsb0ZBQW9GO0FBQ3BGO0FBQ0E7QUFDQSxZQUFZLHdDQUF3QztBQUNwRCxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPLCtCQUErQixtTkFBbU47QUFDelA7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsOERBQVM7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsMERBQU8sZUFBZSxrQkFBa0IsWUFBWSxvREFBSTtBQUN2RTtBQUNBLG9DQUFvQyw4REFBUyxTQUFTLGtEQUFRO0FBQzlEO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZEQUE2RCxrQkFBa0I7QUFDL0UsaURBQWlELDhEQUFTLFNBQVMsa0RBQVE7QUFDM0U7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiw4REFBUyxTQUFTLGtEQUFRO0FBQzlDO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQix3QkFBd0IsNEJBQTRCO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkNBQTZDLDhEQUFTLFNBQVMsa0RBQVE7QUFDdkU7QUFDQTtBQUNBLHlCQUF5QixpQkFBaUI7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy93YXRjaEJsb2Nrcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgb2JzZXJ2ZSB9IGZyb20gJy4uLy4uL3V0aWxzL29ic2VydmUuanMnO1xuaW1wb3J0IHsgcG9sbCB9IGZyb20gJy4uLy4uL3V0aWxzL3BvbGwuanMnO1xuaW1wb3J0IHsgc3RyaW5naWZ5IH0gZnJvbSAnLi4vLi4vdXRpbHMvc3RyaW5naWZ5LmpzJztcbmltcG9ydCB7IGdldEJsb2NrIH0gZnJvbSAnLi9nZXRCbG9jay5qcyc7XG4vKipcbiAqIFdhdGNoZXMgYW5kIHJldHVybnMgaW5mb3JtYXRpb24gZm9yIGluY29taW5nIGJsb2Nrcy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL3dhdGNoQmxvY2tzXG4gKiAtIEV4YW1wbGVzOiBodHRwczovL3N0YWNrYmxpdHouY29tL2dpdGh1Yi93ZXZtL3ZpZW0vdHJlZS9tYWluL2V4YW1wbGVzL2Jsb2Nrc193YXRjaGluZy1ibG9ja3NcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczpcbiAqICAgLSBXaGVuIGBwb2xsOiB0cnVlYCwgY2FsbHMgW2BldGhfZ2V0QmxvY2tCeU51bWJlcmBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0QmxvY2tCeU51bWJlcikgb24gYSBwb2xsaW5nIGludGVydmFsLlxuICogICAtIFdoZW4gYHBvbGw6IGZhbHNlYCAmIFdlYlNvY2tldCBUcmFuc3BvcnQsIHVzZXMgYSBXZWJTb2NrZXQgc3Vic2NyaXB0aW9uIHZpYSBbYGV0aF9zdWJzY3JpYmVgXShodHRwczovL2RvY3MuYWxjaGVteS5jb20vcmVmZXJlbmNlL2V0aC1zdWJzY3JpYmUtcG9seWdvbikgYW5kIHRoZSBgXCJuZXdIZWFkc1wiYCBldmVudC5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgV2F0Y2hCbG9ja3NQYXJhbWV0ZXJzfVxuICogQHJldHVybnMgQSBmdW5jdGlvbiB0aGF0IGNhbiBiZSBpbnZva2VkIHRvIHN0b3Agd2F0Y2hpbmcgZm9yIG5ldyBibG9jayBudW1iZXJzLiB7QGxpbmsgV2F0Y2hCbG9ja3NSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIHdhdGNoQmxvY2tzLCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgdW53YXRjaCA9IHdhdGNoQmxvY2tzKGNsaWVudCwge1xuICogICBvbkJsb2NrOiAoYmxvY2spID0+IGNvbnNvbGUubG9nKGJsb2NrKSxcbiAqIH0pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3YXRjaEJsb2NrcyhjbGllbnQsIHsgYmxvY2tUYWcgPSBjbGllbnQuZXhwZXJpbWVudGFsX2Jsb2NrVGFnID8/ICdsYXRlc3QnLCBlbWl0TWlzc2VkID0gZmFsc2UsIGVtaXRPbkJlZ2luID0gZmFsc2UsIG9uQmxvY2ssIG9uRXJyb3IsIGluY2x1ZGVUcmFuc2FjdGlvbnM6IGluY2x1ZGVUcmFuc2FjdGlvbnNfLCBwb2xsOiBwb2xsXywgcG9sbGluZ0ludGVydmFsID0gY2xpZW50LnBvbGxpbmdJbnRlcnZhbCwgfSkge1xuICAgIGNvbnN0IGVuYWJsZVBvbGxpbmcgPSAoKCkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHBvbGxfICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgICAgIHJldHVybiBwb2xsXztcbiAgICAgICAgaWYgKGNsaWVudC50cmFuc3BvcnQudHlwZSA9PT0gJ3dlYlNvY2tldCcgfHxcbiAgICAgICAgICAgIGNsaWVudC50cmFuc3BvcnQudHlwZSA9PT0gJ2lwYycpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmIChjbGllbnQudHJhbnNwb3J0LnR5cGUgPT09ICdmYWxsYmFjaycgJiZcbiAgICAgICAgICAgIChjbGllbnQudHJhbnNwb3J0LnRyYW5zcG9ydHNbMF0uY29uZmlnLnR5cGUgPT09ICd3ZWJTb2NrZXQnIHx8XG4gICAgICAgICAgICAgICAgY2xpZW50LnRyYW5zcG9ydC50cmFuc3BvcnRzWzBdLmNvbmZpZy50eXBlID09PSAnaXBjJykpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pKCk7XG4gICAgY29uc3QgaW5jbHVkZVRyYW5zYWN0aW9ucyA9IGluY2x1ZGVUcmFuc2FjdGlvbnNfID8/IGZhbHNlO1xuICAgIGxldCBwcmV2QmxvY2s7XG4gICAgY29uc3QgcG9sbEJsb2NrcyA9ICgpID0+IHtcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXJJZCA9IHN0cmluZ2lmeShbXG4gICAgICAgICAgICAnd2F0Y2hCbG9ja3MnLFxuICAgICAgICAgICAgY2xpZW50LnVpZCxcbiAgICAgICAgICAgIGJsb2NrVGFnLFxuICAgICAgICAgICAgZW1pdE1pc3NlZCxcbiAgICAgICAgICAgIGVtaXRPbkJlZ2luLFxuICAgICAgICAgICAgaW5jbHVkZVRyYW5zYWN0aW9ucyxcbiAgICAgICAgICAgIHBvbGxpbmdJbnRlcnZhbCxcbiAgICAgICAgXSk7XG4gICAgICAgIHJldHVybiBvYnNlcnZlKG9ic2VydmVySWQsIHsgb25CbG9jaywgb25FcnJvciB9LCAoZW1pdCkgPT4gcG9sbChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZ2V0QmxvY2ssICdnZXRCbG9jaycpKHtcbiAgICAgICAgICAgICAgICAgICAgYmxvY2tUYWcsXG4gICAgICAgICAgICAgICAgICAgIGluY2x1ZGVUcmFuc2FjdGlvbnMsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaWYgKGJsb2NrLm51bWJlciAhPT0gbnVsbCAmJiBwcmV2QmxvY2s/Lm51bWJlciAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBjdXJyZW50IGJsb2NrIG51bWJlciBpcyB0aGUgc2FtZSBhcyB0aGUgcHJldmlvdXMsXG4gICAgICAgICAgICAgICAgICAgIC8vIHdlIGNhbiBza2lwLlxuICAgICAgICAgICAgICAgICAgICBpZiAoYmxvY2subnVtYmVyID09PSBwcmV2QmxvY2subnVtYmVyKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIG1pc3NlZCBvdXQgb24gc29tZSBwcmV2aW91cyBibG9ja3MsIGFuZCB0aGVcbiAgICAgICAgICAgICAgICAgICAgLy8gYGVtaXRNaXNzZWRgIGZsYWcgaXMgdHJ1dGh5LCBsZXQncyBlbWl0IHRob3NlIGJsb2Nrcy5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrLm51bWJlciAtIHByZXZCbG9jay5udW1iZXIgPiAxICYmIGVtaXRNaXNzZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSBwcmV2QmxvY2s/Lm51bWJlciArIDFuOyBpIDwgYmxvY2subnVtYmVyOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBibG9jayA9IChhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBnZXRCbG9jaywgJ2dldEJsb2NrJykoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja051bWJlcjogaSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZVRyYW5zYWN0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkJsb2NrKGJsb2NrLCBwcmV2QmxvY2spO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZCbG9jayA9IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAvLyBJZiBubyBwcmV2aW91cyBibG9jayBleGlzdHMsIGVtaXQuXG4gICAgICAgICAgICAgICAgcHJldkJsb2NrPy5udW1iZXIgPT0gbnVsbCB8fFxuICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgYmxvY2sgdGFnIGlzIFwicGVuZGluZ1wiIHdpdGggbm8gYmxvY2sgbnVtYmVyLCBlbWl0LlxuICAgICAgICAgICAgICAgICAgICAoYmxvY2tUYWcgPT09ICdwZW5kaW5nJyAmJiBibG9jaz8ubnVtYmVyID09IG51bGwpIHx8XG4gICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBuZXh0IGJsb2NrIG51bWJlciBpcyBncmVhdGVyIHRoYW4gdGhlIHByZXZpb3VzIGJsb2NrIG51bWJlciwgZW1pdC5cbiAgICAgICAgICAgICAgICAgICAgLy8gV2UgZG9uJ3Qgd2FudCB0byBlbWl0IGJsb2NrcyBpbiB0aGUgcGFzdC5cbiAgICAgICAgICAgICAgICAgICAgKGJsb2NrLm51bWJlciAhPT0gbnVsbCAmJiBibG9jay5udW1iZXIgPiBwcmV2QmxvY2subnVtYmVyKSkge1xuICAgICAgICAgICAgICAgICAgICBlbWl0Lm9uQmxvY2soYmxvY2ssIHByZXZCbG9jayk7XG4gICAgICAgICAgICAgICAgICAgIHByZXZCbG9jayA9IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICBlbWl0Lm9uRXJyb3I/LihlcnIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCB7XG4gICAgICAgICAgICBlbWl0T25CZWdpbixcbiAgICAgICAgICAgIGludGVydmFsOiBwb2xsaW5nSW50ZXJ2YWwsXG4gICAgICAgIH0pKTtcbiAgICB9O1xuICAgIGNvbnN0IHN1YnNjcmliZUJsb2NrcyA9ICgpID0+IHtcbiAgICAgICAgbGV0IGFjdGl2ZSA9IHRydWU7XG4gICAgICAgIGxldCBlbWl0RmV0Y2hlZCA9IHRydWU7XG4gICAgICAgIGxldCB1bnN1YnNjcmliZSA9ICgpID0+IChhY3RpdmUgPSBmYWxzZSk7XG4gICAgICAgIChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmIChlbWl0T25CZWdpbikge1xuICAgICAgICAgICAgICAgICAgICBnZXRBY3Rpb24oY2xpZW50LCBnZXRCbG9jaywgJ2dldEJsb2NrJykoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tUYWcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlVHJhbnNhY3Rpb25zLFxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKGJsb2NrKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWFjdGl2ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWVtaXRGZXRjaGVkKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQmxvY2soYmxvY2ssIHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbWl0RmV0Y2hlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKG9uRXJyb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCB0cmFuc3BvcnQgPSAoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnZmFsbGJhY2snKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0cmFuc3BvcnQgPSBjbGllbnQudHJhbnNwb3J0LnRyYW5zcG9ydHMuZmluZCgodHJhbnNwb3J0KSA9PiB0cmFuc3BvcnQuY29uZmlnLnR5cGUgPT09ICd3ZWJTb2NrZXQnIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwb3J0LmNvbmZpZy50eXBlID09PSAnaXBjJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRyYW5zcG9ydClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2xpZW50LnRyYW5zcG9ydDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cmFuc3BvcnQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNsaWVudC50cmFuc3BvcnQ7XG4gICAgICAgICAgICAgICAgfSkoKTtcbiAgICAgICAgICAgICAgICBjb25zdCB7IHVuc3Vic2NyaWJlOiB1bnN1YnNjcmliZV8gfSA9IGF3YWl0IHRyYW5zcG9ydC5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IFsnbmV3SGVhZHMnXSxcbiAgICAgICAgICAgICAgICAgICAgYXN5bmMgb25EYXRhKGRhdGEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYWN0aXZlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gKGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrLCAnZ2V0QmxvY2snKSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tOdW1iZXI6IGRhdGEucmVzdWx0Py5udW1iZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZVRyYW5zYWN0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLmNhdGNoKCgpID0+IHsgfSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFhY3RpdmUpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgb25CbG9jayhibG9jaywgcHJldkJsb2NrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVtaXRGZXRjaGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBwcmV2QmxvY2sgPSBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgb25FcnJvcj8uKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB1bnN1YnNjcmliZSA9IHVuc3Vic2NyaWJlXztcbiAgICAgICAgICAgICAgICBpZiAoIWFjdGl2ZSlcbiAgICAgICAgICAgICAgICAgICAgdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICBvbkVycm9yPy4oZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkoKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHVuc3Vic2NyaWJlKCk7XG4gICAgfTtcbiAgICByZXR1cm4gZW5hYmxlUG9sbGluZyA/IHBvbGxCbG9ja3MoKSA6IHN1YnNjcmliZUJsb2NrcygpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9d2F0Y2hCbG9ja3MuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchBlocks.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchContractEvent.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/watchContractEvent.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ watchContractEvent: () => (/* binding */ watchContractEvent)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_rpc_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../errors/rpc.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/rpc.js\");\n/* harmony import */ var _utils_abi_decodeEventLog_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../utils/abi/decodeEventLog.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeEventLog.js\");\n/* harmony import */ var _utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/abi/encodeEventTopics.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeEventTopics.js\");\n/* harmony import */ var _utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../utils/formatters/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/log.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_poll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/poll.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _createContractEventFilter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createContractEventFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createContractEventFilter.js\");\n/* harmony import */ var _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getBlockNumber.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockNumber.js\");\n/* harmony import */ var _getContractEvents_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getContractEvents.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getContractEvents.js\");\n/* harmony import */ var _getFilterChanges_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getFilterChanges.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterChanges.js\");\n/* harmony import */ var _uninstallFilter_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./uninstallFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/uninstallFilter.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Watches and returns emitted contract event logs.\n *\n * - Docs: https://viem.sh/docs/contract/watchContractEvent\n *\n * This Action will batch up all the event logs found within the [`pollingInterval`](https://viem.sh/docs/contract/watchContractEvent#pollinginterval-optional), and invoke them via [`onLogs`](https://viem.sh/docs/contract/watchContractEvent#onLogs).\n *\n * `watchContractEvent` will attempt to create an [Event Filter](https://viem.sh/docs/contract/createContractEventFilter) and listen to changes to the Filter per polling interval, however, if the RPC Provider does not support Filters (e.g. `eth_newFilter`), then `watchContractEvent` will fall back to using [`getLogs`](https://viem.sh/docs/actions/public/getLogs) instead.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchContractEventParameters}\n * @returns A function that can be invoked to stop watching for new event logs. {@link WatchContractEventReturnType}\n *\n * @example\n * import { createPublicClient, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { watchContractEvent } from 'viem/contract'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const unwatch = watchContractEvent(client, {\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi(['event Transfer(address indexed from, address indexed to, uint256 value)']),\n * eventName: 'Transfer',\n * args: { from: '0xc961145a54C96E3aE9bAA048c4F4D6b04C13916b' },\n * onLogs: (logs) => console.log(logs),\n * })\n */\nfunction watchContractEvent(client, parameters) {\n const { abi, address, args, batch = true, eventName, fromBlock, onError, onLogs, poll: poll_, pollingInterval = client.pollingInterval, strict: strict_, } = parameters;\n const enablePolling = (() => {\n if (typeof poll_ !== 'undefined')\n return poll_;\n if (typeof fromBlock === 'bigint')\n return true;\n if (client.transport.type === 'webSocket' ||\n client.transport.type === 'ipc')\n return false;\n if (client.transport.type === 'fallback' &&\n (client.transport.transports[0].config.type === 'webSocket' ||\n client.transport.transports[0].config.type === 'ipc'))\n return false;\n return true;\n })();\n const pollContractEvent = () => {\n const strict = strict_ ?? false;\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'watchContractEvent',\n address,\n args,\n batch,\n client.uid,\n eventName,\n pollingInterval,\n strict,\n fromBlock,\n ]);\n return (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { onLogs, onError }, (emit) => {\n let previousBlockNumber;\n if (fromBlock !== undefined)\n previousBlockNumber = fromBlock - 1n;\n let filter;\n let initialized = false;\n const unwatch = (0,_utils_poll_js__WEBPACK_IMPORTED_MODULE_2__.poll)(async () => {\n if (!initialized) {\n try {\n filter = (await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _createContractEventFilter_js__WEBPACK_IMPORTED_MODULE_4__.createContractEventFilter, 'createContractEventFilter')({\n abi,\n address,\n args: args,\n eventName: eventName,\n strict: strict,\n fromBlock,\n }));\n }\n catch { }\n initialized = true;\n return;\n }\n try {\n let logs;\n if (filter) {\n logs = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getFilterChanges_js__WEBPACK_IMPORTED_MODULE_5__.getFilterChanges, 'getFilterChanges')({ filter });\n }\n else {\n // If the filter doesn't exist, we will fall back to use `getLogs`.\n // The fall back exists because some RPC Providers do not support filters.\n // Fetch the block number to use for `getLogs`.\n const blockNumber = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_6__.getBlockNumber, 'getBlockNumber')({});\n // If the block number has changed, we will need to fetch the logs.\n // If the block number doesn't exist, we are yet to reach the first poll interval,\n // so do not emit any logs.\n if (previousBlockNumber && previousBlockNumber < blockNumber) {\n logs = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getContractEvents_js__WEBPACK_IMPORTED_MODULE_7__.getContractEvents, 'getContractEvents')({\n abi,\n address,\n args,\n eventName,\n fromBlock: previousBlockNumber + 1n,\n toBlock: blockNumber,\n strict,\n });\n }\n else {\n logs = [];\n }\n previousBlockNumber = blockNumber;\n }\n if (logs.length === 0)\n return;\n if (batch)\n emit.onLogs(logs);\n else\n for (const log of logs)\n emit.onLogs([log]);\n }\n catch (err) {\n // If a filter has been set and gets uninstalled, providers will throw an InvalidInput error.\n // Reinitialize the filter when this occurs\n if (filter && err instanceof _errors_rpc_js__WEBPACK_IMPORTED_MODULE_8__.InvalidInputRpcError)\n initialized = false;\n emit.onError?.(err);\n }\n }, {\n emitOnBegin: true,\n interval: pollingInterval,\n });\n return async () => {\n if (filter)\n await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _uninstallFilter_js__WEBPACK_IMPORTED_MODULE_9__.uninstallFilter, 'uninstallFilter')({ filter });\n unwatch();\n };\n });\n };\n const subscribeContractEvent = () => {\n const strict = strict_ ?? false;\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'watchContractEvent',\n address,\n args,\n batch,\n client.uid,\n eventName,\n pollingInterval,\n strict,\n ]);\n let active = true;\n let unsubscribe = () => (active = false);\n return (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { onLogs, onError }, (emit) => {\n ;\n (async () => {\n try {\n const transport = (() => {\n if (client.transport.type === 'fallback') {\n const transport = client.transport.transports.find((transport) => transport.config.type === 'webSocket' ||\n transport.config.type === 'ipc');\n if (!transport)\n return client.transport;\n return transport.value;\n }\n return client.transport;\n })();\n const topics = eventName\n ? (0,_utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_10__.encodeEventTopics)({\n abi: abi,\n eventName: eventName,\n args,\n })\n : [];\n const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n params: ['logs', { address, topics }],\n onData(data) {\n if (!active)\n return;\n const log = data.result;\n try {\n const { eventName, args } = (0,_utils_abi_decodeEventLog_js__WEBPACK_IMPORTED_MODULE_11__.decodeEventLog)({\n abi: abi,\n data: log.data,\n topics: log.topics,\n strict: strict_,\n });\n const formatted = (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_12__.formatLog)(log, {\n args,\n eventName: eventName,\n });\n emit.onLogs([formatted]);\n }\n catch (err) {\n let eventName;\n let isUnnamed;\n if (err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_13__.DecodeLogDataMismatch ||\n err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_13__.DecodeLogTopicsMismatch) {\n // If strict mode is on, and log data/topics do not match event definition, skip.\n if (strict_)\n return;\n eventName = err.abiItem.name;\n isUnnamed = err.abiItem.inputs?.some((x) => !('name' in x && x.name));\n }\n // Set args to empty if there is an error decoding (e.g. indexed/non-indexed params mismatch).\n const formatted = (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_12__.formatLog)(log, {\n args: isUnnamed ? [] : {},\n eventName,\n });\n emit.onLogs([formatted]);\n }\n },\n onError(error) {\n emit.onError?.(error);\n },\n });\n unsubscribe = unsubscribe_;\n if (!active)\n unsubscribe();\n }\n catch (err) {\n onError?.(err);\n }\n })();\n return () => unsubscribe();\n });\n };\n return enablePolling ? pollContractEvent() : subscribeContractEvent();\n}\n//# sourceMappingURL=watchContractEvent.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2F0Y2hDb250cmFjdEV2ZW50LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFzRjtBQUMzQjtBQUNRO0FBQ087QUFDaEI7QUFDTDtBQUNKO0FBQ047QUFDVTtBQUNzQjtBQUN0QjtBQUNPO0FBQ0g7QUFDRjtBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixpRkFBaUY7QUFDakY7QUFDQTtBQUNBLFlBQVkscUNBQXFDO0FBQ2pELFlBQVksVUFBVTtBQUN0QixZQUFZLHFCQUFxQjtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsb0RBQW9EO0FBQ2pFO0FBQ0EsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLG1KQUFtSjtBQUMvSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsMkJBQTJCLDhEQUFTO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSwwREFBTyxlQUFlLGlCQUFpQjtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG9EQUFJO0FBQ2hDO0FBQ0E7QUFDQSx3Q0FBd0MsOERBQVMsU0FBUyxvRkFBeUI7QUFDbkY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsOERBQVMsU0FBUyxrRUFBZ0Isd0JBQXdCLFFBQVE7QUFDdkc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtEQUFrRCw4REFBUyxTQUFTLDhEQUFjLHNCQUFzQjtBQUN4RztBQUNBO0FBQ0E7QUFDQTtBQUNBLHlDQUF5Qyw4REFBUyxTQUFTLG9FQUFpQjtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELGdFQUFvQjtBQUNyRTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsMEJBQTBCLDhEQUFTLFNBQVMsZ0VBQWUsdUJBQXVCLFFBQVE7QUFDMUY7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsOERBQVM7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsMERBQU8sZUFBZSxpQkFBaUI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0EsMEJBQTBCLG1GQUFpQjtBQUMzQztBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekI7QUFDQSw0QkFBNEIsNEJBQTRCO0FBQ3hELDJDQUEyQyxpQkFBaUI7QUFDNUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QyxrQkFBa0IsRUFBRSw2RUFBYztBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQztBQUNqQyxrREFBa0Qsb0VBQVM7QUFDM0Q7QUFDQTtBQUNBLGlDQUFpQztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbURBQW1ELGtFQUFxQjtBQUN4RSxtREFBbUQsb0VBQXVCO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0RBQWtELG9FQUFTO0FBQzNELDZEQUE2RDtBQUM3RDtBQUNBLGlDQUFpQztBQUNqQztBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekIscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3B1YmxpYy93YXRjaENvbnRyYWN0RXZlbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVjb2RlTG9nRGF0YU1pc21hdGNoLCBEZWNvZGVMb2dUb3BpY3NNaXNtYXRjaCwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IEludmFsaWRJbnB1dFJwY0Vycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL3JwYy5qcyc7XG5pbXBvcnQgeyBkZWNvZGVFdmVudExvZyB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9kZWNvZGVFdmVudExvZy5qcyc7XG5pbXBvcnQgeyBlbmNvZGVFdmVudFRvcGljcywgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRXZlbnRUb3BpY3MuanMnO1xuaW1wb3J0IHsgZm9ybWF0TG9nIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy9sb2cuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IG9ic2VydmUgfSBmcm9tICcuLi8uLi91dGlscy9vYnNlcnZlLmpzJztcbmltcG9ydCB7IHBvbGwgfSBmcm9tICcuLi8uLi91dGlscy9wb2xsLmpzJztcbmltcG9ydCB7IHN0cmluZ2lmeSB9IGZyb20gJy4uLy4uL3V0aWxzL3N0cmluZ2lmeS5qcyc7XG5pbXBvcnQgeyBjcmVhdGVDb250cmFjdEV2ZW50RmlsdGVyIH0gZnJvbSAnLi9jcmVhdGVDb250cmFjdEV2ZW50RmlsdGVyLmpzJztcbmltcG9ydCB7IGdldEJsb2NrTnVtYmVyIH0gZnJvbSAnLi9nZXRCbG9ja051bWJlci5qcyc7XG5pbXBvcnQgeyBnZXRDb250cmFjdEV2ZW50cywgfSBmcm9tICcuL2dldENvbnRyYWN0RXZlbnRzLmpzJztcbmltcG9ydCB7IGdldEZpbHRlckNoYW5nZXMgfSBmcm9tICcuL2dldEZpbHRlckNoYW5nZXMuanMnO1xuaW1wb3J0IHsgdW5pbnN0YWxsRmlsdGVyIH0gZnJvbSAnLi91bmluc3RhbGxGaWx0ZXIuanMnO1xuLyoqXG4gKiBXYXRjaGVzIGFuZCByZXR1cm5zIGVtaXR0ZWQgY29udHJhY3QgZXZlbnQgbG9ncy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L3dhdGNoQ29udHJhY3RFdmVudFxuICpcbiAqIFRoaXMgQWN0aW9uIHdpbGwgYmF0Y2ggdXAgYWxsIHRoZSBldmVudCBsb2dzIGZvdW5kIHdpdGhpbiB0aGUgW2Bwb2xsaW5nSW50ZXJ2YWxgXShodHRwczovL3ZpZW0uc2gvZG9jcy9jb250cmFjdC93YXRjaENvbnRyYWN0RXZlbnQjcG9sbGluZ2ludGVydmFsLW9wdGlvbmFsKSwgYW5kIGludm9rZSB0aGVtIHZpYSBbYG9uTG9nc2BdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2NvbnRyYWN0L3dhdGNoQ29udHJhY3RFdmVudCNvbkxvZ3MpLlxuICpcbiAqIGB3YXRjaENvbnRyYWN0RXZlbnRgIHdpbGwgYXR0ZW1wdCB0byBjcmVhdGUgYW4gW0V2ZW50IEZpbHRlcl0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvY29udHJhY3QvY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlcikgYW5kIGxpc3RlbiB0byBjaGFuZ2VzIHRvIHRoZSBGaWx0ZXIgcGVyIHBvbGxpbmcgaW50ZXJ2YWwsIGhvd2V2ZXIsIGlmIHRoZSBSUEMgUHJvdmlkZXIgZG9lcyBub3Qgc3VwcG9ydCBGaWx0ZXJzIChlLmcuIGBldGhfbmV3RmlsdGVyYCksIHRoZW4gYHdhdGNoQ29udHJhY3RFdmVudGAgd2lsbCBmYWxsIGJhY2sgdG8gdXNpbmcgW2BnZXRMb2dzYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0TG9ncykgaW5zdGVhZC5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgV2F0Y2hDb250cmFjdEV2ZW50UGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCBjYW4gYmUgaW52b2tlZCB0byBzdG9wIHdhdGNoaW5nIGZvciBuZXcgZXZlbnQgbG9ncy4ge0BsaW5rIFdhdGNoQ29udHJhY3RFdmVudFJldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVB1YmxpY0NsaWVudCwgaHR0cCwgcGFyc2VBYmkgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgd2F0Y2hDb250cmFjdEV2ZW50IH0gZnJvbSAndmllbS9jb250cmFjdCdcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgdW53YXRjaCA9IHdhdGNoQ29udHJhY3RFdmVudChjbGllbnQsIHtcbiAqICAgYWRkcmVzczogJzB4RkJBMzkxMkNhMDRkZDQ1OGM4NDNlMkVFMDg5NjdmQzA0ZjM1NzljMicsXG4gKiAgIGFiaTogcGFyc2VBYmkoWydldmVudCBUcmFuc2ZlcihhZGRyZXNzIGluZGV4ZWQgZnJvbSwgYWRkcmVzcyBpbmRleGVkIHRvLCB1aW50MjU2IHZhbHVlKSddKSxcbiAqICAgZXZlbnROYW1lOiAnVHJhbnNmZXInLFxuICogICBhcmdzOiB7IGZyb206ICcweGM5NjExNDVhNTRDOTZFM2FFOWJBQTA0OGM0RjRENmIwNEMxMzkxNmInIH0sXG4gKiAgIG9uTG9nczogKGxvZ3MpID0+IGNvbnNvbGUubG9nKGxvZ3MpLFxuICogfSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhdGNoQ29udHJhY3RFdmVudChjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFiaSwgYWRkcmVzcywgYXJncywgYmF0Y2ggPSB0cnVlLCBldmVudE5hbWUsIGZyb21CbG9jaywgb25FcnJvciwgb25Mb2dzLCBwb2xsOiBwb2xsXywgcG9sbGluZ0ludGVydmFsID0gY2xpZW50LnBvbGxpbmdJbnRlcnZhbCwgc3RyaWN0OiBzdHJpY3RfLCB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBlbmFibGVQb2xsaW5nID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBwb2xsXyAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICByZXR1cm4gcG9sbF87XG4gICAgICAgIGlmICh0eXBlb2YgZnJvbUJsb2NrID09PSAnYmlnaW50JylcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICBpZiAoY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnd2ViU29ja2V0JyB8fFxuICAgICAgICAgICAgY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnaXBjJylcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKGNsaWVudC50cmFuc3BvcnQudHlwZSA9PT0gJ2ZhbGxiYWNrJyAmJlxuICAgICAgICAgICAgKGNsaWVudC50cmFuc3BvcnQudHJhbnNwb3J0c1swXS5jb25maWcudHlwZSA9PT0gJ3dlYlNvY2tldCcgfHxcbiAgICAgICAgICAgICAgICBjbGllbnQudHJhbnNwb3J0LnRyYW5zcG9ydHNbMF0uY29uZmlnLnR5cGUgPT09ICdpcGMnKSlcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSkoKTtcbiAgICBjb25zdCBwb2xsQ29udHJhY3RFdmVudCA9ICgpID0+IHtcbiAgICAgICAgY29uc3Qgc3RyaWN0ID0gc3RyaWN0XyA/PyBmYWxzZTtcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXJJZCA9IHN0cmluZ2lmeShbXG4gICAgICAgICAgICAnd2F0Y2hDb250cmFjdEV2ZW50JyxcbiAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgYmF0Y2gsXG4gICAgICAgICAgICBjbGllbnQudWlkLFxuICAgICAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICAgICAgcG9sbGluZ0ludGVydmFsLFxuICAgICAgICAgICAgc3RyaWN0LFxuICAgICAgICAgICAgZnJvbUJsb2NrLFxuICAgICAgICBdKTtcbiAgICAgICAgcmV0dXJuIG9ic2VydmUob2JzZXJ2ZXJJZCwgeyBvbkxvZ3MsIG9uRXJyb3IgfSwgKGVtaXQpID0+IHtcbiAgICAgICAgICAgIGxldCBwcmV2aW91c0Jsb2NrTnVtYmVyO1xuICAgICAgICAgICAgaWYgKGZyb21CbG9jayAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgIHByZXZpb3VzQmxvY2tOdW1iZXIgPSBmcm9tQmxvY2sgLSAxbjtcbiAgICAgICAgICAgIGxldCBmaWx0ZXI7XG4gICAgICAgICAgICBsZXQgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IHVud2F0Y2ggPSBwb2xsKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSAoYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlciwgJ2NyZWF0ZUNvbnRyYWN0RXZlbnRGaWx0ZXInKSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnczogYXJncyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudE5hbWU6IGV2ZW50TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpY3Q6IHN0cmljdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tQmxvY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggeyB9XG4gICAgICAgICAgICAgICAgICAgIGluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBsZXQgbG9ncztcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZpbHRlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9ncyA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldEZpbHRlckNoYW5nZXMsICdnZXRGaWx0ZXJDaGFuZ2VzJykoeyBmaWx0ZXIgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgZmlsdGVyIGRvZXNuJ3QgZXhpc3QsIHdlIHdpbGwgZmFsbCBiYWNrIHRvIHVzZSBgZ2V0TG9nc2AuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUaGUgZmFsbCBiYWNrIGV4aXN0cyBiZWNhdXNlIHNvbWUgUlBDIFByb3ZpZGVycyBkbyBub3Qgc3VwcG9ydCBmaWx0ZXJzLlxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRmV0Y2ggdGhlIGJsb2NrIG51bWJlciB0byB1c2UgZm9yIGBnZXRMb2dzYC5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrTnVtYmVyID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZ2V0QmxvY2tOdW1iZXIsICdnZXRCbG9ja051bWJlcicpKHt9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBibG9jayBudW1iZXIgaGFzIGNoYW5nZWQsIHdlIHdpbGwgbmVlZCB0byBmZXRjaCB0aGUgbG9ncy5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBibG9jayBudW1iZXIgZG9lc24ndCBleGlzdCwgd2UgYXJlIHlldCB0byByZWFjaCB0aGUgZmlyc3QgcG9sbCBpbnRlcnZhbCxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNvIGRvIG5vdCBlbWl0IGFueSBsb2dzLlxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3VzQmxvY2tOdW1iZXIgJiYgcHJldmlvdXNCbG9ja051bWJlciA8IGJsb2NrTnVtYmVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9ncyA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldENvbnRyYWN0RXZlbnRzLCAnZ2V0Q29udHJhY3RFdmVudHMnKSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFiaSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tQmxvY2s6IHByZXZpb3VzQmxvY2tOdW1iZXIgKyAxbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9CbG9jazogYmxvY2tOdW1iZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmljdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvZ3MgPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzQmxvY2tOdW1iZXIgPSBibG9ja051bWJlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAobG9ncy5sZW5ndGggPT09IDApXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIGlmIChiYXRjaClcbiAgICAgICAgICAgICAgICAgICAgICAgIGVtaXQub25Mb2dzKGxvZ3MpO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGxvZyBvZiBsb2dzKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVtaXQub25Mb2dzKFtsb2ddKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICAgICAvLyBJZiBhIGZpbHRlciBoYXMgYmVlbiBzZXQgYW5kIGdldHMgdW5pbnN0YWxsZWQsIHByb3ZpZGVycyB3aWxsIHRocm93IGFuIEludmFsaWRJbnB1dCBlcnJvci5cbiAgICAgICAgICAgICAgICAgICAgLy8gUmVpbml0aWFsaXplIHRoZSBmaWx0ZXIgd2hlbiB0aGlzIG9jY3Vyc1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmlsdGVyICYmIGVyciBpbnN0YW5jZW9mIEludmFsaWRJbnB1dFJwY0Vycm9yKVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkVycm9yPy4oZXJyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCB7XG4gICAgICAgICAgICAgICAgZW1pdE9uQmVnaW46IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJ2YWw6IHBvbGxpbmdJbnRlcnZhbCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmlsdGVyKVxuICAgICAgICAgICAgICAgICAgICBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCB1bmluc3RhbGxGaWx0ZXIsICd1bmluc3RhbGxGaWx0ZXInKSh7IGZpbHRlciB9KTtcbiAgICAgICAgICAgICAgICB1bndhdGNoKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICB9O1xuICAgIGNvbnN0IHN1YnNjcmliZUNvbnRyYWN0RXZlbnQgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHN0cmljdCA9IHN0cmljdF8gPz8gZmFsc2U7XG4gICAgICAgIGNvbnN0IG9ic2VydmVySWQgPSBzdHJpbmdpZnkoW1xuICAgICAgICAgICAgJ3dhdGNoQ29udHJhY3RFdmVudCcsXG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIGJhdGNoLFxuICAgICAgICAgICAgY2xpZW50LnVpZCxcbiAgICAgICAgICAgIGV2ZW50TmFtZSxcbiAgICAgICAgICAgIHBvbGxpbmdJbnRlcnZhbCxcbiAgICAgICAgICAgIHN0cmljdCxcbiAgICAgICAgXSk7XG4gICAgICAgIGxldCBhY3RpdmUgPSB0cnVlO1xuICAgICAgICBsZXQgdW5zdWJzY3JpYmUgPSAoKSA9PiAoYWN0aXZlID0gZmFsc2UpO1xuICAgICAgICByZXR1cm4gb2JzZXJ2ZShvYnNlcnZlcklkLCB7IG9uTG9ncywgb25FcnJvciB9LCAoZW1pdCkgPT4ge1xuICAgICAgICAgICAgO1xuICAgICAgICAgICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0cmFuc3BvcnQgPSAoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNsaWVudC50cmFuc3BvcnQudHlwZSA9PT0gJ2ZhbGxiYWNrJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zcG9ydCA9IGNsaWVudC50cmFuc3BvcnQudHJhbnNwb3J0cy5maW5kKCh0cmFuc3BvcnQpID0+IHRyYW5zcG9ydC5jb25maWcudHlwZSA9PT0gJ3dlYlNvY2tldCcgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwb3J0LmNvbmZpZy50eXBlID09PSAnaXBjJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0cmFuc3BvcnQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjbGllbnQudHJhbnNwb3J0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cmFuc3BvcnQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2xpZW50LnRyYW5zcG9ydDtcbiAgICAgICAgICAgICAgICAgICAgfSkoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdG9waWNzID0gZXZlbnROYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGVuY29kZUV2ZW50VG9waWNzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYmk6IGFiaSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudE5hbWU6IGV2ZW50TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIDogW107XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgdW5zdWJzY3JpYmU6IHVuc3Vic2NyaWJlXyB9ID0gYXdhaXQgdHJhbnNwb3J0LnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IFsnbG9ncycsIHsgYWRkcmVzcywgdG9waWNzIH1dLFxuICAgICAgICAgICAgICAgICAgICAgICAgb25EYXRhKGRhdGEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWFjdGl2ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxvZyA9IGRhdGEucmVzdWx0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZXZlbnROYW1lLCBhcmdzIH0gPSBkZWNvZGVFdmVudExvZyh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYmk6IGFiaSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IGxvZy5kYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9waWNzOiBsb2cudG9waWNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaWN0OiBzdHJpY3RfLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gZm9ybWF0TG9nKGxvZywge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50TmFtZTogZXZlbnROYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkxvZ3MoW2Zvcm1hdHRlZF0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBldmVudE5hbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpc1VubmFtZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBEZWNvZGVMb2dEYXRhTWlzbWF0Y2ggfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyciBpbnN0YW5jZW9mIERlY29kZUxvZ1RvcGljc01pc21hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiBzdHJpY3QgbW9kZSBpcyBvbiwgYW5kIGxvZyBkYXRhL3RvcGljcyBkbyBub3QgbWF0Y2ggZXZlbnQgZGVmaW5pdGlvbiwgc2tpcC5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdHJpY3RfKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50TmFtZSA9IGVyci5hYmlJdGVtLm5hbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc1VubmFtZWQgPSBlcnIuYWJpSXRlbS5pbnB1dHM/LnNvbWUoKHgpID0+ICEoJ25hbWUnIGluIHggJiYgeC5uYW1lKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2V0IGFyZ3MgdG8gZW1wdHkgaWYgdGhlcmUgaXMgYW4gZXJyb3IgZGVjb2RpbmcgKGUuZy4gaW5kZXhlZC9ub24taW5kZXhlZCBwYXJhbXMgbWlzbWF0Y2gpLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBmb3JtYXR0ZWQgPSBmb3JtYXRMb2cobG9nLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzOiBpc1VubmFtZWQgPyBbXSA6IHt9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkxvZ3MoW2Zvcm1hdHRlZF0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBvbkVycm9yKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkVycm9yPy4oZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHVuc3Vic2NyaWJlID0gdW5zdWJzY3JpYmVfO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWFjdGl2ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcj8uKGVycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkoKTtcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB1bnN1YnNjcmliZSgpO1xuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHJldHVybiBlbmFibGVQb2xsaW5nID8gcG9sbENvbnRyYWN0RXZlbnQoKSA6IHN1YnNjcmliZUNvbnRyYWN0RXZlbnQoKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXdhdGNoQ29udHJhY3RFdmVudC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchContractEvent.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchEvent.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/watchEvent.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ watchEvent: () => (/* binding */ watchEvent)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_rpc_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../errors/rpc.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/rpc.js\");\n/* harmony import */ var _utils_abi_decodeEventLog_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../utils/abi/decodeEventLog.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeEventLog.js\");\n/* harmony import */ var _utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/abi/encodeEventTopics.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeEventTopics.js\");\n/* harmony import */ var _utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../utils/formatters/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/log.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_poll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/poll.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _createEventFilter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createEventFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createEventFilter.js\");\n/* harmony import */ var _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getBlockNumber.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockNumber.js\");\n/* harmony import */ var _getFilterChanges_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getFilterChanges.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterChanges.js\");\n/* harmony import */ var _getLogs_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getLogs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getLogs.js\");\n/* harmony import */ var _uninstallFilter_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./uninstallFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/uninstallFilter.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Watches and returns emitted [Event Logs](https://viem.sh/docs/glossary/terms#event-log).\n *\n * - Docs: https://viem.sh/docs/actions/public/watchEvent\n * - JSON-RPC Methods:\n * - **RPC Provider supports `eth_newFilter`:**\n * - Calls [`eth_newFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newfilter) to create a filter (called on initialize).\n * - On a polling interval, it will call [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterchanges).\n * - **RPC Provider does not support `eth_newFilter`:**\n * - Calls [`eth_getLogs`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getlogs) for each block between the polling interval.\n *\n * This Action will batch up all the Event Logs found within the [`pollingInterval`](https://viem.sh/docs/actions/public/watchEvent#pollinginterval-optional), and invoke them via [`onLogs`](https://viem.sh/docs/actions/public/watchEvent#onLogs).\n *\n * `watchEvent` will attempt to create an [Event Filter](https://viem.sh/docs/actions/public/createEventFilter) and listen to changes to the Filter per polling interval, however, if the RPC Provider does not support Filters (e.g. `eth_newFilter`), then `watchEvent` will fall back to using [`getLogs`](https://viem.sh/docs/actions/public/getLogs) instead.\n *\n * @param client - Client to use\n * @param parameters - {@link WatchEventParameters}\n * @returns A function that can be invoked to stop watching for new Event Logs. {@link WatchEventReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { watchEvent } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const unwatch = watchEvent(client, {\n * onLogs: (logs) => console.log(logs),\n * })\n */\nfunction watchEvent(client, { address, args, batch = true, event, events, fromBlock, onError, onLogs, poll: poll_, pollingInterval = client.pollingInterval, strict: strict_, }) {\n const enablePolling = (() => {\n if (typeof poll_ !== 'undefined')\n return poll_;\n if (typeof fromBlock === 'bigint')\n return true;\n if (client.transport.type === 'webSocket' ||\n client.transport.type === 'ipc')\n return false;\n if (client.transport.type === 'fallback' &&\n (client.transport.transports[0].config.type === 'webSocket' ||\n client.transport.transports[0].config.type === 'ipc'))\n return false;\n return true;\n })();\n const strict = strict_ ?? false;\n const pollEvent = () => {\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'watchEvent',\n address,\n args,\n batch,\n client.uid,\n event,\n pollingInterval,\n fromBlock,\n ]);\n return (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { onLogs, onError }, (emit) => {\n let previousBlockNumber;\n if (fromBlock !== undefined)\n previousBlockNumber = fromBlock - 1n;\n let filter;\n let initialized = false;\n const unwatch = (0,_utils_poll_js__WEBPACK_IMPORTED_MODULE_2__.poll)(async () => {\n if (!initialized) {\n try {\n filter = (await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _createEventFilter_js__WEBPACK_IMPORTED_MODULE_4__.createEventFilter, 'createEventFilter')({\n address,\n args,\n event: event,\n events,\n strict,\n fromBlock,\n }));\n }\n catch { }\n initialized = true;\n return;\n }\n try {\n let logs;\n if (filter) {\n logs = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getFilterChanges_js__WEBPACK_IMPORTED_MODULE_5__.getFilterChanges, 'getFilterChanges')({ filter });\n }\n else {\n // If the filter doesn't exist, we will fall back to use `getLogs`.\n // The fall back exists because some RPC Providers do not support filters.\n // Fetch the block number to use for `getLogs`.\n const blockNumber = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getBlockNumber_js__WEBPACK_IMPORTED_MODULE_6__.getBlockNumber, 'getBlockNumber')({});\n // If the block number has changed, we will need to fetch the logs.\n // If the block number doesn't exist, we are yet to reach the first poll interval,\n // so do not emit any logs.\n if (previousBlockNumber && previousBlockNumber !== blockNumber) {\n logs = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getLogs_js__WEBPACK_IMPORTED_MODULE_7__.getLogs, 'getLogs')({\n address,\n args,\n event: event,\n events,\n fromBlock: previousBlockNumber + 1n,\n toBlock: blockNumber,\n });\n }\n else {\n logs = [];\n }\n previousBlockNumber = blockNumber;\n }\n if (logs.length === 0)\n return;\n if (batch)\n emit.onLogs(logs);\n else\n for (const log of logs)\n emit.onLogs([log]);\n }\n catch (err) {\n // If a filter has been set and gets uninstalled, providers will throw an InvalidInput error.\n // Reinitialize the filter when this occurs\n if (filter && err instanceof _errors_rpc_js__WEBPACK_IMPORTED_MODULE_8__.InvalidInputRpcError)\n initialized = false;\n emit.onError?.(err);\n }\n }, {\n emitOnBegin: true,\n interval: pollingInterval,\n });\n return async () => {\n if (filter)\n await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _uninstallFilter_js__WEBPACK_IMPORTED_MODULE_9__.uninstallFilter, 'uninstallFilter')({ filter });\n unwatch();\n };\n });\n };\n const subscribeEvent = () => {\n let active = true;\n let unsubscribe = () => (active = false);\n (async () => {\n try {\n const transport = (() => {\n if (client.transport.type === 'fallback') {\n const transport = client.transport.transports.find((transport) => transport.config.type === 'webSocket' ||\n transport.config.type === 'ipc');\n if (!transport)\n return client.transport;\n return transport.value;\n }\n return client.transport;\n })();\n const events_ = events ?? (event ? [event] : undefined);\n let topics = [];\n if (events_) {\n const encoded = events_.flatMap((event) => (0,_utils_abi_encodeEventTopics_js__WEBPACK_IMPORTED_MODULE_10__.encodeEventTopics)({\n abi: [event],\n eventName: event.name,\n args,\n }));\n // TODO: Clean up type casting\n topics = [encoded];\n if (event)\n topics = topics[0];\n }\n const { unsubscribe: unsubscribe_ } = await transport.subscribe({\n params: ['logs', { address, topics }],\n onData(data) {\n if (!active)\n return;\n const log = data.result;\n try {\n const { eventName, args } = (0,_utils_abi_decodeEventLog_js__WEBPACK_IMPORTED_MODULE_11__.decodeEventLog)({\n abi: events_ ?? [],\n data: log.data,\n topics: log.topics,\n strict,\n });\n const formatted = (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_12__.formatLog)(log, { args, eventName });\n onLogs([formatted]);\n }\n catch (err) {\n let eventName;\n let isUnnamed;\n if (err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_13__.DecodeLogDataMismatch ||\n err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_13__.DecodeLogTopicsMismatch) {\n // If strict mode is on, and log data/topics do not match event definition, skip.\n if (strict_)\n return;\n eventName = err.abiItem.name;\n isUnnamed = err.abiItem.inputs?.some((x) => !('name' in x && x.name));\n }\n // Set args to empty if there is an error decoding (e.g. indexed/non-indexed params mismatch).\n const formatted = (0,_utils_formatters_log_js__WEBPACK_IMPORTED_MODULE_12__.formatLog)(log, {\n args: isUnnamed ? [] : {},\n eventName,\n });\n onLogs([formatted]);\n }\n },\n onError(error) {\n onError?.(error);\n },\n });\n unsubscribe = unsubscribe_;\n if (!active)\n unsubscribe();\n }\n catch (err) {\n onError?.(err);\n }\n })();\n return () => unsubscribe();\n };\n return enablePolling ? pollEvent() : subscribeEvent();\n}\n//# sourceMappingURL=watchEvent.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2F0Y2hFdmVudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBc0Y7QUFDM0I7QUFDUTtBQUNPO0FBQ2hCO0FBQ0w7QUFDSjtBQUNOO0FBQ1U7QUFDTztBQUNQO0FBQ0k7QUFDbEI7QUFDZ0I7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsaUZBQWlGO0FBQ2pGO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxhQUFhO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTyw4QkFBOEIsaUpBQWlKO0FBQ3RMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSwyQkFBMkIsOERBQVM7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSwwREFBTyxlQUFlLGlCQUFpQjtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG9EQUFJO0FBQ2hDO0FBQ0E7QUFDQSx3Q0FBd0MsOERBQVMsU0FBUyxvRUFBaUI7QUFDM0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsOERBQVMsU0FBUyxrRUFBZ0Isd0JBQXdCLFFBQVE7QUFDdkc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtEQUFrRCw4REFBUyxTQUFTLDhEQUFjLHNCQUFzQjtBQUN4RztBQUNBO0FBQ0E7QUFDQTtBQUNBLHlDQUF5Qyw4REFBUyxTQUFTLGdEQUFPO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaURBQWlELGdFQUFvQjtBQUNyRTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsMEJBQTBCLDhEQUFTLFNBQVMsZ0VBQWUsdUJBQXVCLFFBQVE7QUFDMUY7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0EsK0RBQStELG1GQUFpQjtBQUNoRjtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qiw0QkFBNEI7QUFDcEQsdUNBQXVDLGlCQUFpQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLGtCQUFrQixFQUFFLDZFQUFjO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCLDhDQUE4QyxvRUFBUyxRQUFRLGlCQUFpQjtBQUNoRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0NBQStDLGtFQUFxQjtBQUNwRSwrQ0FBK0Msb0VBQXVCO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOENBQThDLG9FQUFTO0FBQ3ZELHlEQUF5RDtBQUN6RDtBQUNBLDZCQUE2QjtBQUM3QjtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL3dhdGNoRXZlbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVjb2RlTG9nRGF0YU1pc21hdGNoLCBEZWNvZGVMb2dUb3BpY3NNaXNtYXRjaCwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IEludmFsaWRJbnB1dFJwY0Vycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL3JwYy5qcyc7XG5pbXBvcnQgeyBkZWNvZGVFdmVudExvZyB9IGZyb20gJy4uLy4uL3V0aWxzL2FiaS9kZWNvZGVFdmVudExvZy5qcyc7XG5pbXBvcnQgeyBlbmNvZGVFdmVudFRvcGljcywgfSBmcm9tICcuLi8uLi91dGlscy9hYmkvZW5jb2RlRXZlbnRUb3BpY3MuanMnO1xuaW1wb3J0IHsgZm9ybWF0TG9nIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy9sb2cuanMnO1xuaW1wb3J0IHsgZ2V0QWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QWN0aW9uLmpzJztcbmltcG9ydCB7IG9ic2VydmUgfSBmcm9tICcuLi8uLi91dGlscy9vYnNlcnZlLmpzJztcbmltcG9ydCB7IHBvbGwgfSBmcm9tICcuLi8uLi91dGlscy9wb2xsLmpzJztcbmltcG9ydCB7IHN0cmluZ2lmeSB9IGZyb20gJy4uLy4uL3V0aWxzL3N0cmluZ2lmeS5qcyc7XG5pbXBvcnQgeyBjcmVhdGVFdmVudEZpbHRlciwgfSBmcm9tICcuL2NyZWF0ZUV2ZW50RmlsdGVyLmpzJztcbmltcG9ydCB7IGdldEJsb2NrTnVtYmVyIH0gZnJvbSAnLi9nZXRCbG9ja051bWJlci5qcyc7XG5pbXBvcnQgeyBnZXRGaWx0ZXJDaGFuZ2VzIH0gZnJvbSAnLi9nZXRGaWx0ZXJDaGFuZ2VzLmpzJztcbmltcG9ydCB7IGdldExvZ3MgfSBmcm9tICcuL2dldExvZ3MuanMnO1xuaW1wb3J0IHsgdW5pbnN0YWxsRmlsdGVyIH0gZnJvbSAnLi91bmluc3RhbGxGaWx0ZXIuanMnO1xuLyoqXG4gKiBXYXRjaGVzIGFuZCByZXR1cm5zIGVtaXR0ZWQgW0V2ZW50IExvZ3NdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2dsb3NzYXJ5L3Rlcm1zI2V2ZW50LWxvZykuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy93YXRjaEV2ZW50XG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6XG4gKiAgIC0gKipSUEMgUHJvdmlkZXIgc3VwcG9ydHMgYGV0aF9uZXdGaWx0ZXJgOioqXG4gKiAgICAgLSBDYWxscyBbYGV0aF9uZXdGaWx0ZXJgXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8jZXRoX25ld2ZpbHRlcikgdG8gY3JlYXRlIGEgZmlsdGVyIChjYWxsZWQgb24gaW5pdGlhbGl6ZSkuXG4gKiAgICAgLSBPbiBhIHBvbGxpbmcgaW50ZXJ2YWwsIGl0IHdpbGwgY2FsbCBbYGV0aF9nZXRGaWx0ZXJDaGFuZ2VzYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9nZXRmaWx0ZXJjaGFuZ2VzKS5cbiAqICAgLSAqKlJQQyBQcm92aWRlciBkb2VzIG5vdCBzdXBwb3J0IGBldGhfbmV3RmlsdGVyYDoqKlxuICogICAgIC0gQ2FsbHMgW2BldGhfZ2V0TG9nc2BdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfZ2V0bG9ncykgZm9yIGVhY2ggYmxvY2sgYmV0d2VlbiB0aGUgcG9sbGluZyBpbnRlcnZhbC5cbiAqXG4gKiBUaGlzIEFjdGlvbiB3aWxsIGJhdGNoIHVwIGFsbCB0aGUgRXZlbnQgTG9ncyBmb3VuZCB3aXRoaW4gdGhlIFtgcG9sbGluZ0ludGVydmFsYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvd2F0Y2hFdmVudCNwb2xsaW5naW50ZXJ2YWwtb3B0aW9uYWwpLCBhbmQgaW52b2tlIHRoZW0gdmlhIFtgb25Mb2dzYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvd2F0Y2hFdmVudCNvbkxvZ3MpLlxuICpcbiAqIGB3YXRjaEV2ZW50YCB3aWxsIGF0dGVtcHQgdG8gY3JlYXRlIGFuIFtFdmVudCBGaWx0ZXJdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvcHVibGljL2NyZWF0ZUV2ZW50RmlsdGVyKSBhbmQgbGlzdGVuIHRvIGNoYW5nZXMgdG8gdGhlIEZpbHRlciBwZXIgcG9sbGluZyBpbnRlcnZhbCwgaG93ZXZlciwgaWYgdGhlIFJQQyBQcm92aWRlciBkb2VzIG5vdCBzdXBwb3J0IEZpbHRlcnMgKGUuZy4gYGV0aF9uZXdGaWx0ZXJgKSwgdGhlbiBgd2F0Y2hFdmVudGAgd2lsbCBmYWxsIGJhY2sgdG8gdXNpbmcgW2BnZXRMb2dzYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvZ2V0TG9ncykgaW5zdGVhZC5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgV2F0Y2hFdmVudFBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBBIGZ1bmN0aW9uIHRoYXQgY2FuIGJlIGludm9rZWQgdG8gc3RvcCB3YXRjaGluZyBmb3IgbmV3IEV2ZW50IExvZ3MuIHtAbGluayBXYXRjaEV2ZW50UmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlUHVibGljQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IHdhdGNoRXZlbnQgfSBmcm9tICd2aWVtL3B1YmxpYydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVQdWJsaWNDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgdW53YXRjaCA9IHdhdGNoRXZlbnQoY2xpZW50LCB7XG4gKiAgIG9uTG9nczogKGxvZ3MpID0+IGNvbnNvbGUubG9nKGxvZ3MpLFxuICogfSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhdGNoRXZlbnQoY2xpZW50LCB7IGFkZHJlc3MsIGFyZ3MsIGJhdGNoID0gdHJ1ZSwgZXZlbnQsIGV2ZW50cywgZnJvbUJsb2NrLCBvbkVycm9yLCBvbkxvZ3MsIHBvbGw6IHBvbGxfLCBwb2xsaW5nSW50ZXJ2YWwgPSBjbGllbnQucG9sbGluZ0ludGVydmFsLCBzdHJpY3Q6IHN0cmljdF8sIH0pIHtcbiAgICBjb25zdCBlbmFibGVQb2xsaW5nID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBwb2xsXyAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICByZXR1cm4gcG9sbF87XG4gICAgICAgIGlmICh0eXBlb2YgZnJvbUJsb2NrID09PSAnYmlnaW50JylcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICBpZiAoY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnd2ViU29ja2V0JyB8fFxuICAgICAgICAgICAgY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnaXBjJylcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKGNsaWVudC50cmFuc3BvcnQudHlwZSA9PT0gJ2ZhbGxiYWNrJyAmJlxuICAgICAgICAgICAgKGNsaWVudC50cmFuc3BvcnQudHJhbnNwb3J0c1swXS5jb25maWcudHlwZSA9PT0gJ3dlYlNvY2tldCcgfHxcbiAgICAgICAgICAgICAgICBjbGllbnQudHJhbnNwb3J0LnRyYW5zcG9ydHNbMF0uY29uZmlnLnR5cGUgPT09ICdpcGMnKSlcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSkoKTtcbiAgICBjb25zdCBzdHJpY3QgPSBzdHJpY3RfID8/IGZhbHNlO1xuICAgIGNvbnN0IHBvbGxFdmVudCA9ICgpID0+IHtcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXJJZCA9IHN0cmluZ2lmeShbXG4gICAgICAgICAgICAnd2F0Y2hFdmVudCcsXG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIGJhdGNoLFxuICAgICAgICAgICAgY2xpZW50LnVpZCxcbiAgICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgICAgcG9sbGluZ0ludGVydmFsLFxuICAgICAgICAgICAgZnJvbUJsb2NrLFxuICAgICAgICBdKTtcbiAgICAgICAgcmV0dXJuIG9ic2VydmUob2JzZXJ2ZXJJZCwgeyBvbkxvZ3MsIG9uRXJyb3IgfSwgKGVtaXQpID0+IHtcbiAgICAgICAgICAgIGxldCBwcmV2aW91c0Jsb2NrTnVtYmVyO1xuICAgICAgICAgICAgaWYgKGZyb21CbG9jayAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgIHByZXZpb3VzQmxvY2tOdW1iZXIgPSBmcm9tQmxvY2sgLSAxbjtcbiAgICAgICAgICAgIGxldCBmaWx0ZXI7XG4gICAgICAgICAgICBsZXQgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IHVud2F0Y2ggPSBwb2xsKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSAoYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgY3JlYXRlRXZlbnRGaWx0ZXIsICdjcmVhdGVFdmVudEZpbHRlcicpKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQ6IGV2ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbUJsb2NrLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhdGNoIHsgfVxuICAgICAgICAgICAgICAgICAgICBpbml0aWFsaXplZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGxvZ3M7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvZ3MgPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBnZXRGaWx0ZXJDaGFuZ2VzLCAnZ2V0RmlsdGVyQ2hhbmdlcycpKHsgZmlsdGVyIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlIGZpbHRlciBkb2Vzbid0IGV4aXN0LCB3ZSB3aWxsIGZhbGwgYmFjayB0byB1c2UgYGdldExvZ3NgLlxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gVGhlIGZhbGwgYmFjayBleGlzdHMgYmVjYXVzZSBzb21lIFJQQyBQcm92aWRlcnMgZG8gbm90IHN1cHBvcnQgZmlsdGVycy5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZldGNoIHRoZSBibG9jayBudW1iZXIgdG8gdXNlIGZvciBgZ2V0TG9nc2AuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBibG9ja051bWJlciA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrTnVtYmVyLCAnZ2V0QmxvY2tOdW1iZXInKSh7fSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgYmxvY2sgbnVtYmVyIGhhcyBjaGFuZ2VkLCB3ZSB3aWxsIG5lZWQgdG8gZmV0Y2ggdGhlIGxvZ3MuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgYmxvY2sgbnVtYmVyIGRvZXNuJ3QgZXhpc3QsIHdlIGFyZSB5ZXQgdG8gcmVhY2ggdGhlIGZpcnN0IHBvbGwgaW50ZXJ2YWwsXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBzbyBkbyBub3QgZW1pdCBhbnkgbG9ncy5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcmV2aW91c0Jsb2NrTnVtYmVyICYmIHByZXZpb3VzQmxvY2tOdW1iZXIgIT09IGJsb2NrTnVtYmVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9ncyA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldExvZ3MsICdnZXRMb2dzJykoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudDogZXZlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbUJsb2NrOiBwcmV2aW91c0Jsb2NrTnVtYmVyICsgMW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvQmxvY2s6IGJsb2NrTnVtYmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9ncyA9IFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNCbG9ja051bWJlciA9IGJsb2NrTnVtYmVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChsb2dzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGJhdGNoKVxuICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkxvZ3MobG9ncyk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgbG9nIG9mIGxvZ3MpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkxvZ3MoW2xvZ10pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIElmIGEgZmlsdGVyIGhhcyBiZWVuIHNldCBhbmQgZ2V0cyB1bmluc3RhbGxlZCwgcHJvdmlkZXJzIHdpbGwgdGhyb3cgYW4gSW52YWxpZElucHV0IGVycm9yLlxuICAgICAgICAgICAgICAgICAgICAvLyBSZWluaXRpYWxpemUgdGhlIGZpbHRlciB3aGVuIHRoaXMgb2NjdXJzXG4gICAgICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIgJiYgZXJyIGluc3RhbmNlb2YgSW52YWxpZElucHV0UnBjRXJyb3IpXG4gICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsaXplZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBlbWl0Lm9uRXJyb3I/LihlcnIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sIHtcbiAgICAgICAgICAgICAgICBlbWl0T25CZWdpbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcnZhbDogcG9sbGluZ0ludGVydmFsLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIpXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGdldEFjdGlvbihjbGllbnQsIHVuaW5zdGFsbEZpbHRlciwgJ3VuaW5zdGFsbEZpbHRlcicpKHsgZmlsdGVyIH0pO1xuICAgICAgICAgICAgICAgIHVud2F0Y2goKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgIH07XG4gICAgY29uc3Qgc3Vic2NyaWJlRXZlbnQgPSAoKSA9PiB7XG4gICAgICAgIGxldCBhY3RpdmUgPSB0cnVlO1xuICAgICAgICBsZXQgdW5zdWJzY3JpYmUgPSAoKSA9PiAoYWN0aXZlID0gZmFsc2UpO1xuICAgICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0cmFuc3BvcnQgPSAoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2xpZW50LnRyYW5zcG9ydC50eXBlID09PSAnZmFsbGJhY2snKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0cmFuc3BvcnQgPSBjbGllbnQudHJhbnNwb3J0LnRyYW5zcG9ydHMuZmluZCgodHJhbnNwb3J0KSA9PiB0cmFuc3BvcnQuY29uZmlnLnR5cGUgPT09ICd3ZWJTb2NrZXQnIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwb3J0LmNvbmZpZy50eXBlID09PSAnaXBjJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRyYW5zcG9ydClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2xpZW50LnRyYW5zcG9ydDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cmFuc3BvcnQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNsaWVudC50cmFuc3BvcnQ7XG4gICAgICAgICAgICAgICAgfSkoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBldmVudHNfID0gZXZlbnRzID8/IChldmVudCA/IFtldmVudF0gOiB1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgIGxldCB0b3BpY3MgPSBbXTtcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnRzXykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmNvZGVkID0gZXZlbnRzXy5mbGF0TWFwKChldmVudCkgPT4gZW5jb2RlRXZlbnRUb3BpY3Moe1xuICAgICAgICAgICAgICAgICAgICAgICAgYWJpOiBbZXZlbnRdLFxuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnROYW1lOiBldmVudC5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICAvLyBUT0RPOiBDbGVhbiB1cCB0eXBlIGNhc3RpbmdcbiAgICAgICAgICAgICAgICAgICAgdG9waWNzID0gW2VuY29kZWRdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3BpY3MgPSB0b3BpY3NbMF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHsgdW5zdWJzY3JpYmU6IHVuc3Vic2NyaWJlXyB9ID0gYXdhaXQgdHJhbnNwb3J0LnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogWydsb2dzJywgeyBhZGRyZXNzLCB0b3BpY3MgfV0sXG4gICAgICAgICAgICAgICAgICAgIG9uRGF0YShkYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWFjdGl2ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsb2cgPSBkYXRhLnJlc3VsdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBldmVudE5hbWUsIGFyZ3MgfSA9IGRlY29kZUV2ZW50TG9nKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJpOiBldmVudHNfID8/IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiBsb2cuZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9waWNzOiBsb2cudG9waWNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gZm9ybWF0TG9nKGxvZywgeyBhcmdzLCBldmVudE5hbWUgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25Mb2dzKFtmb3JtYXR0ZWRdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZXZlbnROYW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpc1VubmFtZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIERlY29kZUxvZ0RhdGFNaXNtYXRjaCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnIgaW5zdGFuY2VvZiBEZWNvZGVMb2dUb3BpY3NNaXNtYXRjaCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiBzdHJpY3QgbW9kZSBpcyBvbiwgYW5kIGxvZyBkYXRhL3RvcGljcyBkbyBub3QgbWF0Y2ggZXZlbnQgZGVmaW5pdGlvbiwgc2tpcC5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0cmljdF8pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50TmFtZSA9IGVyci5hYmlJdGVtLm5hbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzVW5uYW1lZCA9IGVyci5hYmlJdGVtLmlucHV0cz8uc29tZSgoeCkgPT4gISgnbmFtZScgaW4geCAmJiB4Lm5hbWUpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2V0IGFyZ3MgdG8gZW1wdHkgaWYgdGhlcmUgaXMgYW4gZXJyb3IgZGVjb2RpbmcgKGUuZy4gaW5kZXhlZC9ub24taW5kZXhlZCBwYXJhbXMgbWlzbWF0Y2gpLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZCA9IGZvcm1hdExvZyhsb2csIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnczogaXNVbm5hbWVkID8gW10gOiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTG9ncyhbZm9ybWF0dGVkXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uRXJyb3I/LihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdW5zdWJzY3JpYmUgPSB1bnN1YnNjcmliZV87XG4gICAgICAgICAgICAgICAgaWYgKCFhY3RpdmUpXG4gICAgICAgICAgICAgICAgICAgIHVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgb25FcnJvcj8uKGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKCk7XG4gICAgICAgIHJldHVybiAoKSA9PiB1bnN1YnNjcmliZSgpO1xuICAgIH07XG4gICAgcmV0dXJuIGVuYWJsZVBvbGxpbmcgPyBwb2xsRXZlbnQoKSA6IHN1YnNjcmliZUV2ZW50KCk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD13YXRjaEV2ZW50LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchEvent.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchPendingTransactions.js": /*!***************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/public/watchPendingTransactions.js ***! \***************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ watchPendingTransactions: () => (/* binding */ watchPendingTransactions)\n/* harmony export */ });\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_poll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/poll.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _createPendingTransactionFilter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createPendingTransactionFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createPendingTransactionFilter.js\");\n/* harmony import */ var _getFilterChanges_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getFilterChanges.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterChanges.js\");\n/* harmony import */ var _uninstallFilter_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./uninstallFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/uninstallFilter.js\");\n\n\n\n\n\n\n\n/**\n * Watches and returns pending transaction hashes.\n *\n * - Docs: https://viem.sh/docs/actions/public/watchPendingTransactions\n * - JSON-RPC Methods:\n * - When `poll: true`\n * - Calls [`eth_newPendingTransactionFilter`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_newpendingtransactionfilter) to initialize the filter.\n * - Calls [`eth_getFilterChanges`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getFilterChanges) on a polling interval.\n * - When `poll: false` & WebSocket Transport, uses a WebSocket subscription via [`eth_subscribe`](https://docs.alchemy.com/reference/eth-subscribe-polygon) and the `\"newPendingTransactions\"` event.\n *\n * This Action will batch up all the pending transactions found within the [`pollingInterval`](https://viem.sh/docs/actions/public/watchPendingTransactions#pollinginterval-optional), and invoke them via [`onTransactions`](https://viem.sh/docs/actions/public/watchPendingTransactions#ontransactions).\n *\n * @param client - Client to use\n * @param parameters - {@link WatchPendingTransactionsParameters}\n * @returns A function that can be invoked to stop watching for new pending transaction hashes. {@link WatchPendingTransactionsReturnType}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { watchPendingTransactions } from 'viem/public'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const unwatch = await watchPendingTransactions(client, {\n * onTransactions: (hashes) => console.log(hashes),\n * })\n */\nfunction watchPendingTransactions(client, { batch = true, onError, onTransactions, poll: poll_, pollingInterval = client.pollingInterval, }) {\n const enablePolling = typeof poll_ !== 'undefined'\n ? poll_\n : client.transport.type !== 'webSocket' && client.transport.type !== 'ipc';\n const pollPendingTransactions = () => {\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)([\n 'watchPendingTransactions',\n client.uid,\n batch,\n pollingInterval,\n ]);\n return (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_1__.observe)(observerId, { onTransactions, onError }, (emit) => {\n let filter;\n const unwatch = (0,_utils_poll_js__WEBPACK_IMPORTED_MODULE_2__.poll)(async () => {\n try {\n if (!filter) {\n try {\n filter = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _createPendingTransactionFilter_js__WEBPACK_IMPORTED_MODULE_4__.createPendingTransactionFilter, 'createPendingTransactionFilter')({});\n return;\n }\n catch (err) {\n unwatch();\n throw err;\n }\n }\n const hashes = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _getFilterChanges_js__WEBPACK_IMPORTED_MODULE_5__.getFilterChanges, 'getFilterChanges')({ filter });\n if (hashes.length === 0)\n return;\n if (batch)\n emit.onTransactions(hashes);\n else\n for (const hash of hashes)\n emit.onTransactions([hash]);\n }\n catch (err) {\n emit.onError?.(err);\n }\n }, {\n emitOnBegin: true,\n interval: pollingInterval,\n });\n return async () => {\n if (filter)\n await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_3__.getAction)(client, _uninstallFilter_js__WEBPACK_IMPORTED_MODULE_6__.uninstallFilter, 'uninstallFilter')({ filter });\n unwatch();\n };\n });\n };\n const subscribePendingTransactions = () => {\n let active = true;\n let unsubscribe = () => (active = false);\n (async () => {\n try {\n const { unsubscribe: unsubscribe_ } = await client.transport.subscribe({\n params: ['newPendingTransactions'],\n onData(data) {\n if (!active)\n return;\n const transaction = data.result;\n onTransactions([transaction]);\n },\n onError(error) {\n onError?.(error);\n },\n });\n unsubscribe = unsubscribe_;\n if (!active)\n unsubscribe();\n }\n catch (err) {\n onError?.(err);\n }\n })();\n return () => unsubscribe();\n };\n return enablePolling\n ? pollPendingTransactions()\n : subscribePendingTransactions();\n}\n//# sourceMappingURL=watchPendingTransactions.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9wdWJsaWMvd2F0Y2hQZW5kaW5nVHJhbnNhY3Rpb25zLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQXFEO0FBQ0o7QUFDTjtBQUNVO0FBQ2dDO0FBQzVCO0FBQ0Y7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsaUdBQWlHO0FBQ2pHO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSwyQkFBMkI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPLDRDQUE0QywrRkFBK0Y7QUFDbEo7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsOERBQVM7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsMERBQU8sZUFBZSx5QkFBeUI7QUFDOUQ7QUFDQSw0QkFBNEIsb0RBQUk7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDLDhEQUFTLFNBQVMsOEZBQThCLHNDQUFzQztBQUNqSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlDQUF5Qyw4REFBUyxTQUFTLGtFQUFnQix3QkFBd0IsUUFBUTtBQUMzRztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLDBCQUEwQiw4REFBUyxTQUFTLGdFQUFlLHVCQUF1QixRQUFRO0FBQzFGO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLDRCQUE0QjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvcHVibGljL3dhdGNoUGVuZGluZ1RyYW5zYWN0aW9ucy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgb2JzZXJ2ZSB9IGZyb20gJy4uLy4uL3V0aWxzL29ic2VydmUuanMnO1xuaW1wb3J0IHsgcG9sbCB9IGZyb20gJy4uLy4uL3V0aWxzL3BvbGwuanMnO1xuaW1wb3J0IHsgc3RyaW5naWZ5IH0gZnJvbSAnLi4vLi4vdXRpbHMvc3RyaW5naWZ5LmpzJztcbmltcG9ydCB7IGNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlciB9IGZyb20gJy4vY3JlYXRlUGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyLmpzJztcbmltcG9ydCB7IGdldEZpbHRlckNoYW5nZXMgfSBmcm9tICcuL2dldEZpbHRlckNoYW5nZXMuanMnO1xuaW1wb3J0IHsgdW5pbnN0YWxsRmlsdGVyIH0gZnJvbSAnLi91bmluc3RhbGxGaWx0ZXIuanMnO1xuLyoqXG4gKiBXYXRjaGVzIGFuZCByZXR1cm5zIHBlbmRpbmcgdHJhbnNhY3Rpb24gaGFzaGVzLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvd2F0Y2hQZW5kaW5nVHJhbnNhY3Rpb25zXG4gKiAtIEpTT04tUlBDIE1ldGhvZHM6XG4gKiAgIC0gV2hlbiBgcG9sbDogdHJ1ZWBcbiAqICAgICAtIENhbGxzIFtgZXRoX25ld1BlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcmBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfbmV3cGVuZGluZ3RyYW5zYWN0aW9uZmlsdGVyKSB0byBpbml0aWFsaXplIHRoZSBmaWx0ZXIuXG4gKiAgICAgLSBDYWxscyBbYGV0aF9nZXRGaWx0ZXJDaGFuZ2VzYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9nZXRGaWx0ZXJDaGFuZ2VzKSBvbiBhIHBvbGxpbmcgaW50ZXJ2YWwuXG4gKiAgIC0gV2hlbiBgcG9sbDogZmFsc2VgICYgV2ViU29ja2V0IFRyYW5zcG9ydCwgdXNlcyBhIFdlYlNvY2tldCBzdWJzY3JpcHRpb24gdmlhIFtgZXRoX3N1YnNjcmliZWBdKGh0dHBzOi8vZG9jcy5hbGNoZW15LmNvbS9yZWZlcmVuY2UvZXRoLXN1YnNjcmliZS1wb2x5Z29uKSBhbmQgdGhlIGBcIm5ld1BlbmRpbmdUcmFuc2FjdGlvbnNcImAgZXZlbnQuXG4gKlxuICogVGhpcyBBY3Rpb24gd2lsbCBiYXRjaCB1cCBhbGwgdGhlIHBlbmRpbmcgdHJhbnNhY3Rpb25zIGZvdW5kIHdpdGhpbiB0aGUgW2Bwb2xsaW5nSW50ZXJ2YWxgXShodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3B1YmxpYy93YXRjaFBlbmRpbmdUcmFuc2FjdGlvbnMjcG9sbGluZ2ludGVydmFsLW9wdGlvbmFsKSwgYW5kIGludm9rZSB0aGVtIHZpYSBbYG9uVHJhbnNhY3Rpb25zYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy9wdWJsaWMvd2F0Y2hQZW5kaW5nVHJhbnNhY3Rpb25zI29udHJhbnNhY3Rpb25zKS5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgV2F0Y2hQZW5kaW5nVHJhbnNhY3Rpb25zUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCBjYW4gYmUgaW52b2tlZCB0byBzdG9wIHdhdGNoaW5nIGZvciBuZXcgcGVuZGluZyB0cmFuc2FjdGlvbiBoYXNoZXMuIHtAbGluayBXYXRjaFBlbmRpbmdUcmFuc2FjdGlvbnNSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICogaW1wb3J0IHsgd2F0Y2hQZW5kaW5nVHJhbnNhY3Rpb25zIH0gZnJvbSAndmllbS9wdWJsaWMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlUHVibGljQ2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IHVud2F0Y2ggPSBhd2FpdCB3YXRjaFBlbmRpbmdUcmFuc2FjdGlvbnMoY2xpZW50LCB7XG4gKiAgIG9uVHJhbnNhY3Rpb25zOiAoaGFzaGVzKSA9PiBjb25zb2xlLmxvZyhoYXNoZXMpLFxuICogfSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhdGNoUGVuZGluZ1RyYW5zYWN0aW9ucyhjbGllbnQsIHsgYmF0Y2ggPSB0cnVlLCBvbkVycm9yLCBvblRyYW5zYWN0aW9ucywgcG9sbDogcG9sbF8sIHBvbGxpbmdJbnRlcnZhbCA9IGNsaWVudC5wb2xsaW5nSW50ZXJ2YWwsIH0pIHtcbiAgICBjb25zdCBlbmFibGVQb2xsaW5nID0gdHlwZW9mIHBvbGxfICE9PSAndW5kZWZpbmVkJ1xuICAgICAgICA/IHBvbGxfXG4gICAgICAgIDogY2xpZW50LnRyYW5zcG9ydC50eXBlICE9PSAnd2ViU29ja2V0JyAmJiBjbGllbnQudHJhbnNwb3J0LnR5cGUgIT09ICdpcGMnO1xuICAgIGNvbnN0IHBvbGxQZW5kaW5nVHJhbnNhY3Rpb25zID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBvYnNlcnZlcklkID0gc3RyaW5naWZ5KFtcbiAgICAgICAgICAgICd3YXRjaFBlbmRpbmdUcmFuc2FjdGlvbnMnLFxuICAgICAgICAgICAgY2xpZW50LnVpZCxcbiAgICAgICAgICAgIGJhdGNoLFxuICAgICAgICAgICAgcG9sbGluZ0ludGVydmFsLFxuICAgICAgICBdKTtcbiAgICAgICAgcmV0dXJuIG9ic2VydmUob2JzZXJ2ZXJJZCwgeyBvblRyYW5zYWN0aW9ucywgb25FcnJvciB9LCAoZW1pdCkgPT4ge1xuICAgICAgICAgICAgbGV0IGZpbHRlcjtcbiAgICAgICAgICAgIGNvbnN0IHVud2F0Y2ggPSBwb2xsKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWZpbHRlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBjcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXIsICdjcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXInKSh7fSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVud2F0Y2goKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaGFzaGVzID0gYXdhaXQgZ2V0QWN0aW9uKGNsaWVudCwgZ2V0RmlsdGVyQ2hhbmdlcywgJ2dldEZpbHRlckNoYW5nZXMnKSh7IGZpbHRlciB9KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGhhc2hlcy5sZW5ndGggPT09IDApXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIGlmIChiYXRjaClcbiAgICAgICAgICAgICAgICAgICAgICAgIGVtaXQub25UcmFuc2FjdGlvbnMoaGFzaGVzKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBoYXNoIG9mIGhhc2hlcylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbWl0Lm9uVHJhbnNhY3Rpb25zKFtoYXNoXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgZW1pdC5vbkVycm9yPy4oZXJyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCB7XG4gICAgICAgICAgICAgICAgZW1pdE9uQmVnaW46IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJ2YWw6IHBvbGxpbmdJbnRlcnZhbCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmlsdGVyKVxuICAgICAgICAgICAgICAgICAgICBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCB1bmluc3RhbGxGaWx0ZXIsICd1bmluc3RhbGxGaWx0ZXInKSh7IGZpbHRlciB9KTtcbiAgICAgICAgICAgICAgICB1bndhdGNoKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICB9O1xuICAgIGNvbnN0IHN1YnNjcmliZVBlbmRpbmdUcmFuc2FjdGlvbnMgPSAoKSA9PiB7XG4gICAgICAgIGxldCBhY3RpdmUgPSB0cnVlO1xuICAgICAgICBsZXQgdW5zdWJzY3JpYmUgPSAoKSA9PiAoYWN0aXZlID0gZmFsc2UpO1xuICAgICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IHVuc3Vic2NyaWJlOiB1bnN1YnNjcmliZV8gfSA9IGF3YWl0IGNsaWVudC50cmFuc3BvcnQuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiBbJ25ld1BlbmRpbmdUcmFuc2FjdGlvbnMnXSxcbiAgICAgICAgICAgICAgICAgICAgb25EYXRhKGRhdGEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYWN0aXZlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gZGF0YS5yZXN1bHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBvblRyYW5zYWN0aW9ucyhbdHJhbnNhY3Rpb25dKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgb25FcnJvcj8uKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB1bnN1YnNjcmliZSA9IHVuc3Vic2NyaWJlXztcbiAgICAgICAgICAgICAgICBpZiAoIWFjdGl2ZSlcbiAgICAgICAgICAgICAgICAgICAgdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICBvbkVycm9yPy4oZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkoKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHVuc3Vic2NyaWJlKCk7XG4gICAgfTtcbiAgICByZXR1cm4gZW5hYmxlUG9sbGluZ1xuICAgICAgICA/IHBvbGxQZW5kaW5nVHJhbnNhY3Rpb25zKClcbiAgICAgICAgOiBzdWJzY3JpYmVQZW5kaW5nVHJhbnNhY3Rpb25zKCk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD13YXRjaFBlbmRpbmdUcmFuc2FjdGlvbnMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchPendingTransactions.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/siwe/verifySiweMessage.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/siwe/verifySiweMessage.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ verifySiweMessage: () => (/* binding */ verifySiweMessage)\n/* harmony export */ });\n/* harmony import */ var _utils_signature_hashMessage_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/signature/hashMessage.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashMessage.js\");\n/* harmony import */ var _utils_siwe_parseSiweMessage_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/siwe/parseSiweMessage.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/siwe/parseSiweMessage.js\");\n/* harmony import */ var _utils_siwe_validateSiweMessage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/siwe/validateSiweMessage.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/siwe/validateSiweMessage.js\");\n/* harmony import */ var _public_verifyHash_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../public/verifyHash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyHash.js\");\n\n\n\n\n/**\n * Verifies [EIP-4361](https://eips.ethereum.org/EIPS/eip-4361) formatted message was signed.\n *\n * Compatible with Smart Contract Accounts & Externally Owned Accounts via [ERC-6492](https://eips.ethereum.org/EIPS/eip-6492).\n *\n * - Docs {@link https://viem.sh/docs/siwe/actions/verifySiweMessage}\n *\n * @param client - Client to use.\n * @param parameters - {@link VerifySiweMessageParameters}\n * @returns Whether or not the signature is valid. {@link VerifySiweMessageReturnType}\n */\nasync function verifySiweMessage(client, parameters) {\n const { address, domain, message, nonce, scheme, signature, time = new Date(), ...callRequest } = parameters;\n const parsed = (0,_utils_siwe_parseSiweMessage_js__WEBPACK_IMPORTED_MODULE_0__.parseSiweMessage)(message);\n if (!parsed.address)\n return false;\n const isValid = (0,_utils_siwe_validateSiweMessage_js__WEBPACK_IMPORTED_MODULE_1__.validateSiweMessage)({\n address,\n domain,\n message: parsed,\n nonce,\n scheme,\n time,\n });\n if (!isValid)\n return false;\n const hash = (0,_utils_signature_hashMessage_js__WEBPACK_IMPORTED_MODULE_2__.hashMessage)(message);\n return (0,_public_verifyHash_js__WEBPACK_IMPORTED_MODULE_3__.verifyHash)(client, {\n address: parsed.address,\n hash,\n signature,\n ...callRequest,\n });\n}\n//# sourceMappingURL=verifySiweMessage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9zaXdlL3ZlcmlmeVNpd2VNZXNzYWdlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQW1FO0FBQ0s7QUFDTztBQUN6QjtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsb0RBQW9EO0FBQ3BEO0FBQ087QUFDUCxZQUFZLHdGQUF3RjtBQUNwRyxtQkFBbUIsaUZBQWdCO0FBQ25DO0FBQ0E7QUFDQSxvQkFBb0IsdUZBQW1CO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsaUJBQWlCLDRFQUFXO0FBQzVCLFdBQVcsaUVBQVU7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy9zaXdlL3ZlcmlmeVNpd2VNZXNzYWdlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhhc2hNZXNzYWdlIH0gZnJvbSAnLi4vLi4vdXRpbHMvc2lnbmF0dXJlL2hhc2hNZXNzYWdlLmpzJztcbmltcG9ydCB7IHBhcnNlU2l3ZU1lc3NhZ2UgfSBmcm9tICcuLi8uLi91dGlscy9zaXdlL3BhcnNlU2l3ZU1lc3NhZ2UuanMnO1xuaW1wb3J0IHsgdmFsaWRhdGVTaXdlTWVzc2FnZSwgfSBmcm9tICcuLi8uLi91dGlscy9zaXdlL3ZhbGlkYXRlU2l3ZU1lc3NhZ2UuanMnO1xuaW1wb3J0IHsgdmVyaWZ5SGFzaCwgfSBmcm9tICcuLi9wdWJsaWMvdmVyaWZ5SGFzaC5qcyc7XG4vKipcbiAqIFZlcmlmaWVzIFtFSVAtNDM2MV0oaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC00MzYxKSBmb3JtYXR0ZWQgbWVzc2FnZSB3YXMgc2lnbmVkLlxuICpcbiAqIENvbXBhdGlibGUgd2l0aCBTbWFydCBDb250cmFjdCBBY2NvdW50cyAmIEV4dGVybmFsbHkgT3duZWQgQWNjb3VudHMgdmlhIFtFUkMtNjQ5Ml0oaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC02NDkyKS5cbiAqXG4gKiAtIERvY3Mge0BsaW5rIGh0dHBzOi8vdmllbS5zaC9kb2NzL3Npd2UvYWN0aW9ucy92ZXJpZnlTaXdlTWVzc2FnZX1cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZS5cbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIFZlcmlmeVNpd2VNZXNzYWdlUGFyYW1ldGVyc31cbiAqIEByZXR1cm5zIFdoZXRoZXIgb3Igbm90IHRoZSBzaWduYXR1cmUgaXMgdmFsaWQuIHtAbGluayBWZXJpZnlTaXdlTWVzc2FnZVJldHVyblR5cGV9XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB2ZXJpZnlTaXdlTWVzc2FnZShjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGRvbWFpbiwgbWVzc2FnZSwgbm9uY2UsIHNjaGVtZSwgc2lnbmF0dXJlLCB0aW1lID0gbmV3IERhdGUoKSwgLi4uY2FsbFJlcXVlc3QgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgcGFyc2VkID0gcGFyc2VTaXdlTWVzc2FnZShtZXNzYWdlKTtcbiAgICBpZiAoIXBhcnNlZC5hZGRyZXNzKVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgaXNWYWxpZCA9IHZhbGlkYXRlU2l3ZU1lc3NhZ2Uoe1xuICAgICAgICBhZGRyZXNzLFxuICAgICAgICBkb21haW4sXG4gICAgICAgIG1lc3NhZ2U6IHBhcnNlZCxcbiAgICAgICAgbm9uY2UsXG4gICAgICAgIHNjaGVtZSxcbiAgICAgICAgdGltZSxcbiAgICB9KTtcbiAgICBpZiAoIWlzVmFsaWQpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBjb25zdCBoYXNoID0gaGFzaE1lc3NhZ2UobWVzc2FnZSk7XG4gICAgcmV0dXJuIHZlcmlmeUhhc2goY2xpZW50LCB7XG4gICAgICAgIGFkZHJlc3M6IHBhcnNlZC5hZGRyZXNzLFxuICAgICAgICBoYXNoLFxuICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgIC4uLmNhbGxSZXF1ZXN0LFxuICAgIH0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dmVyaWZ5U2l3ZU1lc3NhZ2UuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/siwe/verifySiweMessage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/getCallsStatus.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/getCallsStatus.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getCallsStatus: () => (/* binding */ getCallsStatus)\n/* harmony export */ });\n/* harmony import */ var _utils_data_slice_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/data/slice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/slice.js\");\n/* harmony import */ var _utils_data_trim_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/data/trim.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/trim.js\");\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/formatters/transactionReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionReceipt.js\");\n/* harmony import */ var _sendCalls_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sendCalls.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendCalls.js\");\n\n\n\n\n\n/**\n * Returns the status of a call batch that was sent via `sendCalls`.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/getCallsStatus\n * - JSON-RPC Methods: [`wallet_getCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @returns Status of the calls. {@link GetCallsStatusReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { getCallsStatus } from 'viem/actions'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n * const { receipts, status } = await getCallsStatus(client, { id: '0xdeadbeef' })\n */\nasync function getCallsStatus(client, parameters) {\n async function getStatus(id) {\n const isTransactions = id.endsWith(_sendCalls_js__WEBPACK_IMPORTED_MODULE_0__.fallbackMagicIdentifier.slice(2));\n if (isTransactions) {\n const chainId = (0,_utils_data_trim_js__WEBPACK_IMPORTED_MODULE_1__.trim)((0,_utils_data_slice_js__WEBPACK_IMPORTED_MODULE_2__.sliceHex)(id, -64, -32));\n const hashes = (0,_utils_data_slice_js__WEBPACK_IMPORTED_MODULE_2__.sliceHex)(id, 0, -64)\n .slice(2)\n .match(/.{1,64}/g);\n const receipts = await Promise.all(hashes.map((hash) => _sendCalls_js__WEBPACK_IMPORTED_MODULE_0__.fallbackTransactionErrorMagicIdentifier.slice(2) !== hash\n ? client.request({\n method: 'eth_getTransactionReceipt',\n params: [`0x${hash}`],\n }, { dedupe: true })\n : undefined));\n const status = (() => {\n if (receipts.some((r) => r === null))\n return 100; // pending\n if (receipts.every((r) => r?.status === '0x1'))\n return 200; // success\n if (receipts.every((r) => r?.status === '0x0'))\n return 500; // complete failure\n return 600; // partial failure\n })();\n return {\n atomic: false,\n chainId: (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_3__.hexToNumber)(chainId),\n receipts: receipts.filter(Boolean),\n status,\n version: '2.0.0',\n };\n }\n return client.request({\n method: 'wallet_getCallsStatus',\n params: [id],\n });\n }\n const { atomic = false, chainId, receipts, version = '2.0.0', ...response } = await getStatus(parameters.id);\n const [status, statusCode] = (() => {\n const statusCode = response.status;\n if (statusCode >= 100 && statusCode < 200)\n return ['pending', statusCode];\n if (statusCode >= 200 && statusCode < 300)\n return ['success', statusCode];\n if (statusCode >= 300 && statusCode < 700)\n return ['failure', statusCode];\n // @ts-expect-error: for backwards compatibility\n if (statusCode === 'CONFIRMED')\n return ['success', 200];\n // @ts-expect-error: for backwards compatibility\n if (statusCode === 'PENDING')\n return ['pending', 100];\n return [undefined, statusCode];\n })();\n return {\n ...response,\n atomic,\n // @ts-expect-error: for backwards compatibility\n chainId: chainId ? (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_3__.hexToNumber)(chainId) : undefined,\n receipts: receipts?.map((receipt) => ({\n ...receipt,\n blockNumber: (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_3__.hexToBigInt)(receipt.blockNumber),\n gasUsed: (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_3__.hexToBigInt)(receipt.gasUsed),\n status: _utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_4__.receiptStatuses[receipt.status],\n })) ?? [],\n statusCode,\n status,\n version,\n };\n}\n//# sourceMappingURL=getCallsStatus.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvZ2V0Q2FsbHNTdGF0dXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQXFEO0FBQ0w7QUFDMkI7QUFDSTtBQUNvQjtBQUNuRztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQztBQUNsQztBQUNBO0FBQ0EsWUFBWSw2QkFBNkI7QUFDekMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksaUJBQWlCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKLFdBQVcsbUJBQW1CLGlDQUFpQyxrQkFBa0I7QUFDakY7QUFDTztBQUNQO0FBQ0EsMkNBQTJDLGtFQUF1QjtBQUNsRTtBQUNBLDRCQUE0Qix5REFBSSxDQUFDLDhEQUFRO0FBQ3pDLDJCQUEyQiw4REFBUTtBQUNuQztBQUNBLDBCQUEwQixLQUFLO0FBQy9CLG9FQUFvRSxrRkFBdUM7QUFDM0c7QUFDQTtBQUNBLGtDQUFrQyxLQUFLO0FBQ3ZDLGlCQUFpQixJQUFJLGNBQWM7QUFDbkM7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0EsZ0NBQWdDO0FBQ2hDO0FBQ0EsZ0NBQWdDO0FBQ2hDLDRCQUE0QjtBQUM1QixhQUFhO0FBQ2I7QUFDQTtBQUNBLHlCQUF5Qix1RUFBVztBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsWUFBWSxvRUFBb0U7QUFDaEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLHVFQUFXO0FBQ3RDO0FBQ0E7QUFDQSx5QkFBeUIsdUVBQVc7QUFDcEMscUJBQXFCLHVFQUFXO0FBQ2hDLG9CQUFvQixvRkFBZTtBQUNuQyxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3dhbGxldC9nZXRDYWxsc1N0YXR1cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzbGljZUhleCB9IGZyb20gJy4uLy4uL3V0aWxzL2RhdGEvc2xpY2UuanMnO1xuaW1wb3J0IHsgdHJpbSB9IGZyb20gJy4uLy4uL3V0aWxzL2RhdGEvdHJpbS5qcyc7XG5pbXBvcnQgeyBoZXhUb0JpZ0ludCwgaGV4VG9OdW1iZXIgfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy9mcm9tSGV4LmpzJztcbmltcG9ydCB7IHJlY2VpcHRTdGF0dXNlcyB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvdHJhbnNhY3Rpb25SZWNlaXB0LmpzJztcbmltcG9ydCB7IGZhbGxiYWNrTWFnaWNJZGVudGlmaWVyLCBmYWxsYmFja1RyYW5zYWN0aW9uRXJyb3JNYWdpY0lkZW50aWZpZXIsIH0gZnJvbSAnLi9zZW5kQ2FsbHMuanMnO1xuLyoqXG4gKiBSZXR1cm5zIHRoZSBzdGF0dXMgb2YgYSBjYWxsIGJhdGNoIHRoYXQgd2FzIHNlbnQgdmlhIGBzZW5kQ2FsbHNgLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy93YWxsZXQvZ2V0Q2FsbHNTdGF0dXNcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2B3YWxsZXRfZ2V0Q2FsbHNTdGF0dXNgXShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTU3OTIpXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEByZXR1cm5zIFN0YXR1cyBvZiB0aGUgY2FsbHMuIHtAbGluayBHZXRDYWxsc1N0YXR1c1JldHVyblR5cGV9XG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGNyZWF0ZVdhbGxldENsaWVudCwgY3VzdG9tIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IGdldENhbGxzU3RhdHVzIH0gZnJvbSAndmllbS9hY3Rpb25zJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVdhbGxldENsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGN1c3RvbSh3aW5kb3cuZXRoZXJldW0pLFxuICogfSlcbiAqIGNvbnN0IHsgcmVjZWlwdHMsIHN0YXR1cyB9ID0gYXdhaXQgZ2V0Q2FsbHNTdGF0dXMoY2xpZW50LCB7IGlkOiAnMHhkZWFkYmVlZicgfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldENhbGxzU3RhdHVzKGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGFzeW5jIGZ1bmN0aW9uIGdldFN0YXR1cyhpZCkge1xuICAgICAgICBjb25zdCBpc1RyYW5zYWN0aW9ucyA9IGlkLmVuZHNXaXRoKGZhbGxiYWNrTWFnaWNJZGVudGlmaWVyLnNsaWNlKDIpKTtcbiAgICAgICAgaWYgKGlzVHJhbnNhY3Rpb25zKSB7XG4gICAgICAgICAgICBjb25zdCBjaGFpbklkID0gdHJpbShzbGljZUhleChpZCwgLTY0LCAtMzIpKTtcbiAgICAgICAgICAgIGNvbnN0IGhhc2hlcyA9IHNsaWNlSGV4KGlkLCAwLCAtNjQpXG4gICAgICAgICAgICAgICAgLnNsaWNlKDIpXG4gICAgICAgICAgICAgICAgLm1hdGNoKC8uezEsNjR9L2cpO1xuICAgICAgICAgICAgY29uc3QgcmVjZWlwdHMgPSBhd2FpdCBQcm9taXNlLmFsbChoYXNoZXMubWFwKChoYXNoKSA9PiBmYWxsYmFja1RyYW5zYWN0aW9uRXJyb3JNYWdpY0lkZW50aWZpZXIuc2xpY2UoMikgIT09IGhhc2hcbiAgICAgICAgICAgICAgICA/IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnZXRoX2dldFRyYW5zYWN0aW9uUmVjZWlwdCcsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogW2AweCR7aGFzaH1gXSxcbiAgICAgICAgICAgICAgICB9LCB7IGRlZHVwZTogdHJ1ZSB9KVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkKSk7XG4gICAgICAgICAgICBjb25zdCBzdGF0dXMgPSAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZWNlaXB0cy5zb21lKChyKSA9PiByID09PSBudWxsKSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEwMDsgLy8gcGVuZGluZ1xuICAgICAgICAgICAgICAgIGlmIChyZWNlaXB0cy5ldmVyeSgocikgPT4gcj8uc3RhdHVzID09PSAnMHgxJykpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAyMDA7IC8vIHN1Y2Nlc3NcbiAgICAgICAgICAgICAgICBpZiAocmVjZWlwdHMuZXZlcnkoKHIpID0+IHI/LnN0YXR1cyA9PT0gJzB4MCcpKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gNTAwOyAvLyBjb21wbGV0ZSBmYWlsdXJlXG4gICAgICAgICAgICAgICAgcmV0dXJuIDYwMDsgLy8gcGFydGlhbCBmYWlsdXJlXG4gICAgICAgICAgICB9KSgpO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBhdG9taWM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGNoYWluSWQ6IGhleFRvTnVtYmVyKGNoYWluSWQpLFxuICAgICAgICAgICAgICAgIHJlY2VpcHRzOiByZWNlaXB0cy5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICAgICAgc3RhdHVzLFxuICAgICAgICAgICAgICAgIHZlcnNpb246ICcyLjAuMCcsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjbGllbnQucmVxdWVzdCh7XG4gICAgICAgICAgICBtZXRob2Q6ICd3YWxsZXRfZ2V0Q2FsbHNTdGF0dXMnLFxuICAgICAgICAgICAgcGFyYW1zOiBbaWRdLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgeyBhdG9taWMgPSBmYWxzZSwgY2hhaW5JZCwgcmVjZWlwdHMsIHZlcnNpb24gPSAnMi4wLjAnLCAuLi5yZXNwb25zZSB9ID0gYXdhaXQgZ2V0U3RhdHVzKHBhcmFtZXRlcnMuaWQpO1xuICAgIGNvbnN0IFtzdGF0dXMsIHN0YXR1c0NvZGVdID0gKCgpID0+IHtcbiAgICAgICAgY29uc3Qgc3RhdHVzQ29kZSA9IHJlc3BvbnNlLnN0YXR1cztcbiAgICAgICAgaWYgKHN0YXR1c0NvZGUgPj0gMTAwICYmIHN0YXR1c0NvZGUgPCAyMDApXG4gICAgICAgICAgICByZXR1cm4gWydwZW5kaW5nJywgc3RhdHVzQ29kZV07XG4gICAgICAgIGlmIChzdGF0dXNDb2RlID49IDIwMCAmJiBzdGF0dXNDb2RlIDwgMzAwKVxuICAgICAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycsIHN0YXR1c0NvZGVdO1xuICAgICAgICBpZiAoc3RhdHVzQ29kZSA+PSAzMDAgJiYgc3RhdHVzQ29kZSA8IDcwMClcbiAgICAgICAgICAgIHJldHVybiBbJ2ZhaWx1cmUnLCBzdGF0dXNDb2RlXTtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG4gICAgICAgIGlmIChzdGF0dXNDb2RlID09PSAnQ09ORklSTUVEJylcbiAgICAgICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnLCAyMDBdO1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICAgICAgaWYgKHN0YXR1c0NvZGUgPT09ICdQRU5ESU5HJylcbiAgICAgICAgICAgIHJldHVybiBbJ3BlbmRpbmcnLCAxMDBdO1xuICAgICAgICByZXR1cm4gW3VuZGVmaW5lZCwgc3RhdHVzQ29kZV07XG4gICAgfSkoKTtcbiAgICByZXR1cm4ge1xuICAgICAgICAuLi5yZXNwb25zZSxcbiAgICAgICAgYXRvbWljLFxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICAgICAgY2hhaW5JZDogY2hhaW5JZCA/IGhleFRvTnVtYmVyKGNoYWluSWQpIDogdW5kZWZpbmVkLFxuICAgICAgICByZWNlaXB0czogcmVjZWlwdHM/Lm1hcCgocmVjZWlwdCkgPT4gKHtcbiAgICAgICAgICAgIC4uLnJlY2VpcHQsXG4gICAgICAgICAgICBibG9ja051bWJlcjogaGV4VG9CaWdJbnQocmVjZWlwdC5ibG9ja051bWJlciksXG4gICAgICAgICAgICBnYXNVc2VkOiBoZXhUb0JpZ0ludChyZWNlaXB0Lmdhc1VzZWQpLFxuICAgICAgICAgICAgc3RhdHVzOiByZWNlaXB0U3RhdHVzZXNbcmVjZWlwdC5zdGF0dXNdLFxuICAgICAgICB9KSkgPz8gW10sXG4gICAgICAgIHN0YXR1c0NvZGUsXG4gICAgICAgIHN0YXR1cyxcbiAgICAgICAgdmVyc2lvbixcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0Q2FsbHNTdGF0dXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/getCallsStatus.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareAuthorization.js": /*!***********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/prepareAuthorization.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ prepareAuthorization: () => (/* binding */ prepareAuthorization)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _errors_account_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/account.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/account.js\");\n/* harmony import */ var _utils_address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/address/isAddressEqual.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _public_getChainId_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../public/getChainId.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js\");\n/* harmony import */ var _public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../public/getTransactionCount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionCount.js\");\n\n\n\n\n\n\n/**\n * Prepares an [EIP-7702 Authorization](https://eips.ethereum.org/EIPS/eip-7702) object for signing.\n * This Action will fill the required fields of the Authorization object if they are not provided (e.g. `nonce` and `chainId`).\n *\n * With the prepared Authorization object, you can use [`signAuthorization`](https://viem.sh/docs/eip7702/signAuthorization) to sign over the Authorization object.\n *\n * @param client - Client to use\n * @param parameters - {@link PrepareAuthorizationParameters}\n * @returns The prepared Authorization object. {@link PrepareAuthorizationReturnType}\n *\n * @example\n * import { createClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { prepareAuthorization } from 'viem/experimental'\n *\n * const client = createClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const authorization = await prepareAuthorization(client, {\n * account: privateKeyToAccount('0x..'),\n * contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n *\n * @example\n * // Account Hoisting\n * import { createClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { prepareAuthorization } from 'viem/experimental'\n *\n * const client = createClient({\n * account: privateKeyToAccount('0x…'),\n * chain: mainnet,\n * transport: http(),\n * })\n * const authorization = await prepareAuthorization(client, {\n * contractAddress: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * })\n */\nasync function prepareAuthorization(client, parameters) {\n const { account: account_ = client.account, chainId, nonce } = parameters;\n if (!account_)\n throw new _errors_account_js__WEBPACK_IMPORTED_MODULE_0__.AccountNotFoundError({\n docsPath: '/docs/eip7702/prepareAuthorization',\n });\n const account = (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(account_);\n const executor = (() => {\n if (!parameters.executor)\n return undefined;\n if (parameters.executor === 'self')\n return parameters.executor;\n return (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(parameters.executor);\n })();\n const authorization = {\n address: parameters.contractAddress ?? parameters.address,\n chainId,\n nonce,\n };\n if (typeof authorization.chainId === 'undefined')\n authorization.chainId =\n client.chain?.id ??\n (await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(client, _public_getChainId_js__WEBPACK_IMPORTED_MODULE_3__.getChainId, 'getChainId')({}));\n if (typeof authorization.nonce === 'undefined') {\n authorization.nonce = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_2__.getAction)(client, _public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_4__.getTransactionCount, 'getTransactionCount')({\n address: account.address,\n blockTag: 'pending',\n });\n if (executor === 'self' ||\n (executor?.address && (0,_utils_address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_5__.isAddressEqual)(executor.address, account.address)))\n authorization.nonce += 1;\n }\n return authorization;\n}\n//# sourceMappingURL=prepareAuthorization.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvcHJlcGFyZUF1dGhvcml6YXRpb24uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFxRTtBQUNMO0FBQ087QUFDbEI7QUFDQTtBQUNrQjtBQUN2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixnREFBZ0Q7QUFDaEQ7QUFDQTtBQUNBLFlBQVkscUJBQXFCO0FBQ2pDLFlBQVksc0JBQXNCO0FBQ2xDLFlBQVksVUFBVTtBQUN0QixZQUFZLHVCQUF1QjtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsWUFBWSxxQkFBcUI7QUFDakMsWUFBWSxzQkFBc0I7QUFDbEMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksdUJBQXVCO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPO0FBQ1AsWUFBWSxxREFBcUQ7QUFDakU7QUFDQSxrQkFBa0Isb0VBQW9CO0FBQ3RDO0FBQ0EsU0FBUztBQUNULG9CQUFvQiw2RUFBWTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSw2RUFBWTtBQUMzQixLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qiw4REFBUyxTQUFTLDZEQUFVLGtCQUFrQjtBQUNyRTtBQUNBLG9DQUFvQyw4REFBUyxTQUFTLCtFQUFtQjtBQUN6RTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0Esa0NBQWtDLGdGQUFjO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvd2FsbGV0L3ByZXBhcmVBdXRob3JpemF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgQWNjb3VudE5vdEZvdW5kRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2FjY291bnQuanMnO1xuaW1wb3J0IHsgaXNBZGRyZXNzRXF1YWwgfSBmcm9tICcuLi8uLi91dGlscy9hZGRyZXNzL2lzQWRkcmVzc0VxdWFsLmpzJztcbmltcG9ydCB7IGdldEFjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2dldEFjdGlvbi5qcyc7XG5pbXBvcnQgeyBnZXRDaGFpbklkIH0gZnJvbSAnLi4vcHVibGljL2dldENoYWluSWQuanMnO1xuaW1wb3J0IHsgZ2V0VHJhbnNhY3Rpb25Db3VudCB9IGZyb20gJy4uL3B1YmxpYy9nZXRUcmFuc2FjdGlvbkNvdW50LmpzJztcbi8qKlxuICogUHJlcGFyZXMgYW4gW0VJUC03NzAyIEF1dGhvcml6YXRpb25dKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNzcwMikgb2JqZWN0IGZvciBzaWduaW5nLlxuICogVGhpcyBBY3Rpb24gd2lsbCBmaWxsIHRoZSByZXF1aXJlZCBmaWVsZHMgb2YgdGhlIEF1dGhvcml6YXRpb24gb2JqZWN0IGlmIHRoZXkgYXJlIG5vdCBwcm92aWRlZCAoZS5nLiBgbm9uY2VgIGFuZCBgY2hhaW5JZGApLlxuICpcbiAqIFdpdGggdGhlIHByZXBhcmVkIEF1dGhvcml6YXRpb24gb2JqZWN0LCB5b3UgY2FuIHVzZSBbYHNpZ25BdXRob3JpemF0aW9uYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZWlwNzcwMi9zaWduQXV0aG9yaXphdGlvbikgdG8gc2lnbiBvdmVyIHRoZSBBdXRob3JpemF0aW9uIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0gY2xpZW50IC0gQ2xpZW50IHRvIHVzZVxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSB7QGxpbmsgUHJlcGFyZUF1dGhvcml6YXRpb25QYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIHByZXBhcmVkIEF1dGhvcml6YXRpb24gb2JqZWN0LiB7QGxpbmsgUHJlcGFyZUF1dGhvcml6YXRpb25SZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgcHJpdmF0ZUtleVRvQWNjb3VudCB9IGZyb20gJ3ZpZW0vYWNjb3VudHMnXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBwcmVwYXJlQXV0aG9yaXphdGlvbiB9IGZyb20gJ3ZpZW0vZXhwZXJpbWVudGFsJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZUNsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKiBjb25zdCBhdXRob3JpemF0aW9uID0gYXdhaXQgcHJlcGFyZUF1dGhvcml6YXRpb24oY2xpZW50LCB7XG4gKiAgIGFjY291bnQ6IHByaXZhdGVLZXlUb0FjY291bnQoJzB4Li4nKSxcbiAqICAgY29udHJhY3RBZGRyZXNzOiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqIH0pXG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIEFjY291bnQgSG9pc3RpbmdcbiAqIGltcG9ydCB7IGNyZWF0ZUNsaWVudCwgaHR0cCB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBwcml2YXRlS2V5VG9BY2NvdW50IH0gZnJvbSAndmllbS9hY2NvdW50cydcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IHByZXBhcmVBdXRob3JpemF0aW9uIH0gZnJvbSAndmllbS9leHBlcmltZW50YWwnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlQ2xpZW50KHtcbiAqICAgYWNjb3VudDogcHJpdmF0ZUtleVRvQWNjb3VudCgnMHjigKYnKSxcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogaHR0cCgpLFxuICogfSlcbiAqIGNvbnN0IGF1dGhvcml6YXRpb24gPSBhd2FpdCBwcmVwYXJlQXV0aG9yaXphdGlvbihjbGllbnQsIHtcbiAqICAgY29udHJhY3RBZGRyZXNzOiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcmVwYXJlQXV0aG9yaXphdGlvbihjbGllbnQsIHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFjY291bnQ6IGFjY291bnRfID0gY2xpZW50LmFjY291bnQsIGNoYWluSWQsIG5vbmNlIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGlmICghYWNjb3VudF8pXG4gICAgICAgIHRocm93IG5ldyBBY2NvdW50Tm90Rm91bmRFcnJvcih7XG4gICAgICAgICAgICBkb2NzUGF0aDogJy9kb2NzL2VpcDc3MDIvcHJlcGFyZUF1dGhvcml6YXRpb24nLFxuICAgICAgICB9KTtcbiAgICBjb25zdCBhY2NvdW50ID0gcGFyc2VBY2NvdW50KGFjY291bnRfKTtcbiAgICBjb25zdCBleGVjdXRvciA9ICgoKSA9PiB7XG4gICAgICAgIGlmICghcGFyYW1ldGVycy5leGVjdXRvcilcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIGlmIChwYXJhbWV0ZXJzLmV4ZWN1dG9yID09PSAnc2VsZicpXG4gICAgICAgICAgICByZXR1cm4gcGFyYW1ldGVycy5leGVjdXRvcjtcbiAgICAgICAgcmV0dXJuIHBhcnNlQWNjb3VudChwYXJhbWV0ZXJzLmV4ZWN1dG9yKTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IGF1dGhvcml6YXRpb24gPSB7XG4gICAgICAgIGFkZHJlc3M6IHBhcmFtZXRlcnMuY29udHJhY3RBZGRyZXNzID8/IHBhcmFtZXRlcnMuYWRkcmVzcyxcbiAgICAgICAgY2hhaW5JZCxcbiAgICAgICAgbm9uY2UsXG4gICAgfTtcbiAgICBpZiAodHlwZW9mIGF1dGhvcml6YXRpb24uY2hhaW5JZCA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIGF1dGhvcml6YXRpb24uY2hhaW5JZCA9XG4gICAgICAgICAgICBjbGllbnQuY2hhaW4/LmlkID8/XG4gICAgICAgICAgICAgICAgKGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldENoYWluSWQsICdnZXRDaGFpbklkJykoe30pKTtcbiAgICBpZiAodHlwZW9mIGF1dGhvcml6YXRpb24ubm9uY2UgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGF1dGhvcml6YXRpb24ubm9uY2UgPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBnZXRUcmFuc2FjdGlvbkNvdW50LCAnZ2V0VHJhbnNhY3Rpb25Db3VudCcpKHtcbiAgICAgICAgICAgIGFkZHJlc3M6IGFjY291bnQuYWRkcmVzcyxcbiAgICAgICAgICAgIGJsb2NrVGFnOiAncGVuZGluZycsXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoZXhlY3V0b3IgPT09ICdzZWxmJyB8fFxuICAgICAgICAgICAgKGV4ZWN1dG9yPy5hZGRyZXNzICYmIGlzQWRkcmVzc0VxdWFsKGV4ZWN1dG9yLmFkZHJlc3MsIGFjY291bnQuYWRkcmVzcykpKVxuICAgICAgICAgICAgYXV0aG9yaXphdGlvbi5ub25jZSArPSAxO1xuICAgIH1cbiAgICByZXR1cm4gYXV0aG9yaXphdGlvbjtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXByZXBhcmVBdXRob3JpemF0aW9uLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareAuthorization.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareTransactionRequest.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/prepareTransactionRequest.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ defaultParameters: () => (/* binding */ defaultParameters),\n/* harmony export */ eip1559NetworkCache: () => (/* binding */ eip1559NetworkCache),\n/* harmony export */ prepareTransactionRequest: () => (/* binding */ prepareTransactionRequest)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _actions_public_estimateFeesPerGas_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../actions/public/estimateFeesPerGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateFeesPerGas.js\");\n/* harmony import */ var _actions_public_estimateGas_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../actions/public/estimateGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateGas.js\");\n/* harmony import */ var _actions_public_getBlock_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../actions/public/getBlock.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js\");\n/* harmony import */ var _actions_public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../actions/public/getTransactionCount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionCount.js\");\n/* harmony import */ var _errors_fee_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../errors/fee.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/fee.js\");\n/* harmony import */ var _utils_blob_blobsToCommitments_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/blob/blobsToCommitments.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/blob/blobsToCommitments.js\");\n/* harmony import */ var _utils_blob_blobsToProofs_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/blob/blobsToProofs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/blob/blobsToProofs.js\");\n/* harmony import */ var _utils_blob_commitmentsToVersionedHashes_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/blob/commitmentsToVersionedHashes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/blob/commitmentsToVersionedHashes.js\");\n/* harmony import */ var _utils_blob_toBlobSidecars_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils/blob/toBlobSidecars.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/blob/toBlobSidecars.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../utils/transaction/assertRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js\");\n/* harmony import */ var _utils_transaction_getTransactionType_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/transaction/getTransactionType.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/getTransactionType.js\");\n/* harmony import */ var _public_getChainId_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../public/getChainId.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst defaultParameters = [\n 'blobVersionedHashes',\n 'chainId',\n 'fees',\n 'gas',\n 'nonce',\n 'type',\n];\n/** @internal */\nconst eip1559NetworkCache = /*#__PURE__*/ new Map();\n/**\n * Prepares a transaction request for signing.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/prepareTransactionRequest\n *\n * @param args - {@link PrepareTransactionRequestParameters}\n * @returns The transaction request. {@link PrepareTransactionRequestReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { prepareTransactionRequest } from 'viem/actions'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n * const request = await prepareTransactionRequest(client, {\n * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * to: '0x0000000000000000000000000000000000000000',\n * value: 1n,\n * })\n *\n * @example\n * // Account Hoisting\n * import { createWalletClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { prepareTransactionRequest } from 'viem/actions'\n *\n * const client = createWalletClient({\n * account: privateKeyToAccount('0x…'),\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n * const request = await prepareTransactionRequest(client, {\n * to: '0x0000000000000000000000000000000000000000',\n * value: 1n,\n * })\n */\nasync function prepareTransactionRequest(client, args) {\n const { account: account_ = client.account, blobs, chain, gas, kzg, nonce, nonceManager, parameters = defaultParameters, type, } = args;\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__.parseAccount)(account_) : account_;\n const request = { ...args, ...(account ? { from: account?.address } : {}) };\n let block;\n async function getBlock() {\n if (block)\n return block;\n block = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _actions_public_getBlock_js__WEBPACK_IMPORTED_MODULE_2__.getBlock, 'getBlock')({ blockTag: 'latest' });\n return block;\n }\n let chainId;\n async function getChainId() {\n if (chainId)\n return chainId;\n if (chain)\n return chain.id;\n if (typeof args.chainId !== 'undefined')\n return args.chainId;\n const chainId_ = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _public_getChainId_js__WEBPACK_IMPORTED_MODULE_3__.getChainId, 'getChainId')({});\n chainId = chainId_;\n return chainId;\n }\n if (parameters.includes('nonce') && typeof nonce === 'undefined' && account) {\n if (nonceManager) {\n const chainId = await getChainId();\n request.nonce = await nonceManager.consume({\n address: account.address,\n chainId,\n client,\n });\n }\n else {\n request.nonce = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _actions_public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_4__.getTransactionCount, 'getTransactionCount')({\n address: account.address,\n blockTag: 'pending',\n });\n }\n }\n if ((parameters.includes('blobVersionedHashes') ||\n parameters.includes('sidecars')) &&\n blobs &&\n kzg) {\n const commitments = (0,_utils_blob_blobsToCommitments_js__WEBPACK_IMPORTED_MODULE_5__.blobsToCommitments)({ blobs, kzg });\n if (parameters.includes('blobVersionedHashes')) {\n const versionedHashes = (0,_utils_blob_commitmentsToVersionedHashes_js__WEBPACK_IMPORTED_MODULE_6__.commitmentsToVersionedHashes)({\n commitments,\n to: 'hex',\n });\n request.blobVersionedHashes = versionedHashes;\n }\n if (parameters.includes('sidecars')) {\n const proofs = (0,_utils_blob_blobsToProofs_js__WEBPACK_IMPORTED_MODULE_7__.blobsToProofs)({ blobs, commitments, kzg });\n const sidecars = (0,_utils_blob_toBlobSidecars_js__WEBPACK_IMPORTED_MODULE_8__.toBlobSidecars)({\n blobs,\n commitments,\n proofs,\n to: 'hex',\n });\n request.sidecars = sidecars;\n }\n }\n if (parameters.includes('chainId'))\n request.chainId = await getChainId();\n if ((parameters.includes('fees') || parameters.includes('type')) &&\n typeof type === 'undefined') {\n try {\n request.type = (0,_utils_transaction_getTransactionType_js__WEBPACK_IMPORTED_MODULE_9__.getTransactionType)(request);\n }\n catch {\n let isEip1559Network = eip1559NetworkCache.get(client.uid);\n if (typeof isEip1559Network === 'undefined') {\n const block = await getBlock();\n isEip1559Network = typeof block?.baseFeePerGas === 'bigint';\n eip1559NetworkCache.set(client.uid, isEip1559Network);\n }\n request.type = isEip1559Network ? 'eip1559' : 'legacy';\n }\n }\n if (parameters.includes('fees')) {\n // TODO(4844): derive blob base fees once https://github.com/ethereum/execution-apis/pull/486 is merged.\n if (request.type !== 'legacy' && request.type !== 'eip2930') {\n // EIP-1559 fees\n if (typeof request.maxFeePerGas === 'undefined' ||\n typeof request.maxPriorityFeePerGas === 'undefined') {\n const block = await getBlock();\n const { maxFeePerGas, maxPriorityFeePerGas } = await (0,_actions_public_estimateFeesPerGas_js__WEBPACK_IMPORTED_MODULE_10__.internal_estimateFeesPerGas)(client, {\n block: block,\n chain,\n request: request,\n });\n if (typeof args.maxPriorityFeePerGas === 'undefined' &&\n args.maxFeePerGas &&\n args.maxFeePerGas < maxPriorityFeePerGas)\n throw new _errors_fee_js__WEBPACK_IMPORTED_MODULE_11__.MaxFeePerGasTooLowError({\n maxPriorityFeePerGas,\n });\n request.maxPriorityFeePerGas = maxPriorityFeePerGas;\n request.maxFeePerGas = maxFeePerGas;\n }\n }\n else {\n // Legacy fees\n if (typeof args.maxFeePerGas !== 'undefined' ||\n typeof args.maxPriorityFeePerGas !== 'undefined')\n throw new _errors_fee_js__WEBPACK_IMPORTED_MODULE_11__.Eip1559FeesNotSupportedError();\n if (typeof args.gasPrice === 'undefined') {\n const block = await getBlock();\n const { gasPrice: gasPrice_ } = await (0,_actions_public_estimateFeesPerGas_js__WEBPACK_IMPORTED_MODULE_10__.internal_estimateFeesPerGas)(client, {\n block: block,\n chain,\n request: request,\n type: 'legacy',\n });\n request.gasPrice = gasPrice_;\n }\n }\n }\n if (parameters.includes('gas') && typeof gas === 'undefined')\n request.gas = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_1__.getAction)(client, _actions_public_estimateGas_js__WEBPACK_IMPORTED_MODULE_12__.estimateGas, 'estimateGas')({\n ...request,\n account: account\n ? { address: account.address, type: 'json-rpc' }\n : account,\n });\n (0,_utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_13__.assertRequest)(request);\n delete request.parameters;\n return request;\n}\n//# sourceMappingURL=prepareTransactionRequest.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvcHJlcGFyZVRyYW5zYWN0aW9uUmVxdWVzdC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFxRTtBQUNxQjtBQUN2QjtBQUNPO0FBQ1M7QUFDVTtBQUNqQjtBQUNWO0FBQzhCO0FBQzVCO0FBQ2Y7QUFDcUI7QUFDVTtBQUNoQjtBQUM3RDtBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEIsc0NBQXNDO0FBQ3RDO0FBQ0E7QUFDQSxZQUFZLDZCQUE2QjtBQUN6QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSw0QkFBNEI7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkMsWUFBWSxzQkFBc0I7QUFDbEMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksNEJBQTRCO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ087QUFDUCxZQUFZLHlIQUF5SDtBQUNySSwrQkFBK0IsNkVBQVk7QUFDM0Msc0JBQXNCLHlCQUF5Qix5QkFBeUIsSUFBSTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiw4REFBUyxTQUFTLGlFQUFTLGdCQUFnQixvQkFBb0I7QUFDckY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0IsOERBQVMsU0FBUyw2REFBVyxrQkFBa0I7QUFDOUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLGtDQUFrQyw4REFBUyxTQUFTLHVGQUFtQjtBQUN2RTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixxRkFBa0IsR0FBRyxZQUFZO0FBQzdEO0FBQ0Esb0NBQW9DLHlHQUE0QjtBQUNoRTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQiwyRUFBYSxHQUFHLHlCQUF5QjtBQUNwRSw2QkFBNkIsNkVBQWM7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQiw0RkFBa0I7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHFDQUFxQyxRQUFRLG1HQUEyQjtBQUNoRztBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLG9FQUF1QjtBQUNyRDtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHlFQUE0QjtBQUN0RDtBQUNBO0FBQ0Esd0JBQXdCLHNCQUFzQixRQUFRLG1HQUEyQjtBQUNqRjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLDhEQUFTLFNBQVMsd0VBQVc7QUFDekQ7QUFDQTtBQUNBLG9CQUFvQjtBQUNwQjtBQUNBLFNBQVM7QUFDVCxJQUFJLG1GQUFhO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3dhbGxldC9wcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgaW50ZXJuYWxfZXN0aW1hdGVGZWVzUGVyR2FzLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2VzdGltYXRlRmVlc1Blckdhcy5qcyc7XG5pbXBvcnQgeyBlc3RpbWF0ZUdhcywgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9lc3RpbWF0ZUdhcy5qcyc7XG5pbXBvcnQgeyBnZXRCbG9jayBhcyBnZXRCbG9ja18sIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2suanMnO1xuaW1wb3J0IHsgZ2V0VHJhbnNhY3Rpb25Db3VudCwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRUcmFuc2FjdGlvbkNvdW50LmpzJztcbmltcG9ydCB7IEVpcDE1NTlGZWVzTm90U3VwcG9ydGVkRXJyb3IsIE1heEZlZVBlckdhc1Rvb0xvd0Vycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9mZWUuanMnO1xuaW1wb3J0IHsgYmxvYnNUb0NvbW1pdG1lbnRzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYmxvYi9ibG9ic1RvQ29tbWl0bWVudHMuanMnO1xuaW1wb3J0IHsgYmxvYnNUb1Byb29mcyB9IGZyb20gJy4uLy4uL3V0aWxzL2Jsb2IvYmxvYnNUb1Byb29mcy5qcyc7XG5pbXBvcnQgeyBjb21taXRtZW50c1RvVmVyc2lvbmVkSGFzaGVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYmxvYi9jb21taXRtZW50c1RvVmVyc2lvbmVkSGFzaGVzLmpzJztcbmltcG9ydCB7IHRvQmxvYlNpZGVjYXJzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYmxvYi90b0Jsb2JTaWRlY2Fycy5qcyc7XG5pbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgYXNzZXJ0UmVxdWVzdCwgfSBmcm9tICcuLi8uLi91dGlscy90cmFuc2FjdGlvbi9hc3NlcnRSZXF1ZXN0LmpzJztcbmltcG9ydCB7IGdldFRyYW5zYWN0aW9uVHlwZSwgfSBmcm9tICcuLi8uLi91dGlscy90cmFuc2FjdGlvbi9nZXRUcmFuc2FjdGlvblR5cGUuanMnO1xuaW1wb3J0IHsgZ2V0Q2hhaW5JZCBhcyBnZXRDaGFpbklkXyB9IGZyb20gJy4uL3B1YmxpYy9nZXRDaGFpbklkLmpzJztcbmV4cG9ydCBjb25zdCBkZWZhdWx0UGFyYW1ldGVycyA9IFtcbiAgICAnYmxvYlZlcnNpb25lZEhhc2hlcycsXG4gICAgJ2NoYWluSWQnLFxuICAgICdmZWVzJyxcbiAgICAnZ2FzJyxcbiAgICAnbm9uY2UnLFxuICAgICd0eXBlJyxcbl07XG4vKiogQGludGVybmFsICovXG5leHBvcnQgY29uc3QgZWlwMTU1OU5ldHdvcmtDYWNoZSA9IC8qI19fUFVSRV9fKi8gbmV3IE1hcCgpO1xuLyoqXG4gKiBQcmVwYXJlcyBhIHRyYW5zYWN0aW9uIHJlcXVlc3QgZm9yIHNpZ25pbmcuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3dhbGxldC9wcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0XG4gKlxuICogQHBhcmFtIGFyZ3MgLSB7QGxpbmsgUHJlcGFyZVRyYW5zYWN0aW9uUmVxdWVzdFBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgdHJhbnNhY3Rpb24gcmVxdWVzdC4ge0BsaW5rIFByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3RSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGN1c3RvbSB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBwcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0IH0gZnJvbSAndmllbS9hY3Rpb25zJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVdhbGxldENsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGN1c3RvbSh3aW5kb3cuZXRoZXJldW0pLFxuICogfSlcbiAqIGNvbnN0IHJlcXVlc3QgPSBhd2FpdCBwcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0KGNsaWVudCwge1xuICogICBhY2NvdW50OiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqICAgdG86ICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICogICB2YWx1ZTogMW4sXG4gKiB9KVxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBBY2NvdW50IEhvaXN0aW5nXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgcHJpdmF0ZUtleVRvQWNjb3VudCB9IGZyb20gJ3ZpZW0vYWNjb3VudHMnXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBwcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0IH0gZnJvbSAndmllbS9hY3Rpb25zJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVdhbGxldENsaWVudCh7XG4gKiAgIGFjY291bnQ6IHByaXZhdGVLZXlUb0FjY291bnQoJzB44oCmJyksXG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGN1c3RvbSh3aW5kb3cuZXRoZXJldW0pLFxuICogfSlcbiAqIGNvbnN0IHJlcXVlc3QgPSBhd2FpdCBwcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0KGNsaWVudCwge1xuICogICB0bzogJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gKiAgIHZhbHVlOiAxbixcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0KGNsaWVudCwgYXJncykge1xuICAgIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudF8gPSBjbGllbnQuYWNjb3VudCwgYmxvYnMsIGNoYWluLCBnYXMsIGt6Zywgbm9uY2UsIG5vbmNlTWFuYWdlciwgcGFyYW1ldGVycyA9IGRlZmF1bHRQYXJhbWV0ZXJzLCB0eXBlLCB9ID0gYXJncztcbiAgICBjb25zdCBhY2NvdW50ID0gYWNjb3VudF8gPyBwYXJzZUFjY291bnQoYWNjb3VudF8pIDogYWNjb3VudF87XG4gICAgY29uc3QgcmVxdWVzdCA9IHsgLi4uYXJncywgLi4uKGFjY291bnQgPyB7IGZyb206IGFjY291bnQ/LmFkZHJlc3MgfSA6IHt9KSB9O1xuICAgIGxldCBibG9jaztcbiAgICBhc3luYyBmdW5jdGlvbiBnZXRCbG9jaygpIHtcbiAgICAgICAgaWYgKGJsb2NrKVxuICAgICAgICAgICAgcmV0dXJuIGJsb2NrO1xuICAgICAgICBibG9jayA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldEJsb2NrXywgJ2dldEJsb2NrJykoeyBibG9ja1RhZzogJ2xhdGVzdCcgfSk7XG4gICAgICAgIHJldHVybiBibG9jaztcbiAgICB9XG4gICAgbGV0IGNoYWluSWQ7XG4gICAgYXN5bmMgZnVuY3Rpb24gZ2V0Q2hhaW5JZCgpIHtcbiAgICAgICAgaWYgKGNoYWluSWQpXG4gICAgICAgICAgICByZXR1cm4gY2hhaW5JZDtcbiAgICAgICAgaWYgKGNoYWluKVxuICAgICAgICAgICAgcmV0dXJuIGNoYWluLmlkO1xuICAgICAgICBpZiAodHlwZW9mIGFyZ3MuY2hhaW5JZCAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICByZXR1cm4gYXJncy5jaGFpbklkO1xuICAgICAgICBjb25zdCBjaGFpbklkXyA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldENoYWluSWRfLCAnZ2V0Q2hhaW5JZCcpKHt9KTtcbiAgICAgICAgY2hhaW5JZCA9IGNoYWluSWRfO1xuICAgICAgICByZXR1cm4gY2hhaW5JZDtcbiAgICB9XG4gICAgaWYgKHBhcmFtZXRlcnMuaW5jbHVkZXMoJ25vbmNlJykgJiYgdHlwZW9mIG5vbmNlID09PSAndW5kZWZpbmVkJyAmJiBhY2NvdW50KSB7XG4gICAgICAgIGlmIChub25jZU1hbmFnZXIpIHtcbiAgICAgICAgICAgIGNvbnN0IGNoYWluSWQgPSBhd2FpdCBnZXRDaGFpbklkKCk7XG4gICAgICAgICAgICByZXF1ZXN0Lm5vbmNlID0gYXdhaXQgbm9uY2VNYW5hZ2VyLmNvbnN1bWUoe1xuICAgICAgICAgICAgICAgIGFkZHJlc3M6IGFjY291bnQuYWRkcmVzcyxcbiAgICAgICAgICAgICAgICBjaGFpbklkLFxuICAgICAgICAgICAgICAgIGNsaWVudCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmVxdWVzdC5ub25jZSA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldFRyYW5zYWN0aW9uQ291bnQsICdnZXRUcmFuc2FjdGlvbkNvdW50Jykoe1xuICAgICAgICAgICAgICAgIGFkZHJlc3M6IGFjY291bnQuYWRkcmVzcyxcbiAgICAgICAgICAgICAgICBibG9ja1RhZzogJ3BlbmRpbmcnLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKChwYXJhbWV0ZXJzLmluY2x1ZGVzKCdibG9iVmVyc2lvbmVkSGFzaGVzJykgfHxcbiAgICAgICAgcGFyYW1ldGVycy5pbmNsdWRlcygnc2lkZWNhcnMnKSkgJiZcbiAgICAgICAgYmxvYnMgJiZcbiAgICAgICAga3pnKSB7XG4gICAgICAgIGNvbnN0IGNvbW1pdG1lbnRzID0gYmxvYnNUb0NvbW1pdG1lbnRzKHsgYmxvYnMsIGt6ZyB9KTtcbiAgICAgICAgaWYgKHBhcmFtZXRlcnMuaW5jbHVkZXMoJ2Jsb2JWZXJzaW9uZWRIYXNoZXMnKSkge1xuICAgICAgICAgICAgY29uc3QgdmVyc2lvbmVkSGFzaGVzID0gY29tbWl0bWVudHNUb1ZlcnNpb25lZEhhc2hlcyh7XG4gICAgICAgICAgICAgICAgY29tbWl0bWVudHMsXG4gICAgICAgICAgICAgICAgdG86ICdoZXgnLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXF1ZXN0LmJsb2JWZXJzaW9uZWRIYXNoZXMgPSB2ZXJzaW9uZWRIYXNoZXM7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBhcmFtZXRlcnMuaW5jbHVkZXMoJ3NpZGVjYXJzJykpIHtcbiAgICAgICAgICAgIGNvbnN0IHByb29mcyA9IGJsb2JzVG9Qcm9vZnMoeyBibG9icywgY29tbWl0bWVudHMsIGt6ZyB9KTtcbiAgICAgICAgICAgIGNvbnN0IHNpZGVjYXJzID0gdG9CbG9iU2lkZWNhcnMoe1xuICAgICAgICAgICAgICAgIGJsb2JzLFxuICAgICAgICAgICAgICAgIGNvbW1pdG1lbnRzLFxuICAgICAgICAgICAgICAgIHByb29mcyxcbiAgICAgICAgICAgICAgICB0bzogJ2hleCcsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJlcXVlc3Quc2lkZWNhcnMgPSBzaWRlY2FycztcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAocGFyYW1ldGVycy5pbmNsdWRlcygnY2hhaW5JZCcpKVxuICAgICAgICByZXF1ZXN0LmNoYWluSWQgPSBhd2FpdCBnZXRDaGFpbklkKCk7XG4gICAgaWYgKChwYXJhbWV0ZXJzLmluY2x1ZGVzKCdmZWVzJykgfHwgcGFyYW1ldGVycy5pbmNsdWRlcygndHlwZScpKSAmJlxuICAgICAgICB0eXBlb2YgdHlwZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJlcXVlc3QudHlwZSA9IGdldFRyYW5zYWN0aW9uVHlwZShyZXF1ZXN0KTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCB7XG4gICAgICAgICAgICBsZXQgaXNFaXAxNTU5TmV0d29yayA9IGVpcDE1NTlOZXR3b3JrQ2FjaGUuZ2V0KGNsaWVudC51aWQpO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBpc0VpcDE1NTlOZXR3b3JrID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYXdhaXQgZ2V0QmxvY2soKTtcbiAgICAgICAgICAgICAgICBpc0VpcDE1NTlOZXR3b3JrID0gdHlwZW9mIGJsb2NrPy5iYXNlRmVlUGVyR2FzID09PSAnYmlnaW50JztcbiAgICAgICAgICAgICAgICBlaXAxNTU5TmV0d29ya0NhY2hlLnNldChjbGllbnQudWlkLCBpc0VpcDE1NTlOZXR3b3JrKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlcXVlc3QudHlwZSA9IGlzRWlwMTU1OU5ldHdvcmsgPyAnZWlwMTU1OScgOiAnbGVnYWN5JztcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAocGFyYW1ldGVycy5pbmNsdWRlcygnZmVlcycpKSB7XG4gICAgICAgIC8vIFRPRE8oNDg0NCk6IGRlcml2ZSBibG9iIGJhc2UgZmVlcyBvbmNlIGh0dHBzOi8vZ2l0aHViLmNvbS9ldGhlcmV1bS9leGVjdXRpb24tYXBpcy9wdWxsLzQ4NiBpcyBtZXJnZWQuXG4gICAgICAgIGlmIChyZXF1ZXN0LnR5cGUgIT09ICdsZWdhY3knICYmIHJlcXVlc3QudHlwZSAhPT0gJ2VpcDI5MzAnKSB7XG4gICAgICAgICAgICAvLyBFSVAtMTU1OSBmZWVzXG4gICAgICAgICAgICBpZiAodHlwZW9mIHJlcXVlc3QubWF4RmVlUGVyR2FzID09PSAndW5kZWZpbmVkJyB8fFxuICAgICAgICAgICAgICAgIHR5cGVvZiByZXF1ZXN0Lm1heFByaW9yaXR5RmVlUGVyR2FzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYXdhaXQgZ2V0QmxvY2soKTtcbiAgICAgICAgICAgICAgICBjb25zdCB7IG1heEZlZVBlckdhcywgbWF4UHJpb3JpdHlGZWVQZXJHYXMgfSA9IGF3YWl0IGludGVybmFsX2VzdGltYXRlRmVlc1BlckdhcyhjbGllbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgYmxvY2s6IGJsb2NrLFxuICAgICAgICAgICAgICAgICAgICBjaGFpbixcbiAgICAgICAgICAgICAgICAgICAgcmVxdWVzdDogcmVxdWVzdCxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGFyZ3MubWF4UHJpb3JpdHlGZWVQZXJHYXMgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICAgICAgICAgIGFyZ3MubWF4RmVlUGVyR2FzICYmXG4gICAgICAgICAgICAgICAgICAgIGFyZ3MubWF4RmVlUGVyR2FzIDwgbWF4UHJpb3JpdHlGZWVQZXJHYXMpXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBNYXhGZWVQZXJHYXNUb29Mb3dFcnJvcih7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhcyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmVxdWVzdC5tYXhQcmlvcml0eUZlZVBlckdhcyA9IG1heFByaW9yaXR5RmVlUGVyR2FzO1xuICAgICAgICAgICAgICAgIHJlcXVlc3QubWF4RmVlUGVyR2FzID0gbWF4RmVlUGVyR2FzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gTGVnYWN5IGZlZXNcbiAgICAgICAgICAgIGlmICh0eXBlb2YgYXJncy5tYXhGZWVQZXJHYXMgIT09ICd1bmRlZmluZWQnIHx8XG4gICAgICAgICAgICAgICAgdHlwZW9mIGFyZ3MubWF4UHJpb3JpdHlGZWVQZXJHYXMgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFaXAxNTU5RmVlc05vdFN1cHBvcnRlZEVycm9yKCk7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGFyZ3MuZ2FzUHJpY2UgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBhd2FpdCBnZXRCbG9jaygpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgZ2FzUHJpY2U6IGdhc1ByaWNlXyB9ID0gYXdhaXQgaW50ZXJuYWxfZXN0aW1hdGVGZWVzUGVyR2FzKGNsaWVudCwge1xuICAgICAgICAgICAgICAgICAgICBibG9jazogYmxvY2ssXG4gICAgICAgICAgICAgICAgICAgIGNoYWluLFxuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0OiByZXF1ZXN0LFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnbGVnYWN5JyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXF1ZXN0Lmdhc1ByaWNlID0gZ2FzUHJpY2VfO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChwYXJhbWV0ZXJzLmluY2x1ZGVzKCdnYXMnKSAmJiB0eXBlb2YgZ2FzID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgcmVxdWVzdC5nYXMgPSBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBlc3RpbWF0ZUdhcywgJ2VzdGltYXRlR2FzJykoe1xuICAgICAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgICAgIGFjY291bnQ6IGFjY291bnRcbiAgICAgICAgICAgICAgICA/IHsgYWRkcmVzczogYWNjb3VudC5hZGRyZXNzLCB0eXBlOiAnanNvbi1ycGMnIH1cbiAgICAgICAgICAgICAgICA6IGFjY291bnQsXG4gICAgICAgIH0pO1xuICAgIGFzc2VydFJlcXVlc3QocmVxdWVzdCk7XG4gICAgZGVsZXRlIHJlcXVlc3QucGFyYW1ldGVycztcbiAgICByZXR1cm4gcmVxdWVzdDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareTransactionRequest.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendCalls.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/sendCalls.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fallbackMagicIdentifier: () => (/* binding */ fallbackMagicIdentifier),\n/* harmony export */ fallbackTransactionErrorMagicIdentifier: () => (/* binding */ fallbackTransactionErrorMagicIdentifier),\n/* harmony export */ sendCalls: () => (/* binding */ sendCalls)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_rpc_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../errors/rpc.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/rpc.js\");\n/* harmony import */ var _utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/abi/encodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\");\n/* harmony import */ var _utils_data_concat_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _utils_errors_getTransactionError_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils/errors/getTransactionError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getTransactionError.js\");\n/* harmony import */ var _sendTransaction_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./sendTransaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendTransaction.js\");\n\n\n\n\n\n\n\n\n\nconst fallbackMagicIdentifier = '0x5792579257925792579257925792579257925792579257925792579257925792';\nconst fallbackTransactionErrorMagicIdentifier = (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(0, {\n size: 32,\n});\n/**\n * Requests the connected wallet to send a batch of calls.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/sendCalls\n * - JSON-RPC Methods: [`wallet_sendCalls`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @returns Transaction identifier. {@link SendCallsReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { sendCalls } from 'viem/actions'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n * const id = await sendCalls(client, {\n * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * calls: [\n * {\n * data: '0xdeadbeef',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * },\n * {\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * value: 69420n,\n * },\n * ],\n * })\n */\nasync function sendCalls(client, parameters) {\n const { account: account_ = client.account, capabilities, chain = client.chain, experimental_fallback, experimental_fallbackDelay = 32, forceAtomic = false, id, version = '2.0.0', } = parameters;\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(account_) : null;\n const calls = parameters.calls.map((call_) => {\n const call = call_;\n const data = call.abi\n ? (0,_utils_abi_encodeFunctionData_js__WEBPACK_IMPORTED_MODULE_2__.encodeFunctionData)({\n abi: call.abi,\n functionName: call.functionName,\n args: call.args,\n })\n : call.data;\n return {\n data: call.dataSuffix && data ? (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_3__.concat)([data, call.dataSuffix]) : data,\n to: call.to,\n value: call.value ? (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(call.value) : undefined,\n };\n });\n try {\n const response = await client.request({\n method: 'wallet_sendCalls',\n params: [\n {\n atomicRequired: forceAtomic,\n calls,\n capabilities,\n chainId: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(chain.id),\n from: account?.address,\n id,\n version,\n },\n ],\n }, { retryCount: 0 });\n if (typeof response === 'string')\n return { id: response };\n return response;\n }\n catch (err) {\n const error = err;\n // If the transport does not support EIP-5792, fall back to\n // `eth_sendTransaction`.\n if (experimental_fallback &&\n (error.name === 'MethodNotFoundRpcError' ||\n error.name === 'MethodNotSupportedRpcError' ||\n error.name === 'UnknownRpcError' ||\n error.details\n .toLowerCase()\n .includes('does not exist / is not available') ||\n error.details.toLowerCase().includes('missing or invalid. request()') ||\n error.details\n .toLowerCase()\n .includes('did not match any variant of untagged enum') ||\n error.details\n .toLowerCase()\n .includes('account upgraded to unsupported contract') ||\n error.details.toLowerCase().includes('eip-7702 not supported') ||\n error.details.toLowerCase().includes('unsupported wc_ method') ||\n // magic.link\n error.details\n .toLowerCase()\n .includes('feature toggled misconfigured') ||\n // Trust Wallet\n error.details\n .toLowerCase()\n .includes('jsonrpcengine: response has no error or result for request'))) {\n if (capabilities) {\n const hasNonOptionalCapability = Object.values(capabilities).some((capability) => !capability.optional);\n if (hasNonOptionalCapability) {\n const message = 'non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.';\n throw new _errors_rpc_js__WEBPACK_IMPORTED_MODULE_4__.UnsupportedNonOptionalCapabilityError(new _errors_base_js__WEBPACK_IMPORTED_MODULE_5__.BaseError(message, {\n details: message,\n }));\n }\n }\n if (forceAtomic && calls.length > 1) {\n const message = '`forceAtomic` is not supported on fallback to `eth_sendTransaction`.';\n throw new _errors_rpc_js__WEBPACK_IMPORTED_MODULE_4__.AtomicityNotSupportedError(new _errors_base_js__WEBPACK_IMPORTED_MODULE_5__.BaseError(message, {\n details: message,\n }));\n }\n const promises = [];\n for (const call of calls) {\n const promise = (0,_sendTransaction_js__WEBPACK_IMPORTED_MODULE_6__.sendTransaction)(client, {\n account,\n chain,\n data: call.data,\n to: call.to,\n value: call.value ? (0,_utils_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_7__.hexToBigInt)(call.value) : undefined,\n });\n promises.push(promise);\n // Note: some browser wallets require a small delay between transactions\n // to prevent duplicate JSON-RPC requests.\n if (experimental_fallbackDelay > 0)\n await new Promise((resolve) => setTimeout(resolve, experimental_fallbackDelay));\n }\n const results = await Promise.allSettled(promises);\n if (results.every((r) => r.status === 'rejected'))\n throw results[0].reason;\n const hashes = results.map((result) => {\n if (result.status === 'fulfilled')\n return result.value;\n return fallbackTransactionErrorMagicIdentifier;\n });\n return {\n id: (0,_utils_data_concat_js__WEBPACK_IMPORTED_MODULE_3__.concat)([\n ...hashes,\n (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(chain.id, { size: 32 }),\n fallbackMagicIdentifier,\n ]),\n };\n }\n throw (0,_utils_errors_getTransactionError_js__WEBPACK_IMPORTED_MODULE_8__.getTransactionError)(err, {\n ...parameters,\n account,\n chain: parameters.chain,\n });\n }\n}\n//# sourceMappingURL=sendCalls.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvc2VuZENhbGxzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFvRTtBQUNuQjtBQUN3RDtBQUM5QjtBQUN2QjtBQUNVO0FBQ0Y7QUFDb0I7QUFDekI7QUFDaEQ7QUFDQSxnREFBZ0QscUVBQVc7QUFDbEU7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBLFlBQVksNkJBQTZCO0FBQ3pDLFlBQVksVUFBVTtBQUN0QixZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNPO0FBQ1AsWUFBWSw4S0FBOEs7QUFDMUwsK0JBQStCLDZFQUFZO0FBQzNDO0FBQ0E7QUFDQTtBQUNBLGNBQWMsb0ZBQWtCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsNENBQTRDLDZEQUFNO0FBQ2xEO0FBQ0EsZ0NBQWdDLHFFQUFXO0FBQzNDO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIscUVBQVc7QUFDeEM7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0EsU0FBUyxJQUFJLGVBQWU7QUFDNUI7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsaUZBQXFDLEtBQUssc0RBQVM7QUFDakY7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsc0VBQTBCLEtBQUssc0RBQVM7QUFDbEU7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLG9FQUFlO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0NBQXdDLHVFQUFXO0FBQ25ELGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLG9CQUFvQiw2REFBTTtBQUMxQjtBQUNBLG9CQUFvQixxRUFBVyxhQUFhLFVBQVU7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHlGQUFtQjtBQUNqQztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3dhbGxldC9zZW5kQ2FsbHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VBY2NvdW50IH0gZnJvbSAnLi4vLi4vYWNjb3VudHMvdXRpbHMvcGFyc2VBY2NvdW50LmpzJztcbmltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9iYXNlLmpzJztcbmltcG9ydCB7IEF0b21pY2l0eU5vdFN1cHBvcnRlZEVycm9yLCBVbnN1cHBvcnRlZE5vbk9wdGlvbmFsQ2FwYWJpbGl0eUVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9ycGMuanMnO1xuaW1wb3J0IHsgZW5jb2RlRnVuY3Rpb25EYXRhIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWJpL2VuY29kZUZ1bmN0aW9uRGF0YS5qcyc7XG5pbXBvcnQgeyBjb25jYXQgfSBmcm9tICcuLi8uLi91dGlscy9kYXRhL2NvbmNhdC5qcyc7XG5pbXBvcnQgeyBoZXhUb0JpZ0ludCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL2Zyb21IZXguanMnO1xuaW1wb3J0IHsgbnVtYmVyVG9IZXggfSBmcm9tICcuLi8uLi91dGlscy9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBnZXRUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3JzL2dldFRyYW5zYWN0aW9uRXJyb3IuanMnO1xuaW1wb3J0IHsgc2VuZFRyYW5zYWN0aW9uIH0gZnJvbSAnLi9zZW5kVHJhbnNhY3Rpb24uanMnO1xuZXhwb3J0IGNvbnN0IGZhbGxiYWNrTWFnaWNJZGVudGlmaWVyID0gJzB4NTc5MjU3OTI1NzkyNTc5MjU3OTI1NzkyNTc5MjU3OTI1NzkyNTc5MjU3OTI1NzkyNTc5MjU3OTI1NzkyNTc5Mic7XG5leHBvcnQgY29uc3QgZmFsbGJhY2tUcmFuc2FjdGlvbkVycm9yTWFnaWNJZGVudGlmaWVyID0gbnVtYmVyVG9IZXgoMCwge1xuICAgIHNpemU6IDMyLFxufSk7XG4vKipcbiAqIFJlcXVlc3RzIHRoZSBjb25uZWN0ZWQgd2FsbGV0IHRvIHNlbmQgYSBiYXRjaCBvZiBjYWxscy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvd2FsbGV0L3NlbmRDYWxsc1xuICogLSBKU09OLVJQQyBNZXRob2RzOiBbYHdhbGxldF9zZW5kQ2FsbHNgXShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTU3OTIpXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEByZXR1cm5zIFRyYW5zYWN0aW9uIGlkZW50aWZpZXIuIHtAbGluayBTZW5kQ2FsbHNSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGN1c3RvbSB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBzZW5kQ2FsbHMgfSBmcm9tICd2aWVtL2FjdGlvbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlV2FsbGV0Q2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogY3VzdG9tKHdpbmRvdy5ldGhlcmV1bSksXG4gKiB9KVxuICogY29uc3QgaWQgPSBhd2FpdCBzZW5kQ2FsbHMoY2xpZW50LCB7XG4gKiAgIGFjY291bnQ6ICcweEEwQ2Y3OTg4MTZENGI5Yjk4NjZiNTMzMEVFYTQ2YTE4MzgyZjI1MWUnLFxuICogICBjYWxsczogW1xuICogICAgIHtcbiAqICAgICAgIGRhdGE6ICcweGRlYWRiZWVmJyxcbiAqICAgICAgIHRvOiAnMHg3MDk5Nzk3MGM1MTgxMmRjM2EwMTBjN2QwMWI1MGUwZDE3ZGM3OWM4JyxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIHRvOiAnMHg3MDk5Nzk3MGM1MTgxMmRjM2EwMTBjN2QwMWI1MGUwZDE3ZGM3OWM4JyxcbiAqICAgICAgIHZhbHVlOiA2OTQyMG4sXG4gKiAgICAgfSxcbiAqICAgXSxcbiAqIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kQ2FsbHMoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhY2NvdW50OiBhY2NvdW50XyA9IGNsaWVudC5hY2NvdW50LCBjYXBhYmlsaXRpZXMsIGNoYWluID0gY2xpZW50LmNoYWluLCBleHBlcmltZW50YWxfZmFsbGJhY2ssIGV4cGVyaW1lbnRhbF9mYWxsYmFja0RlbGF5ID0gMzIsIGZvcmNlQXRvbWljID0gZmFsc2UsIGlkLCB2ZXJzaW9uID0gJzIuMC4wJywgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgYWNjb3VudCA9IGFjY291bnRfID8gcGFyc2VBY2NvdW50KGFjY291bnRfKSA6IG51bGw7XG4gICAgY29uc3QgY2FsbHMgPSBwYXJhbWV0ZXJzLmNhbGxzLm1hcCgoY2FsbF8pID0+IHtcbiAgICAgICAgY29uc3QgY2FsbCA9IGNhbGxfO1xuICAgICAgICBjb25zdCBkYXRhID0gY2FsbC5hYmlcbiAgICAgICAgICAgID8gZW5jb2RlRnVuY3Rpb25EYXRhKHtcbiAgICAgICAgICAgICAgICBhYmk6IGNhbGwuYWJpLFxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogY2FsbC5mdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICAgICAgYXJnczogY2FsbC5hcmdzLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIDogY2FsbC5kYXRhO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGF0YTogY2FsbC5kYXRhU3VmZml4ICYmIGRhdGEgPyBjb25jYXQoW2RhdGEsIGNhbGwuZGF0YVN1ZmZpeF0pIDogZGF0YSxcbiAgICAgICAgICAgIHRvOiBjYWxsLnRvLFxuICAgICAgICAgICAgdmFsdWU6IGNhbGwudmFsdWUgPyBudW1iZXJUb0hleChjYWxsLnZhbHVlKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgfTtcbiAgICB9KTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5yZXF1ZXN0KHtcbiAgICAgICAgICAgIG1ldGhvZDogJ3dhbGxldF9zZW5kQ2FsbHMnLFxuICAgICAgICAgICAgcGFyYW1zOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBhdG9taWNSZXF1aXJlZDogZm9yY2VBdG9taWMsXG4gICAgICAgICAgICAgICAgICAgIGNhbGxzLFxuICAgICAgICAgICAgICAgICAgICBjYXBhYmlsaXRpZXMsXG4gICAgICAgICAgICAgICAgICAgIGNoYWluSWQ6IG51bWJlclRvSGV4KGNoYWluLmlkKSxcbiAgICAgICAgICAgICAgICAgICAgZnJvbTogYWNjb3VudD8uYWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgICAgIHZlcnNpb24sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0sIHsgcmV0cnlDb3VudDogMCB9KTtcbiAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpXG4gICAgICAgICAgICByZXR1cm4geyBpZDogcmVzcG9uc2UgfTtcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnN0IGVycm9yID0gZXJyO1xuICAgICAgICAvLyBJZiB0aGUgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgRUlQLTU3OTIsIGZhbGwgYmFjayB0b1xuICAgICAgICAvLyBgZXRoX3NlbmRUcmFuc2FjdGlvbmAuXG4gICAgICAgIGlmIChleHBlcmltZW50YWxfZmFsbGJhY2sgJiZcbiAgICAgICAgICAgIChlcnJvci5uYW1lID09PSAnTWV0aG9kTm90Rm91bmRScGNFcnJvcicgfHxcbiAgICAgICAgICAgICAgICBlcnJvci5uYW1lID09PSAnTWV0aG9kTm90U3VwcG9ydGVkUnBjRXJyb3InIHx8XG4gICAgICAgICAgICAgICAgZXJyb3IubmFtZSA9PT0gJ1Vua25vd25ScGNFcnJvcicgfHxcbiAgICAgICAgICAgICAgICBlcnJvci5kZXRhaWxzXG4gICAgICAgICAgICAgICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgIC5pbmNsdWRlcygnZG9lcyBub3QgZXhpc3QgLyBpcyBub3QgYXZhaWxhYmxlJykgfHxcbiAgICAgICAgICAgICAgICBlcnJvci5kZXRhaWxzLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ21pc3Npbmcgb3IgaW52YWxpZC4gcmVxdWVzdCgpJykgfHxcbiAgICAgICAgICAgICAgICBlcnJvci5kZXRhaWxzXG4gICAgICAgICAgICAgICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgIC5pbmNsdWRlcygnZGlkIG5vdCBtYXRjaCBhbnkgdmFyaWFudCBvZiB1bnRhZ2dlZCBlbnVtJykgfHxcbiAgICAgICAgICAgICAgICBlcnJvci5kZXRhaWxzXG4gICAgICAgICAgICAgICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgIC5pbmNsdWRlcygnYWNjb3VudCB1cGdyYWRlZCB0byB1bnN1cHBvcnRlZCBjb250cmFjdCcpIHx8XG4gICAgICAgICAgICAgICAgZXJyb3IuZGV0YWlscy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdlaXAtNzcwMiBub3Qgc3VwcG9ydGVkJykgfHxcbiAgICAgICAgICAgICAgICBlcnJvci5kZXRhaWxzLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ3Vuc3VwcG9ydGVkIHdjXyBtZXRob2QnKSB8fFxuICAgICAgICAgICAgICAgIC8vIG1hZ2ljLmxpbmtcbiAgICAgICAgICAgICAgICBlcnJvci5kZXRhaWxzXG4gICAgICAgICAgICAgICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgIC5pbmNsdWRlcygnZmVhdHVyZSB0b2dnbGVkIG1pc2NvbmZpZ3VyZWQnKSB8fFxuICAgICAgICAgICAgICAgIC8vIFRydXN0IFdhbGxldFxuICAgICAgICAgICAgICAgIGVycm9yLmRldGFpbHNcbiAgICAgICAgICAgICAgICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICAgLmluY2x1ZGVzKCdqc29ucnBjZW5naW5lOiByZXNwb25zZSBoYXMgbm8gZXJyb3Igb3IgcmVzdWx0IGZvciByZXF1ZXN0JykpKSB7XG4gICAgICAgICAgICBpZiAoY2FwYWJpbGl0aWVzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaGFzTm9uT3B0aW9uYWxDYXBhYmlsaXR5ID0gT2JqZWN0LnZhbHVlcyhjYXBhYmlsaXRpZXMpLnNvbWUoKGNhcGFiaWxpdHkpID0+ICFjYXBhYmlsaXR5Lm9wdGlvbmFsKTtcbiAgICAgICAgICAgICAgICBpZiAoaGFzTm9uT3B0aW9uYWxDYXBhYmlsaXR5KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnbm9uLW9wdGlvbmFsIGBjYXBhYmlsaXRpZXNgIGFyZSBub3Qgc3VwcG9ydGVkIG9uIGZhbGxiYWNrIHRvIGBldGhfc2VuZFRyYW5zYWN0aW9uYC4nO1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWROb25PcHRpb25hbENhcGFiaWxpdHlFcnJvcihuZXcgQmFzZUVycm9yKG1lc3NhZ2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHM6IG1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZm9yY2VBdG9taWMgJiYgY2FsbHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnYGZvcmNlQXRvbWljYCBpcyBub3Qgc3VwcG9ydGVkIG9uIGZhbGxiYWNrIHRvIGBldGhfc2VuZFRyYW5zYWN0aW9uYC4nO1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBBdG9taWNpdHlOb3RTdXBwb3J0ZWRFcnJvcihuZXcgQmFzZUVycm9yKG1lc3NhZ2UsIHtcbiAgICAgICAgICAgICAgICAgICAgZGV0YWlsczogbWVzc2FnZSxcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBwcm9taXNlcyA9IFtdO1xuICAgICAgICAgICAgZm9yIChjb25zdCBjYWxsIG9mIGNhbGxzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJvbWlzZSA9IHNlbmRUcmFuc2FjdGlvbihjbGllbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgY2hhaW4sXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IGNhbGwuZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgdG86IGNhbGwudG8sXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBjYWxsLnZhbHVlID8gaGV4VG9CaWdJbnQoY2FsbC52YWx1ZSkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcHJvbWlzZXMucHVzaChwcm9taXNlKTtcbiAgICAgICAgICAgICAgICAvLyBOb3RlOiBzb21lIGJyb3dzZXIgd2FsbGV0cyByZXF1aXJlIGEgc21hbGwgZGVsYXkgYmV0d2VlbiB0cmFuc2FjdGlvbnNcbiAgICAgICAgICAgICAgICAvLyB0byBwcmV2ZW50IGR1cGxpY2F0ZSBKU09OLVJQQyByZXF1ZXN0cy5cbiAgICAgICAgICAgICAgICBpZiAoZXhwZXJpbWVudGFsX2ZhbGxiYWNrRGVsYXkgPiAwKVxuICAgICAgICAgICAgICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBleHBlcmltZW50YWxfZmFsbGJhY2tEZWxheSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IFByb21pc2UuYWxsU2V0dGxlZChwcm9taXNlcyk7XG4gICAgICAgICAgICBpZiAocmVzdWx0cy5ldmVyeSgocikgPT4gci5zdGF0dXMgPT09ICdyZWplY3RlZCcpKVxuICAgICAgICAgICAgICAgIHRocm93IHJlc3VsdHNbMF0ucmVhc29uO1xuICAgICAgICAgICAgY29uc3QgaGFzaGVzID0gcmVzdWx0cy5tYXAoKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQuc3RhdHVzID09PSAnZnVsZmlsbGVkJylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdC52YWx1ZTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsbGJhY2tUcmFuc2FjdGlvbkVycm9yTWFnaWNJZGVudGlmaWVyO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlkOiBjb25jYXQoW1xuICAgICAgICAgICAgICAgICAgICAuLi5oYXNoZXMsXG4gICAgICAgICAgICAgICAgICAgIG51bWJlclRvSGV4KGNoYWluLmlkLCB7IHNpemU6IDMyIH0pLFxuICAgICAgICAgICAgICAgICAgICBmYWxsYmFja01hZ2ljSWRlbnRpZmllcixcbiAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgZ2V0VHJhbnNhY3Rpb25FcnJvcihlcnIsIHtcbiAgICAgICAgICAgIC4uLnBhcmFtZXRlcnMsXG4gICAgICAgICAgICBhY2NvdW50LFxuICAgICAgICAgICAgY2hhaW46IHBhcmFtZXRlcnMuY2hhaW4sXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNlbmRDYWxscy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendCalls.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendRawTransaction.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/sendRawTransaction.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ sendRawTransaction: () => (/* binding */ sendRawTransaction)\n/* harmony export */ });\n/**\n * Sends a **signed** transaction to the network\n *\n * - Docs: https://viem.sh/docs/actions/wallet/sendRawTransaction\n * - JSON-RPC Method: [`eth_sendRawTransaction`](https://ethereum.github.io/execution-apis/api-documentation/)\n *\n * @param client - Client to use\n * @param parameters - {@link SendRawTransactionParameters}\n * @returns The transaction hash. {@link SendRawTransactionReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { sendRawTransaction } from 'viem/wallet'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n *\n * const hash = await sendRawTransaction(client, {\n * serializedTransaction: '0x02f850018203118080825208808080c080a04012522854168b27e5dc3d5839bab5e6b39e1a0ffd343901ce1622e3d64b48f1a04e00902ae0502c4728cbf12156290df99c3ed7de85b1dbfe20b5c36931733a33'\n * })\n */\nasync function sendRawTransaction(client, { serializedTransaction }) {\n return client.request({\n method: 'eth_sendRawTransaction',\n params: [serializedTransaction],\n }, { retryCount: 0 });\n}\n//# sourceMappingURL=sendRawTransaction.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvc2VuZFJhd1RyYW5zYWN0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixtQ0FBbUM7QUFDbkM7QUFDQTtBQUNBLFlBQVksNkJBQTZCO0FBQ3pDLFlBQVksVUFBVTtBQUN0QixZQUFZLHFCQUFxQjtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTyw0Q0FBNEMsdUJBQXVCO0FBQzFFO0FBQ0E7QUFDQTtBQUNBLEtBQUssSUFBSSxlQUFlO0FBQ3hCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvd2FsbGV0L3NlbmRSYXdUcmFuc2FjdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNlbmRzIGEgKipzaWduZWQqKiB0cmFuc2FjdGlvbiB0byB0aGUgbmV0d29ya1xuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy93YWxsZXQvc2VuZFJhd1RyYW5zYWN0aW9uXG4gKiAtIEpTT04tUlBDIE1ldGhvZDogW2BldGhfc2VuZFJhd1RyYW5zYWN0aW9uYF0oaHR0cHM6Ly9ldGhlcmV1bS5naXRodWIuaW8vZXhlY3V0aW9uLWFwaXMvYXBpLWRvY3VtZW50YXRpb24vKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBTZW5kUmF3VHJhbnNhY3Rpb25QYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIHRyYW5zYWN0aW9uIGhhc2guIHtAbGluayBTZW5kUmF3VHJhbnNhY3Rpb25SZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGN1c3RvbSB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBzZW5kUmF3VHJhbnNhY3Rpb24gfSBmcm9tICd2aWVtL3dhbGxldCdcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVXYWxsZXRDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBjdXN0b20od2luZG93LmV0aGVyZXVtKSxcbiAqIH0pXG4gKlxuICogY29uc3QgaGFzaCA9IGF3YWl0IHNlbmRSYXdUcmFuc2FjdGlvbihjbGllbnQsIHtcbiAqICAgc2VyaWFsaXplZFRyYW5zYWN0aW9uOiAnMHgwMmY4NTAwMTgyMDMxMTgwODA4MjUyMDg4MDgwODBjMDgwYTA0MDEyNTIyODU0MTY4YjI3ZTVkYzNkNTgzOWJhYjVlNmIzOWUxYTBmZmQzNDM5MDFjZTE2MjJlM2Q2NGI0OGYxYTA0ZTAwOTAyYWUwNTAyYzQ3MjhjYmYxMjE1NjI5MGRmOTljM2VkN2RlODViMWRiZmUyMGI1YzM2OTMxNzMzYTMzJ1xuICogfSlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbmRSYXdUcmFuc2FjdGlvbihjbGllbnQsIHsgc2VyaWFsaXplZFRyYW5zYWN0aW9uIH0pIHtcbiAgICByZXR1cm4gY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICBtZXRob2Q6ICdldGhfc2VuZFJhd1RyYW5zYWN0aW9uJyxcbiAgICAgICAgcGFyYW1zOiBbc2VyaWFsaXplZFRyYW5zYWN0aW9uXSxcbiAgICB9LCB7IHJldHJ5Q291bnQ6IDAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zZW5kUmF3VHJhbnNhY3Rpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendRawTransaction.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendRawTransactionSync.js": /*!*************************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/sendRawTransactionSync.js ***! \*************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ sendRawTransactionSync: () => (/* binding */ sendRawTransactionSync)\n/* harmony export */ });\n/* harmony import */ var _utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/formatters/transactionReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionReceipt.js\");\n/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/index.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n/**\n * Sends a **signed** transaction to the network synchronously,\n * and waits for the transaction to be included in a block.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/sendRawTransactionSync\n * - JSON-RPC Method: [`eth_sendRawTransactionSync`](https://eips.ethereum.org/EIPS/eip-7966)\n *\n * @param client - Client to use\n * @param parameters - {@link SendRawTransactionParameters}\n * @returns The transaction receipt. {@link SendRawTransactionSyncReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { sendRawTransactionSync } from 'viem/wallet'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n *\n * const receipt = await sendRawTransactionSync(client, {\n * serializedTransaction: '0x02f850018203118080825208808080c080a04012522854168b27e5dc3d5839bab5e6b39e1a0ffd343901ce1622e3d64b48f1a04e00902ae0502c4728cbf12156290df99c3ed7de85b1dbfe20b5c36931733a33'\n * })\n */\nasync function sendRawTransactionSync(client, { serializedTransaction, timeout }) {\n const receipt = await client.request({\n method: 'eth_sendRawTransactionSync',\n params: timeout\n ? [serializedTransaction, (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_0__.numberToHex)(timeout)]\n : [serializedTransaction],\n }, { retryCount: 0 });\n const format = client.chain?.formatters?.transactionReceipt?.format ||\n _utils_formatters_transactionReceipt_js__WEBPACK_IMPORTED_MODULE_1__.formatTransactionReceipt;\n return format(receipt);\n}\n//# sourceMappingURL=sendRawTransactionSync.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvc2VuZFJhd1RyYW5zYWN0aW9uU3luYy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBd0Y7QUFDcEM7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QixzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBLFlBQVksNkJBQTZCO0FBQ3pDLFlBQVksVUFBVTtBQUN0QixZQUFZLHlCQUF5QjtBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTyxnREFBZ0QsZ0NBQWdDO0FBQ3ZGO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyw0REFBVztBQUNqRDtBQUNBLEtBQUssSUFBSSxlQUFlO0FBQ3hCO0FBQ0EsUUFBUSw2RkFBd0I7QUFDaEM7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9hY3Rpb25zL3dhbGxldC9zZW5kUmF3VHJhbnNhY3Rpb25TeW5jLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdFRyYW5zYWN0aW9uUmVjZWlwdCB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm1hdHRlcnMvdHJhbnNhY3Rpb25SZWNlaXB0LmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4LCB9IGZyb20gJy4uLy4uL3V0aWxzL2luZGV4LmpzJztcbi8qKlxuICogU2VuZHMgYSAqKnNpZ25lZCoqIHRyYW5zYWN0aW9uIHRvIHRoZSBuZXR3b3JrIHN5bmNocm9ub3VzbHksXG4gKiBhbmQgd2FpdHMgZm9yIHRoZSB0cmFuc2FjdGlvbiB0byBiZSBpbmNsdWRlZCBpbiBhIGJsb2NrLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvYWN0aW9ucy93YWxsZXQvc2VuZFJhd1RyYW5zYWN0aW9uU3luY1xuICogLSBKU09OLVJQQyBNZXRob2Q6IFtgZXRoX3NlbmRSYXdUcmFuc2FjdGlvblN5bmNgXShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTc5NjYpXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIFNlbmRSYXdUcmFuc2FjdGlvblBhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgdHJhbnNhY3Rpb24gcmVjZWlwdC4ge0BsaW5rIFNlbmRSYXdUcmFuc2FjdGlvblN5bmNSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGN1c3RvbSB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBzZW5kUmF3VHJhbnNhY3Rpb25TeW5jIH0gZnJvbSAndmllbS93YWxsZXQnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlV2FsbGV0Q2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogY3VzdG9tKHdpbmRvdy5ldGhlcmV1bSksXG4gKiB9KVxuICpcbiAqIGNvbnN0IHJlY2VpcHQgPSBhd2FpdCBzZW5kUmF3VHJhbnNhY3Rpb25TeW5jKGNsaWVudCwge1xuICogICBzZXJpYWxpemVkVHJhbnNhY3Rpb246ICcweDAyZjg1MDAxODIwMzExODA4MDgyNTIwODgwODA4MGMwODBhMDQwMTI1MjI4NTQxNjhiMjdlNWRjM2Q1ODM5YmFiNWU2YjM5ZTFhMGZmZDM0MzkwMWNlMTYyMmUzZDY0YjQ4ZjFhMDRlMDA5MDJhZTA1MDJjNDcyOGNiZjEyMTU2MjkwZGY5OWMzZWQ3ZGU4NWIxZGJmZTIwYjVjMzY5MzE3MzNhMzMnXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VuZFJhd1RyYW5zYWN0aW9uU3luYyhjbGllbnQsIHsgc2VyaWFsaXplZFRyYW5zYWN0aW9uLCB0aW1lb3V0IH0pIHtcbiAgICBjb25zdCByZWNlaXB0ID0gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICBtZXRob2Q6ICdldGhfc2VuZFJhd1RyYW5zYWN0aW9uU3luYycsXG4gICAgICAgIHBhcmFtczogdGltZW91dFxuICAgICAgICAgICAgPyBbc2VyaWFsaXplZFRyYW5zYWN0aW9uLCBudW1iZXJUb0hleCh0aW1lb3V0KV1cbiAgICAgICAgICAgIDogW3NlcmlhbGl6ZWRUcmFuc2FjdGlvbl0sXG4gICAgfSwgeyByZXRyeUNvdW50OiAwIH0pO1xuICAgIGNvbnN0IGZvcm1hdCA9IGNsaWVudC5jaGFpbj8uZm9ybWF0dGVycz8udHJhbnNhY3Rpb25SZWNlaXB0Py5mb3JtYXQgfHxcbiAgICAgICAgZm9ybWF0VHJhbnNhY3Rpb25SZWNlaXB0O1xuICAgIHJldHVybiBmb3JtYXQocmVjZWlwdCk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zZW5kUmF3VHJhbnNhY3Rpb25TeW5jLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendRawTransactionSync.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendTransaction.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/sendTransaction.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ sendTransaction: () => (/* binding */ sendTransaction)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _errors_account_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/account.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/account.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _utils_authorization_recoverAuthorizationAddress_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/authorization/recoverAuthorizationAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/recoverAuthorizationAddress.js\");\n/* harmony import */ var _utils_chain_assertCurrentChain_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils/chain/assertCurrentChain.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/chain/assertCurrentChain.js\");\n/* harmony import */ var _utils_errors_getTransactionError_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../utils/errors/getTransactionError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getTransactionError.js\");\n/* harmony import */ var _utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/formatters/extract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/extract.js\");\n/* harmony import */ var _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/formatters/transactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/transactionRequest.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_lru_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/lru.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/lru.js\");\n/* harmony import */ var _utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/transaction/assertRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js\");\n/* harmony import */ var _public_getChainId_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../public/getChainId.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js\");\n/* harmony import */ var _prepareTransactionRequest_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./prepareTransactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareTransactionRequest.js\");\n/* harmony import */ var _sendRawTransaction_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./sendRawTransaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendRawTransaction.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst supportsWalletNamespace = new _utils_lru_js__WEBPACK_IMPORTED_MODULE_0__.LruMap(128);\n/**\n * Creates, signs, and sends a new transaction to the network.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/sendTransaction\n * - Examples: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_sending-transactions\n * - JSON-RPC Methods:\n * - JSON-RPC Accounts: [`eth_sendTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendtransaction)\n * - Local Accounts: [`eth_sendRawTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendrawtransaction)\n *\n * @param client - Client to use\n * @param parameters - {@link SendTransactionParameters}\n * @returns The [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash. {@link SendTransactionReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { sendTransaction } from 'viem/wallet'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n * const hash = await sendTransaction(client, {\n * account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * value: 1000000000000000000n,\n * })\n *\n * @example\n * // Account Hoisting\n * import { createWalletClient, http } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n * import { sendTransaction } from 'viem/wallet'\n *\n * const client = createWalletClient({\n * account: privateKeyToAccount('0x…'),\n * chain: mainnet,\n * transport: http(),\n * })\n * const hash = await sendTransaction(client, {\n * to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',\n * value: 1000000000000000000n,\n * })\n */\nasync function sendTransaction(client, parameters) {\n const { account: account_ = client.account, chain = client.chain, accessList, authorizationList, blobs, data, gas, gasPrice, maxFeePerBlobGas, maxFeePerGas, maxPriorityFeePerGas, nonce, type, value, ...rest } = parameters;\n if (typeof account_ === 'undefined')\n throw new _errors_account_js__WEBPACK_IMPORTED_MODULE_1__.AccountNotFoundError({\n docsPath: '/docs/actions/wallet/sendTransaction',\n });\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_2__.parseAccount)(account_) : null;\n try {\n (0,_utils_transaction_assertRequest_js__WEBPACK_IMPORTED_MODULE_3__.assertRequest)(parameters);\n const to = await (async () => {\n // If `to` exists on the parameters, use that.\n if (parameters.to)\n return parameters.to;\n // If `to` is null, we are sending a deployment transaction.\n if (parameters.to === null)\n return undefined;\n // If no `to` exists, and we are sending a EIP-7702 transaction, use the\n // address of the first authorization in the list.\n if (authorizationList && authorizationList.length > 0)\n return await (0,_utils_authorization_recoverAuthorizationAddress_js__WEBPACK_IMPORTED_MODULE_4__.recoverAuthorizationAddress)({\n authorization: authorizationList[0],\n }).catch(() => {\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_5__.BaseError('`to` is required. Could not infer from `authorizationList`.');\n });\n // Otherwise, we are sending a deployment transaction.\n return undefined;\n })();\n if (account?.type === 'json-rpc' || account === null) {\n let chainId;\n if (chain !== null) {\n chainId = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_6__.getAction)(client, _public_getChainId_js__WEBPACK_IMPORTED_MODULE_7__.getChainId, 'getChainId')({});\n (0,_utils_chain_assertCurrentChain_js__WEBPACK_IMPORTED_MODULE_8__.assertCurrentChain)({\n currentChainId: chainId,\n chain,\n });\n }\n const chainFormat = client.chain?.formatters?.transactionRequest?.format;\n const format = chainFormat || _utils_formatters_transactionRequest_js__WEBPACK_IMPORTED_MODULE_9__.formatTransactionRequest;\n const request = format({\n // Pick out extra data that might exist on the chain's transaction request type.\n ...(0,_utils_formatters_extract_js__WEBPACK_IMPORTED_MODULE_10__.extract)(rest, { format: chainFormat }),\n accessList,\n authorizationList,\n blobs,\n chainId,\n data,\n from: account?.address,\n gas,\n gasPrice,\n maxFeePerBlobGas,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n type,\n value,\n }, 'sendTransaction');\n const isWalletNamespaceSupported = supportsWalletNamespace.get(client.uid);\n const method = isWalletNamespaceSupported\n ? 'wallet_sendTransaction'\n : 'eth_sendTransaction';\n try {\n return await client.request({\n method,\n params: [request],\n }, { retryCount: 0 });\n }\n catch (e) {\n if (isWalletNamespaceSupported === false)\n throw e;\n const error = e;\n // If the transport does not support the method or input, attempt to use the\n // `wallet_sendTransaction` method.\n if (error.name === 'InvalidInputRpcError' ||\n error.name === 'InvalidParamsRpcError' ||\n error.name === 'MethodNotFoundRpcError' ||\n error.name === 'MethodNotSupportedRpcError') {\n return await client\n .request({\n method: 'wallet_sendTransaction',\n params: [request],\n }, { retryCount: 0 })\n .then((hash) => {\n supportsWalletNamespace.set(client.uid, true);\n return hash;\n })\n .catch((e) => {\n const walletNamespaceError = e;\n if (walletNamespaceError.name === 'MethodNotFoundRpcError' ||\n walletNamespaceError.name === 'MethodNotSupportedRpcError') {\n supportsWalletNamespace.set(client.uid, false);\n throw error;\n }\n throw walletNamespaceError;\n });\n }\n throw error;\n }\n }\n if (account?.type === 'local') {\n // Prepare the request for signing (assign appropriate fees, etc.)\n const request = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_6__.getAction)(client, _prepareTransactionRequest_js__WEBPACK_IMPORTED_MODULE_11__.prepareTransactionRequest, 'prepareTransactionRequest')({\n account,\n accessList,\n authorizationList,\n blobs,\n chain,\n data,\n gas,\n gasPrice,\n maxFeePerBlobGas,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n nonceManager: account.nonceManager,\n parameters: [..._prepareTransactionRequest_js__WEBPACK_IMPORTED_MODULE_11__.defaultParameters, 'sidecars'],\n type,\n value,\n ...rest,\n to,\n });\n const serializer = chain?.serializers?.transaction;\n const serializedTransaction = (await account.signTransaction(request, {\n serializer,\n }));\n return await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_6__.getAction)(client, _sendRawTransaction_js__WEBPACK_IMPORTED_MODULE_12__.sendRawTransaction, 'sendRawTransaction')({\n serializedTransaction,\n });\n }\n if (account?.type === 'smart')\n throw new _errors_account_js__WEBPACK_IMPORTED_MODULE_1__.AccountTypeNotSupportedError({\n metaMessages: [\n 'Consider using the `sendUserOperation` Action instead.',\n ],\n docsPath: '/docs/actions/bundler/sendUserOperation',\n type: 'smart',\n });\n throw new _errors_account_js__WEBPACK_IMPORTED_MODULE_1__.AccountTypeNotSupportedError({\n docsPath: '/docs/actions/wallet/sendTransaction',\n type: account?.type,\n });\n }\n catch (err) {\n if (err instanceof _errors_account_js__WEBPACK_IMPORTED_MODULE_1__.AccountTypeNotSupportedError)\n throw err;\n throw (0,_utils_errors_getTransactionError_js__WEBPACK_IMPORTED_MODULE_13__.getTransactionError)(err, {\n ...parameters,\n account,\n chain: parameters.chain || undefined,\n });\n }\n}\n//# sourceMappingURL=sendTransaction.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvc2VuZFRyYW5zYWN0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFxRTtBQUN5QjtBQUM3QztBQUN1RDtBQUMxQjtBQUNHO0FBQ3JCO0FBQzZCO0FBQ3BDO0FBQ1Q7QUFDOEI7QUFDckI7QUFDMEM7QUFDakM7QUFDOUQsb0NBQW9DLGlEQUFNO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHNGQUFzRjtBQUN0RjtBQUNBO0FBQ0EsWUFBWSw2QkFBNkI7QUFDekMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksa0JBQWtCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLFlBQVksMkJBQTJCO0FBQ3ZDLFlBQVksc0JBQXNCO0FBQ2xDLFlBQVksVUFBVTtBQUN0QixZQUFZLGtCQUFrQjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNPO0FBQ1AsWUFBWSx5TUFBeU07QUFDck47QUFDQSxrQkFBa0Isb0VBQW9CO0FBQ3RDO0FBQ0EsU0FBUztBQUNULCtCQUErQiw2RUFBWTtBQUMzQztBQUNBLFFBQVEsa0ZBQWE7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsZ0hBQTJCO0FBQ3hEO0FBQ0EsaUJBQWlCO0FBQ2pCLDhCQUE4QixzREFBUztBQUN2QyxpQkFBaUI7QUFDakI7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsOERBQVMsU0FBUyw2REFBVSxrQkFBa0I7QUFDOUUsZ0JBQWdCLHNGQUFrQjtBQUNsQztBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSwwQ0FBMEMsNkZBQXdCO0FBQ2xFO0FBQ0E7QUFDQSxtQkFBbUIsc0VBQU8sU0FBUyxxQkFBcUI7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsSUFBSSxlQUFlO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixJQUFJLGVBQWU7QUFDeEM7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLDhEQUFTLFNBQVMscUZBQXlCO0FBQzdFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLDZFQUFpQjtBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IseUJBQXlCLDhEQUFTLFNBQVMsdUVBQWtCO0FBQzdEO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxzQkFBc0IsNEVBQTRCO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2Isa0JBQWtCLDRFQUE0QjtBQUM5QztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSwyQkFBMkIsNEVBQTRCO0FBQ3ZEO0FBQ0EsY0FBYywwRkFBbUI7QUFDakM7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvc2VuZFRyYW5zYWN0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgQWNjb3VudE5vdEZvdW5kRXJyb3IsIEFjY291bnRUeXBlTm90U3VwcG9ydGVkRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2FjY291bnQuanMnO1xuaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2Jhc2UuanMnO1xuaW1wb3J0IHsgcmVjb3ZlckF1dGhvcml6YXRpb25BZGRyZXNzLCB9IGZyb20gJy4uLy4uL3V0aWxzL2F1dGhvcml6YXRpb24vcmVjb3ZlckF1dGhvcml6YXRpb25BZGRyZXNzLmpzJztcbmltcG9ydCB7IGFzc2VydEN1cnJlbnRDaGFpbiwgfSBmcm9tICcuLi8uLi91dGlscy9jaGFpbi9hc3NlcnRDdXJyZW50Q2hhaW4uanMnO1xuaW1wb3J0IHsgZ2V0VHJhbnNhY3Rpb25FcnJvciwgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcnMvZ2V0VHJhbnNhY3Rpb25FcnJvci5qcyc7XG5pbXBvcnQgeyBleHRyYWN0IH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybWF0dGVycy9leHRyYWN0LmpzJztcbmltcG9ydCB7IGZvcm1hdFRyYW5zYWN0aW9uUmVxdWVzdCwgfSBmcm9tICcuLi8uLi91dGlscy9mb3JtYXR0ZXJzL3RyYW5zYWN0aW9uUmVxdWVzdC5qcyc7XG5pbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgTHJ1TWFwIH0gZnJvbSAnLi4vLi4vdXRpbHMvbHJ1LmpzJztcbmltcG9ydCB7IGFzc2VydFJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vdXRpbHMvdHJhbnNhY3Rpb24vYXNzZXJ0UmVxdWVzdC5qcyc7XG5pbXBvcnQgeyBnZXRDaGFpbklkIH0gZnJvbSAnLi4vcHVibGljL2dldENoYWluSWQuanMnO1xuaW1wb3J0IHsgZGVmYXVsdFBhcmFtZXRlcnMsIHByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3QsIH0gZnJvbSAnLi9wcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0LmpzJztcbmltcG9ydCB7IHNlbmRSYXdUcmFuc2FjdGlvbiwgfSBmcm9tICcuL3NlbmRSYXdUcmFuc2FjdGlvbi5qcyc7XG5jb25zdCBzdXBwb3J0c1dhbGxldE5hbWVzcGFjZSA9IG5ldyBMcnVNYXAoMTI4KTtcbi8qKlxuICogQ3JlYXRlcywgc2lnbnMsIGFuZCBzZW5kcyBhIG5ldyB0cmFuc2FjdGlvbiB0byB0aGUgbmV0d29yay5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL2FjdGlvbnMvd2FsbGV0L3NlbmRUcmFuc2FjdGlvblxuICogLSBFeGFtcGxlczogaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9naXRodWIvd2V2bS92aWVtL3RyZWUvbWFpbi9leGFtcGxlcy90cmFuc2FjdGlvbnNfc2VuZGluZy10cmFuc2FjdGlvbnNcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczpcbiAqICAgLSBKU09OLVJQQyBBY2NvdW50czogW2BldGhfc2VuZFRyYW5zYWN0aW9uYF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL2FwaXMvanNvbi1ycGMvI2V0aF9zZW5kdHJhbnNhY3Rpb24pXG4gKiAgIC0gTG9jYWwgQWNjb3VudHM6IFtgZXRoX3NlbmRSYXdUcmFuc2FjdGlvbmBdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9hcGlzL2pzb24tcnBjLyNldGhfc2VuZHJhd3RyYW5zYWN0aW9uKVxuICpcbiAqIEBwYXJhbSBjbGllbnQgLSBDbGllbnQgdG8gdXNlXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBTZW5kVHJhbnNhY3Rpb25QYXJhbWV0ZXJzfVxuICogQHJldHVybnMgVGhlIFtUcmFuc2FjdGlvbl0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZ2xvc3NhcnkvdGVybXMjdHJhbnNhY3Rpb24pIGhhc2guIHtAbGluayBTZW5kVHJhbnNhY3Rpb25SZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGN1c3RvbSB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBzZW5kVHJhbnNhY3Rpb24gfSBmcm9tICd2aWVtL3dhbGxldCdcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVXYWxsZXRDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBjdXN0b20od2luZG93LmV0aGVyZXVtKSxcbiAqIH0pXG4gKiBjb25zdCBoYXNoID0gYXdhaXQgc2VuZFRyYW5zYWN0aW9uKGNsaWVudCwge1xuICogICBhY2NvdW50OiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJyxcbiAqICAgdG86ICcweDcwOTk3OTcwYzUxODEyZGMzYTAxMGM3ZDAxYjUwZTBkMTdkYzc5YzgnLFxuICogICB2YWx1ZTogMTAwMDAwMDAwMDAwMDAwMDAwMG4sXG4gKiB9KVxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBBY2NvdW50IEhvaXN0aW5nXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgcHJpdmF0ZUtleVRvQWNjb3VudCB9IGZyb20gJ3ZpZW0vYWNjb3VudHMnXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyBzZW5kVHJhbnNhY3Rpb24gfSBmcm9tICd2aWVtL3dhbGxldCdcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVXYWxsZXRDbGllbnQoe1xuICogICBhY2NvdW50OiBwcml2YXRlS2V5VG9BY2NvdW50KCcweOKApicpLFxuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICogY29uc3QgaGFzaCA9IGF3YWl0IHNlbmRUcmFuc2FjdGlvbihjbGllbnQsIHtcbiAqICAgdG86ICcweDcwOTk3OTcwYzUxODEyZGMzYTAxMGM3ZDAxYjUwZTBkMTdkYzc5YzgnLFxuICogICB2YWx1ZTogMTAwMDAwMDAwMDAwMDAwMDAwMG4sXG4gKiB9KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VuZFRyYW5zYWN0aW9uKGNsaWVudCwgcGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudF8gPSBjbGllbnQuYWNjb3VudCwgY2hhaW4gPSBjbGllbnQuY2hhaW4sIGFjY2Vzc0xpc3QsIGF1dGhvcml6YXRpb25MaXN0LCBibG9icywgZGF0YSwgZ2FzLCBnYXNQcmljZSwgbWF4RmVlUGVyQmxvYkdhcywgbWF4RmVlUGVyR2FzLCBtYXhQcmlvcml0eUZlZVBlckdhcywgbm9uY2UsIHR5cGUsIHZhbHVlLCAuLi5yZXN0IH0gPSBwYXJhbWV0ZXJzO1xuICAgIGlmICh0eXBlb2YgYWNjb3VudF8gPT09ICd1bmRlZmluZWQnKVxuICAgICAgICB0aHJvdyBuZXcgQWNjb3VudE5vdEZvdW5kRXJyb3Ioe1xuICAgICAgICAgICAgZG9jc1BhdGg6ICcvZG9jcy9hY3Rpb25zL3dhbGxldC9zZW5kVHJhbnNhY3Rpb24nLFxuICAgICAgICB9KTtcbiAgICBjb25zdCBhY2NvdW50ID0gYWNjb3VudF8gPyBwYXJzZUFjY291bnQoYWNjb3VudF8pIDogbnVsbDtcbiAgICB0cnkge1xuICAgICAgICBhc3NlcnRSZXF1ZXN0KHBhcmFtZXRlcnMpO1xuICAgICAgICBjb25zdCB0byA9IGF3YWl0IChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAvLyBJZiBgdG9gIGV4aXN0cyBvbiB0aGUgcGFyYW1ldGVycywgdXNlIHRoYXQuXG4gICAgICAgICAgICBpZiAocGFyYW1ldGVycy50bylcbiAgICAgICAgICAgICAgICByZXR1cm4gcGFyYW1ldGVycy50bztcbiAgICAgICAgICAgIC8vIElmIGB0b2AgaXMgbnVsbCwgd2UgYXJlIHNlbmRpbmcgYSBkZXBsb3ltZW50IHRyYW5zYWN0aW9uLlxuICAgICAgICAgICAgaWYgKHBhcmFtZXRlcnMudG8gPT09IG51bGwpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgIC8vIElmIG5vIGB0b2AgZXhpc3RzLCBhbmQgd2UgYXJlIHNlbmRpbmcgYSBFSVAtNzcwMiB0cmFuc2FjdGlvbiwgdXNlIHRoZVxuICAgICAgICAgICAgLy8gYWRkcmVzcyBvZiB0aGUgZmlyc3QgYXV0aG9yaXphdGlvbiBpbiB0aGUgbGlzdC5cbiAgICAgICAgICAgIGlmIChhdXRob3JpemF0aW9uTGlzdCAmJiBhdXRob3JpemF0aW9uTGlzdC5sZW5ndGggPiAwKVxuICAgICAgICAgICAgICAgIHJldHVybiBhd2FpdCByZWNvdmVyQXV0aG9yaXphdGlvbkFkZHJlc3Moe1xuICAgICAgICAgICAgICAgICAgICBhdXRob3JpemF0aW9uOiBhdXRob3JpemF0aW9uTGlzdFswXSxcbiAgICAgICAgICAgICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBCYXNlRXJyb3IoJ2B0b2AgaXMgcmVxdWlyZWQuIENvdWxkIG5vdCBpbmZlciBmcm9tIGBhdXRob3JpemF0aW9uTGlzdGAuJyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyBPdGhlcndpc2UsIHdlIGFyZSBzZW5kaW5nIGEgZGVwbG95bWVudCB0cmFuc2FjdGlvbi5cbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH0pKCk7XG4gICAgICAgIGlmIChhY2NvdW50Py50eXBlID09PSAnanNvbi1ycGMnIHx8IGFjY291bnQgPT09IG51bGwpIHtcbiAgICAgICAgICAgIGxldCBjaGFpbklkO1xuICAgICAgICAgICAgaWYgKGNoYWluICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgY2hhaW5JZCA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldENoYWluSWQsICdnZXRDaGFpbklkJykoe30pO1xuICAgICAgICAgICAgICAgIGFzc2VydEN1cnJlbnRDaGFpbih7XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRDaGFpbklkOiBjaGFpbklkLFxuICAgICAgICAgICAgICAgICAgICBjaGFpbixcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGNoYWluRm9ybWF0ID0gY2xpZW50LmNoYWluPy5mb3JtYXR0ZXJzPy50cmFuc2FjdGlvblJlcXVlc3Q/LmZvcm1hdDtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdCA9IGNoYWluRm9ybWF0IHx8IGZvcm1hdFRyYW5zYWN0aW9uUmVxdWVzdDtcbiAgICAgICAgICAgIGNvbnN0IHJlcXVlc3QgPSBmb3JtYXQoe1xuICAgICAgICAgICAgICAgIC8vIFBpY2sgb3V0IGV4dHJhIGRhdGEgdGhhdCBtaWdodCBleGlzdCBvbiB0aGUgY2hhaW4ncyB0cmFuc2FjdGlvbiByZXF1ZXN0IHR5cGUuXG4gICAgICAgICAgICAgICAgLi4uZXh0cmFjdChyZXN0LCB7IGZvcm1hdDogY2hhaW5Gb3JtYXQgfSksXG4gICAgICAgICAgICAgICAgYWNjZXNzTGlzdCxcbiAgICAgICAgICAgICAgICBhdXRob3JpemF0aW9uTGlzdCxcbiAgICAgICAgICAgICAgICBibG9icyxcbiAgICAgICAgICAgICAgICBjaGFpbklkLFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgZnJvbTogYWNjb3VudD8uYWRkcmVzcyxcbiAgICAgICAgICAgICAgICBnYXMsXG4gICAgICAgICAgICAgICAgZ2FzUHJpY2UsXG4gICAgICAgICAgICAgICAgbWF4RmVlUGVyQmxvYkdhcyxcbiAgICAgICAgICAgICAgICBtYXhGZWVQZXJHYXMsXG4gICAgICAgICAgICAgICAgbWF4UHJpb3JpdHlGZWVQZXJHYXMsXG4gICAgICAgICAgICAgICAgbm9uY2UsXG4gICAgICAgICAgICAgICAgdG8sXG4gICAgICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgIH0sICdzZW5kVHJhbnNhY3Rpb24nKTtcbiAgICAgICAgICAgIGNvbnN0IGlzV2FsbGV0TmFtZXNwYWNlU3VwcG9ydGVkID0gc3VwcG9ydHNXYWxsZXROYW1lc3BhY2UuZ2V0KGNsaWVudC51aWQpO1xuICAgICAgICAgICAgY29uc3QgbWV0aG9kID0gaXNXYWxsZXROYW1lc3BhY2VTdXBwb3J0ZWRcbiAgICAgICAgICAgICAgICA/ICd3YWxsZXRfc2VuZFRyYW5zYWN0aW9uJ1xuICAgICAgICAgICAgICAgIDogJ2V0aF9zZW5kVHJhbnNhY3Rpb24nO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXdhaXQgY2xpZW50LnJlcXVlc3Qoe1xuICAgICAgICAgICAgICAgICAgICBtZXRob2QsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogW3JlcXVlc3RdLFxuICAgICAgICAgICAgICAgIH0sIHsgcmV0cnlDb3VudDogMCB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzV2FsbGV0TmFtZXNwYWNlU3VwcG9ydGVkID09PSBmYWxzZSlcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvciA9IGU7XG4gICAgICAgICAgICAgICAgLy8gSWYgdGhlIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBtZXRob2Qgb3IgaW5wdXQsIGF0dGVtcHQgdG8gdXNlIHRoZVxuICAgICAgICAgICAgICAgIC8vIGB3YWxsZXRfc2VuZFRyYW5zYWN0aW9uYCBtZXRob2QuXG4gICAgICAgICAgICAgICAgaWYgKGVycm9yLm5hbWUgPT09ICdJbnZhbGlkSW5wdXRScGNFcnJvcicgfHxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3IubmFtZSA9PT0gJ0ludmFsaWRQYXJhbXNScGNFcnJvcicgfHxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3IubmFtZSA9PT0gJ01ldGhvZE5vdEZvdW5kUnBjRXJyb3InIHx8XG4gICAgICAgICAgICAgICAgICAgIGVycm9yLm5hbWUgPT09ICdNZXRob2ROb3RTdXBwb3J0ZWRScGNFcnJvcicpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGF3YWl0IGNsaWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlcXVlc3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnd2FsbGV0X3NlbmRUcmFuc2FjdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IFtyZXF1ZXN0XSxcbiAgICAgICAgICAgICAgICAgICAgfSwgeyByZXRyeUNvdW50OiAwIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoaGFzaCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydHNXYWxsZXROYW1lc3BhY2Uuc2V0KGNsaWVudC51aWQsIHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGhhc2g7XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHdhbGxldE5hbWVzcGFjZUVycm9yID0gZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh3YWxsZXROYW1lc3BhY2VFcnJvci5uYW1lID09PSAnTWV0aG9kTm90Rm91bmRScGNFcnJvcicgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YWxsZXROYW1lc3BhY2VFcnJvci5uYW1lID09PSAnTWV0aG9kTm90U3VwcG9ydGVkUnBjRXJyb3InKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydHNXYWxsZXROYW1lc3BhY2Uuc2V0KGNsaWVudC51aWQsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHdhbGxldE5hbWVzcGFjZUVycm9yO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGFjY291bnQ/LnR5cGUgPT09ICdsb2NhbCcpIHtcbiAgICAgICAgICAgIC8vIFByZXBhcmUgdGhlIHJlcXVlc3QgZm9yIHNpZ25pbmcgKGFzc2lnbiBhcHByb3ByaWF0ZSBmZWVzLCBldGMuKVxuICAgICAgICAgICAgY29uc3QgcmVxdWVzdCA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIHByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3QsICdwcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0Jykoe1xuICAgICAgICAgICAgICAgIGFjY291bnQsXG4gICAgICAgICAgICAgICAgYWNjZXNzTGlzdCxcbiAgICAgICAgICAgICAgICBhdXRob3JpemF0aW9uTGlzdCxcbiAgICAgICAgICAgICAgICBibG9icyxcbiAgICAgICAgICAgICAgICBjaGFpbixcbiAgICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICAgIGdhcyxcbiAgICAgICAgICAgICAgICBnYXNQcmljZSxcbiAgICAgICAgICAgICAgICBtYXhGZWVQZXJCbG9iR2FzLFxuICAgICAgICAgICAgICAgIG1heEZlZVBlckdhcyxcbiAgICAgICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhcyxcbiAgICAgICAgICAgICAgICBub25jZSxcbiAgICAgICAgICAgICAgICBub25jZU1hbmFnZXI6IGFjY291bnQubm9uY2VNYW5hZ2VyLFxuICAgICAgICAgICAgICAgIHBhcmFtZXRlcnM6IFsuLi5kZWZhdWx0UGFyYW1ldGVycywgJ3NpZGVjYXJzJ10sXG4gICAgICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAuLi5yZXN0LFxuICAgICAgICAgICAgICAgIHRvLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBzZXJpYWxpemVyID0gY2hhaW4/LnNlcmlhbGl6ZXJzPy50cmFuc2FjdGlvbjtcbiAgICAgICAgICAgIGNvbnN0IHNlcmlhbGl6ZWRUcmFuc2FjdGlvbiA9IChhd2FpdCBhY2NvdW50LnNpZ25UcmFuc2FjdGlvbihyZXF1ZXN0LCB7XG4gICAgICAgICAgICAgICAgc2VyaWFsaXplcixcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIHJldHVybiBhd2FpdCBnZXRBY3Rpb24oY2xpZW50LCBzZW5kUmF3VHJhbnNhY3Rpb24sICdzZW5kUmF3VHJhbnNhY3Rpb24nKSh7XG4gICAgICAgICAgICAgICAgc2VyaWFsaXplZFRyYW5zYWN0aW9uLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGFjY291bnQ/LnR5cGUgPT09ICdzbWFydCcpXG4gICAgICAgICAgICB0aHJvdyBuZXcgQWNjb3VudFR5cGVOb3RTdXBwb3J0ZWRFcnJvcih7XG4gICAgICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgICAgICdDb25zaWRlciB1c2luZyB0aGUgYHNlbmRVc2VyT3BlcmF0aW9uYCBBY3Rpb24gaW5zdGVhZC4nLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgZG9jc1BhdGg6ICcvZG9jcy9hY3Rpb25zL2J1bmRsZXIvc2VuZFVzZXJPcGVyYXRpb24nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzbWFydCcsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgdGhyb3cgbmV3IEFjY291bnRUeXBlTm90U3VwcG9ydGVkRXJyb3Ioe1xuICAgICAgICAgICAgZG9jc1BhdGg6ICcvZG9jcy9hY3Rpb25zL3dhbGxldC9zZW5kVHJhbnNhY3Rpb24nLFxuICAgICAgICAgICAgdHlwZTogYWNjb3VudD8udHlwZSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEFjY291bnRUeXBlTm90U3VwcG9ydGVkRXJyb3IpXG4gICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIHRocm93IGdldFRyYW5zYWN0aW9uRXJyb3IoZXJyLCB7XG4gICAgICAgICAgICAuLi5wYXJhbWV0ZXJzLFxuICAgICAgICAgICAgYWNjb3VudCxcbiAgICAgICAgICAgIGNoYWluOiBwYXJhbWV0ZXJzLmNoYWluIHx8IHVuZGVmaW5lZCxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c2VuZFRyYW5zYWN0aW9uLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendTransaction.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/waitForCallsStatus.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/_esm/actions/wallet/waitForCallsStatus.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WaitForCallsStatusTimeoutError: () => (/* binding */ WaitForCallsStatusTimeoutError),\n/* harmony export */ waitForCallsStatus: () => (/* binding */ waitForCallsStatus)\n/* harmony export */ });\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_calls_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../errors/calls.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/calls.js\");\n/* harmony import */ var _utils_getAction_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/getAction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\");\n/* harmony import */ var _utils_observe_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/observe.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\");\n/* harmony import */ var _utils_poll_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/poll.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\");\n/* harmony import */ var _utils_promise_withResolvers_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/promise/withResolvers.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/promise/withResolvers.js\");\n/* harmony import */ var _utils_promise_withRetry_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/promise/withRetry.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/promise/withRetry.js\");\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _getCallsStatus_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getCallsStatus.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/getCallsStatus.js\");\n\n\n\n\n\n\n\n\n\n/**\n * Waits for the status & receipts of a call bundle that was sent via `sendCalls`.\n *\n * - Docs: https://viem.sh/docs/actions/wallet/waitForCallsStatus\n * - JSON-RPC Methods: [`wallet_getCallsStatus`](https://eips.ethereum.org/EIPS/eip-5792)\n *\n * @param client - Client to use\n * @param parameters - {@link WaitForCallsStatusParameters}\n * @returns Status & receipts of the call bundle. {@link WaitForCallsStatusReturnType}\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { waitForCallsStatus } from 'viem/actions'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n *\n * const { receipts, status } = await waitForCallsStatus(client, { id: '0xdeadbeef' })\n */\nasync function waitForCallsStatus(client, parameters) {\n const { id, pollingInterval = client.pollingInterval, status = ({ statusCode }) => statusCode === 200 || statusCode >= 300, retryCount = 4, retryDelay = ({ count }) => ~~(1 << count) * 200, // exponential backoff\n timeout = 60_000, throwOnFailure = false, } = parameters;\n const observerId = (0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)(['waitForCallsStatus', client.uid, id]);\n const { promise, resolve, reject } = (0,_utils_promise_withResolvers_js__WEBPACK_IMPORTED_MODULE_1__.withResolvers)();\n let timer;\n const unobserve = (0,_utils_observe_js__WEBPACK_IMPORTED_MODULE_2__.observe)(observerId, { resolve, reject }, (emit) => {\n const unpoll = (0,_utils_poll_js__WEBPACK_IMPORTED_MODULE_3__.poll)(async () => {\n const done = (fn) => {\n clearTimeout(timer);\n unpoll();\n fn();\n unobserve();\n };\n try {\n const result = await (0,_utils_promise_withRetry_js__WEBPACK_IMPORTED_MODULE_4__.withRetry)(async () => {\n const result = await (0,_utils_getAction_js__WEBPACK_IMPORTED_MODULE_5__.getAction)(client, _getCallsStatus_js__WEBPACK_IMPORTED_MODULE_6__.getCallsStatus, 'getCallsStatus')({ id });\n if (throwOnFailure && result.status === 'failure')\n throw new _errors_calls_js__WEBPACK_IMPORTED_MODULE_7__.BundleFailedError(result);\n return result;\n }, {\n retryCount,\n delay: retryDelay,\n });\n if (!status(result))\n return;\n done(() => emit.resolve(result));\n }\n catch (error) {\n done(() => emit.reject(error));\n }\n }, {\n interval: pollingInterval,\n emitOnBegin: true,\n });\n return unpoll;\n });\n timer = timeout\n ? setTimeout(() => {\n unobserve();\n clearTimeout(timer);\n reject(new WaitForCallsStatusTimeoutError({ id }));\n }, timeout)\n : undefined;\n return await promise;\n}\nclass WaitForCallsStatusTimeoutError extends _errors_base_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor({ id }) {\n super(`Timed out while waiting for call bundle with id \"${id}\" to be confirmed.`, { name: 'WaitForCallsStatusTimeoutError' });\n }\n}\n//# sourceMappingURL=waitForCallsStatus.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vYWN0aW9ucy93YWxsZXQvd2FpdEZvckNhbGxzU3RhdHVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQWlEO0FBQ1M7QUFDTDtBQUNKO0FBQ047QUFDMEI7QUFDUDtBQUNUO0FBQ0M7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsbURBQW1EO0FBQ25EO0FBQ0E7QUFDQSxZQUFZLDZCQUE2QjtBQUN6QyxZQUFZLFVBQVU7QUFDdEIsWUFBWSxxQkFBcUI7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxXQUFXLG1CQUFtQixxQ0FBcUMsa0JBQWtCO0FBQ3JGO0FBQ087QUFDUCxZQUFZLDBEQUEwRCxZQUFZLDhFQUE4RSxPQUFPO0FBQ3ZLLGdEQUFnRDtBQUNoRCx1QkFBdUIsOERBQVM7QUFDaEMsWUFBWSwyQkFBMkIsRUFBRSw4RUFBYTtBQUN0RDtBQUNBLHNCQUFzQiwwREFBTyxlQUFlLGlCQUFpQjtBQUM3RCx1QkFBdUIsb0RBQUk7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsc0VBQVM7QUFDOUMseUNBQXlDLDhEQUFTLFNBQVMsOERBQWMsc0JBQXNCLElBQUk7QUFDbkc7QUFDQSxrQ0FBa0MsK0RBQWlCO0FBQ25EO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCxJQUFJO0FBQzVELFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTyw2Q0FBNkMsc0RBQVM7QUFDN0Qsa0JBQWtCLElBQUk7QUFDdEIsa0VBQWtFLEdBQUcsdUJBQXVCLHdDQUF3QztBQUNwSTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2FjdGlvbnMvd2FsbGV0L3dhaXRGb3JDYWxsc1N0YXR1cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYmFzZS5qcyc7XG5pbXBvcnQgeyBCdW5kbGVGYWlsZWRFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9jYWxscy5qcyc7XG5pbXBvcnQgeyBnZXRBY3Rpb24gfSBmcm9tICcuLi8uLi91dGlscy9nZXRBY3Rpb24uanMnO1xuaW1wb3J0IHsgb2JzZXJ2ZSB9IGZyb20gJy4uLy4uL3V0aWxzL29ic2VydmUuanMnO1xuaW1wb3J0IHsgcG9sbCB9IGZyb20gJy4uLy4uL3V0aWxzL3BvbGwuanMnO1xuaW1wb3J0IHsgd2l0aFJlc29sdmVycyB9IGZyb20gJy4uLy4uL3V0aWxzL3Byb21pc2Uvd2l0aFJlc29sdmVycy5qcyc7XG5pbXBvcnQgeyB3aXRoUmV0cnksIH0gZnJvbSAnLi4vLi4vdXRpbHMvcHJvbWlzZS93aXRoUmV0cnkuanMnO1xuaW1wb3J0IHsgc3RyaW5naWZ5IH0gZnJvbSAnLi4vLi4vdXRpbHMvc3RyaW5naWZ5LmpzJztcbmltcG9ydCB7IGdldENhbGxzU3RhdHVzLCB9IGZyb20gJy4vZ2V0Q2FsbHNTdGF0dXMuanMnO1xuLyoqXG4gKiBXYWl0cyBmb3IgdGhlIHN0YXR1cyAmIHJlY2VpcHRzIG9mIGEgY2FsbCBidW5kbGUgdGhhdCB3YXMgc2VudCB2aWEgYHNlbmRDYWxsc2AuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY3Rpb25zL3dhbGxldC93YWl0Rm9yQ2FsbHNTdGF0dXNcbiAqIC0gSlNPTi1SUEMgTWV0aG9kczogW2B3YWxsZXRfZ2V0Q2FsbHNTdGF0dXNgXShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTU3OTIpXG4gKlxuICogQHBhcmFtIGNsaWVudCAtIENsaWVudCB0byB1c2VcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIFdhaXRGb3JDYWxsc1N0YXR1c1BhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBTdGF0dXMgJiByZWNlaXB0cyBvZiB0aGUgY2FsbCBidW5kbGUuIHtAbGluayBXYWl0Rm9yQ2FsbHNTdGF0dXNSZXR1cm5UeXBlfVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVXYWxsZXRDbGllbnQsIGN1c3RvbSB9IGZyb20gJ3ZpZW0nXG4gKiBpbXBvcnQgeyBtYWlubmV0IH0gZnJvbSAndmllbS9jaGFpbnMnXG4gKiBpbXBvcnQgeyB3YWl0Rm9yQ2FsbHNTdGF0dXMgfSBmcm9tICd2aWVtL2FjdGlvbnMnXG4gKlxuICogY29uc3QgY2xpZW50ID0gY3JlYXRlV2FsbGV0Q2xpZW50KHtcbiAqICAgY2hhaW46IG1haW5uZXQsXG4gKiAgIHRyYW5zcG9ydDogY3VzdG9tKHdpbmRvdy5ldGhlcmV1bSksXG4gKiB9KVxuICpcbiAqIGNvbnN0IHsgcmVjZWlwdHMsIHN0YXR1cyB9ID0gYXdhaXQgd2FpdEZvckNhbGxzU3RhdHVzKGNsaWVudCwgeyBpZDogJzB4ZGVhZGJlZWYnIH0pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3YWl0Rm9yQ2FsbHNTdGF0dXMoY2xpZW50LCBwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBpZCwgcG9sbGluZ0ludGVydmFsID0gY2xpZW50LnBvbGxpbmdJbnRlcnZhbCwgc3RhdHVzID0gKHsgc3RhdHVzQ29kZSB9KSA9PiBzdGF0dXNDb2RlID09PSAyMDAgfHwgc3RhdHVzQ29kZSA+PSAzMDAsIHJldHJ5Q291bnQgPSA0LCByZXRyeURlbGF5ID0gKHsgY291bnQgfSkgPT4gfn4oMSA8PCBjb3VudCkgKiAyMDAsIC8vIGV4cG9uZW50aWFsIGJhY2tvZmZcbiAgICB0aW1lb3V0ID0gNjBfMDAwLCB0aHJvd09uRmFpbHVyZSA9IGZhbHNlLCB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBvYnNlcnZlcklkID0gc3RyaW5naWZ5KFsnd2FpdEZvckNhbGxzU3RhdHVzJywgY2xpZW50LnVpZCwgaWRdKTtcbiAgICBjb25zdCB7IHByb21pc2UsIHJlc29sdmUsIHJlamVjdCB9ID0gd2l0aFJlc29sdmVycygpO1xuICAgIGxldCB0aW1lcjtcbiAgICBjb25zdCB1bm9ic2VydmUgPSBvYnNlcnZlKG9ic2VydmVySWQsIHsgcmVzb2x2ZSwgcmVqZWN0IH0sIChlbWl0KSA9PiB7XG4gICAgICAgIGNvbnN0IHVucG9sbCA9IHBvbGwoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZG9uZSA9IChmbikgPT4ge1xuICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lcik7XG4gICAgICAgICAgICAgICAgdW5wb2xsKCk7XG4gICAgICAgICAgICAgICAgZm4oKTtcbiAgICAgICAgICAgICAgICB1bm9ic2VydmUoKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHdpdGhSZXRyeShhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGdldEFjdGlvbihjbGllbnQsIGdldENhbGxzU3RhdHVzLCAnZ2V0Q2FsbHNTdGF0dXMnKSh7IGlkIH0pO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhyb3dPbkZhaWx1cmUgJiYgcmVzdWx0LnN0YXR1cyA9PT0gJ2ZhaWx1cmUnKVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEJ1bmRsZUZhaWxlZEVycm9yKHJlc3VsdCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICAgICAgfSwge1xuICAgICAgICAgICAgICAgICAgICByZXRyeUNvdW50LFxuICAgICAgICAgICAgICAgICAgICBkZWxheTogcmV0cnlEZWxheSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAoIXN0YXR1cyhyZXN1bHQpKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgZG9uZSgoKSA9PiBlbWl0LnJlc29sdmUocmVzdWx0KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBkb25lKCgpID0+IGVtaXQucmVqZWN0KGVycm9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIHtcbiAgICAgICAgICAgIGludGVydmFsOiBwb2xsaW5nSW50ZXJ2YWwsXG4gICAgICAgICAgICBlbWl0T25CZWdpbjogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB1bnBvbGw7XG4gICAgfSk7XG4gICAgdGltZXIgPSB0aW1lb3V0XG4gICAgICAgID8gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB1bm9ic2VydmUoKTtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lcik7XG4gICAgICAgICAgICByZWplY3QobmV3IFdhaXRGb3JDYWxsc1N0YXR1c1RpbWVvdXRFcnJvcih7IGlkIH0pKTtcbiAgICAgICAgfSwgdGltZW91dClcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIGF3YWl0IHByb21pc2U7XG59XG5leHBvcnQgY2xhc3MgV2FpdEZvckNhbGxzU3RhdHVzVGltZW91dEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGlkIH0pIHtcbiAgICAgICAgc3VwZXIoYFRpbWVkIG91dCB3aGlsZSB3YWl0aW5nIGZvciBjYWxsIGJ1bmRsZSB3aXRoIGlkIFwiJHtpZH1cIiB0byBiZSBjb25maXJtZWQuYCwgeyBuYW1lOiAnV2FpdEZvckNhbGxzU3RhdHVzVGltZW91dEVycm9yJyB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD13YWl0Rm9yQ2FsbHNTdGF0dXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/waitForCallsStatus.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/clients/createPublicClient.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/clients/createPublicClient.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createPublicClient: () => (/* binding */ createPublicClient)\n/* harmony export */ });\n/* harmony import */ var _createClient_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createClient.js */ \"(app-pages-browser)/./node_modules/viem/_esm/clients/createClient.js\");\n/* harmony import */ var _decorators_public_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./decorators/public.js */ \"(app-pages-browser)/./node_modules/viem/_esm/clients/decorators/public.js\");\n\n\n/**\n * Creates a Public Client with a given [Transport](https://viem.sh/docs/clients/intro) configured for a [Chain](https://viem.sh/docs/clients/chains).\n *\n * - Docs: https://viem.sh/docs/clients/public\n *\n * A Public Client is an interface to \"public\" [JSON-RPC API](https://ethereum.org/en/developers/docs/apis/json-rpc/) methods such as retrieving block numbers, transactions, reading from smart contracts, etc through [Public Actions](/docs/actions/public/introduction).\n *\n * @param config - {@link PublicClientConfig}\n * @returns A Public Client. {@link PublicClient}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n */\nfunction createPublicClient(parameters) {\n const { key = 'public', name = 'Public Client' } = parameters;\n const client = (0,_createClient_js__WEBPACK_IMPORTED_MODULE_0__.createClient)({\n ...parameters,\n key,\n name,\n type: 'publicClient',\n });\n return client.extend(_decorators_public_js__WEBPACK_IMPORTED_MODULE_1__.publicActions);\n}\n//# sourceMappingURL=createPublicClient.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY2xpZW50cy9jcmVhdGVQdWJsaWNDbGllbnQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWtEO0FBQ0s7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEIsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QyxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDTztBQUNQLFlBQVkseUNBQXlDO0FBQ3JELG1CQUFtQiw4REFBWTtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCx5QkFBeUIsZ0VBQWE7QUFDdEM7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vY2xpZW50cy9jcmVhdGVQdWJsaWNDbGllbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ2xpZW50LCB9IGZyb20gJy4vY3JlYXRlQ2xpZW50LmpzJztcbmltcG9ydCB7IHB1YmxpY0FjdGlvbnMgfSBmcm9tICcuL2RlY29yYXRvcnMvcHVibGljLmpzJztcbi8qKlxuICogQ3JlYXRlcyBhIFB1YmxpYyBDbGllbnQgd2l0aCBhIGdpdmVuIFtUcmFuc3BvcnRdKGh0dHBzOi8vdmllbS5zaC9kb2NzL2NsaWVudHMvaW50cm8pIGNvbmZpZ3VyZWQgZm9yIGEgW0NoYWluXShodHRwczovL3ZpZW0uc2gvZG9jcy9jbGllbnRzL2NoYWlucykuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9jbGllbnRzL3B1YmxpY1xuICpcbiAqIEEgUHVibGljIENsaWVudCBpcyBhbiBpbnRlcmZhY2UgdG8gXCJwdWJsaWNcIiBbSlNPTi1SUEMgQVBJXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3MvYXBpcy9qc29uLXJwYy8pIG1ldGhvZHMgc3VjaCBhcyByZXRyaWV2aW5nIGJsb2NrIG51bWJlcnMsIHRyYW5zYWN0aW9ucywgcmVhZGluZyBmcm9tIHNtYXJ0IGNvbnRyYWN0cywgZXRjIHRocm91Z2ggW1B1YmxpYyBBY3Rpb25zXSgvZG9jcy9hY3Rpb25zL3B1YmxpYy9pbnRyb2R1Y3Rpb24pLlxuICpcbiAqIEBwYXJhbSBjb25maWcgLSB7QGxpbmsgUHVibGljQ2xpZW50Q29uZmlnfVxuICogQHJldHVybnMgQSBQdWJsaWMgQ2xpZW50LiB7QGxpbmsgUHVibGljQ2xpZW50fVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjcmVhdGVQdWJsaWNDbGllbnQsIGh0dHAgfSBmcm9tICd2aWVtJ1xuICogaW1wb3J0IHsgbWFpbm5ldCB9IGZyb20gJ3ZpZW0vY2hhaW5zJ1xuICpcbiAqIGNvbnN0IGNsaWVudCA9IGNyZWF0ZVB1YmxpY0NsaWVudCh7XG4gKiAgIGNoYWluOiBtYWlubmV0LFxuICogICB0cmFuc3BvcnQ6IGh0dHAoKSxcbiAqIH0pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQdWJsaWNDbGllbnQocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsga2V5ID0gJ3B1YmxpYycsIG5hbWUgPSAnUHVibGljIENsaWVudCcgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgY2xpZW50ID0gY3JlYXRlQ2xpZW50KHtcbiAgICAgICAgLi4ucGFyYW1ldGVycyxcbiAgICAgICAga2V5LFxuICAgICAgICBuYW1lLFxuICAgICAgICB0eXBlOiAncHVibGljQ2xpZW50JyxcbiAgICB9KTtcbiAgICByZXR1cm4gY2xpZW50LmV4dGVuZChwdWJsaWNBY3Rpb25zKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNyZWF0ZVB1YmxpY0NsaWVudC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/clients/createPublicClient.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/clients/decorators/public.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/clients/decorators/public.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ publicActions: () => (/* binding */ publicActions)\n/* harmony export */ });\n/* harmony import */ var _actions_ens_getEnsAddress_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../actions/ens/getEnsAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsAddress.js\");\n/* harmony import */ var _actions_ens_getEnsAvatar_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../actions/ens/getEnsAvatar.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsAvatar.js\");\n/* harmony import */ var _actions_ens_getEnsName_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../actions/ens/getEnsName.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsName.js\");\n/* harmony import */ var _actions_ens_getEnsResolver_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../actions/ens/getEnsResolver.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsResolver.js\");\n/* harmony import */ var _actions_ens_getEnsText_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../actions/ens/getEnsText.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/ens/getEnsText.js\");\n/* harmony import */ var _actions_public_call_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../actions/public/call.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/call.js\");\n/* harmony import */ var _actions_public_createAccessList_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../actions/public/createAccessList.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createAccessList.js\");\n/* harmony import */ var _actions_public_createBlockFilter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../actions/public/createBlockFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createBlockFilter.js\");\n/* harmony import */ var _actions_public_createContractEventFilter_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../actions/public/createContractEventFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createContractEventFilter.js\");\n/* harmony import */ var _actions_public_createEventFilter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../actions/public/createEventFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createEventFilter.js\");\n/* harmony import */ var _actions_public_createPendingTransactionFilter_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../actions/public/createPendingTransactionFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/createPendingTransactionFilter.js\");\n/* harmony import */ var _actions_public_estimateContractGas_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../actions/public/estimateContractGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateContractGas.js\");\n/* harmony import */ var _actions_public_estimateFeesPerGas_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../actions/public/estimateFeesPerGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateFeesPerGas.js\");\n/* harmony import */ var _actions_public_estimateGas_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../actions/public/estimateGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateGas.js\");\n/* harmony import */ var _actions_public_estimateMaxPriorityFeePerGas_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../actions/public/estimateMaxPriorityFeePerGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/estimateMaxPriorityFeePerGas.js\");\n/* harmony import */ var _actions_public_getBalance_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../actions/public/getBalance.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBalance.js\");\n/* harmony import */ var _actions_public_getBlobBaseFee_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../actions/public/getBlobBaseFee.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlobBaseFee.js\");\n/* harmony import */ var _actions_public_getBlock_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../actions/public/getBlock.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlock.js\");\n/* harmony import */ var _actions_public_getBlockNumber_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../actions/public/getBlockNumber.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockNumber.js\");\n/* harmony import */ var _actions_public_getBlockTransactionCount_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../actions/public/getBlockTransactionCount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getBlockTransactionCount.js\");\n/* harmony import */ var _actions_public_getChainId_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../actions/public/getChainId.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getChainId.js\");\n/* harmony import */ var _actions_public_getCode_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../actions/public/getCode.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getCode.js\");\n/* harmony import */ var _actions_public_getContractEvents_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../actions/public/getContractEvents.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getContractEvents.js\");\n/* harmony import */ var _actions_public_getEip712Domain_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../actions/public/getEip712Domain.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getEip712Domain.js\");\n/* harmony import */ var _actions_public_getFeeHistory_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../actions/public/getFeeHistory.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFeeHistory.js\");\n/* harmony import */ var _actions_public_getFilterChanges_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../actions/public/getFilterChanges.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterChanges.js\");\n/* harmony import */ var _actions_public_getFilterLogs_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../actions/public/getFilterLogs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getFilterLogs.js\");\n/* harmony import */ var _actions_public_getGasPrice_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../actions/public/getGasPrice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getGasPrice.js\");\n/* harmony import */ var _actions_public_getLogs_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../actions/public/getLogs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getLogs.js\");\n/* harmony import */ var _actions_public_getProof_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../actions/public/getProof.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getProof.js\");\n/* harmony import */ var _actions_public_getStorageAt_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../../actions/public/getStorageAt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getStorageAt.js\");\n/* harmony import */ var _actions_public_getTransaction_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ../../actions/public/getTransaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransaction.js\");\n/* harmony import */ var _actions_public_getTransactionConfirmations_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ../../actions/public/getTransactionConfirmations.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionConfirmations.js\");\n/* harmony import */ var _actions_public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ../../actions/public/getTransactionCount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionCount.js\");\n/* harmony import */ var _actions_public_getTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ../../actions/public/getTransactionReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionReceipt.js\");\n/* harmony import */ var _actions_public_multicall_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ../../actions/public/multicall.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/multicall.js\");\n/* harmony import */ var _actions_public_readContract_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ../../actions/public/readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n/* harmony import */ var _actions_public_simulateBlocks_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ../../actions/public/simulateBlocks.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateBlocks.js\");\n/* harmony import */ var _actions_public_simulateCalls_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ../../actions/public/simulateCalls.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateCalls.js\");\n/* harmony import */ var _actions_public_simulateContract_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ../../actions/public/simulateContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/simulateContract.js\");\n/* harmony import */ var _actions_public_uninstallFilter_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ../../actions/public/uninstallFilter.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/uninstallFilter.js\");\n/* harmony import */ var _actions_public_verifyHash_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ../../actions/public/verifyHash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyHash.js\");\n/* harmony import */ var _actions_public_verifyMessage_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ../../actions/public/verifyMessage.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyMessage.js\");\n/* harmony import */ var _actions_public_verifyTypedData_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ../../actions/public/verifyTypedData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/verifyTypedData.js\");\n/* harmony import */ var _actions_public_waitForTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ../../actions/public/waitForTransactionReceipt.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/waitForTransactionReceipt.js\");\n/* harmony import */ var _actions_public_watchBlockNumber_js__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(/*! ../../actions/public/watchBlockNumber.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchBlockNumber.js\");\n/* harmony import */ var _actions_public_watchBlocks_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(/*! ../../actions/public/watchBlocks.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchBlocks.js\");\n/* harmony import */ var _actions_public_watchContractEvent_js__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(/*! ../../actions/public/watchContractEvent.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchContractEvent.js\");\n/* harmony import */ var _actions_public_watchEvent_js__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(/*! ../../actions/public/watchEvent.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchEvent.js\");\n/* harmony import */ var _actions_public_watchPendingTransactions_js__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(/*! ../../actions/public/watchPendingTransactions.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/watchPendingTransactions.js\");\n/* harmony import */ var _actions_siwe_verifySiweMessage_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ../../actions/siwe/verifySiweMessage.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/siwe/verifySiweMessage.js\");\n/* harmony import */ var _actions_wallet_prepareTransactionRequest_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ../../actions/wallet/prepareTransactionRequest.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/prepareTransactionRequest.js\");\n/* harmony import */ var _actions_wallet_sendRawTransaction_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ../../actions/wallet/sendRawTransaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendRawTransaction.js\");\n/* harmony import */ var _actions_wallet_sendRawTransactionSync_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ../../actions/wallet/sendRawTransactionSync.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/wallet/sendRawTransactionSync.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction publicActions(client) {\n return {\n call: (args) => (0,_actions_public_call_js__WEBPACK_IMPORTED_MODULE_0__.call)(client, args),\n createAccessList: (args) => (0,_actions_public_createAccessList_js__WEBPACK_IMPORTED_MODULE_1__.createAccessList)(client, args),\n createBlockFilter: () => (0,_actions_public_createBlockFilter_js__WEBPACK_IMPORTED_MODULE_2__.createBlockFilter)(client),\n createContractEventFilter: (args) => (0,_actions_public_createContractEventFilter_js__WEBPACK_IMPORTED_MODULE_3__.createContractEventFilter)(client, args),\n createEventFilter: (args) => (0,_actions_public_createEventFilter_js__WEBPACK_IMPORTED_MODULE_4__.createEventFilter)(client, args),\n createPendingTransactionFilter: () => (0,_actions_public_createPendingTransactionFilter_js__WEBPACK_IMPORTED_MODULE_5__.createPendingTransactionFilter)(client),\n estimateContractGas: (args) => (0,_actions_public_estimateContractGas_js__WEBPACK_IMPORTED_MODULE_6__.estimateContractGas)(client, args),\n estimateGas: (args) => (0,_actions_public_estimateGas_js__WEBPACK_IMPORTED_MODULE_7__.estimateGas)(client, args),\n getBalance: (args) => (0,_actions_public_getBalance_js__WEBPACK_IMPORTED_MODULE_8__.getBalance)(client, args),\n getBlobBaseFee: () => (0,_actions_public_getBlobBaseFee_js__WEBPACK_IMPORTED_MODULE_9__.getBlobBaseFee)(client),\n getBlock: (args) => (0,_actions_public_getBlock_js__WEBPACK_IMPORTED_MODULE_10__.getBlock)(client, args),\n getBlockNumber: (args) => (0,_actions_public_getBlockNumber_js__WEBPACK_IMPORTED_MODULE_11__.getBlockNumber)(client, args),\n getBlockTransactionCount: (args) => (0,_actions_public_getBlockTransactionCount_js__WEBPACK_IMPORTED_MODULE_12__.getBlockTransactionCount)(client, args),\n getBytecode: (args) => (0,_actions_public_getCode_js__WEBPACK_IMPORTED_MODULE_13__.getCode)(client, args),\n getChainId: () => (0,_actions_public_getChainId_js__WEBPACK_IMPORTED_MODULE_14__.getChainId)(client),\n getCode: (args) => (0,_actions_public_getCode_js__WEBPACK_IMPORTED_MODULE_13__.getCode)(client, args),\n getContractEvents: (args) => (0,_actions_public_getContractEvents_js__WEBPACK_IMPORTED_MODULE_15__.getContractEvents)(client, args),\n getEip712Domain: (args) => (0,_actions_public_getEip712Domain_js__WEBPACK_IMPORTED_MODULE_16__.getEip712Domain)(client, args),\n getEnsAddress: (args) => (0,_actions_ens_getEnsAddress_js__WEBPACK_IMPORTED_MODULE_17__.getEnsAddress)(client, args),\n getEnsAvatar: (args) => (0,_actions_ens_getEnsAvatar_js__WEBPACK_IMPORTED_MODULE_18__.getEnsAvatar)(client, args),\n getEnsName: (args) => (0,_actions_ens_getEnsName_js__WEBPACK_IMPORTED_MODULE_19__.getEnsName)(client, args),\n getEnsResolver: (args) => (0,_actions_ens_getEnsResolver_js__WEBPACK_IMPORTED_MODULE_20__.getEnsResolver)(client, args),\n getEnsText: (args) => (0,_actions_ens_getEnsText_js__WEBPACK_IMPORTED_MODULE_21__.getEnsText)(client, args),\n getFeeHistory: (args) => (0,_actions_public_getFeeHistory_js__WEBPACK_IMPORTED_MODULE_22__.getFeeHistory)(client, args),\n estimateFeesPerGas: (args) => (0,_actions_public_estimateFeesPerGas_js__WEBPACK_IMPORTED_MODULE_23__.estimateFeesPerGas)(client, args),\n getFilterChanges: (args) => (0,_actions_public_getFilterChanges_js__WEBPACK_IMPORTED_MODULE_24__.getFilterChanges)(client, args),\n getFilterLogs: (args) => (0,_actions_public_getFilterLogs_js__WEBPACK_IMPORTED_MODULE_25__.getFilterLogs)(client, args),\n getGasPrice: () => (0,_actions_public_getGasPrice_js__WEBPACK_IMPORTED_MODULE_26__.getGasPrice)(client),\n getLogs: (args) => (0,_actions_public_getLogs_js__WEBPACK_IMPORTED_MODULE_27__.getLogs)(client, args),\n getProof: (args) => (0,_actions_public_getProof_js__WEBPACK_IMPORTED_MODULE_28__.getProof)(client, args),\n estimateMaxPriorityFeePerGas: (args) => (0,_actions_public_estimateMaxPriorityFeePerGas_js__WEBPACK_IMPORTED_MODULE_29__.estimateMaxPriorityFeePerGas)(client, args),\n getStorageAt: (args) => (0,_actions_public_getStorageAt_js__WEBPACK_IMPORTED_MODULE_30__.getStorageAt)(client, args),\n getTransaction: (args) => (0,_actions_public_getTransaction_js__WEBPACK_IMPORTED_MODULE_31__.getTransaction)(client, args),\n getTransactionConfirmations: (args) => (0,_actions_public_getTransactionConfirmations_js__WEBPACK_IMPORTED_MODULE_32__.getTransactionConfirmations)(client, args),\n getTransactionCount: (args) => (0,_actions_public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_33__.getTransactionCount)(client, args),\n getTransactionReceipt: (args) => (0,_actions_public_getTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_34__.getTransactionReceipt)(client, args),\n multicall: (args) => (0,_actions_public_multicall_js__WEBPACK_IMPORTED_MODULE_35__.multicall)(client, args),\n prepareTransactionRequest: (args) => (0,_actions_wallet_prepareTransactionRequest_js__WEBPACK_IMPORTED_MODULE_36__.prepareTransactionRequest)(client, args),\n readContract: (args) => (0,_actions_public_readContract_js__WEBPACK_IMPORTED_MODULE_37__.readContract)(client, args),\n sendRawTransaction: (args) => (0,_actions_wallet_sendRawTransaction_js__WEBPACK_IMPORTED_MODULE_38__.sendRawTransaction)(client, args),\n sendRawTransactionSync: (args) => (0,_actions_wallet_sendRawTransactionSync_js__WEBPACK_IMPORTED_MODULE_39__.sendRawTransactionSync)(client, args),\n simulate: (args) => (0,_actions_public_simulateBlocks_js__WEBPACK_IMPORTED_MODULE_40__.simulateBlocks)(client, args),\n simulateBlocks: (args) => (0,_actions_public_simulateBlocks_js__WEBPACK_IMPORTED_MODULE_40__.simulateBlocks)(client, args),\n simulateCalls: (args) => (0,_actions_public_simulateCalls_js__WEBPACK_IMPORTED_MODULE_41__.simulateCalls)(client, args),\n simulateContract: (args) => (0,_actions_public_simulateContract_js__WEBPACK_IMPORTED_MODULE_42__.simulateContract)(client, args),\n verifyHash: (args) => (0,_actions_public_verifyHash_js__WEBPACK_IMPORTED_MODULE_43__.verifyHash)(client, args),\n verifyMessage: (args) => (0,_actions_public_verifyMessage_js__WEBPACK_IMPORTED_MODULE_44__.verifyMessage)(client, args),\n verifySiweMessage: (args) => (0,_actions_siwe_verifySiweMessage_js__WEBPACK_IMPORTED_MODULE_45__.verifySiweMessage)(client, args),\n verifyTypedData: (args) => (0,_actions_public_verifyTypedData_js__WEBPACK_IMPORTED_MODULE_46__.verifyTypedData)(client, args),\n uninstallFilter: (args) => (0,_actions_public_uninstallFilter_js__WEBPACK_IMPORTED_MODULE_47__.uninstallFilter)(client, args),\n waitForTransactionReceipt: (args) => (0,_actions_public_waitForTransactionReceipt_js__WEBPACK_IMPORTED_MODULE_48__.waitForTransactionReceipt)(client, args),\n watchBlocks: (args) => (0,_actions_public_watchBlocks_js__WEBPACK_IMPORTED_MODULE_49__.watchBlocks)(client, args),\n watchBlockNumber: (args) => (0,_actions_public_watchBlockNumber_js__WEBPACK_IMPORTED_MODULE_50__.watchBlockNumber)(client, args),\n watchContractEvent: (args) => (0,_actions_public_watchContractEvent_js__WEBPACK_IMPORTED_MODULE_51__.watchContractEvent)(client, args),\n watchEvent: (args) => (0,_actions_public_watchEvent_js__WEBPACK_IMPORTED_MODULE_52__.watchEvent)(client, args),\n watchPendingTransactions: (args) => (0,_actions_public_watchPendingTransactions_js__WEBPACK_IMPORTED_MODULE_53__.watchPendingTransactions)(client, args),\n };\n}\n//# sourceMappingURL=public.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY2xpZW50cy9kZWNvcmF0b3JzL3B1YmxpYy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQW9FO0FBQ0Y7QUFDSjtBQUNRO0FBQ1I7QUFDVDtBQUN3QjtBQUNFO0FBQ2dCO0FBQ2hCO0FBQzBCO0FBQ3RCO0FBQ0Y7QUFDZDtBQUNrQztBQUNwQztBQUNRO0FBQ1o7QUFDWTtBQUNvQjtBQUM1QjtBQUNOO0FBQ29CO0FBQ0o7QUFDSjtBQUNNO0FBQ047QUFDSjtBQUNSO0FBQ0U7QUFDUTtBQUNJO0FBQzBCO0FBQ2hCO0FBQ0k7QUFDeEI7QUFDTTtBQUNJO0FBQ0Y7QUFDTTtBQUNGO0FBQ1Y7QUFDTTtBQUNJO0FBQ29CO0FBQ2xCO0FBQ1Y7QUFDYztBQUNoQjtBQUM0QjtBQUNoQjtBQUNrQjtBQUNkO0FBQ1E7QUFDbEY7QUFDUDtBQUNBLHdCQUF3Qiw2REFBSTtBQUM1QixvQ0FBb0MscUZBQWdCO0FBQ3BELGlDQUFpQyx1RkFBaUI7QUFDbEQsNkNBQTZDLHVHQUF5QjtBQUN0RSxxQ0FBcUMsdUZBQWlCO0FBQ3RELDhDQUE4QyxpSEFBOEI7QUFDNUUsdUNBQXVDLDJGQUFtQjtBQUMxRCwrQkFBK0IsMkVBQVc7QUFDMUMsOEJBQThCLHlFQUFVO0FBQ3hDLDhCQUE4QixpRkFBYztBQUM1Qyw0QkFBNEIsc0VBQVE7QUFDcEMsa0NBQWtDLGtGQUFjO0FBQ2hELDRDQUE0QyxzR0FBd0I7QUFDcEUsK0JBQStCLG9FQUFPO0FBQ3RDLDBCQUEwQiwwRUFBVTtBQUNwQywyQkFBMkIsb0VBQU87QUFDbEMscUNBQXFDLHdGQUFpQjtBQUN0RCxtQ0FBbUMsb0ZBQWU7QUFDbEQsaUNBQWlDLDZFQUFhO0FBQzlDLGdDQUFnQywyRUFBWTtBQUM1Qyw4QkFBOEIsdUVBQVU7QUFDeEMsa0NBQWtDLCtFQUFjO0FBQ2hELDhCQUE4Qix1RUFBVTtBQUN4QyxpQ0FBaUMsZ0ZBQWE7QUFDOUMsc0NBQXNDLDBGQUFrQjtBQUN4RCxvQ0FBb0Msc0ZBQWdCO0FBQ3BELGlDQUFpQyxnRkFBYTtBQUM5QywyQkFBMkIsNEVBQVc7QUFDdEMsMkJBQTJCLG9FQUFPO0FBQ2xDLDRCQUE0QixzRUFBUTtBQUNwQyxnREFBZ0QsOEdBQTRCO0FBQzVFLGdDQUFnQyw4RUFBWTtBQUM1QyxrQ0FBa0Msa0ZBQWM7QUFDaEQsK0NBQStDLDRHQUEyQjtBQUMxRSx1Q0FBdUMsNEZBQW1CO0FBQzFELHlDQUF5QyxnR0FBcUI7QUFDOUQsNkJBQTZCLHdFQUFTO0FBQ3RDLDZDQUE2Qyx3R0FBeUI7QUFDdEUsZ0NBQWdDLDhFQUFZO0FBQzVDLHNDQUFzQywwRkFBa0I7QUFDeEQsMENBQTBDLGtHQUFzQjtBQUNoRSw0QkFBNEIsa0ZBQWM7QUFDMUMsa0NBQWtDLGtGQUFjO0FBQ2hELGlDQUFpQyxnRkFBYTtBQUM5QyxvQ0FBb0Msc0ZBQWdCO0FBQ3BELDhCQUE4QiwwRUFBVTtBQUN4QyxpQ0FBaUMsZ0ZBQWE7QUFDOUMscUNBQXFDLHNGQUFpQjtBQUN0RCxtQ0FBbUMsb0ZBQWU7QUFDbEQsbUNBQW1DLG9GQUFlO0FBQ2xELDZDQUE2Qyx3R0FBeUI7QUFDdEUsK0JBQStCLDRFQUFXO0FBQzFDLG9DQUFvQyxzRkFBZ0I7QUFDcEQsc0NBQXNDLDBGQUFrQjtBQUN4RCw4QkFBOEIsMEVBQVU7QUFDeEMsNENBQTRDLHNHQUF3QjtBQUNwRTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2NsaWVudHMvZGVjb3JhdG9ycy9wdWJsaWMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0RW5zQWRkcmVzcywgfSBmcm9tICcuLi8uLi9hY3Rpb25zL2Vucy9nZXRFbnNBZGRyZXNzLmpzJztcbmltcG9ydCB7IGdldEVuc0F2YXRhciwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL2Vucy9nZXRFbnNBdmF0YXIuanMnO1xuaW1wb3J0IHsgZ2V0RW5zTmFtZSwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL2Vucy9nZXRFbnNOYW1lLmpzJztcbmltcG9ydCB7IGdldEVuc1Jlc29sdmVyLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvZW5zL2dldEVuc1Jlc29sdmVyLmpzJztcbmltcG9ydCB7IGdldEVuc1RleHQsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9lbnMvZ2V0RW5zVGV4dC5qcyc7XG5pbXBvcnQgeyBjYWxsLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2NhbGwuanMnO1xuaW1wb3J0IHsgY3JlYXRlQWNjZXNzTGlzdCwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9jcmVhdGVBY2Nlc3NMaXN0LmpzJztcbmltcG9ydCB7IGNyZWF0ZUJsb2NrRmlsdGVyLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2NyZWF0ZUJsb2NrRmlsdGVyLmpzJztcbmltcG9ydCB7IGNyZWF0ZUNvbnRyYWN0RXZlbnRGaWx0ZXIsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlci5qcyc7XG5pbXBvcnQgeyBjcmVhdGVFdmVudEZpbHRlciwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9jcmVhdGVFdmVudEZpbHRlci5qcyc7XG5pbXBvcnQgeyBjcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXIsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvY3JlYXRlUGVuZGluZ1RyYW5zYWN0aW9uRmlsdGVyLmpzJztcbmltcG9ydCB7IGVzdGltYXRlQ29udHJhY3RHYXMsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVDb250cmFjdEdhcy5qcyc7XG5pbXBvcnQgeyBlc3RpbWF0ZUZlZXNQZXJHYXMsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVGZWVzUGVyR2FzLmpzJztcbmltcG9ydCB7IGVzdGltYXRlR2FzLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2VzdGltYXRlR2FzLmpzJztcbmltcG9ydCB7IGVzdGltYXRlTWF4UHJpb3JpdHlGZWVQZXJHYXMsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZXN0aW1hdGVNYXhQcmlvcml0eUZlZVBlckdhcy5qcyc7XG5pbXBvcnQgeyBnZXRCYWxhbmNlLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldEJhbGFuY2UuanMnO1xuaW1wb3J0IHsgZ2V0QmxvYkJhc2VGZWUsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvYkJhc2VGZWUuanMnO1xuaW1wb3J0IHsgZ2V0QmxvY2ssIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2suanMnO1xuaW1wb3J0IHsgZ2V0QmxvY2tOdW1iZXIsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0QmxvY2tOdW1iZXIuanMnO1xuaW1wb3J0IHsgZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50LCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldEJsb2NrVHJhbnNhY3Rpb25Db3VudC5qcyc7XG5pbXBvcnQgeyBnZXRDaGFpbklkLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldENoYWluSWQuanMnO1xuaW1wb3J0IHsgZ2V0Q29kZSwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRDb2RlLmpzJztcbmltcG9ydCB7IGdldENvbnRyYWN0RXZlbnRzLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldENvbnRyYWN0RXZlbnRzLmpzJztcbmltcG9ydCB7IGdldEVpcDcxMkRvbWFpbiwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRFaXA3MTJEb21haW4uanMnO1xuaW1wb3J0IHsgZ2V0RmVlSGlzdG9yeSwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRGZWVIaXN0b3J5LmpzJztcbmltcG9ydCB7IGdldEZpbHRlckNoYW5nZXMsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0RmlsdGVyQ2hhbmdlcy5qcyc7XG5pbXBvcnQgeyBnZXRGaWx0ZXJMb2dzLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldEZpbHRlckxvZ3MuanMnO1xuaW1wb3J0IHsgZ2V0R2FzUHJpY2UsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0R2FzUHJpY2UuanMnO1xuaW1wb3J0IHsgZ2V0TG9ncywgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRMb2dzLmpzJztcbmltcG9ydCB7IGdldFByb29mLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldFByb29mLmpzJztcbmltcG9ydCB7IGdldFN0b3JhZ2VBdCwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9nZXRTdG9yYWdlQXQuanMnO1xuaW1wb3J0IHsgZ2V0VHJhbnNhY3Rpb24sIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvZ2V0VHJhbnNhY3Rpb24uanMnO1xuaW1wb3J0IHsgZ2V0VHJhbnNhY3Rpb25Db25maXJtYXRpb25zLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9ucy5qcyc7XG5pbXBvcnQgeyBnZXRUcmFuc2FjdGlvbkNvdW50LCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldFRyYW5zYWN0aW9uQ291bnQuanMnO1xuaW1wb3J0IHsgZ2V0VHJhbnNhY3Rpb25SZWNlaXB0LCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL2dldFRyYW5zYWN0aW9uUmVjZWlwdC5qcyc7XG5pbXBvcnQgeyBtdWx0aWNhbGwsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvbXVsdGljYWxsLmpzJztcbmltcG9ydCB7IHJlYWRDb250cmFjdCwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9yZWFkQ29udHJhY3QuanMnO1xuaW1wb3J0IHsgc2ltdWxhdGVCbG9ja3MsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvc2ltdWxhdGVCbG9ja3MuanMnO1xuaW1wb3J0IHsgc2ltdWxhdGVDYWxscywgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy9zaW11bGF0ZUNhbGxzLmpzJztcbmltcG9ydCB7IHNpbXVsYXRlQ29udHJhY3QsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvc2ltdWxhdGVDb250cmFjdC5qcyc7XG5pbXBvcnQgeyB1bmluc3RhbGxGaWx0ZXIsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvdW5pbnN0YWxsRmlsdGVyLmpzJztcbmltcG9ydCB7IHZlcmlmeUhhc2gsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9wdWJsaWMvdmVyaWZ5SGFzaC5qcyc7XG5pbXBvcnQgeyB2ZXJpZnlNZXNzYWdlLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL3ZlcmlmeU1lc3NhZ2UuanMnO1xuaW1wb3J0IHsgdmVyaWZ5VHlwZWREYXRhLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL3ZlcmlmeVR5cGVkRGF0YS5qcyc7XG5pbXBvcnQgeyB3YWl0Rm9yVHJhbnNhY3Rpb25SZWNlaXB0LCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL3dhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHQuanMnO1xuaW1wb3J0IHsgd2F0Y2hCbG9ja051bWJlciwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy93YXRjaEJsb2NrTnVtYmVyLmpzJztcbmltcG9ydCB7IHdhdGNoQmxvY2tzLCB9IGZyb20gJy4uLy4uL2FjdGlvbnMvcHVibGljL3dhdGNoQmxvY2tzLmpzJztcbmltcG9ydCB7IHdhdGNoQ29udHJhY3RFdmVudCwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy93YXRjaENvbnRyYWN0RXZlbnQuanMnO1xuaW1wb3J0IHsgd2F0Y2hFdmVudCwgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy93YXRjaEV2ZW50LmpzJztcbmltcG9ydCB7IHdhdGNoUGVuZGluZ1RyYW5zYWN0aW9ucywgfSBmcm9tICcuLi8uLi9hY3Rpb25zL3B1YmxpYy93YXRjaFBlbmRpbmdUcmFuc2FjdGlvbnMuanMnO1xuaW1wb3J0IHsgdmVyaWZ5U2l3ZU1lc3NhZ2UsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9zaXdlL3ZlcmlmeVNpd2VNZXNzYWdlLmpzJztcbmltcG9ydCB7IHByZXBhcmVUcmFuc2FjdGlvblJlcXVlc3QsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy93YWxsZXQvcHJlcGFyZVRyYW5zYWN0aW9uUmVxdWVzdC5qcyc7XG5pbXBvcnQgeyBzZW5kUmF3VHJhbnNhY3Rpb24sIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy93YWxsZXQvc2VuZFJhd1RyYW5zYWN0aW9uLmpzJztcbmltcG9ydCB7IHNlbmRSYXdUcmFuc2FjdGlvblN5bmMsIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy93YWxsZXQvc2VuZFJhd1RyYW5zYWN0aW9uU3luYy5qcyc7XG5leHBvcnQgZnVuY3Rpb24gcHVibGljQWN0aW9ucyhjbGllbnQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBjYWxsOiAoYXJncykgPT4gY2FsbChjbGllbnQsIGFyZ3MpLFxuICAgICAgICBjcmVhdGVBY2Nlc3NMaXN0OiAoYXJncykgPT4gY3JlYXRlQWNjZXNzTGlzdChjbGllbnQsIGFyZ3MpLFxuICAgICAgICBjcmVhdGVCbG9ja0ZpbHRlcjogKCkgPT4gY3JlYXRlQmxvY2tGaWx0ZXIoY2xpZW50KSxcbiAgICAgICAgY3JlYXRlQ29udHJhY3RFdmVudEZpbHRlcjogKGFyZ3MpID0+IGNyZWF0ZUNvbnRyYWN0RXZlbnRGaWx0ZXIoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgY3JlYXRlRXZlbnRGaWx0ZXI6IChhcmdzKSA9PiBjcmVhdGVFdmVudEZpbHRlcihjbGllbnQsIGFyZ3MpLFxuICAgICAgICBjcmVhdGVQZW5kaW5nVHJhbnNhY3Rpb25GaWx0ZXI6ICgpID0+IGNyZWF0ZVBlbmRpbmdUcmFuc2FjdGlvbkZpbHRlcihjbGllbnQpLFxuICAgICAgICBlc3RpbWF0ZUNvbnRyYWN0R2FzOiAoYXJncykgPT4gZXN0aW1hdGVDb250cmFjdEdhcyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICBlc3RpbWF0ZUdhczogKGFyZ3MpID0+IGVzdGltYXRlR2FzKGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEJhbGFuY2U6IChhcmdzKSA9PiBnZXRCYWxhbmNlKGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEJsb2JCYXNlRmVlOiAoKSA9PiBnZXRCbG9iQmFzZUZlZShjbGllbnQpLFxuICAgICAgICBnZXRCbG9jazogKGFyZ3MpID0+IGdldEJsb2NrKGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEJsb2NrTnVtYmVyOiAoYXJncykgPT4gZ2V0QmxvY2tOdW1iZXIoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50OiAoYXJncykgPT4gZ2V0QmxvY2tUcmFuc2FjdGlvbkNvdW50KGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEJ5dGVjb2RlOiAoYXJncykgPT4gZ2V0Q29kZShjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRDaGFpbklkOiAoKSA9PiBnZXRDaGFpbklkKGNsaWVudCksXG4gICAgICAgIGdldENvZGU6IChhcmdzKSA9PiBnZXRDb2RlKGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldENvbnRyYWN0RXZlbnRzOiAoYXJncykgPT4gZ2V0Q29udHJhY3RFdmVudHMoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgZ2V0RWlwNzEyRG9tYWluOiAoYXJncykgPT4gZ2V0RWlwNzEyRG9tYWluKGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEVuc0FkZHJlc3M6IChhcmdzKSA9PiBnZXRFbnNBZGRyZXNzKGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEVuc0F2YXRhcjogKGFyZ3MpID0+IGdldEVuc0F2YXRhcihjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRFbnNOYW1lOiAoYXJncykgPT4gZ2V0RW5zTmFtZShjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRFbnNSZXNvbHZlcjogKGFyZ3MpID0+IGdldEVuc1Jlc29sdmVyKGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEVuc1RleHQ6IChhcmdzKSA9PiBnZXRFbnNUZXh0KGNsaWVudCwgYXJncyksXG4gICAgICAgIGdldEZlZUhpc3Rvcnk6IChhcmdzKSA9PiBnZXRGZWVIaXN0b3J5KGNsaWVudCwgYXJncyksXG4gICAgICAgIGVzdGltYXRlRmVlc1BlckdhczogKGFyZ3MpID0+IGVzdGltYXRlRmVlc1BlckdhcyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRGaWx0ZXJDaGFuZ2VzOiAoYXJncykgPT4gZ2V0RmlsdGVyQ2hhbmdlcyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRGaWx0ZXJMb2dzOiAoYXJncykgPT4gZ2V0RmlsdGVyTG9ncyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRHYXNQcmljZTogKCkgPT4gZ2V0R2FzUHJpY2UoY2xpZW50KSxcbiAgICAgICAgZ2V0TG9nczogKGFyZ3MpID0+IGdldExvZ3MoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgZ2V0UHJvb2Y6IChhcmdzKSA9PiBnZXRQcm9vZihjbGllbnQsIGFyZ3MpLFxuICAgICAgICBlc3RpbWF0ZU1heFByaW9yaXR5RmVlUGVyR2FzOiAoYXJncykgPT4gZXN0aW1hdGVNYXhQcmlvcml0eUZlZVBlckdhcyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRTdG9yYWdlQXQ6IChhcmdzKSA9PiBnZXRTdG9yYWdlQXQoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgZ2V0VHJhbnNhY3Rpb246IChhcmdzKSA9PiBnZXRUcmFuc2FjdGlvbihjbGllbnQsIGFyZ3MpLFxuICAgICAgICBnZXRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvbnM6IChhcmdzKSA9PiBnZXRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvbnMoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgZ2V0VHJhbnNhY3Rpb25Db3VudDogKGFyZ3MpID0+IGdldFRyYW5zYWN0aW9uQ291bnQoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgZ2V0VHJhbnNhY3Rpb25SZWNlaXB0OiAoYXJncykgPT4gZ2V0VHJhbnNhY3Rpb25SZWNlaXB0KGNsaWVudCwgYXJncyksXG4gICAgICAgIG11bHRpY2FsbDogKGFyZ3MpID0+IG11bHRpY2FsbChjbGllbnQsIGFyZ3MpLFxuICAgICAgICBwcmVwYXJlVHJhbnNhY3Rpb25SZXF1ZXN0OiAoYXJncykgPT4gcHJlcGFyZVRyYW5zYWN0aW9uUmVxdWVzdChjbGllbnQsIGFyZ3MpLFxuICAgICAgICByZWFkQ29udHJhY3Q6IChhcmdzKSA9PiByZWFkQ29udHJhY3QoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgc2VuZFJhd1RyYW5zYWN0aW9uOiAoYXJncykgPT4gc2VuZFJhd1RyYW5zYWN0aW9uKGNsaWVudCwgYXJncyksXG4gICAgICAgIHNlbmRSYXdUcmFuc2FjdGlvblN5bmM6IChhcmdzKSA9PiBzZW5kUmF3VHJhbnNhY3Rpb25TeW5jKGNsaWVudCwgYXJncyksXG4gICAgICAgIHNpbXVsYXRlOiAoYXJncykgPT4gc2ltdWxhdGVCbG9ja3MoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgc2ltdWxhdGVCbG9ja3M6IChhcmdzKSA9PiBzaW11bGF0ZUJsb2NrcyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICBzaW11bGF0ZUNhbGxzOiAoYXJncykgPT4gc2ltdWxhdGVDYWxscyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICBzaW11bGF0ZUNvbnRyYWN0OiAoYXJncykgPT4gc2ltdWxhdGVDb250cmFjdChjbGllbnQsIGFyZ3MpLFxuICAgICAgICB2ZXJpZnlIYXNoOiAoYXJncykgPT4gdmVyaWZ5SGFzaChjbGllbnQsIGFyZ3MpLFxuICAgICAgICB2ZXJpZnlNZXNzYWdlOiAoYXJncykgPT4gdmVyaWZ5TWVzc2FnZShjbGllbnQsIGFyZ3MpLFxuICAgICAgICB2ZXJpZnlTaXdlTWVzc2FnZTogKGFyZ3MpID0+IHZlcmlmeVNpd2VNZXNzYWdlKGNsaWVudCwgYXJncyksXG4gICAgICAgIHZlcmlmeVR5cGVkRGF0YTogKGFyZ3MpID0+IHZlcmlmeVR5cGVkRGF0YShjbGllbnQsIGFyZ3MpLFxuICAgICAgICB1bmluc3RhbGxGaWx0ZXI6IChhcmdzKSA9PiB1bmluc3RhbGxGaWx0ZXIoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgd2FpdEZvclRyYW5zYWN0aW9uUmVjZWlwdDogKGFyZ3MpID0+IHdhaXRGb3JUcmFuc2FjdGlvblJlY2VpcHQoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgd2F0Y2hCbG9ja3M6IChhcmdzKSA9PiB3YXRjaEJsb2NrcyhjbGllbnQsIGFyZ3MpLFxuICAgICAgICB3YXRjaEJsb2NrTnVtYmVyOiAoYXJncykgPT4gd2F0Y2hCbG9ja051bWJlcihjbGllbnQsIGFyZ3MpLFxuICAgICAgICB3YXRjaENvbnRyYWN0RXZlbnQ6IChhcmdzKSA9PiB3YXRjaENvbnRyYWN0RXZlbnQoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgd2F0Y2hFdmVudDogKGFyZ3MpID0+IHdhdGNoRXZlbnQoY2xpZW50LCBhcmdzKSxcbiAgICAgICAgd2F0Y2hQZW5kaW5nVHJhbnNhY3Rpb25zOiAoYXJncykgPT4gd2F0Y2hQZW5kaW5nVHJhbnNhY3Rpb25zKGNsaWVudCwgYXJncyksXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXB1YmxpYy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/clients/decorators/public.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js": /*!**************************************************!*\ !*** ./node_modules/viem/_esm/constants/abis.js ***! \**************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addressResolverAbi: () => (/* binding */ addressResolverAbi),\n/* harmony export */ batchGatewayAbi: () => (/* binding */ batchGatewayAbi),\n/* harmony export */ erc1155Abi: () => (/* binding */ erc1155Abi),\n/* harmony export */ erc1271Abi: () => (/* binding */ erc1271Abi),\n/* harmony export */ erc20Abi: () => (/* binding */ erc20Abi),\n/* harmony export */ erc20Abi_bytes32: () => (/* binding */ erc20Abi_bytes32),\n/* harmony export */ erc4626Abi: () => (/* binding */ erc4626Abi),\n/* harmony export */ erc6492SignatureValidatorAbi: () => (/* binding */ erc6492SignatureValidatorAbi),\n/* harmony export */ erc721Abi: () => (/* binding */ erc721Abi),\n/* harmony export */ multicall3Abi: () => (/* binding */ multicall3Abi),\n/* harmony export */ textResolverAbi: () => (/* binding */ textResolverAbi),\n/* harmony export */ universalResolverResolveAbi: () => (/* binding */ universalResolverResolveAbi),\n/* harmony export */ universalResolverReverseAbi: () => (/* binding */ universalResolverReverseAbi)\n/* harmony export */ });\n/* [Multicall3](https://github.com/mds1/multicall) */\nconst multicall3Abi = [\n {\n inputs: [\n {\n components: [\n {\n name: 'target',\n type: 'address',\n },\n {\n name: 'allowFailure',\n type: 'bool',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n ],\n name: 'calls',\n type: 'tuple[]',\n },\n ],\n name: 'aggregate3',\n outputs: [\n {\n components: [\n {\n name: 'success',\n type: 'bool',\n },\n {\n name: 'returnData',\n type: 'bytes',\n },\n ],\n name: 'returnData',\n type: 'tuple[]',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'getCurrentBlockTimestamp',\n outputs: [\n {\n internalType: 'uint256',\n name: 'timestamp',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n];\nconst batchGatewayAbi = [\n {\n name: 'query',\n type: 'function',\n stateMutability: 'view',\n inputs: [\n {\n type: 'tuple[]',\n name: 'queries',\n components: [\n {\n type: 'address',\n name: 'sender',\n },\n {\n type: 'string[]',\n name: 'urls',\n },\n {\n type: 'bytes',\n name: 'data',\n },\n ],\n },\n ],\n outputs: [\n {\n type: 'bool[]',\n name: 'failures',\n },\n {\n type: 'bytes[]',\n name: 'responses',\n },\n ],\n },\n {\n name: 'HttpError',\n type: 'error',\n inputs: [\n {\n type: 'uint16',\n name: 'status',\n },\n {\n type: 'string',\n name: 'message',\n },\n ],\n },\n];\nconst universalResolverErrors = [\n {\n inputs: [\n {\n name: 'dns',\n type: 'bytes',\n },\n ],\n name: 'DNSDecodingFailed',\n type: 'error',\n },\n {\n inputs: [\n {\n name: 'ens',\n type: 'string',\n },\n ],\n name: 'DNSEncodingFailed',\n type: 'error',\n },\n {\n inputs: [],\n name: 'EmptyAddress',\n type: 'error',\n },\n {\n inputs: [\n {\n name: 'status',\n type: 'uint16',\n },\n {\n name: 'message',\n type: 'string',\n },\n ],\n name: 'HttpError',\n type: 'error',\n },\n {\n inputs: [],\n name: 'InvalidBatchGatewayResponse',\n type: 'error',\n },\n {\n inputs: [\n {\n name: 'errorData',\n type: 'bytes',\n },\n ],\n name: 'ResolverError',\n type: 'error',\n },\n {\n inputs: [\n {\n name: 'name',\n type: 'bytes',\n },\n {\n name: 'resolver',\n type: 'address',\n },\n ],\n name: 'ResolverNotContract',\n type: 'error',\n },\n {\n inputs: [\n {\n name: 'name',\n type: 'bytes',\n },\n ],\n name: 'ResolverNotFound',\n type: 'error',\n },\n {\n inputs: [\n {\n name: 'primary',\n type: 'string',\n },\n {\n name: 'primaryAddress',\n type: 'bytes',\n },\n ],\n name: 'ReverseAddressMismatch',\n type: 'error',\n },\n {\n inputs: [\n {\n internalType: 'bytes4',\n name: 'selector',\n type: 'bytes4',\n },\n ],\n name: 'UnsupportedResolverProfile',\n type: 'error',\n },\n];\nconst universalResolverResolveAbi = [\n ...universalResolverErrors,\n {\n name: 'resolveWithGateways',\n type: 'function',\n stateMutability: 'view',\n inputs: [\n { name: 'name', type: 'bytes' },\n { name: 'data', type: 'bytes' },\n { name: 'gateways', type: 'string[]' },\n ],\n outputs: [\n { name: '', type: 'bytes' },\n { name: 'address', type: 'address' },\n ],\n },\n];\nconst universalResolverReverseAbi = [\n ...universalResolverErrors,\n {\n name: 'reverseWithGateways',\n type: 'function',\n stateMutability: 'view',\n inputs: [\n { type: 'bytes', name: 'reverseName' },\n { type: 'uint256', name: 'coinType' },\n { type: 'string[]', name: 'gateways' },\n ],\n outputs: [\n { type: 'string', name: 'resolvedName' },\n { type: 'address', name: 'resolver' },\n { type: 'address', name: 'reverseResolver' },\n ],\n },\n];\nconst textResolverAbi = [\n {\n name: 'text',\n type: 'function',\n stateMutability: 'view',\n inputs: [\n { name: 'name', type: 'bytes32' },\n { name: 'key', type: 'string' },\n ],\n outputs: [{ name: '', type: 'string' }],\n },\n];\nconst addressResolverAbi = [\n {\n name: 'addr',\n type: 'function',\n stateMutability: 'view',\n inputs: [{ name: 'name', type: 'bytes32' }],\n outputs: [{ name: '', type: 'address' }],\n },\n {\n name: 'addr',\n type: 'function',\n stateMutability: 'view',\n inputs: [\n { name: 'name', type: 'bytes32' },\n { name: 'coinType', type: 'uint256' },\n ],\n outputs: [{ name: '', type: 'bytes' }],\n },\n];\n// ERC-1271\n// isValidSignature(bytes32 hash, bytes signature) → bytes4 magicValue\n/** @internal */\nconst erc1271Abi = [\n {\n name: 'isValidSignature',\n type: 'function',\n stateMutability: 'view',\n inputs: [\n { name: 'hash', type: 'bytes32' },\n { name: 'signature', type: 'bytes' },\n ],\n outputs: [{ name: '', type: 'bytes4' }],\n },\n];\n// ERC-6492 - universal deployless signature validator contract\n// constructor(address _signer, bytes32 _hash, bytes _signature) → bytes4 returnValue\n// returnValue is either 0x1 (valid) or 0x0 (invalid)\nconst erc6492SignatureValidatorAbi = [\n {\n inputs: [\n {\n name: '_signer',\n type: 'address',\n },\n {\n name: '_hash',\n type: 'bytes32',\n },\n {\n name: '_signature',\n type: 'bytes',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'constructor',\n },\n {\n inputs: [\n {\n name: '_signer',\n type: 'address',\n },\n {\n name: '_hash',\n type: 'bytes32',\n },\n {\n name: '_signature',\n type: 'bytes',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n name: 'isValidSig',\n },\n];\n/** [ERC-20 Token Standard](https://ethereum.org/en/developers/docs/standards/tokens/erc-20) */\nconst erc20Abi = [\n {\n type: 'event',\n name: 'Approval',\n inputs: [\n {\n indexed: true,\n name: 'owner',\n type: 'address',\n },\n {\n indexed: true,\n name: 'spender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'value',\n type: 'uint256',\n },\n ],\n },\n {\n type: 'event',\n name: 'Transfer',\n inputs: [\n {\n indexed: true,\n name: 'from',\n type: 'address',\n },\n {\n indexed: true,\n name: 'to',\n type: 'address',\n },\n {\n indexed: false,\n name: 'value',\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'allowance',\n stateMutability: 'view',\n inputs: [\n {\n name: 'owner',\n type: 'address',\n },\n {\n name: 'spender',\n type: 'address',\n },\n ],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'approve',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'spender',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n },\n {\n type: 'function',\n name: 'balanceOf',\n stateMutability: 'view',\n inputs: [\n {\n name: 'account',\n type: 'address',\n },\n ],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'decimals',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'uint8',\n },\n ],\n },\n {\n type: 'function',\n name: 'name',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'string',\n },\n ],\n },\n {\n type: 'function',\n name: 'symbol',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'string',\n },\n ],\n },\n {\n type: 'function',\n name: 'totalSupply',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'transfer',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'recipient',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n },\n {\n type: 'function',\n name: 'transferFrom',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'recipient',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n },\n];\n/**\n * [bytes32-flavored ERC-20](https://docs.makerdao.com/smart-contract-modules/mkr-module#4.-gotchas-potential-source-of-user-error)\n * for tokens (ie. Maker) that use bytes32 instead of string.\n */\nconst erc20Abi_bytes32 = [\n {\n type: 'event',\n name: 'Approval',\n inputs: [\n {\n indexed: true,\n name: 'owner',\n type: 'address',\n },\n {\n indexed: true,\n name: 'spender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'value',\n type: 'uint256',\n },\n ],\n },\n {\n type: 'event',\n name: 'Transfer',\n inputs: [\n {\n indexed: true,\n name: 'from',\n type: 'address',\n },\n {\n indexed: true,\n name: 'to',\n type: 'address',\n },\n {\n indexed: false,\n name: 'value',\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'allowance',\n stateMutability: 'view',\n inputs: [\n {\n name: 'owner',\n type: 'address',\n },\n {\n name: 'spender',\n type: 'address',\n },\n ],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'approve',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'spender',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n },\n {\n type: 'function',\n name: 'balanceOf',\n stateMutability: 'view',\n inputs: [\n {\n name: 'account',\n type: 'address',\n },\n ],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'decimals',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'uint8',\n },\n ],\n },\n {\n type: 'function',\n name: 'name',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'bytes32',\n },\n ],\n },\n {\n type: 'function',\n name: 'symbol',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'bytes32',\n },\n ],\n },\n {\n type: 'function',\n name: 'totalSupply',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'transfer',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'recipient',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n },\n {\n type: 'function',\n name: 'transferFrom',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'recipient',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n },\n];\n/** [ERC-1155 Multi Token Standard](https://ethereum.org/en/developers/docs/standards/tokens/erc-1155) */\nconst erc1155Abi = [\n {\n inputs: [\n {\n internalType: 'address',\n name: 'sender',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'balance',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'needed',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n name: 'ERC1155InsufficientBalance',\n type: 'error',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'approver',\n type: 'address',\n },\n ],\n name: 'ERC1155InvalidApprover',\n type: 'error',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: 'idsLength',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'valuesLength',\n type: 'uint256',\n },\n ],\n name: 'ERC1155InvalidArrayLength',\n type: 'error',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'operator',\n type: 'address',\n },\n ],\n name: 'ERC1155InvalidOperator',\n type: 'error',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'receiver',\n type: 'address',\n },\n ],\n name: 'ERC1155InvalidReceiver',\n type: 'error',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'sender',\n type: 'address',\n },\n ],\n name: 'ERC1155InvalidSender',\n type: 'error',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'operator',\n type: 'address',\n },\n {\n internalType: 'address',\n name: 'owner',\n type: 'address',\n },\n ],\n name: 'ERC1155MissingApprovalForAll',\n type: 'error',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'operator',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'bool',\n name: 'approved',\n type: 'bool',\n },\n ],\n name: 'ApprovalForAll',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'operator',\n type: 'address',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'from',\n type: 'address',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'to',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256[]',\n name: 'ids',\n type: 'uint256[]',\n },\n {\n indexed: false,\n internalType: 'uint256[]',\n name: 'values',\n type: 'uint256[]',\n },\n ],\n name: 'TransferBatch',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'address',\n name: 'operator',\n type: 'address',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'from',\n type: 'address',\n },\n {\n indexed: true,\n internalType: 'address',\n name: 'to',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'id',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'value',\n type: 'uint256',\n },\n ],\n name: 'TransferSingle',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: 'string',\n name: 'value',\n type: 'string',\n },\n {\n indexed: true,\n internalType: 'uint256',\n name: 'id',\n type: 'uint256',\n },\n ],\n name: 'URI',\n type: 'event',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'id',\n type: 'uint256',\n },\n ],\n name: 'balanceOf',\n outputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address[]',\n name: 'accounts',\n type: 'address[]',\n },\n {\n internalType: 'uint256[]',\n name: 'ids',\n type: 'uint256[]',\n },\n ],\n name: 'balanceOfBatch',\n outputs: [\n {\n internalType: 'uint256[]',\n name: '',\n type: 'uint256[]',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'account',\n type: 'address',\n },\n {\n internalType: 'address',\n name: 'operator',\n type: 'address',\n },\n ],\n name: 'isApprovedForAll',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'from',\n type: 'address',\n },\n {\n internalType: 'address',\n name: 'to',\n type: 'address',\n },\n {\n internalType: 'uint256[]',\n name: 'ids',\n type: 'uint256[]',\n },\n {\n internalType: 'uint256[]',\n name: 'values',\n type: 'uint256[]',\n },\n {\n internalType: 'bytes',\n name: 'data',\n type: 'bytes',\n },\n ],\n name: 'safeBatchTransferFrom',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'from',\n type: 'address',\n },\n {\n internalType: 'address',\n name: 'to',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'id',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'value',\n type: 'uint256',\n },\n {\n internalType: 'bytes',\n name: 'data',\n type: 'bytes',\n },\n ],\n name: 'safeTransferFrom',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'operator',\n type: 'address',\n },\n {\n internalType: 'bool',\n name: 'approved',\n type: 'bool',\n },\n ],\n name: 'setApprovalForAll',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'bytes4',\n name: 'interfaceId',\n type: 'bytes4',\n },\n ],\n name: 'supportsInterface',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n name: 'uri',\n outputs: [\n {\n internalType: 'string',\n name: '',\n type: 'string',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n];\n/** [ERC-721 Non-Fungible Token Standard](https://ethereum.org/en/developers/docs/standards/tokens/erc-721) */\nconst erc721Abi = [\n {\n type: 'event',\n name: 'Approval',\n inputs: [\n {\n indexed: true,\n name: 'owner',\n type: 'address',\n },\n {\n indexed: true,\n name: 'spender',\n type: 'address',\n },\n {\n indexed: true,\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n },\n {\n type: 'event',\n name: 'ApprovalForAll',\n inputs: [\n {\n indexed: true,\n name: 'owner',\n type: 'address',\n },\n {\n indexed: true,\n name: 'operator',\n type: 'address',\n },\n {\n indexed: false,\n name: 'approved',\n type: 'bool',\n },\n ],\n },\n {\n type: 'event',\n name: 'Transfer',\n inputs: [\n {\n indexed: true,\n name: 'from',\n type: 'address',\n },\n {\n indexed: true,\n name: 'to',\n type: 'address',\n },\n {\n indexed: true,\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'approve',\n stateMutability: 'payable',\n inputs: [\n {\n name: 'spender',\n type: 'address',\n },\n {\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n outputs: [],\n },\n {\n type: 'function',\n name: 'balanceOf',\n stateMutability: 'view',\n inputs: [\n {\n name: 'account',\n type: 'address',\n },\n ],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'getApproved',\n stateMutability: 'view',\n inputs: [\n {\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'address',\n },\n ],\n },\n {\n type: 'function',\n name: 'isApprovedForAll',\n stateMutability: 'view',\n inputs: [\n {\n name: 'owner',\n type: 'address',\n },\n {\n name: 'operator',\n type: 'address',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n },\n {\n type: 'function',\n name: 'name',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'string',\n },\n ],\n },\n {\n type: 'function',\n name: 'ownerOf',\n stateMutability: 'view',\n inputs: [\n {\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n name: 'owner',\n type: 'address',\n },\n ],\n },\n {\n type: 'function',\n name: 'safeTransferFrom',\n stateMutability: 'payable',\n inputs: [\n {\n name: 'from',\n type: 'address',\n },\n {\n name: 'to',\n type: 'address',\n },\n {\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n outputs: [],\n },\n {\n type: 'function',\n name: 'safeTransferFrom',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'from',\n type: 'address',\n },\n {\n name: 'to',\n type: 'address',\n },\n {\n name: 'id',\n type: 'uint256',\n },\n {\n name: 'data',\n type: 'bytes',\n },\n ],\n outputs: [],\n },\n {\n type: 'function',\n name: 'setApprovalForAll',\n stateMutability: 'nonpayable',\n inputs: [\n {\n name: 'operator',\n type: 'address',\n },\n {\n name: 'approved',\n type: 'bool',\n },\n ],\n outputs: [],\n },\n {\n type: 'function',\n name: 'symbol',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'string',\n },\n ],\n },\n {\n type: 'function',\n name: 'tokenByIndex',\n stateMutability: 'view',\n inputs: [\n {\n name: 'index',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'tokenByIndex',\n stateMutability: 'view',\n inputs: [\n {\n name: 'owner',\n type: 'address',\n },\n {\n name: 'index',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'tokenURI',\n stateMutability: 'view',\n inputs: [\n {\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n outputs: [\n {\n type: 'string',\n },\n ],\n },\n {\n type: 'function',\n name: 'totalSupply',\n stateMutability: 'view',\n inputs: [],\n outputs: [\n {\n type: 'uint256',\n },\n ],\n },\n {\n type: 'function',\n name: 'transferFrom',\n stateMutability: 'payable',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'recipient',\n type: 'address',\n },\n {\n name: 'tokenId',\n type: 'uint256',\n },\n ],\n outputs: [],\n },\n];\n/** [ERC-4626 Tokenized Vaults Standard](https://ethereum.org/en/developers/docs/standards/tokens/erc-4626) */\nconst erc4626Abi = [\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'owner',\n type: 'address',\n },\n {\n indexed: true,\n name: 'spender',\n type: 'address',\n },\n {\n indexed: false,\n name: 'value',\n type: 'uint256',\n },\n ],\n name: 'Approval',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: true,\n name: 'receiver',\n type: 'address',\n },\n {\n indexed: false,\n name: 'assets',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'shares',\n type: 'uint256',\n },\n ],\n name: 'Deposit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'from',\n type: 'address',\n },\n {\n indexed: true,\n name: 'to',\n type: 'address',\n },\n {\n indexed: false,\n name: 'value',\n type: 'uint256',\n },\n ],\n name: 'Transfer',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n name: 'sender',\n type: 'address',\n },\n {\n indexed: true,\n name: 'receiver',\n type: 'address',\n },\n {\n indexed: true,\n name: 'owner',\n type: 'address',\n },\n {\n indexed: false,\n name: 'assets',\n type: 'uint256',\n },\n {\n indexed: false,\n name: 'shares',\n type: 'uint256',\n },\n ],\n name: 'Withdraw',\n type: 'event',\n },\n {\n inputs: [\n {\n name: 'owner',\n type: 'address',\n },\n {\n name: 'spender',\n type: 'address',\n },\n ],\n name: 'allowance',\n outputs: [\n {\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'spender',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'approve',\n outputs: [\n {\n type: 'bool',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'asset',\n outputs: [\n {\n name: 'assetTokenAddress',\n type: 'address',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'account',\n type: 'address',\n },\n ],\n name: 'balanceOf',\n outputs: [\n {\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n name: 'convertToAssets',\n outputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n name: 'convertToShares',\n outputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n {\n name: 'receiver',\n type: 'address',\n },\n ],\n name: 'deposit',\n outputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'caller',\n type: 'address',\n },\n ],\n name: 'maxDeposit',\n outputs: [\n {\n name: 'maxAssets',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'caller',\n type: 'address',\n },\n ],\n name: 'maxMint',\n outputs: [\n {\n name: 'maxShares',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'owner',\n type: 'address',\n },\n ],\n name: 'maxRedeem',\n outputs: [\n {\n name: 'maxShares',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'owner',\n type: 'address',\n },\n ],\n name: 'maxWithdraw',\n outputs: [\n {\n name: 'maxAssets',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n {\n name: 'receiver',\n type: 'address',\n },\n ],\n name: 'mint',\n outputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n name: 'previewDeposit',\n outputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n name: 'previewMint',\n outputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n name: 'previewRedeem',\n outputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n name: 'previewWithdraw',\n outputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n {\n name: 'receiver',\n type: 'address',\n },\n {\n name: 'owner',\n type: 'address',\n },\n ],\n name: 'redeem',\n outputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'totalAssets',\n outputs: [\n {\n name: 'totalManagedAssets',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'totalSupply',\n outputs: [\n {\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'to',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'transfer',\n outputs: [\n {\n type: 'bool',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'from',\n type: 'address',\n },\n {\n name: 'to',\n type: 'address',\n },\n {\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'transferFrom',\n outputs: [\n {\n type: 'bool',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n name: 'assets',\n type: 'uint256',\n },\n {\n name: 'receiver',\n type: 'address',\n },\n {\n name: 'owner',\n type: 'address',\n },\n ],\n name: 'withdraw',\n outputs: [\n {\n name: 'shares',\n type: 'uint256',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n];\n//# sourceMappingURL=abis.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL2FiaXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsNkJBQTZCO0FBQzNDLGNBQWMsNkJBQTZCO0FBQzNDLGNBQWMsb0NBQW9DO0FBQ2xEO0FBQ0E7QUFDQSxjQUFjLHlCQUF5QjtBQUN2QyxjQUFjLGtDQUFrQztBQUNoRDtBQUNBLEtBQUs7QUFDTDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxvQ0FBb0M7QUFDbEQsY0FBYyxtQ0FBbUM7QUFDakQsY0FBYyxvQ0FBb0M7QUFDbEQ7QUFDQTtBQUNBLGNBQWMsc0NBQXNDO0FBQ3BELGNBQWMsbUNBQW1DO0FBQ2pELGNBQWMsMENBQTBDO0FBQ3hEO0FBQ0EsS0FBSztBQUNMO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYywrQkFBK0I7QUFDN0MsY0FBYyw2QkFBNkI7QUFDM0M7QUFDQSxvQkFBb0IsMEJBQTBCO0FBQzlDLEtBQUs7QUFDTDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsK0JBQStCO0FBQ2xELG9CQUFvQiwyQkFBMkI7QUFDL0MsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLCtCQUErQjtBQUM3QyxjQUFjLG1DQUFtQztBQUNqRDtBQUNBLG9CQUFvQix5QkFBeUI7QUFDN0MsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYywrQkFBK0I7QUFDN0MsY0FBYyxrQ0FBa0M7QUFDaEQ7QUFDQSxvQkFBb0IsMEJBQTBCO0FBQzlDLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL2FiaXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogW011bHRpY2FsbDNdKGh0dHBzOi8vZ2l0aHViLmNvbS9tZHMxL211bHRpY2FsbCkgKi9cbmV4cG9ydCBjb25zdCBtdWx0aWNhbGwzQWJpID0gW1xuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50czogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndGFyZ2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2FsbG93RmFpbHVyZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdjYWxsRGF0YScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgbmFtZTogJ2NhbGxzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnYWdncmVnYXRlMycsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdzdWNjZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdib29sJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3JldHVybkRhdGEnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXR1cm5EYXRhJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndHVwbGVbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgbmFtZTogJ2dldEN1cnJlbnRCbG9ja1RpbWVzdGFtcCcsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndGltZXN0YW1wJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuXTtcbmV4cG9ydCBjb25zdCBiYXRjaEdhdGV3YXlBYmkgPSBbXG4gICAge1xuICAgICAgICBuYW1lOiAncXVlcnknLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3R1cGxlW10nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdxdWVyaWVzJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nW10nLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3VybHMnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2RhdGEnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2xbXScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2ZhaWx1cmVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzW10nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXNwb25zZXMnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbmFtZTogJ0h0dHBFcnJvcicsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzdGF0dXMnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnbWVzc2FnZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG5dO1xuY29uc3QgdW5pdmVyc2FsUmVzb2x2ZXJFcnJvcnMgPSBbXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnZG5zJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0ROU0RlY29kaW5nRmFpbGVkJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2VucycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRE5TRW5jb2RpbmdGYWlsZWQnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAnRW1wdHlBZGRyZXNzJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3N0YXR1cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQxNicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdtZXNzYWdlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdIdHRwRXJyb3InLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAnSW52YWxpZEJhdGNoR2F0ZXdheVJlc3BvbnNlJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Vycm9yRGF0YScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdSZXNvbHZlckVycm9yJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdyZXNvbHZlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1Jlc29sdmVyTm90Q29udHJhY3QnLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdSZXNvbHZlck5vdEZvdW5kJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAncHJpbWFyeUFkZHJlc3MnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnUmV2ZXJzZUFkZHJlc3NNaXNtYXRjaCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzNCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbGVjdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXM0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdVbnN1cHBvcnRlZFJlc29sdmVyUHJvZmlsZScsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbl07XG5leHBvcnQgY29uc3QgdW5pdmVyc2FsUmVzb2x2ZXJSZXNvbHZlQWJpID0gW1xuICAgIC4uLnVuaXZlcnNhbFJlc29sdmVyRXJyb3JzLFxuICAgIHtcbiAgICAgICAgbmFtZTogJ3Jlc29sdmVXaXRoR2F0ZXdheXMnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ2J5dGVzJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnZGF0YScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2dhdGV3YXlzJywgdHlwZTogJ3N0cmluZ1tdJyB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7IG5hbWU6ICcnLCB0eXBlOiAnYnl0ZXMnIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICdhZGRyZXNzJywgdHlwZTogJ2FkZHJlc3MnIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbl07XG5leHBvcnQgY29uc3QgdW5pdmVyc2FsUmVzb2x2ZXJSZXZlcnNlQWJpID0gW1xuICAgIC4uLnVuaXZlcnNhbFJlc29sdmVyRXJyb3JzLFxuICAgIHtcbiAgICAgICAgbmFtZTogJ3JldmVyc2VXaXRoR2F0ZXdheXMnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7IHR5cGU6ICdieXRlcycsIG5hbWU6ICdyZXZlcnNlTmFtZScgfSxcbiAgICAgICAgICAgIHsgdHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAnY29pblR5cGUnIH0sXG4gICAgICAgICAgICB7IHR5cGU6ICdzdHJpbmdbXScsIG5hbWU6ICdnYXRld2F5cycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAgeyB0eXBlOiAnc3RyaW5nJywgbmFtZTogJ3Jlc29sdmVkTmFtZScgfSxcbiAgICAgICAgICAgIHsgdHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAncmVzb2x2ZXInIH0sXG4gICAgICAgICAgICB7IHR5cGU6ICdhZGRyZXNzJywgbmFtZTogJ3JldmVyc2VSZXNvbHZlcicgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuXTtcbmV4cG9ydCBjb25zdCB0ZXh0UmVzb2x2ZXJBYmkgPSBbXG4gICAge1xuICAgICAgICBuYW1lOiAndGV4dCcsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2tleScsIHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnc3RyaW5nJyB9XSxcbiAgICB9LFxuXTtcbmV4cG9ydCBjb25zdCBhZGRyZXNzUmVzb2x2ZXJBYmkgPSBbXG4gICAge1xuICAgICAgICBuYW1lOiAnYWRkcicsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFt7IG5hbWU6ICduYW1lJywgdHlwZTogJ2J5dGVzMzInIH1dLFxuICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ2FkZHJlc3MnIH1dLFxuICAgIH0sXG4gICAge1xuICAgICAgICBuYW1lOiAnYWRkcicsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2NvaW5UeXBlJywgdHlwZTogJ3VpbnQyNTYnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgIH0sXG5dO1xuLy8gRVJDLTEyNzFcbi8vIGlzVmFsaWRTaWduYXR1cmUoYnl0ZXMzMiBoYXNoLCBieXRlcyBzaWduYXR1cmUpIOKGkiBieXRlczQgbWFnaWNWYWx1ZVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGNvbnN0IGVyYzEyNzFBYmkgPSBbXG4gICAge1xuICAgICAgICBuYW1lOiAnaXNWYWxpZFNpZ25hdHVyZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2hhc2gnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ3NpZ25hdHVyZScsIHR5cGU6ICdieXRlcycgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW3sgbmFtZTogJycsIHR5cGU6ICdieXRlczQnIH1dLFxuICAgIH0sXG5dO1xuLy8gRVJDLTY0OTIgLSB1bml2ZXJzYWwgZGVwbG95bGVzcyBzaWduYXR1cmUgdmFsaWRhdG9yIGNvbnRyYWN0XG4vLyBjb25zdHJ1Y3RvcihhZGRyZXNzIF9zaWduZXIsIGJ5dGVzMzIgX2hhc2gsIGJ5dGVzIF9zaWduYXR1cmUpIOKGkiBieXRlczQgcmV0dXJuVmFsdWVcbi8vIHJldHVyblZhbHVlIGlzIGVpdGhlciAweDEgKHZhbGlkKSBvciAweDAgKGludmFsaWQpXG5leHBvcnQgY29uc3QgZXJjNjQ5MlNpZ25hdHVyZVZhbGlkYXRvckFiaSA9IFtcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdfc2lnbmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdfaGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnX3NpZ25hdHVyZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnY29uc3RydWN0b3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnX3NpZ25lcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnX2hhc2gnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlczMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ19zaWduYXR1cmUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdieXRlcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2wnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdpc1ZhbGlkU2lnJyxcbiAgICB9LFxuXTtcbi8qKiBbRVJDLTIwIFRva2VuIFN0YW5kYXJkXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3Mvc3RhbmRhcmRzL3Rva2Vucy9lcmMtMjApICovXG5leHBvcnQgY29uc3QgZXJjMjBBYmkgPSBbXG4gICAge1xuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgICAgICBuYW1lOiAnQXBwcm92YWwnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdvd25lcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd2YWx1ZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICAgICAgbmFtZTogJ1RyYW5zZmVyJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZnJvbScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0bycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndmFsdWUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdhbGxvd2FuY2UnLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2FwcHJvdmUnLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Ftb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdib29sJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdiYWxhbmNlT2YnLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnZGVjaW1hbHMnLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50OCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnc3ltYm9sJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICd0b3RhbFN1cHBseScsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ3RyYW5zZmVyJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdyZWNpcGllbnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Ftb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdib29sJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICd0cmFuc2ZlckZyb20nLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbmRlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVjaXBpZW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG5dO1xuLyoqXG4gKiBbYnl0ZXMzMi1mbGF2b3JlZCBFUkMtMjBdKGh0dHBzOi8vZG9jcy5tYWtlcmRhby5jb20vc21hcnQtY29udHJhY3QtbW9kdWxlcy9ta3ItbW9kdWxlIzQuLWdvdGNoYXMtcG90ZW50aWFsLXNvdXJjZS1vZi11c2VyLWVycm9yKVxuICogZm9yIHRva2VucyAoaWUuIE1ha2VyKSB0aGF0IHVzZSBieXRlczMyIGluc3RlYWQgb2Ygc3RyaW5nLlxuICovXG5leHBvcnQgY29uc3QgZXJjMjBBYmlfYnl0ZXMzMiA9IFtcbiAgICB7XG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgICAgIG5hbWU6ICdBcHByb3ZhbCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgICAgICBuYW1lOiAnVHJhbnNmZXInLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdmcm9tJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd2YWx1ZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2FsbG93YW5jZScsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3duZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnYXBwcm92ZScsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc3BlbmRlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnYW1vdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2wnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2JhbGFuY2VPZicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdkZWNpbWFscycsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQ4JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnc3ltYm9sJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAndG90YWxTdXBwbHknLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICd0cmFuc2ZlcicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVjaXBpZW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAndHJhbnNmZXJGcm9tJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3JlY2lwaWVudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnYW1vdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2wnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuXTtcbi8qKiBbRVJDLTExNTUgTXVsdGkgVG9rZW4gU3RhbmRhcmRdKGh0dHBzOi8vZXRoZXJldW0ub3JnL2VuL2RldmVsb3BlcnMvZG9jcy9zdGFuZGFyZHMvdG9rZW5zL2VyYy0xMTU1KSAqL1xuZXhwb3J0IGNvbnN0IGVyYzExNTVBYmkgPSBbXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdiYWxhbmNlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICduZWVkZWQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3Rva2VuSWQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdFUkMxMTU1SW5zdWZmaWNpZW50QmFsYW5jZScsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhcHByb3ZlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0VSQzExNTVJbnZhbGlkQXBwcm92ZXInLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnaWRzTGVuZ3RoJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd2YWx1ZXNMZW5ndGgnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdFUkMxMTU1SW52YWxpZEFycmF5TGVuZ3RoJyxcbiAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ29wZXJhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRVJDMTE1NUludmFsaWRPcGVyYXRvcicsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdyZWNlaXZlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ0VSQzExNTVJbnZhbGlkUmVjZWl2ZXInLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2VuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRVJDMTE1NUludmFsaWRTZW5kZXInLFxuICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BlcmF0b3InLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRVJDMTE1NU1pc3NpbmdBcHByb3ZhbEZvckFsbCcsXG4gICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BlcmF0b3InLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYm9vbCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FwcHJvdmVkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnQXBwcm92YWxGb3JBbGwnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdvcGVyYXRvcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdmcm9tJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2lkcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3ZhbHVlcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnVHJhbnNmZXJCYXRjaCcsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ29wZXJhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zyb20nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndG8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2lkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd2YWx1ZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1RyYW5zZmVyU2luZ2xlJyxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgYW5vbnltb3VzOiBmYWxzZSxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAndmFsdWUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ1VSSScsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2JhbGFuY2VPZicsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzc1tdJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzW10nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2W10nLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdpZHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2W10nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ2JhbGFuY2VPZkJhdGNoJyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICAgICAgbmFtZTogJycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ29wZXJhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnaXNBcHByb3ZlZEZvckFsbCcsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdib29sJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zyb20nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2lkcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3ZhbHVlcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTZbXScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZGF0YScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdzYWZlQmF0Y2hUcmFuc2ZlckZyb20nLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdmcm9tJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICd0bycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnaWQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnZGF0YScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdzYWZlVHJhbnNmZXJGcm9tJyxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BlcmF0b3InLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAnYm9vbCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FwcHJvdmVkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnc2V0QXBwcm92YWxGb3JBbGwnLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGludGVybmFsVHlwZTogJ2J5dGVzNCcsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2ludGVyZmFjZUlkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXM0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdzdXBwb3J0c0ludGVyZmFjZScsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdib29sJyxcbiAgICAgICAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxUeXBlOiAndWludDI1NicsXG4gICAgICAgICAgICAgICAgbmFtZTogJycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3VyaScsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbnRlcm5hbFR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgIG5hbWU6ICcnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbl07XG4vKiogW0VSQy03MjEgTm9uLUZ1bmdpYmxlIFRva2VuIFN0YW5kYXJkXShodHRwczovL2V0aGVyZXVtLm9yZy9lbi9kZXZlbG9wZXJzL2RvY3Mvc3RhbmRhcmRzL3Rva2Vucy9lcmMtNzIxKSAqL1xuZXhwb3J0IGNvbnN0IGVyYzcyMUFiaSA9IFtcbiAgICB7XG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgICAgIG5hbWU6ICdBcHByb3ZhbCcsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndG9rZW5JZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICAgICAgbmFtZTogJ0FwcHJvdmFsRm9yQWxsJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3duZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BlcmF0b3InLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2FwcHJvdmVkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgICAgICBuYW1lOiAnVHJhbnNmZXInLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdmcm9tJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3Rva2VuSWQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdhcHByb3ZlJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncGF5YWJsZScsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd0b2tlbklkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2JhbGFuY2VPZicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdnZXRBcHByb3ZlZCcsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAndG9rZW5JZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdpc0FwcHJvdmVkRm9yQWxsJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdvd25lcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3BlcmF0b3InLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnb3duZXJPZicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAndG9rZW5JZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdvd25lcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ3NhZmVUcmFuc2ZlckZyb20nLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zyb20nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd0b2tlbklkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ3NhZmVUcmFuc2ZlckZyb20nLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zyb20nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdpZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnZGF0YScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAnc2V0QXBwcm92YWxGb3JBbGwnLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ29wZXJhdG9yJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhcHByb3ZlZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2wnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3V0cHV0czogW10sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICdzeW1ib2wnLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ3Rva2VuQnlJbmRleCcsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAndG9rZW5CeUluZGV4JyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdvd25lcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAndG9rZW5JZCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ3Rva2VuVVJJJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd0b2tlbklkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBuYW1lOiAndG90YWxTdXBwbHknLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIG5hbWU6ICd0cmFuc2ZlckZyb20nLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbmRlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVjaXBpZW50JyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICd0b2tlbklkJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBvdXRwdXRzOiBbXSxcbiAgICB9LFxuXTtcbi8qKiBbRVJDLTQ2MjYgVG9rZW5pemVkIFZhdWx0cyBTdGFuZGFyZF0oaHR0cHM6Ly9ldGhlcmV1bS5vcmcvZW4vZGV2ZWxvcGVycy9kb2NzL3N0YW5kYXJkcy90b2tlbnMvZXJjLTQ2MjYpICovXG5leHBvcnQgY29uc3QgZXJjNDYyNkFiaSA9IFtcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnQXBwcm92YWwnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVjZWl2ZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2Fzc2V0cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmVzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnRGVwb3NpdCcsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGFub255bW91czogZmFsc2UsXG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGluZGV4ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zyb20nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAndG8nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnVHJhbnNmZXInLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBhbm9ueW1vdXM6IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVjZWl2ZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3duZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaW5kZXhlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgbmFtZTogJ2Fzc2V0cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpbmRleGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmVzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnV2l0aGRyYXcnLFxuICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3duZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NwZW5kZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdhbGxvd2FuY2UnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdhcHByb3ZlJyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdib29sJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAnYXNzZXQnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Fzc2V0VG9rZW5BZGRyZXNzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdiYWxhbmNlT2YnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzaGFyZXMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdjb252ZXJ0VG9Bc3NldHMnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Fzc2V0cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3NldHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdjb252ZXJ0VG9TaGFyZXMnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NoYXJlcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3NldHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3JlY2VpdmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAnZGVwb3NpdCcsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmVzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2NhbGxlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ21heERlcG9zaXQnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ21heEFzc2V0cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdjYWxsZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdtYXhNaW50JyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdtYXhTaGFyZXMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnb3duZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdtYXhSZWRlZW0nLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ21heFNoYXJlcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdvd25lcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ21heFdpdGhkcmF3JyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdtYXhBc3NldHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmVzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdyZWNlaXZlcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ21pbnQnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Fzc2V0cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3NldHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICdwcmV2aWV3RGVwb3NpdCcsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmVzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NoYXJlcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3ByZXZpZXdNaW50JyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3NldHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3ZpZXcnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmVzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAncHJldmlld1JlZGVlbScsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnYXNzZXRzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Fzc2V0cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3ByZXZpZXdXaXRoZHJhdycsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmVzJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NoYXJlcycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAncmVjZWl2ZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBuYW1lOiAncmVkZWVtJyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3NldHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICBuYW1lOiAndG90YWxBc3NldHMnLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvdGFsTWFuYWdlZEFzc2V0cycsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW10sXG4gICAgICAgIG5hbWU6ICd0b3RhbFN1cHBseScsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICd0cmFuc2ZlcicsXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zyb20nLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG5hbWU6ICd0cmFuc2ZlckZyb20nLFxuICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jvb2wnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhc3NldHMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3JlY2VpdmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdvd25lcicsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FkZHJlc3MnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbmFtZTogJ3dpdGhkcmF3JyxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzaGFyZXMnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICd1aW50MjU2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ25vbnBheWFibGUnLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIH0sXG5dO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YWJpcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/constants/address.js": /*!*****************************************************!*\ !*** ./node_modules/viem/_esm/constants/address.js ***! \*****************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ entryPoint06Address: () => (/* binding */ entryPoint06Address),\n/* harmony export */ entryPoint07Address: () => (/* binding */ entryPoint07Address),\n/* harmony export */ entryPoint08Address: () => (/* binding */ entryPoint08Address),\n/* harmony export */ ethAddress: () => (/* binding */ ethAddress),\n/* harmony export */ zeroAddress: () => (/* binding */ zeroAddress)\n/* harmony export */ });\nconst entryPoint06Address = '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789';\nconst entryPoint07Address = '0x0000000071727De22E5E9d8BAf0edAc6f37da032';\nconst entryPoint08Address = '0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108';\nconst ethAddress = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';\nconst zeroAddress = '0x0000000000000000000000000000000000000000';\n//# sourceMappingURL=address.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL2FkZHJlc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBTztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ1AiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2NvbnN0YW50cy9hZGRyZXNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnRyeVBvaW50MDZBZGRyZXNzID0gJzB4NUZGMTM3RDRiMEZEQ0Q0OURjQTMwYzdDRjU3RTU3OGEwMjZkMjc4OSc7XG5leHBvcnQgY29uc3QgZW50cnlQb2ludDA3QWRkcmVzcyA9ICcweDAwMDAwMDAwNzE3MjdEZTIyRTVFOWQ4QkFmMGVkQWM2ZjM3ZGEwMzInO1xuZXhwb3J0IGNvbnN0IGVudHJ5UG9pbnQwOEFkZHJlc3MgPSAnMHg0MzM3MDg0RDlFMjU1RmYwNzAyNDYxQ0Y4ODk1Q0U5RTNiNUZmMTA4JztcbmV4cG9ydCBjb25zdCBldGhBZGRyZXNzID0gJzB4ZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZSc7XG5leHBvcnQgY29uc3QgemVyb0FkZHJlc3MgPSAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWFkZHJlc3MuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/constants/address.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/constants/bytes.js": /*!***************************************************!*\ !*** ./node_modules/viem/_esm/constants/bytes.js ***! \***************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ erc6492MagicBytes: () => (/* binding */ erc6492MagicBytes),\n/* harmony export */ zeroHash: () => (/* binding */ zeroHash)\n/* harmony export */ });\nconst erc6492MagicBytes = '0x6492649264926492649264926492649264926492649264926492649264926492';\nconst zeroHash = '0x0000000000000000000000000000000000000000000000000000000000000000';\n//# sourceMappingURL=bytes.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL2J5dGVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQU87QUFDQTtBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9jb25zdGFudHMvYnl0ZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVyYzY0OTJNYWdpY0J5dGVzID0gJzB4NjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5Mic7XG5leHBvcnQgY29uc3QgemVyb0hhc2ggPSAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJ5dGVzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/constants/bytes.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/constants/contract.js": /*!******************************************************!*\ !*** ./node_modules/viem/_esm/constants/contract.js ***! \******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ aggregate3Signature: () => (/* binding */ aggregate3Signature)\n/* harmony export */ });\nconst aggregate3Signature = '0x82ad56cb';\n//# sourceMappingURL=contract.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL2NvbnRyYWN0LmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBTztBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9jb25zdGFudHMvY29udHJhY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGFnZ3JlZ2F0ZTNTaWduYXR1cmUgPSAnMHg4MmFkNTZjYic7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jb250cmFjdC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/constants/contract.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/constants/contracts.js": /*!*******************************************************!*\ !*** ./node_modules/viem/_esm/constants/contracts.js ***! \*******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ deploylessCallViaBytecodeBytecode: () => (/* binding */ deploylessCallViaBytecodeBytecode),\n/* harmony export */ deploylessCallViaFactoryBytecode: () => (/* binding */ deploylessCallViaFactoryBytecode),\n/* harmony export */ erc6492SignatureValidatorByteCode: () => (/* binding */ erc6492SignatureValidatorByteCode),\n/* harmony export */ multicall3Bytecode: () => (/* binding */ multicall3Bytecode)\n/* harmony export */ });\nconst deploylessCallViaBytecodeBytecode = '0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe';\nconst deploylessCallViaFactoryBytecode = '0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe';\nconst erc6492SignatureValidatorByteCode = '0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572';\nconst multicall3Bytecode = '0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033';\n//# sourceMappingURL=contracts.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL2NvbnRyYWN0cy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQU87QUFDQTtBQUNBO0FBQ0E7QUFDUCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL2NvbnRyYWN0cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZGVwbG95bGVzc0NhbGxWaWFCeXRlY29kZUJ5dGVjb2RlID0gJzB4NjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjA0MDUxNjEwMThlMzgwMzgwNjEwMThlODMzOTgxMDE2MDQwODE5MDUyNjEwMDJmOTE2MTAxMjQ1NjViNjAwMDgwODM1MTYwMjA4NTAxNjAwMGY1OTA1MDgwM2I2MTAwNDg1NzYwMDA4MGZkNWI2MDAwODA4MzUxNjAyMDg1MDE2MDAwODU1YWYxNjA0MDUxM2Q2MDAwODIzZTgxNjEwMDY3NTczZDgxZmQ1YjNkODFmMzViNjM0ZTQ4N2I3MTYwZTAxYjYwMDA1MjYwNDE2MDA0NTI2MDI0NjAwMGZkNWI2MDAwODI2MDFmODMwMTEyNjEwMDkyNTc2MDAwODBmZDViODE1MTYwMDE2MDAxNjA0MDFiMDM4MTExMTU2MTAwYWI1NzYxMDBhYjYxMDA2YjU2NWI2MDQwNTE2MDFmODIwMTYwMWYxOTkwODExNjYwM2YwMTE2ODEwMTYwMDE2MDAxNjA0MDFiMDM4MTExODI4MjEwMTcxNTYxMDBkOTU3NjEwMGQ5NjEwMDZiNTY1YjYwNDA1MjgxODE1MjgzODIwMTYwMjAwMTg1MTAxNTYxMDBmMTU3NjAwMDgwZmQ1YjYwMDA1YjgyODExMDE1NjEwMTEwNTc2MDIwODE4NjAxODEwMTUxODM4MzAxODIwMTUyMDE2MTAwZjQ1NjViNTA2MDAwOTE4MTAxNjAyMDAxOTE5MDkxNTI5MzkyNTA1MDUwNTY1YjYwMDA4MDYwNDA4Mzg1MDMxMjE1NjEwMTM3NTc2MDAwODBmZDViODI1MTYwMDE2MDAxNjA0MDFiMDM4MTExMTU2MTAxNGQ1NzYwMDA4MGZkNWI2MTAxNTk4NTgyODYwMTYxMDA4MTU2NWI2MDIwODUwMTUxOTA5MzUwOTA1MDYwMDE2MDAxNjA0MDFiMDM4MTExMTU2MTAxNzc1NzYwMDA4MGZkNWI2MTAxODM4NTgyODYwMTYxMDA4MTU2NWI5MTUwNTA5MjUwOTI5MDUwNTZmZSc7XG5leHBvcnQgY29uc3QgZGVwbG95bGVzc0NhbGxWaWFGYWN0b3J5Qnl0ZWNvZGUgPSAnMHg2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDQwNTE2MTAyYzAzODAzODA2MTAyYzA4MzM5ODEwMTYwNDA4MTkwNTI2MTAwMmY5MTYxMDFlNjU2NWI4MzYwMDE2MDAxNjBhMDFiMDMxNjNiNjAwMDAzNjEwMGU0NTc2MDAwODA4MzYwMDE2MDAxNjBhMDFiMDMxNjgzNjA0MDUxNjEwMDVjOTE5MDYxMDI3MDU2NWI2MDAwNjA0MDUxODA4MzAzODE2MDAwODY1YWYxOTE1MDUwM2Q4MDYwMDA4MTE0NjEwMDk5NTc2MDQwNTE5MTUwNjAxZjE5NjAzZjNkMDExNjgyMDE2MDQwNTIzZDgyNTIzZDYwMDA2MDIwODQwMTNlNjEwMDllNTY1YjYwNjA5MTUwNWI1MDkxNTA5MTUwODExNTgwNjEwMGI4NTc1MDYwMDE2MDAxNjBhMDFiMDM4NjE2M2IxNTViMTU2MTAwZTE1NzgwNjA0MDUxNjMxMDFiYjk4ZDYwZTAxYjgxNTI2MDA0MDE2MTAwZDg5MTkwNjEwMjhjNTY1YjYwNDA1MTgwOTEwMzkwZmQ1YjUwNTA1YjYwMDA4MDg0NTE2MDIwODYwMTYwMDA4ODVhZjE2MDQwNTEzZDYwMDA4MjNlODE2MTAxMDM1NzNkODFmZDViM2Q4MWYzNWI4MDUxNjAwMTYwMDE2MGEwMWIwMzgxMTY4MTE0NjEwMTFlNTc2MDAwODBmZDViOTE5MDUwNTY1YjYzNGU0ODdiNzE2MGUwMWI2MDAwNTI2MDQxNjAwNDUyNjAyNDYwMDBmZDViNjAwMDViODM4MTEwMTU2MTAxNTQ1NzgxODEwMTUxODM4MjAxNTI2MDIwMDE2MTAxM2M1NjViNTA1MDYwMDA5MTAxNTI1NjViNjAwMDgyNjAxZjgzMDExMjYxMDE2ZTU3NjAwMDgwZmQ1YjgxNTE2MDAxNjAwMTYwNDAxYjAzODExMTE1NjEwMTg3NTc2MTAxODc2MTAxMjM1NjViNjA0MDUxNjAxZjgyMDE2MDFmMTk5MDgxMTY2MDNmMDExNjgxMDE2MDAxNjAwMTYwNDAxYjAzODExMTgyODIxMDE3MTU2MTAxYjU1NzYxMDFiNTYxMDEyMzU2NWI2MDQwNTI4MTgxNTI4MzgyMDE2MDIwMDE4NTEwMTU2MTAxY2Q1NzYwMDA4MGZkNWI2MTAxZGU4MjYwMjA4MzAxNjAyMDg3MDE2MTAxMzk1NjViOTQ5MzUwNTA1MDUwNTY1YjYwMDA4MDYwMDA4MDYwODA4NTg3MDMxMjE1NjEwMWZjNTc2MDAwODBmZDViNjEwMjA1ODU2MTAxMDc1NjViNjAyMDg2MDE1MTkwOTQ1MDYwMDE2MDAxNjA0MDFiMDM4MTExMTU2MTAyMjE1NzYwMDA4MGZkNWI2MTAyMmQ4NzgyODgwMTYxMDE1ZDU2NWI5MzUwNTA2MTAyM2M2MDQwODYwMTYxMDEwNzU2NWI2MDYwODYwMTUxOTA5MjUwNjAwMTYwMDE2MDQwMWIwMzgxMTExNTYxMDI1ODU3NjAwMDgwZmQ1YjYxMDI2NDg3ODI4ODAxNjEwMTVkNTY1YjkxNTA1MDkyOTU5MTk0NTA5MjUwNTY1YjYwMDA4MjUxNjEwMjgyODE4NDYwMjA4NzAxNjEwMTM5NTY1YjkxOTA5MTAxOTI5MTUwNTA1NjViNjAyMDgxNTI2MDAwODI1MTgwNjAyMDg0MDE1MjYxMDJhYjgxNjA0MDg1MDE2MDIwODcwMTYxMDEzOTU2NWI2MDFmMDE2MDFmMTkxNjkxOTA5MTAxNjA0MDAxOTI5MTUwNTA1NmZlJztcbmV4cG9ydCBjb25zdCBlcmM2NDkyU2lnbmF0dXJlVmFsaWRhdG9yQnl0ZUNvZGUgPSAnMHg2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDQwNTE2MTA2OTQzODAzODA2MTA2OTQ4MzM5ODEwMTYwNDA4MTkwNTI2MTAwMmY5MTYxMDUxZTU2NWI2MDAwNjEwMDNjODQ4NDg0NjEwMDQ4NTY1YjkwNTA4MDYwMDA1MjYwMDE2MDFmZjM1YjYwMDA3ZjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2MTAwNzQ4MzYxMDQwYzU2NWIwMzYxMDFlNzU3NjAwMDYwNjA4MDg0ODA2MDIwMDE5MDUxODEwMTkwNjEwMDkyOTE5MDYxMDU3NzU2NWI2MDQwNTE5Mjk1NTA5MDkzNTA5MTUwNjAwMDkwNjAwMTYwMDE2MGEwMWIwMzg1MTY5MDYxMDBiNjkwODU5MDYxMDVkZDU2NWI2MDAwNjA0MDUxODA4MzAzODE2MDAwODY1YWYxOTE1MDUwM2Q4MDYwMDA4MTE0NjEwMGYzNTc2MDQwNTE5MTUwNjAxZjE5NjAzZjNkMDExNjgyMDE2MDQwNTIzZDgyNTIzZDYwMDA2MDIwODQwMTNlNjEwMGY4NTY1YjYwNjA5MTUwNWI1MDUwOTA1MDg3NjAwMTYwMDE2MGEwMWIwMzE2M2I2MDAwMDM2MTAxNjA1NzgwNjEwMTYwNTc2MDQwNTE2MjQ2MWJjZDYwZTUxYjgxNTI2MDIwNjAwNDgyMDE1MjYwMWU2MDI0ODIwMTUyN2Y1MzY5Njc2ZTYxNzQ3NTcyNjU1NjYxNmM2OTY0NjE3NDZmNzIzYTIwNjQ2NTcwNmM2Zjc5NmQ2NTZlNzQwMDAwNjA0NDgyMDE1MjYwNjQwMTViNjA0MDUxODA5MTAzOTBmZDViNjA0MDUxNjMwYjEzNWQzZjYwZTExYjgwODI1MjkwNjAwMTYwMDE2MGEwMWIwMzhhMTY5MDYzMTYyNmJhN2U5MDYxMDE5MDkwOGI5MDg3OTA2MDA0MDE2MTA1Zjk1NjViNjAyMDYwNDA1MTgwODMwMzgxODY1YWZhMTU4MDE1NjEwMWFkNTczZDYwMDA4MDNlM2Q2MDAwZmQ1YjUwNTA1MDUwNjA0MDUxM2Q2MDFmMTk2MDFmODIwMTE2ODIwMTgwNjA0MDUyNTA4MTAxOTA2MTAxZDE5MTkwNjEwNjMzNTY1YjYwMDE2MDAxNjBlMDFiMDMxOTE2MTQ5NDUwNTA1MDUwNTA2MTA0MDU1NjViNjAwMTYwMDE2MGEwMWIwMzg0MTYzYjE1NjEwMjdhNTc2MDQwNTE2MzBiMTM1ZDNmNjBlMTFiODA4MjUyOTA2MDAxNjAwMTYwYTAxYjAzODYxNjkwNjMxNjI2YmE3ZTkwNjEwMjI3OTA4NzkwODc5MDYwMDQwMTYxMDVmOTU2NWI2MDIwNjA0MDUxODA4MzAzODE4NjVhZmExNTgwMTU2MTAyNDQ1NzNkNjAwMDgwM2UzZDYwMDBmZDViNTA1MDUwNTA2MDQwNTEzZDYwMWYxOTYwMWY4MjAxMTY4MjAxODA2MDQwNTI1MDgxMDE5MDYxMDI2ODkxOTA2MTA2MzM1NjViNjAwMTYwMDE2MGUwMWIwMzE5MTYxNDkwNTA2MTA0MDU1NjViODE1MTYwNDExNDYxMDJkZjU3NjA0MDUxNjI0NjFiY2Q2MGU1MWI4MTUyNjAyMDYwMDQ4MjAxNTI2MDNhNjAyNDgyMDE1MjYwMDA4MDUxNjAyMDYxMDY3NDgzMzk4MTUxOTE1MjYwNDQ4MjAxNTI3ZjNhMjA2OTZlNzY2MTZjNjk2NDIwNzM2OTY3NmU2MTc0NzU3MjY1MjA2YzY1NmU2Nzc0NjgwMDAwMDAwMDAwMDA2MDY0ODIwMTUyNjA4NDAxNjEwMTU3NTY1YjYxMDJlNzYxMDQyNTU2NWI1MDYwMjA4MjAxNTE2MDQwODA4NDAxNTE4NDUxODU5MzkyNjAwMDkxODU5MTkwODExMDYxMDMwYzU3NjEwMzBjNjEwNjVkNTY1YjAxNjAyMDAxNTE2MGY4MWM5MDUwNjAxYjgxMTQ4MDE1OTA2MTAzMmI1NzUwODA2MGZmMTY2MDFjMTQxNTViMTU2MTAzOGM1NzYwNDA1MTYyNDYxYmNkNjBlNTFiODE1MjYwMjA2MDA0ODIwMTUyNjAzYjYwMjQ4MjAxNTI2MDAwODA1MTYwMjA2MTA2NzQ4MzM5ODE1MTkxNTI2MDQ0ODIwMTUyN2YzYTIwNjk2ZTc2NjE2YzY5NjQyMDczNjk2NzZlNjE3NDc1NzI2NTIwNzYyMDc2NjE2Yzc1NjUwMDAwMDAwMDAwNjA2NDgyMDE1MjYwODQwMTYxMDE1NzU2NWI2MDQwODA1MTYwMDA4MTUyNjAyMDgxMDE4MDgzNTI4OTkwNTI2MGZmODMxNjkxODEwMTkxOTA5MTUyNjA2MDgxMDE4NDkwNTI2MDgwODEwMTgzOTA1MjYwMDE2MDAxNjBhMDFiMDM4OTE2OTA2MDAxOTA2MGEwMDE2MDIwNjA0MDUxNjAyMDgxMDM5MDgwODQwMzkwODU1YWZhMTU4MDE1NjEwM2VhNTczZDYwMDA4MDNlM2Q2MDAwZmQ1YjUwNTA1MDYwMjA2MDQwNTEwMzUxNjAwMTYwMDE2MGEwMWIwMzE2MTQ5NDUwNTA1MDUwNTA1YjkzOTI1MDUwNTA1NjViNjAwMDYwMjA4MjUxMTAxNTYxMDQxZDU3NjAwMDgwZmQ1YjUwODA1MTAxNTE5MDU2NWI2MDQwNTE4MDYwNjAwMTYwNDA1MjgwNjAwMzkwNjAyMDgyMDI4MDM2ODMzNzUwOTE5MjkxNTA1MDU2NWI2MDAxNjAwMTYwYTAxYjAzODExNjgxMTQ2MTA0NTg1NzYwMDA4MGZkNWI1MDU2NWI2MzRlNDg3YjcxNjBlMDFiNjAwMDUyNjA0MTYwMDQ1MjYwMjQ2MDAwZmQ1YjYwMDA1YjgzODExMDE1NjEwNDhjNTc4MTgxMDE1MTgzODIwMTUyNjAyMDAxNjEwNDc0NTY1YjUwNTA2MDAwOTEwMTUyNTY1YjYwMDA4MjYwMWY4MzAxMTI2MTA0YTY1NzYwMDA4MGZkNWI4MTUxNjAwMTYwMDE2MDQwMWIwMzgxMTExNTYxMDRiZjU3NjEwNGJmNjEwNDViNTY1YjYwNDA1MTYwMWY4MjAxNjAxZjE5OTA4MTE2NjAzZjAxMTY4MTAxNjAwMTYwMDE2MDQwMWIwMzgxMTE4MjgyMTAxNzE1NjEwNGVkNTc2MTA0ZWQ2MTA0NWI1NjViNjA0MDUyODE4MTUyODM4MjAxNjAyMDAxODUxMDE1NjEwNTA1NTc2MDAwODBmZDViNjEwNTE2ODI2MDIwODMwMTYwMjA4NzAxNjEwNDcxNTY1Yjk0OTM1MDUwNTA1MDU2NWI2MDAwODA2MDAwNjA2MDg0ODYwMzEyMTU2MTA1MzM1NzYwMDA4MGZkNWI4MzUxNjEwNTNlODE2MTA0NDM1NjViNjAyMDg1MDE1MTYwNDA4NjAxNTE5MTk0NTA5MjUwNjAwMTYwMDE2MDQwMWIwMzgxMTExNTYxMDU2MTU3NjAwMDgwZmQ1YjYxMDU2ZDg2ODI4NzAxNjEwNDk1NTY1YjkxNTA1MDkyNTA5MjUwOTI1NjViNjAwMDgwNjAwMDYwNjA4NDg2MDMxMjE1NjEwNThjNTc2MDAwODBmZDViODM1MTYxMDU5NzgxNjEwNDQzNTY1YjYwMjA4NTAxNTE5MDkzNTA2MDAxNjAwMTYwNDAxYjAzODExMTE1NjEwNWIzNTc2MDAwODBmZDViNjEwNWJmODY4Mjg3MDE2MTA0OTU1NjViNjA0MDg2MDE1MTkwOTM1MDkwNTA2MDAxNjAwMTYwNDAxYjAzODExMTE1NjEwNTYxNTc2MDAwODBmZDViNjAwMDgyNTE2MTA1ZWY4MTg0NjAyMDg3MDE2MTA0NzE1NjViOTE5MDkxMDE5MjkxNTA1MDU2NWI4MjgxNTI2MDQwNjAyMDgyMDE1MjYwMDA4MjUxODA2MDQwODQwMTUyNjEwNjFlODE2MDYwODUwMTYwMjA4NzAxNjEwNDcxNTY1YjYwMWYwMTYwMWYxOTE2OTE5MDkxMDE2MDYwMDE5MzkyNTA1MDUwNTY1YjYwMDA2MDIwODI4NDAzMTIxNTYxMDY0NTU3NjAwMDgwZmQ1YjgxNTE2MDAxNjAwMTYwZTAxYjAzMTk4MTE2ODExNDYxMDQwNTU3NjAwMDgwZmQ1YjYzNGU0ODdiNzE2MGUwMWI2MDAwNTI2MDMyNjAwNDUyNjAyNDYwMDBmZGZlNTM2OTY3NmU2MTc0NzU3MjY1NTY2MTZjNjk2NDYxNzQ2ZjcyMjM3MjY1NjM2Zjc2NjU3MjUzNjk2NzZlNjU3Mic7XG5leHBvcnQgY29uc3QgbXVsdGljYWxsM0J5dGVjb2RlID0gJzB4NjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjExNWI5ODA2MTAwMjA2MDAwMzk2MDAwZjNmZTYwODA2MDQwNTI2MDA0MzYxMDYxMDBmMzU3NjAwMDM1NjBlMDFjODA2MzRkMjMwMWNjMTE2MTAwOGE1NzgwNjNhOGIwNTc0ZTExNjEwMDU5NTc4MDYzYThiMDU3NGUxNDYxMDMyNTU3ODA2M2JjZTM4YmQ3MTQ2MTAzNTA1NzgwNjNjMzA3N2ZhOTE0NjEwMzgwNTc4MDYzZWU4MmFjNWUxNDYxMDNiMjU3NjEwMGYzNTY1YjgwNjM0ZDIzMDFjYzE0NjEwMjYyNTc4MDYzNzI0MjVkOWQxNDYxMDI5ZjU3ODA2MzgyYWQ1NmNiMTQ2MTAyY2E1NzgwNjM4NmQ1MTZlODE0NjEwMmZhNTc2MTAwZjM1NjViODA2MzM0MDhlNDcwMTE2MTAwYzY1NzgwNjMzNDA4ZTQ3MDE0NjEwMWFmNTc4MDYzMzk5NTQyZTkxNDYxMDFkYTU3ODA2MzNlNjRhNjk2MTQ2MTAyMGM1NzgwNjM0MmNiYjE1YzE0NjEwMjM3NTc2MTAwZjM1NjViODA2MzBmMjhjOTdkMTQ2MTAwZjg1NzgwNjMxNzRkZWE3MTE0NjEwMTIzNTc4MDYzMjUyZGJhNDIxNDYxMDE1MzU3ODA2MzI3ZTg2ZDZlMTQ2MTAxODQ1NzViNjAwMDgwZmQ1YjM0ODAxNTYxMDEwNDU3NjAwMDgwZmQ1YjUwNjEwMTBkNjEwM2VmNTY1YjYwNDA1MTYxMDExYTkxOTA2MTBjMGE1NjViNjA0MDUxODA5MTAzOTBmMzViNjEwMTNkNjAwNDgwMzYwMzgxMDE5MDYxMDEzODkxOTA2MTBjOTQ1NjViNjEwM2Y3NTY1YjYwNDA1MTYxMDE0YTkxOTA2MTBlOTQ1NjViNjA0MDUxODA5MTAzOTBmMzViNjEwMTZkNjAwNDgwMzYwMzgxMDE5MDYxMDE2ODkxOTA2MTBmMGM1NjViNjEwNjE1NTY1YjYwNDA1MTYxMDE3YjkyOTE5MDYxMTAxYjU2NWI2MDQwNTE4MDkxMDM5MGYzNWIzNDgwMTU2MTAxOTA1NzYwMDA4MGZkNWI1MDYxMDE5OTYxMDdhYjU2NWI2MDQwNTE2MTAxYTY5MTkwNjExMDY0NTY1YjYwNDA1MTgwOTEwMzkwZjM1YjM0ODAxNTYxMDFiYjU3NjAwMDgwZmQ1YjUwNjEwMWM0NjEwN2I3NTY1YjYwNDA1MTYxMDFkMTkxOTA2MTBjMGE1NjViNjA0MDUxODA5MTAzOTBmMzViNjEwMWY0NjAwNDgwMzYwMzgxMDE5MDYxMDFlZjkxOTA2MTEwYWI1NjViNjEwN2JmNTY1YjYwNDA1MTYxMDIwMzkzOTI5MTkwNjExMTBiNTY1YjYwNDA1MTgwOTEwMzkwZjM1YjM0ODAxNTYxMDIxODU3NjAwMDgwZmQ1YjUwNjEwMjIxNjEwN2UxNTY1YjYwNDA1MTYxMDIyZTkxOTA2MTBjMGE1NjViNjA0MDUxODA5MTAzOTBmMzViMzQ4MDE1NjEwMjQzNTc2MDAwODBmZDViNTA2MTAyNGM2MTA3ZTk1NjViNjA0MDUxNjEwMjU5OTE5MDYxMGMwYTU2NWI2MDQwNTE4MDkxMDM5MGYzNWIzNDgwMTU2MTAyNmU1NzYwMDA4MGZkNWI1MDYxMDI4OTYwMDQ4MDM2MDM4MTAxOTA2MTAyODQ5MTkwNjExMWE3NTY1YjYxMDdmMTU2NWI2MDQwNTE2MTAyOTY5MTkwNjEwYzBhNTY1YjYwNDA1MTgwOTEwMzkwZjM1YjM0ODAxNTYxMDJhYjU3NjAwMDgwZmQ1YjUwNjEwMmI0NjEwODEyNTY1YjYwNDA1MTYxMDJjMTkxOTA2MTBjMGE1NjViNjA0MDUxODA5MTAzOTBmMzViNjEwMmU0NjAwNDgwMzYwMzgxMDE5MDYxMDJkZjkxOTA2MTEyMmE1NjViNjEwODFhNTY1YjYwNDA1MTYxMDJmMTkxOTA2MTBlOTQ1NjViNjA0MDUxODA5MTAzOTBmMzViMzQ4MDE1NjEwMzA2NTc2MDAwODBmZDViNTA2MTAzMGY2MTA5ZTQ1NjViNjA0MDUxNjEwMzFjOTE5MDYxMGMwYTU2NWI2MDQwNTE4MDkxMDM5MGYzNWIzNDgwMTU2MTAzMzE1NzYwMDA4MGZkNWI1MDYxMDMzYTYxMDllYzU2NWI2MDQwNTE2MTAzNDc5MTkwNjExMjg2NTY1YjYwNDA1MTgwOTEwMzkwZjM1YjYxMDM2YTYwMDQ4MDM2MDM4MTAxOTA2MTAzNjU5MTkwNjExMGFiNTY1YjYxMDlmNDU2NWI2MDQwNTE2MTAzNzc5MTkwNjEwZTk0NTY1YjYwNDA1MTgwOTEwMzkwZjM1YjYxMDM5YTYwMDQ4MDM2MDM4MTAxOTA2MTAzOTU5MTkwNjEwZjBjNTY1YjYxMGJhNjU2NWI2MDQwNTE2MTAzYTk5MzkyOTE5MDYxMTEwYjU2NWI2MDQwNTE4MDkxMDM5MGYzNWIzNDgwMTU2MTAzYmU1NzYwMDA4MGZkNWI1MDYxMDNkOTYwMDQ4MDM2MDM4MTAxOTA2MTAzZDQ5MTkwNjExMmNkNTY1YjYxMGJjYTU2NWI2MDQwNTE2MTAzZTY5MTkwNjExMDY0NTY1YjYwNDA1MTgwOTEwMzkwZjM1YjYwMDA0MjkwNTA5MDU2NWI2MDYwNjAwMDgwODQ4NDkwNTA5MDUwODA2N2ZmZmZmZmZmZmZmZmZmZmY4MTExMTU2MTA0MWM1NzYxMDQxYjYxMTJmYTU2NWI1YjYwNDA1MTkwODA4MjUyODA2MDIwMDI2MDIwMDE4MjAxNjA0MDUyODAxNTYxMDQ1NTU3ODE2MDIwMDE1YjYxMDQ0MjYxMGJkNTU2NWI4MTUyNjAyMDAxOTA2MDAxOTAwMzkwODE2MTA0M2E1NzkwNTA1YjUwOTI1MDM2NjAwMDViODI4MTEwMTU2MTA1Yzk1NzYwMDA4NTgyODE1MTgxMTA2MTA0Nzk1NzYxMDQ3ODYxMTMyOTU2NWI1YjYwMjAwMjYwMjAwMTAxNTE5MDUwODc4NzgzODE4MTEwNjEwNDk2NTc2MTA0OTU2MTEzMjk1NjViNWI5MDUwNjAyMDAyODEwMTkwNjEwNGE4OTE5MDYxMTM2NzU2NWI5MjUwNjAwMDgzNjA0MDAxMzU5MDUwODA4NjAxOTU1MDgzNjAwMDAxNjAyMDgxMDE5MDYxMDRjYjkxOTA2MTExYTc1NjViNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTg1ODA2MDYwMDE5MDYxMDRmMjkxOTA2MTEzOGY1NjViNjA0MDUxNjEwNTAwOTI5MTkwNjExNDMxNTY1YjYwMDA2MDQwNTE4MDgzMDM4MTg1ODc1YWYxOTI1MDUwNTAzZDgwNjAwMDgxMTQ2MTA1M2Q1NzYwNDA1MTkxNTA2MDFmMTk2MDNmM2QwMTE2ODIwMTYwNDA1MjNkODI1MjNkNjAwMDYwMjA4NDAxM2U2MTA1NDI1NjViNjA2MDkxNTA1YjUwODM2MDAwMDE4NDYwMjAwMTgyOTA1MjgyMTUxNTE1MTU4MTUyNTA1MDUwODE1MTYwMjA4NTAxMzUxNzYxMDViYzU3N2YwOGMzNzlhMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjAwMDUyNjAyMDYwMDQ1MjYwMTc2MDI0NTI3ZjRkNzU2Yzc0Njk2MzYxNmM2YzMzM2EyMDYzNjE2YzZjMjA2NjYxNjk2YzY1NjQwMDAwMDAwMDAwMDAwMDAwMDA2MDQ0NTI2MDg0NjAwMGZkNWI4MjYwMDEwMTkyNTA1MDUwNjEwNDVjNTY1YjUwODIzNDE0NjEwNjBjNTc2MDQwNTE3ZjA4YzM3OWEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNjAwNDAxNjEwNjAzOTA2MTE0YTc1NjViNjA0MDUxODA5MTAzOTBmZDViNTA1MDUwOTI5MTUwNTA1NjViNjAwMDYwNjA0MzkxNTA2MDAwODQ4NDkwNTA5MDUwODA2N2ZmZmZmZmZmZmZmZmZmZmY4MTExMTU2MTA2M2U1NzYxMDYzZDYxMTJmYTU2NWI1YjYwNDA1MTkwODA4MjUyODA2MDIwMDI2MDIwMDE4MjAxNjA0MDUyODAxNTYxMDY3MTU3ODE2MDIwMDE1YjYwNjA4MTUyNjAyMDAxOTA2MDAxOTAwMzkwODE2MTA2NWM1NzkwNTA1YjUwOTE1MDM2NjAwMDViODI4MTEwMTU2MTA3YTE1NzYwMDA4Nzg3ODM4MTgxMTA2MTA2OTU1NzYxMDY5NDYxMTMyOTU2NWI1YjkwNTA2MDIwMDI4MTAxOTA2MTA2YTc5MTkwNjExNGM3NTY1YjkyNTA4MjYwMDAwMTYwMjA4MTAxOTA2MTA2YmM5MTkwNjExMWE3NTY1YjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODM4MDYwMjAwMTkwNjEwNmUyOTE5MDYxMTM4ZjU2NWI2MDQwNTE2MTA2ZjA5MjkxOTA2MTE0MzE1NjViNjAwMDYwNDA1MTgwODMwMzgxNjAwMDg2NWFmMTkxNTA1MDNkODA2MDAwODExNDYxMDcyZDU3NjA0MDUxOTE1MDYwMWYxOTYwM2YzZDAxMTY4MjAxNjA0MDUyM2Q4MjUyM2Q2MDAwNjAyMDg0MDEzZTYxMDczMjU2NWI2MDYwOTE1MDViNTA4Njg0ODE1MTgxMTA2MTA3NDY1NzYxMDc0NTYxMTMyOTU2NWI1YjYwMjAwMjYwMjAwMTAxODE5MDUyODE5MjUwNTA1MDgwNjEwNzk1NTc2MDQwNTE3ZjA4YzM3OWEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNjAwNDAxNjEwNzhjOTA2MTE1M2I1NjViNjA0MDUxODA5MTAzOTBmZDViODE2MDAxMDE5MTUwNTA2MTA2Nzg1NjViNTA1MDUwOTI1MDkyOTA1MDU2NWI2MDAwNjAwMTQzMDM0MDkwNTA5MDU2NWI2MDAwNDY5MDUwOTA1NjViNjAwMDgwNjA2MDQzOTI1MDQzNDA5MTUwNjEwN2Q2ODY4Njg2NjEwOWY0NTY1YjkwNTA5MzUwOTM1MDkzOTA1MDU2NWI2MDAwNDg5MDUwOTA1NjViNjAwMDQzOTA1MDkwNTY1YjYwMDA4MTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MzE5MDUwOTE5MDUwNTY1YjYwMDA0NDkwNTA5MDU2NWI2MDYwNjAwMDgzODM5MDUwOTA1MDgwNjdmZmZmZmZmZmZmZmZmZmZmODExMTE1NjEwODNlNTc2MTA4M2Q2MTEyZmE1NjViNWI2MDQwNTE5MDgwODI1MjgwNjAyMDAyNjAyMDAxODIwMTYwNDA1MjgwMTU2MTA4Nzc1NzgxNjAyMDAxNWI2MTA4NjQ2MTBiZDU1NjViODE1MjYwMjAwMTkwNjAwMTkwMDM5MDgxNjEwODVjNTc5MDUwNWI1MDkxNTAzNjYwMDA1YjgyODExMDE1NjEwOWRiNTc2MDAwODQ4MjgxNTE4MTEwNjEwODliNTc2MTA4OWE2MTEzMjk1NjViNWI2MDIwMDI2MDIwMDEwMTUxOTA1MDg2ODY4MzgxODExMDYxMDhiODU3NjEwOGI3NjExMzI5NTY1YjViOTA1MDYwMjAwMjgxMDE5MDYxMDhjYTkxOTA2MTE1NWI1NjViOTI1MDgyNjAwMDAxNjAyMDgxMDE5MDYxMDhkZjkxOTA2MTExYTc1NjViNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MzgwNjA0MDAxOTA2MTA5MDU5MTkwNjExMzhmNTY1YjYwNDA1MTYxMDkxMzkyOTE5MDYxMTQzMTU2NWI2MDAwNjA0MDUxODA4MzAzODE2MDAwODY1YWYxOTE1MDUwM2Q4MDYwMDA4MTE0NjEwOTUwNTc2MDQwNTE5MTUwNjAxZjE5NjAzZjNkMDExNjgyMDE2MDQwNTIzZDgyNTIzZDYwMDA2MDIwODQwMTNlNjEwOTU1NTY1YjYwNjA5MTUwNWI1MDgyNjAwMDAxODM2MDIwMDE4MjkwNTI4MjE1MTUxNTE1ODE1MjUwNTA1MDgwNTE2MDIwODQwMTM1MTc2MTA5Y2Y1NzdmMDhjMzc5YTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDYwMDA1MjYwMjA2MDA0NTI2MDE3NjAyNDUyN2Y0ZDc1NmM3NDY5NjM2MTZjNmMzMzNhMjA2MzYxNmM2YzIwNjY2MTY5NmM2NTY0MDAwMDAwMDAwMDAwMDAwMDAwNjA0NDUyNjA2NDYwMDBmZDViODE2MDAxMDE5MTUwNTA2MTA4N2U1NjViNTA1MDUwOTI5MTUwNTA1NjViNjAwMDQ1OTA1MDkwNTY1YjYwMDA0MTkwNTA5MDU2NWI2MDYwNjAwMDgzODM5MDUwOTA1MDgwNjdmZmZmZmZmZmZmZmZmZmZmODExMTE1NjEwYTE4NTc2MTBhMTc2MTEyZmE1NjViNWI2MDQwNTE5MDgwODI1MjgwNjAyMDAyNjAyMDAxODIwMTYwNDA1MjgwMTU2MTBhNTE1NzgxNjAyMDAxNWI2MTBhM2U2MTBiZDU1NjViODE1MjYwMjAwMTkwNjAwMTkwMDM5MDgxNjEwYTM2NTc5MDUwNWI1MDkxNTAzNjYwMDA1YjgyODExMDE1NjEwYjljNTc2MDAwODQ4MjgxNTE4MTEwNjEwYTc1NTc2MTBhNzQ2MTEzMjk1NjViNWI2MDIwMDI2MDIwMDEwMTUxOTA1MDg2ODY4MzgxODExMDYxMGE5MjU3NjEwYTkxNjExMzI5NTY1YjViOTA1MDYwMjAwMjgxMDE5MDYxMGFhNDkxOTA2MTE0Yzc1NjViOTI1MDgyNjAwMDAxNjAyMDgxMDE5MDYxMGFiOTkxOTA2MTExYTc1NjViNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MzgwNjAyMDAxOTA2MTBhZGY5MTkwNjExMzhmNTY1YjYwNDA1MTYxMGFlZDkyOTE5MDYxMTQzMTU2NWI2MDAwNjA0MDUxODA4MzAzODE2MDAwODY1YWYxOTE1MDUwM2Q4MDYwMDA4MTE0NjEwYjJhNTc2MDQwNTE5MTUwNjAxZjE5NjAzZjNkMDExNjgyMDE2MDQwNTIzZDgyNTIzZDYwMDA2MDIwODQwMTNlNjEwYjJmNTY1YjYwNjA5MTUwNWI1MDgyNjAwMDAxODM2MDIwMDE4MjkwNTI4MjE1MTUxNTE1ODE1MjUwNTA1MDg3MTU2MTBiOTA1NzgwNjAwMDAxNTE2MTBiOGY1NzYwNDA1MTdmMDhjMzc5YTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI2MDA0MDE2MTBiODY5MDYxMTUzYjU2NWI2MDQwNTE4MDkxMDM5MGZkNWI1YjgxNjAwMTAxOTE1MDUwNjEwYTU4NTY1YjUwNTA1MDkzOTI1MDUwNTA1NjViNjAwMDgwNjA2MDYxMGJiNzYwMDE4Njg2NjEwN2JmNTY1YjgwOTM1MDgxOTQ1MDgyOTU1MDUwNTA1MDkyNTA5MjUwOTI1NjViNjAwMDgxNDA5MDUwOTE5MDUwNTY1YjYwNDA1MTgwNjA0MDAxNjA0MDUyODA2MDAwMTUxNTgxNTI2MDIwMDE2MDYwODE1MjUwOTA1NjViNjAwMDgxOTA1MDkxOTA1MDU2NWI2MTBjMDQ4MTYxMGJmMTU2NWI4MjUyNTA1MDU2NWI2MDAwNjAyMDgyMDE5MDUwNjEwYzFmNjAwMDgzMDE4NDYxMGJmYjU2NWI5MjkxNTA1MDU2NWI2MDAwODBmZDViNjAwMDgwZmQ1YjYwMDA4MGZkNWI2MDAwODBmZDViNjAwMDgwZmQ1YjYwMDA4MDgzNjAxZjg0MDExMjYxMGM1NDU3NjEwYzUzNjEwYzJmNTY1YjViODIzNTkwNTA2N2ZmZmZmZmZmZmZmZmZmZmY4MTExMTU2MTBjNzE1NzYxMGM3MDYxMGMzNDU2NWI1YjYwMjA4MzAxOTE1MDgzNjAyMDgyMDI4MzAxMTExNTYxMGM4ZDU3NjEwYzhjNjEwYzM5NTY1YjViOTI1MDkyOTA1MDU2NWI2MDAwODA2MDIwODM4NTAzMTIxNTYxMGNhYjU3NjEwY2FhNjEwYzI1NTY1YjViNjAwMDgzMDEzNTY3ZmZmZmZmZmZmZmZmZmZmZjgxMTExNTYxMGNjOTU3NjEwY2M4NjEwYzJhNTY1YjViNjEwY2Q1ODU4Mjg2MDE2MTBjM2U1NjViOTI1MDkyNTA1MDkyNTA5MjkwNTA1NjViNjAwMDgxNTE5MDUwOTE5MDUwNTY1YjYwMDA4MjgyNTI2MDIwODIwMTkwNTA5MjkxNTA1MDU2NWI2MDAwODE5MDUwNjAyMDgyMDE5MDUwOTE5MDUwNTY1YjYwMDA4MTE1MTU5MDUwOTE5MDUwNTY1YjYxMGQyMjgxNjEwZDBkNTY1YjgyNTI1MDUwNTY1YjYwMDA4MTUxOTA1MDkxOTA1MDU2NWI2MDAwODI4MjUyNjAyMDgyMDE5MDUwOTI5MTUwNTA1NjViNjAwMDViODM4MTEwMTU2MTBkNjI1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTBkNDc1NjViODM4MTExMTU2MTBkNzE1NzYwMDA4NDg0MDE1MjViNTA1MDUwNTA1NjViNjAwMDYwMWYxOTYwMWY4MzAxMTY5MDUwOTE5MDUwNTY1YjYwMDA2MTBkOTM4MjYxMGQyODU2NWI2MTBkOWQ4MTg1NjEwZDMzNTY1YjkzNTA2MTBkYWQ4MTg1NjAyMDg2MDE2MTBkNDQ1NjViNjEwZGI2ODE2MTBkNzc1NjViODQwMTkxNTA1MDkyOTE1MDUwNTY1YjYwMDA2MDQwODMwMTYwMDA4MzAxNTE2MTBkZDk2MDAwODYwMTgyNjEwZDE5NTY1YjUwNjAyMDgzMDE1MTg0ODIwMzYwMjA4NjAxNTI2MTBkZjE4MjgyNjEwZDg4NTY1YjkxNTA1MDgwOTE1MDUwOTI5MTUwNTA1NjViNjAwMDYxMGUwYTgzODM2MTBkYzE1NjViOTA1MDkyOTE1MDUwNTY1YjYwMDA2MDIwODIwMTkwNTA5MTkwNTA1NjViNjAwMDYxMGUyYTgyNjEwY2UxNTY1YjYxMGUzNDgxODU2MTBjZWM1NjViOTM1MDgzNjAyMDgyMDI4NTAxNjEwZTQ2ODU2MTBjZmQ1NjViODA2MDAwNWI4NTgxMTAxNTYxMGU4MjU3ODQ4NDAzODk1MjgxNTE2MTBlNjM4NTgyNjEwZGZlNTY1Yjk0NTA2MTBlNmU4MzYxMGUxMjU2NWI5MjUwNjAyMDhhMDE5OTUwNTA2MDAxODEwMTkwNTA2MTBlNGE1NjViNTA4Mjk3NTA4Nzk1NTA1MDUwNTA1MDUwOTI5MTUwNTA1NjViNjAwMDYwMjA4MjAxOTA1MDgxODEwMzYwMDA4MzAxNTI2MTBlYWU4MTg0NjEwZTFmNTY1YjkwNTA5MjkxNTA1MDU2NWI2MDAwODA4MzYwMWY4NDAxMTI2MTBlY2M1NzYxMGVjYjYxMGMyZjU2NWI1YjgyMzU5MDUwNjdmZmZmZmZmZmZmZmZmZmZmODExMTE1NjEwZWU5NTc2MTBlZTg2MTBjMzQ1NjViNWI2MDIwODMwMTkxNTA4MzYwMjA4MjAyODMwMTExMTU2MTBmMDU1NzYxMGYwNDYxMGMzOTU2NWI1YjkyNTA5MjkwNTA1NjViNjAwMDgwNjAyMDgzODUwMzEyMTU2MTBmMjM1NzYxMGYyMjYxMGMyNTU2NWI1YjYwMDA4MzAxMzU2N2ZmZmZmZmZmZmZmZmZmZmY4MTExMTU2MTBmNDE1NzYxMGY0MDYxMGMyYTU2NWI1YjYxMGY0ZDg1ODI4NjAxNjEwZWI2NTY1YjkyNTA5MjUwNTA5MjUwOTI5MDUwNTY1YjYwMDA4MTUxOTA1MDkxOTA1MDU2NWI2MDAwODI4MjUyNjAyMDgyMDE5MDUwOTI5MTUwNTA1NjViNjAwMDgxOTA1MDYwMjA4MjAxOTA1MDkxOTA1MDU2NWI2MDAwNjEwZjkxODM4MzYxMGQ4ODU2NWI5MDUwOTI5MTUwNTA1NjViNjAwMDYwMjA4MjAxOTA1MDkxOTA1MDU2NWI2MDAwNjEwZmIxODI2MTBmNTk1NjViNjEwZmJiODE4NTYxMGY2NDU2NWI5MzUwODM2MDIwODIwMjg1MDE2MTBmY2Q4NTYxMGY3NTU2NWI4MDYwMDA1Yjg1ODExMDE1NjExMDA5NTc4NDg0MDM4OTUyODE1MTYxMGZlYTg1ODI2MTBmODU1NjViOTQ1MDYxMGZmNTgzNjEwZjk5NTY1YjkyNTA2MDIwOGEwMTk5NTA1MDYwMDE4MTAxOTA1MDYxMGZkMTU2NWI1MDgyOTc1MDg3OTU1MDUwNTA1MDUwNTA5MjkxNTA1MDU2NWI2MDAwNjA0MDgyMDE5MDUwNjExMDMwNjAwMDgzMDE4NTYxMGJmYjU2NWI4MTgxMDM2MDIwODMwMTUyNjExMDQyODE4NDYxMGZhNjU2NWI5MDUwOTM5MjUwNTA1MDU2NWI2MDAwODE5MDUwOTE5MDUwNTY1YjYxMTA1ZTgxNjExMDRiNTY1YjgyNTI1MDUwNTY1YjYwMDA2MDIwODIwMTkwNTA2MTEwNzk2MDAwODMwMTg0NjExMDU1NTY1YjkyOTE1MDUwNTY1YjYxMTA4ODgxNjEwZDBkNTY1YjgxMTQ2MTEwOTM1NzYwMDA4MGZkNWI1MDU2NWI2MDAwODEzNTkwNTA2MTEwYTU4MTYxMTA3ZjU2NWI5MjkxNTA1MDU2NWI2MDAwODA2MDAwNjA0MDg0ODYwMzEyMTU2MTEwYzQ1NzYxMTBjMzYxMGMyNTU2NWI1YjYwMDA2MTEwZDI4NjgyODcwMTYxMTA5NjU2NWI5MzUwNTA2MDIwODQwMTM1NjdmZmZmZmZmZmZmZmZmZmZmODExMTE1NjExMGYzNTc2MTEwZjI2MTBjMmE1NjViNWI2MTEwZmY4NjgyODcwMTYxMGViNjU2NWI5MjUwOTI1MDUwOTI1MDkyNTA5MjU2NWI2MDAwNjA2MDgyMDE5MDUwNjExMTIwNjAwMDgzMDE4NjYxMGJmYjU2NWI2MTExMmQ2MDIwODMwMTg1NjExMDU1NTY1YjgxODEwMzYwNDA4MzAxNTI2MTExM2Y4MTg0NjEwZTFmNTY1YjkwNTA5NDkzNTA1MDUwNTA1NjViNjAwMDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjgyMTY5MDUwOTE5MDUwNTY1YjYwMDA2MTExNzQ4MjYxMTE0OTU2NWI5MDUwOTE5MDUwNTY1YjYxMTE4NDgxNjExMTY5NTY1YjgxMTQ2MTExOGY1NzYwMDA4MGZkNWI1MDU2NWI2MDAwODEzNTkwNTA2MTExYTE4MTYxMTE3YjU2NWI5MjkxNTA1MDU2NWI2MDAwNjAyMDgyODQwMzEyMTU2MTExYmQ1NzYxMTFiYzYxMGMyNTU2NWI1YjYwMDA2MTExY2I4NDgyODUwMTYxMTE5MjU2NWI5MTUwNTA5MjkxNTA1MDU2NWI2MDAwODA4MzYwMWY4NDAxMTI2MTExZWE1NzYxMTFlOTYxMGMyZjU2NWI1YjgyMzU5MDUwNjdmZmZmZmZmZmZmZmZmZmZmODExMTE1NjExMjA3NTc2MTEyMDY2MTBjMzQ1NjViNWI2MDIwODMwMTkxNTA4MzYwMjA4MjAyODMwMTExMTU2MTEyMjM1NzYxMTIyMjYxMGMzOTU2NWI1YjkyNTA5MjkwNTA1NjViNjAwMDgwNjAyMDgzODUwMzEyMTU2MTEyNDE1NzYxMTI0MDYxMGMyNTU2NWI1YjYwMDA4MzAxMzU2N2ZmZmZmZmZmZmZmZmZmZmY4MTExMTU2MTEyNWY1NzYxMTI1ZTYxMGMyYTU2NWI1YjYxMTI2Yjg1ODI4NjAxNjExMWQ0NTY1YjkyNTA5MjUwNTA5MjUwOTI5MDUwNTY1YjYxMTI4MDgxNjExMTY5NTY1YjgyNTI1MDUwNTY1YjYwMDA2MDIwODIwMTkwNTA2MTEyOWI2MDAwODMwMTg0NjExMjc3NTY1YjkyOTE1MDUwNTY1YjYxMTJhYTgxNjEwYmYxNTY1YjgxMTQ2MTEyYjU1NzYwMDA4MGZkNWI1MDU2NWI2MDAwODEzNTkwNTA2MTEyYzc4MTYxMTJhMTU2NWI5MjkxNTA1MDU2NWI2MDAwNjAyMDgyODQwMzEyMTU2MTEyZTM1NzYxMTJlMjYxMGMyNTU2NWI1YjYwMDA2MTEyZjE4NDgyODUwMTYxMTJiODU2NWI5MTUwNTA5MjkxNTA1MDU2NWI3ZjRlNDg3YjcxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA2MDAwNTI2MDQxNjAwNDUyNjAyNDYwMDBmZDViN2Y0ZTQ4N2I3MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjAwMDUyNjAzMjYwMDQ1MjYwMjQ2MDAwZmQ1YjYwMDA4MGZkNWI2MDAwODBmZDViNjAwMDgwZmQ1YjYwMDA4MjM1NjAwMTYwODAwMzgzMzYwMzAzODExMjYxMTM4MzU3NjExMzgyNjExMzU4NTY1YjViODA4MzAxOTE1MDUwOTI5MTUwNTA1NjViNjAwMDgwODMzNTYwMDE2MDIwMDM4NDM2MDMwMzgxMTI2MTEzYWM1NzYxMTNhYjYxMTM1ODU2NWI1YjgwODQwMTkyNTA4MjM1OTE1MDY3ZmZmZmZmZmZmZmZmZmZmZjgyMTExNTYxMTNjZTU3NjExM2NkNjExMzVkNTY1YjViNjAyMDgzMDE5MjUwNjAwMTgyMDIzNjAzODMxMzE1NjExM2VhNTc2MTEzZTk2MTEzNjI1NjViNWI1MDkyNTA5MjkwNTA1NjViNjAwMDgxOTA1MDkyOTE1MDUwNTY1YjgyODE4MzM3NjAwMDgzODMwMTUyNTA1MDUwNTY1YjYwMDA2MTE0MTg4Mzg1NjExM2YyNTY1YjkzNTA2MTE0MjU4Mzg1ODQ2MTEzZmQ1NjViODI4NDAxOTA1MDkzOTI1MDUwNTA1NjViNjAwMDYxMTQzZTgyODQ4NjYxMTQwYzU2NWI5MTUwODE5MDUwOTM5MjUwNTA1MDU2NWI2MDAwODI4MjUyNjAyMDgyMDE5MDUwOTI5MTUwNTA1NjViN2Y0ZDc1NmM3NDY5NjM2MTZjNmMzMzNhMjA3NjYxNmM3NTY1MjA2ZDY5NzM2ZDYxNzQ2MzY4MDAwMDAwMDAwMDAwNjAwMDgyMDE1MjUwNTY1YjYwMDA2MTE0OTE2MDFhODM2MTE0NGE1NjViOTE1MDYxMTQ5YzgyNjExNDViNTY1YjYwMjA4MjAxOTA1MDkxOTA1MDU2NWI2MDAwNjAyMDgyMDE5MDUwODE4MTAzNjAwMDgzMDE1MjYxMTRjMDgxNjExNDg0NTY1YjkwNTA5MTkwNTA1NjViNjAwMDgyMzU2MDAxNjA0MDAzODMzNjAzMDM4MTEyNjExNGUzNTc2MTE0ZTI2MTEzNTg1NjViNWI4MDgzMDE5MTUwNTA5MjkxNTA1MDU2NWI3ZjRkNzU2Yzc0Njk2MzYxNmM2YzMzM2EyMDYzNjE2YzZjMjA2NjYxNjk2YzY1NjQwMDAwMDAwMDAwMDAwMDAwMDA2MDAwODIwMTUyNTA1NjViNjAwMDYxMTUyNTYwMTc4MzYxMTQ0YTU2NWI5MTUwNjExNTMwODI2MTE0ZWY1NjViNjAyMDgyMDE5MDUwOTE5MDUwNTY1YjYwMDA2MDIwODIwMTkwNTA4MTgxMDM2MDAwODMwMTUyNjExNTU0ODE2MTE1MTg1NjViOTA1MDkxOTA1MDU2NWI2MDAwODIzNTYwMDE2MDYwMDM4MzM2MDMwMzgxMTI2MTE1Nzc1NzYxMTU3NjYxMTM1ODU2NWI1YjgwODMwMTkxNTA1MDkyOTE1MDUwNTZmZWEyNjQ2OTcwNjY3MzU4MjIxMjIwMjBjMWJjOWFhY2Y4ZTRhNjUwNzE5MzQzMmE4OTVhOGU3NzA5NGY0NWExMzk1NTgzZjA3YjI0ZTg2MGVmMDZjZDY0NzM2ZjZjNjM0MzAwMDgwYzAwMzMnO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29udHJhY3RzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/constants/contracts.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/constants/solidity.js": /*!******************************************************!*\ !*** ./node_modules/viem/_esm/constants/solidity.js ***! \******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ panicReasons: () => (/* binding */ panicReasons),\n/* harmony export */ solidityError: () => (/* binding */ solidityError),\n/* harmony export */ solidityPanic: () => (/* binding */ solidityPanic)\n/* harmony export */ });\n// https://docs.soliditylang.org/en/v0.8.16/control-structures.html#panic-via-assert-and-error-via-require\nconst panicReasons = {\n 1: 'An `assert` condition failed.',\n 17: 'Arithmetic operation resulted in underflow or overflow.',\n 18: 'Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).',\n 33: 'Attempted to convert to an invalid type.',\n 34: 'Attempted to access a storage byte array that is incorrectly encoded.',\n 49: 'Performed `.pop()` on an empty array',\n 50: 'Array index is out of bounds.',\n 65: 'Allocated too much memory or created an array which is too large.',\n 81: 'Attempted to call a zero-initialized variable of internal function type.',\n};\nconst solidityError = {\n inputs: [\n {\n name: 'message',\n type: 'string',\n },\n ],\n name: 'Error',\n type: 'error',\n};\nconst solidityPanic = {\n inputs: [\n {\n name: 'reason',\n type: 'uint256',\n },\n ],\n name: 'Panic',\n type: 'error',\n};\n//# sourceMappingURL=solidity.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL3NvbGlkaXR5LmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2NvbnN0YW50cy9zb2xpZGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2RvY3Muc29saWRpdHlsYW5nLm9yZy9lbi92MC44LjE2L2NvbnRyb2wtc3RydWN0dXJlcy5odG1sI3BhbmljLXZpYS1hc3NlcnQtYW5kLWVycm9yLXZpYS1yZXF1aXJlXG5leHBvcnQgY29uc3QgcGFuaWNSZWFzb25zID0ge1xuICAgIDE6ICdBbiBgYXNzZXJ0YCBjb25kaXRpb24gZmFpbGVkLicsXG4gICAgMTc6ICdBcml0aG1ldGljIG9wZXJhdGlvbiByZXN1bHRlZCBpbiB1bmRlcmZsb3cgb3Igb3ZlcmZsb3cuJyxcbiAgICAxODogJ0RpdmlzaW9uIG9yIG1vZHVsbyBieSB6ZXJvIChlLmcuIGA1IC8gMGAgb3IgYDIzICUgMGApLicsXG4gICAgMzM6ICdBdHRlbXB0ZWQgdG8gY29udmVydCB0byBhbiBpbnZhbGlkIHR5cGUuJyxcbiAgICAzNDogJ0F0dGVtcHRlZCB0byBhY2Nlc3MgYSBzdG9yYWdlIGJ5dGUgYXJyYXkgdGhhdCBpcyBpbmNvcnJlY3RseSBlbmNvZGVkLicsXG4gICAgNDk6ICdQZXJmb3JtZWQgYC5wb3AoKWAgb24gYW4gZW1wdHkgYXJyYXknLFxuICAgIDUwOiAnQXJyYXkgaW5kZXggaXMgb3V0IG9mIGJvdW5kcy4nLFxuICAgIDY1OiAnQWxsb2NhdGVkIHRvbyBtdWNoIG1lbW9yeSBvciBjcmVhdGVkIGFuIGFycmF5IHdoaWNoIGlzIHRvbyBsYXJnZS4nLFxuICAgIDgxOiAnQXR0ZW1wdGVkIHRvIGNhbGwgYSB6ZXJvLWluaXRpYWxpemVkIHZhcmlhYmxlIG9mIGludGVybmFsIGZ1bmN0aW9uIHR5cGUuJyxcbn07XG5leHBvcnQgY29uc3Qgc29saWRpdHlFcnJvciA9IHtcbiAgICBpbnB1dHM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ21lc3NhZ2UnLFxuICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIH0sXG4gICAgXSxcbiAgICBuYW1lOiAnRXJyb3InLFxuICAgIHR5cGU6ICdlcnJvcicsXG59O1xuZXhwb3J0IGNvbnN0IHNvbGlkaXR5UGFuaWMgPSB7XG4gICAgaW5wdXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdyZWFzb24nLFxuICAgICAgICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgbmFtZTogJ1BhbmljJyxcbiAgICB0eXBlOiAnZXJyb3InLFxufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNvbGlkaXR5LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/constants/solidity.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/constants/strings.js": /*!*****************************************************!*\ !*** ./node_modules/viem/_esm/constants/strings.js ***! \*****************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ presignMessagePrefix: () => (/* binding */ presignMessagePrefix)\n/* harmony export */ });\nconst presignMessagePrefix = '\\x19Ethereum Signed Message:\\n';\n//# sourceMappingURL=strings.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vY29uc3RhbnRzL3N0cmluZ3MuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFPO0FBQ1AiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2NvbnN0YW50cy9zdHJpbmdzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBwcmVzaWduTWVzc2FnZVByZWZpeCA9ICdcXHgxOUV0aGVyZXVtIFNpZ25lZCBNZXNzYWdlOlxcbic7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHJpbmdzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/constants/strings.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js": /*!**********************************************!*\ !*** ./node_modules/viem/_esm/errors/abi.js ***! \**********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbiConstructorNotFoundError: () => (/* binding */ AbiConstructorNotFoundError),\n/* harmony export */ AbiConstructorParamsNotFoundError: () => (/* binding */ AbiConstructorParamsNotFoundError),\n/* harmony export */ AbiDecodingDataSizeInvalidError: () => (/* binding */ AbiDecodingDataSizeInvalidError),\n/* harmony export */ AbiDecodingDataSizeTooSmallError: () => (/* binding */ AbiDecodingDataSizeTooSmallError),\n/* harmony export */ AbiDecodingZeroDataError: () => (/* binding */ AbiDecodingZeroDataError),\n/* harmony export */ AbiEncodingArrayLengthMismatchError: () => (/* binding */ AbiEncodingArrayLengthMismatchError),\n/* harmony export */ AbiEncodingBytesSizeMismatchError: () => (/* binding */ AbiEncodingBytesSizeMismatchError),\n/* harmony export */ AbiEncodingLengthMismatchError: () => (/* binding */ AbiEncodingLengthMismatchError),\n/* harmony export */ AbiErrorInputsNotFoundError: () => (/* binding */ AbiErrorInputsNotFoundError),\n/* harmony export */ AbiErrorNotFoundError: () => (/* binding */ AbiErrorNotFoundError),\n/* harmony export */ AbiErrorSignatureNotFoundError: () => (/* binding */ AbiErrorSignatureNotFoundError),\n/* harmony export */ AbiEventNotFoundError: () => (/* binding */ AbiEventNotFoundError),\n/* harmony export */ AbiEventSignatureEmptyTopicsError: () => (/* binding */ AbiEventSignatureEmptyTopicsError),\n/* harmony export */ AbiEventSignatureNotFoundError: () => (/* binding */ AbiEventSignatureNotFoundError),\n/* harmony export */ AbiFunctionNotFoundError: () => (/* binding */ AbiFunctionNotFoundError),\n/* harmony export */ AbiFunctionOutputsNotFoundError: () => (/* binding */ AbiFunctionOutputsNotFoundError),\n/* harmony export */ AbiFunctionSignatureNotFoundError: () => (/* binding */ AbiFunctionSignatureNotFoundError),\n/* harmony export */ AbiItemAmbiguityError: () => (/* binding */ AbiItemAmbiguityError),\n/* harmony export */ BytesSizeMismatchError: () => (/* binding */ BytesSizeMismatchError),\n/* harmony export */ DecodeLogDataMismatch: () => (/* binding */ DecodeLogDataMismatch),\n/* harmony export */ DecodeLogTopicsMismatch: () => (/* binding */ DecodeLogTopicsMismatch),\n/* harmony export */ InvalidAbiDecodingTypeError: () => (/* binding */ InvalidAbiDecodingTypeError),\n/* harmony export */ InvalidAbiEncodingTypeError: () => (/* binding */ InvalidAbiEncodingTypeError),\n/* harmony export */ InvalidArrayError: () => (/* binding */ InvalidArrayError),\n/* harmony export */ InvalidDefinitionTypeError: () => (/* binding */ InvalidDefinitionTypeError),\n/* harmony export */ UnsupportedPackedAbiType: () => (/* binding */ UnsupportedPackedAbiType)\n/* harmony export */ });\n/* harmony import */ var _utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/abi/formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n/* harmony import */ var _utils_data_size_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/data/size.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\n\n\nclass AbiConstructorNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ docsPath }) {\n super([\n 'A constructor was not found on the ABI.',\n 'Make sure you are using the correct ABI and that the constructor exists on it.',\n ].join('\\n'), {\n docsPath,\n name: 'AbiConstructorNotFoundError',\n });\n }\n}\nclass AbiConstructorParamsNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ docsPath }) {\n super([\n 'Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.',\n 'Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists.',\n ].join('\\n'), {\n docsPath,\n name: 'AbiConstructorParamsNotFoundError',\n });\n }\n}\nclass AbiDecodingDataSizeInvalidError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ data, size }) {\n super([\n `Data size of ${size} bytes is invalid.`,\n 'Size must be in increments of 32 bytes (size % 32 === 0).',\n ].join('\\n'), {\n metaMessages: [`Data: ${data} (${size} bytes)`],\n name: 'AbiDecodingDataSizeInvalidError',\n });\n }\n}\nclass AbiDecodingDataSizeTooSmallError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ data, params, size, }) {\n super([`Data size of ${size} bytes is too small for given parameters.`].join('\\n'), {\n metaMessages: [\n `Params: (${(0,_utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_1__.formatAbiParams)(params, { includeName: true })})`,\n `Data: ${data} (${size} bytes)`,\n ],\n name: 'AbiDecodingDataSizeTooSmallError',\n });\n Object.defineProperty(this, \"data\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"params\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"size\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.data = data;\n this.params = params;\n this.size = size;\n }\n}\nclass AbiDecodingZeroDataError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor() {\n super('Cannot decode zero data (\"0x\") with ABI parameters.', {\n name: 'AbiDecodingZeroDataError',\n });\n }\n}\nclass AbiEncodingArrayLengthMismatchError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ expectedLength, givenLength, type, }) {\n super([\n `ABI encoding array length mismatch for type ${type}.`,\n `Expected length: ${expectedLength}`,\n `Given length: ${givenLength}`,\n ].join('\\n'), { name: 'AbiEncodingArrayLengthMismatchError' });\n }\n}\nclass AbiEncodingBytesSizeMismatchError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ expectedSize, value }) {\n super(`Size of bytes \"${value}\" (bytes${(0,_utils_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(value)}) does not match expected size (bytes${expectedSize}).`, { name: 'AbiEncodingBytesSizeMismatchError' });\n }\n}\nclass AbiEncodingLengthMismatchError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ expectedLength, givenLength, }) {\n super([\n 'ABI encoding params/values length mismatch.',\n `Expected length (params): ${expectedLength}`,\n `Given length (values): ${givenLength}`,\n ].join('\\n'), { name: 'AbiEncodingLengthMismatchError' });\n }\n}\nclass AbiErrorInputsNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(errorName, { docsPath }) {\n super([\n `Arguments (\\`args\\`) were provided to \"${errorName}\", but \"${errorName}\" on the ABI does not contain any parameters (\\`inputs\\`).`,\n 'Cannot encode error result without knowing what the parameter types are.',\n 'Make sure you are using the correct ABI and that the inputs exist on it.',\n ].join('\\n'), {\n docsPath,\n name: 'AbiErrorInputsNotFoundError',\n });\n }\n}\nclass AbiErrorNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(errorName, { docsPath } = {}) {\n super([\n `Error ${errorName ? `\"${errorName}\" ` : ''}not found on ABI.`,\n 'Make sure you are using the correct ABI and that the error exists on it.',\n ].join('\\n'), {\n docsPath,\n name: 'AbiErrorNotFoundError',\n });\n }\n}\nclass AbiErrorSignatureNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(signature, { docsPath }) {\n super([\n `Encoded error signature \"${signature}\" not found on ABI.`,\n 'Make sure you are using the correct ABI and that the error exists on it.',\n `You can look up the decoded signature here: https://openchain.xyz/signatures?query=${signature}.`,\n ].join('\\n'), {\n docsPath,\n name: 'AbiErrorSignatureNotFoundError',\n });\n Object.defineProperty(this, \"signature\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.signature = signature;\n }\n}\nclass AbiEventSignatureEmptyTopicsError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ docsPath }) {\n super('Cannot extract event signature from empty topics.', {\n docsPath,\n name: 'AbiEventSignatureEmptyTopicsError',\n });\n }\n}\nclass AbiEventSignatureNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(signature, { docsPath }) {\n super([\n `Encoded event signature \"${signature}\" not found on ABI.`,\n 'Make sure you are using the correct ABI and that the event exists on it.',\n `You can look up the signature here: https://openchain.xyz/signatures?query=${signature}.`,\n ].join('\\n'), {\n docsPath,\n name: 'AbiEventSignatureNotFoundError',\n });\n }\n}\nclass AbiEventNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(eventName, { docsPath } = {}) {\n super([\n `Event ${eventName ? `\"${eventName}\" ` : ''}not found on ABI.`,\n 'Make sure you are using the correct ABI and that the event exists on it.',\n ].join('\\n'), {\n docsPath,\n name: 'AbiEventNotFoundError',\n });\n }\n}\nclass AbiFunctionNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(functionName, { docsPath } = {}) {\n super([\n `Function ${functionName ? `\"${functionName}\" ` : ''}not found on ABI.`,\n 'Make sure you are using the correct ABI and that the function exists on it.',\n ].join('\\n'), {\n docsPath,\n name: 'AbiFunctionNotFoundError',\n });\n }\n}\nclass AbiFunctionOutputsNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(functionName, { docsPath }) {\n super([\n `Function \"${functionName}\" does not contain any \\`outputs\\` on ABI.`,\n 'Cannot decode function result without knowing what the parameter types are.',\n 'Make sure you are using the correct ABI and that the function exists on it.',\n ].join('\\n'), {\n docsPath,\n name: 'AbiFunctionOutputsNotFoundError',\n });\n }\n}\nclass AbiFunctionSignatureNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(signature, { docsPath }) {\n super([\n `Encoded function signature \"${signature}\" not found on ABI.`,\n 'Make sure you are using the correct ABI and that the function exists on it.',\n `You can look up the signature here: https://openchain.xyz/signatures?query=${signature}.`,\n ].join('\\n'), {\n docsPath,\n name: 'AbiFunctionSignatureNotFoundError',\n });\n }\n}\nclass AbiItemAmbiguityError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(x, y) {\n super('Found ambiguous types in overloaded ABI items.', {\n metaMessages: [\n `\\`${x.type}\\` in \\`${(0,_utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_1__.formatAbiItem)(x.abiItem)}\\`, and`,\n `\\`${y.type}\\` in \\`${(0,_utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_1__.formatAbiItem)(y.abiItem)}\\``,\n '',\n 'These types encode differently and cannot be distinguished at runtime.',\n 'Remove one of the ambiguous items in the ABI.',\n ],\n name: 'AbiItemAmbiguityError',\n });\n }\n}\nclass BytesSizeMismatchError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ expectedSize, givenSize, }) {\n super(`Expected bytes${expectedSize}, got bytes${givenSize}.`, {\n name: 'BytesSizeMismatchError',\n });\n }\n}\nclass DecodeLogDataMismatch extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ abiItem, data, params, size, }) {\n super([\n `Data size of ${size} bytes is too small for non-indexed event parameters.`,\n ].join('\\n'), {\n metaMessages: [\n `Params: (${(0,_utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_1__.formatAbiParams)(params, { includeName: true })})`,\n `Data: ${data} (${size} bytes)`,\n ],\n name: 'DecodeLogDataMismatch',\n });\n Object.defineProperty(this, \"abiItem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"data\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"params\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"size\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.abiItem = abiItem;\n this.data = data;\n this.params = params;\n this.size = size;\n }\n}\nclass DecodeLogTopicsMismatch extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ abiItem, param, }) {\n super([\n `Expected a topic for indexed event parameter${param.name ? ` \"${param.name}\"` : ''} on event \"${(0,_utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_1__.formatAbiItem)(abiItem, { includeName: true })}\".`,\n ].join('\\n'), { name: 'DecodeLogTopicsMismatch' });\n Object.defineProperty(this, \"abiItem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.abiItem = abiItem;\n }\n}\nclass InvalidAbiEncodingTypeError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(type, { docsPath }) {\n super([\n `Type \"${type}\" is not a valid encoding type.`,\n 'Please provide a valid ABI type.',\n ].join('\\n'), { docsPath, name: 'InvalidAbiEncodingType' });\n }\n}\nclass InvalidAbiDecodingTypeError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(type, { docsPath }) {\n super([\n `Type \"${type}\" is not a valid decoding type.`,\n 'Please provide a valid ABI type.',\n ].join('\\n'), { docsPath, name: 'InvalidAbiDecodingType' });\n }\n}\nclass InvalidArrayError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(value) {\n super([`Value \"${value}\" is not a valid array.`].join('\\n'), {\n name: 'InvalidArrayError',\n });\n }\n}\nclass InvalidDefinitionTypeError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(type) {\n super([\n `\"${type}\" is not a valid definition type.`,\n 'Valid types: \"function\", \"event\", \"error\"',\n ].join('\\n'), { name: 'InvalidDefinitionTypeError' });\n }\n}\nclass UnsupportedPackedAbiType extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(type) {\n super(`Type \"${type}\" is not supported for packed encoding.`, {\n name: 'UnsupportedPackedAbiType',\n });\n }\n}\n//# sourceMappingURL=abi.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2FiaS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUErRTtBQUNsQztBQUNQO0FBQy9CLDBDQUEwQywrQ0FBUztBQUMxRCxrQkFBa0IsVUFBVTtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLGdEQUFnRCwrQ0FBUztBQUNoRSxrQkFBa0IsVUFBVTtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLDhDQUE4QywrQ0FBUztBQUM5RCxrQkFBa0IsWUFBWTtBQUM5QjtBQUNBLDRCQUE0QixNQUFNO0FBQ2xDO0FBQ0E7QUFDQSxvQ0FBb0MsTUFBTSxHQUFHLE1BQU07QUFDbkQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLCtDQUErQywrQ0FBUztBQUMvRCxrQkFBa0IscUJBQXFCO0FBQ3ZDLCtCQUErQixNQUFNO0FBQ3JDO0FBQ0EsNEJBQTRCLDRFQUFlLFdBQVcsbUJBQW1CLEVBQUU7QUFDM0UsMkJBQTJCLE1BQU0sR0FBRyxNQUFNO0FBQzFDO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHVDQUF1QywrQ0FBUztBQUN2RDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLGtEQUFrRCwrQ0FBUztBQUNsRSxrQkFBa0Isb0NBQW9DO0FBQ3REO0FBQ0EsMkRBQTJELEtBQUs7QUFDaEUsZ0NBQWdDLGVBQWU7QUFDL0MsNkJBQTZCLFlBQVk7QUFDekMsd0JBQXdCLDZDQUE2QztBQUNyRTtBQUNBO0FBQ08sZ0RBQWdELCtDQUFTO0FBQ2hFLGtCQUFrQixxQkFBcUI7QUFDdkMsZ0NBQWdDLE1BQU0sVUFBVSx5REFBSSxRQUFRLHVDQUF1QyxhQUFhLE9BQU8sMkNBQTJDO0FBQ2xLO0FBQ0E7QUFDTyw2Q0FBNkMsK0NBQVM7QUFDN0Qsa0JBQWtCLDhCQUE4QjtBQUNoRDtBQUNBO0FBQ0EseUNBQXlDLGVBQWU7QUFDeEQsc0NBQXNDLFlBQVk7QUFDbEQsd0JBQXdCLHdDQUF3QztBQUNoRTtBQUNBO0FBQ08sMENBQTBDLCtDQUFTO0FBQzFELDZCQUE2QixVQUFVO0FBQ3ZDO0FBQ0Esc0RBQXNELFVBQVUsVUFBVSxVQUFVO0FBQ3BGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLG9DQUFvQywrQ0FBUztBQUNwRCw2QkFBNkIsV0FBVyxJQUFJO0FBQzVDO0FBQ0EscUJBQXFCLGdCQUFnQixVQUFVLFNBQVM7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLDZDQUE2QywrQ0FBUztBQUM3RCw2QkFBNkIsVUFBVTtBQUN2QztBQUNBLHdDQUF3QyxVQUFVO0FBQ2xEO0FBQ0Esa0dBQWtHLFVBQVU7QUFDNUc7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sZ0RBQWdELCtDQUFTO0FBQ2hFLGtCQUFrQixVQUFVO0FBQzVCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ08sNkNBQTZDLCtDQUFTO0FBQzdELDZCQUE2QixVQUFVO0FBQ3ZDO0FBQ0Esd0NBQXdDLFVBQVU7QUFDbEQ7QUFDQSwwRkFBMEYsVUFBVTtBQUNwRztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLG9DQUFvQywrQ0FBUztBQUNwRCw2QkFBNkIsV0FBVyxJQUFJO0FBQzVDO0FBQ0EscUJBQXFCLGdCQUFnQixVQUFVLFNBQVM7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLHVDQUF1QywrQ0FBUztBQUN2RCxnQ0FBZ0MsV0FBVyxJQUFJO0FBQy9DO0FBQ0Esd0JBQXdCLG1CQUFtQixhQUFhLFNBQVM7QUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLDhDQUE4QywrQ0FBUztBQUM5RCxnQ0FBZ0MsVUFBVTtBQUMxQztBQUNBLHlCQUF5QixhQUFhO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLGdEQUFnRCwrQ0FBUztBQUNoRSw2QkFBNkIsVUFBVTtBQUN2QztBQUNBLDJDQUEyQyxVQUFVO0FBQ3JEO0FBQ0EsMEZBQTBGLFVBQVU7QUFDcEc7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxvQ0FBb0MsK0NBQVM7QUFDcEQ7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLE9BQU8sVUFBVSwwRUFBYSxZQUFZO0FBQy9ELHFCQUFxQixPQUFPLFVBQVUsMEVBQWEsWUFBWTtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxxQ0FBcUMsK0NBQVM7QUFDckQsa0JBQWtCLDBCQUEwQjtBQUM1QywrQkFBK0IsYUFBYSxhQUFhLFVBQVU7QUFDbkU7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLG9DQUFvQywrQ0FBUztBQUNwRCxrQkFBa0IsOEJBQThCO0FBQ2hEO0FBQ0EsNEJBQTRCLE1BQU07QUFDbEM7QUFDQTtBQUNBLDRCQUE0Qiw0RUFBZSxXQUFXLG1CQUFtQixFQUFFO0FBQzNFLDJCQUEyQixNQUFNLEdBQUcsTUFBTTtBQUMxQztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sc0NBQXNDLCtDQUFTO0FBQ3RELGtCQUFrQixpQkFBaUI7QUFDbkM7QUFDQSwyREFBMkQsa0JBQWtCLFdBQVcsU0FBUyxZQUFZLDBFQUFhLFlBQVksbUJBQW1CLEVBQUU7QUFDM0osd0JBQXdCLGlDQUFpQztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLDBDQUEwQywrQ0FBUztBQUMxRCx3QkFBd0IsVUFBVTtBQUNsQztBQUNBLHFCQUFxQixLQUFLO0FBQzFCO0FBQ0Esd0JBQXdCLDBDQUEwQztBQUNsRTtBQUNBO0FBQ08sMENBQTBDLCtDQUFTO0FBQzFELHdCQUF3QixVQUFVO0FBQ2xDO0FBQ0EscUJBQXFCLEtBQUs7QUFDMUI7QUFDQSx3QkFBd0IsMENBQTBDO0FBQ2xFO0FBQ0E7QUFDTyxnQ0FBZ0MsK0NBQVM7QUFDaEQ7QUFDQSx5QkFBeUIsTUFBTTtBQUMvQjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ08seUNBQXlDLCtDQUFTO0FBQ3pEO0FBQ0E7QUFDQSxnQkFBZ0IsS0FBSztBQUNyQjtBQUNBLHdCQUF3QixvQ0FBb0M7QUFDNUQ7QUFDQTtBQUNPLHVDQUF1QywrQ0FBUztBQUN2RDtBQUNBLHVCQUF1QixLQUFLO0FBQzVCO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2FiaS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXRBYmlJdGVtLCBmb3JtYXRBYmlQYXJhbXMgfSBmcm9tICcuLi91dGlscy9hYmkvZm9ybWF0QWJpSXRlbS5qcyc7XG5pbXBvcnQgeyBzaXplIH0gZnJvbSAnLi4vdXRpbHMvZGF0YS9zaXplLmpzJztcbmltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4vYmFzZS5qcyc7XG5leHBvcnQgY2xhc3MgQWJpQ29uc3RydWN0b3JOb3RGb3VuZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGRvY3NQYXRoIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgJ0EgY29uc3RydWN0b3Igd2FzIG5vdCBmb3VuZCBvbiB0aGUgQUJJLicsXG4gICAgICAgICAgICAnTWFrZSBzdXJlIHlvdSBhcmUgdXNpbmcgdGhlIGNvcnJlY3QgQUJJIGFuZCB0aGF0IHRoZSBjb25zdHJ1Y3RvciBleGlzdHMgb24gaXQuJyxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBuYW1lOiAnQWJpQ29uc3RydWN0b3JOb3RGb3VuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFiaUNvbnN0cnVjdG9yUGFyYW1zTm90Rm91bmRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBkb2NzUGF0aCB9KSB7XG4gICAgICAgIHN1cGVyKFtcbiAgICAgICAgICAgICdDb25zdHJ1Y3RvciBhcmd1bWVudHMgd2VyZSBwcm92aWRlZCAoYGFyZ3NgKSwgYnV0IGEgY29uc3RydWN0b3IgcGFyYW1ldGVycyAoYGlucHV0c2ApIHdlcmUgbm90IGZvdW5kIG9uIHRoZSBBQkkuJyxcbiAgICAgICAgICAgICdNYWtlIHN1cmUgeW91IGFyZSB1c2luZyB0aGUgY29ycmVjdCBBQkksIGFuZCB0aGF0IHRoZSBgaW5wdXRzYCBhdHRyaWJ1dGUgb24gdGhlIGNvbnN0cnVjdG9yIGV4aXN0cy4nLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7XG4gICAgICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgICAgIG5hbWU6ICdBYmlDb25zdHJ1Y3RvclBhcmFtc05vdEZvdW5kRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQWJpRGVjb2RpbmdEYXRhU2l6ZUludmFsaWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBkYXRhLCBzaXplIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgYERhdGEgc2l6ZSBvZiAke3NpemV9IGJ5dGVzIGlzIGludmFsaWQuYCxcbiAgICAgICAgICAgICdTaXplIG11c3QgYmUgaW4gaW5jcmVtZW50cyBvZiAzMiBieXRlcyAoc2l6ZSAlIDMyID09PSAwKS4nLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtgRGF0YTogJHtkYXRhfSAoJHtzaXplfSBieXRlcylgXSxcbiAgICAgICAgICAgIG5hbWU6ICdBYmlEZWNvZGluZ0RhdGFTaXplSW52YWxpZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFiaURlY29kaW5nRGF0YVNpemVUb29TbWFsbEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGRhdGEsIHBhcmFtcywgc2l6ZSwgfSkge1xuICAgICAgICBzdXBlcihbYERhdGEgc2l6ZSBvZiAke3NpemV9IGJ5dGVzIGlzIHRvbyBzbWFsbCBmb3IgZ2l2ZW4gcGFyYW1ldGVycy5gXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgYFBhcmFtczogKCR7Zm9ybWF0QWJpUGFyYW1zKHBhcmFtcywgeyBpbmNsdWRlTmFtZTogdHJ1ZSB9KX0pYCxcbiAgICAgICAgICAgICAgICBgRGF0YTogICAke2RhdGF9ICgke3NpemV9IGJ5dGVzKWAsXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgbmFtZTogJ0FiaURlY29kaW5nRGF0YVNpemVUb29TbWFsbEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImRhdGFcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwicGFyYW1zXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcInNpemVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICAgICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgICAgIHRoaXMuc2l6ZSA9IHNpemU7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFiaURlY29kaW5nWmVyb0RhdGFFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCdDYW5ub3QgZGVjb2RlIHplcm8gZGF0YSAoXCIweFwiKSB3aXRoIEFCSSBwYXJhbWV0ZXJzLicsIHtcbiAgICAgICAgICAgIG5hbWU6ICdBYmlEZWNvZGluZ1plcm9EYXRhRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQWJpRW5jb2RpbmdBcnJheUxlbmd0aE1pc21hdGNoRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgZXhwZWN0ZWRMZW5ndGgsIGdpdmVuTGVuZ3RoLCB0eXBlLCB9KSB7XG4gICAgICAgIHN1cGVyKFtcbiAgICAgICAgICAgIGBBQkkgZW5jb2RpbmcgYXJyYXkgbGVuZ3RoIG1pc21hdGNoIGZvciB0eXBlICR7dHlwZX0uYCxcbiAgICAgICAgICAgIGBFeHBlY3RlZCBsZW5ndGg6ICR7ZXhwZWN0ZWRMZW5ndGh9YCxcbiAgICAgICAgICAgIGBHaXZlbiBsZW5ndGg6ICR7Z2l2ZW5MZW5ndGh9YCxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwgeyBuYW1lOiAnQWJpRW5jb2RpbmdBcnJheUxlbmd0aE1pc21hdGNoRXJyb3InIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBBYmlFbmNvZGluZ0J5dGVzU2l6ZU1pc21hdGNoRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgZXhwZWN0ZWRTaXplLCB2YWx1ZSB9KSB7XG4gICAgICAgIHN1cGVyKGBTaXplIG9mIGJ5dGVzIFwiJHt2YWx1ZX1cIiAoYnl0ZXMke3NpemUodmFsdWUpfSkgZG9lcyBub3QgbWF0Y2ggZXhwZWN0ZWQgc2l6ZSAoYnl0ZXMke2V4cGVjdGVkU2l6ZX0pLmAsIHsgbmFtZTogJ0FiaUVuY29kaW5nQnl0ZXNTaXplTWlzbWF0Y2hFcnJvcicgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFiaUVuY29kaW5nTGVuZ3RoTWlzbWF0Y2hFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBleHBlY3RlZExlbmd0aCwgZ2l2ZW5MZW5ndGgsIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgJ0FCSSBlbmNvZGluZyBwYXJhbXMvdmFsdWVzIGxlbmd0aCBtaXNtYXRjaC4nLFxuICAgICAgICAgICAgYEV4cGVjdGVkIGxlbmd0aCAocGFyYW1zKTogJHtleHBlY3RlZExlbmd0aH1gLFxuICAgICAgICAgICAgYEdpdmVuIGxlbmd0aCAodmFsdWVzKTogJHtnaXZlbkxlbmd0aH1gLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7IG5hbWU6ICdBYmlFbmNvZGluZ0xlbmd0aE1pc21hdGNoRXJyb3InIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBBYmlFcnJvcklucHV0c05vdEZvdW5kRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKGVycm9yTmFtZSwgeyBkb2NzUGF0aCB9KSB7XG4gICAgICAgIHN1cGVyKFtcbiAgICAgICAgICAgIGBBcmd1bWVudHMgKFxcYGFyZ3NcXGApIHdlcmUgcHJvdmlkZWQgdG8gXCIke2Vycm9yTmFtZX1cIiwgYnV0IFwiJHtlcnJvck5hbWV9XCIgb24gdGhlIEFCSSBkb2VzIG5vdCBjb250YWluIGFueSBwYXJhbWV0ZXJzIChcXGBpbnB1dHNcXGApLmAsXG4gICAgICAgICAgICAnQ2Fubm90IGVuY29kZSBlcnJvciByZXN1bHQgd2l0aG91dCBrbm93aW5nIHdoYXQgdGhlIHBhcmFtZXRlciB0eXBlcyBhcmUuJyxcbiAgICAgICAgICAgICdNYWtlIHN1cmUgeW91IGFyZSB1c2luZyB0aGUgY29ycmVjdCBBQkkgYW5kIHRoYXQgdGhlIGlucHV0cyBleGlzdCBvbiBpdC4nLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7XG4gICAgICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgICAgIG5hbWU6ICdBYmlFcnJvcklucHV0c05vdEZvdW5kRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQWJpRXJyb3JOb3RGb3VuZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihlcnJvck5hbWUsIHsgZG9jc1BhdGggfSA9IHt9KSB7XG4gICAgICAgIHN1cGVyKFtcbiAgICAgICAgICAgIGBFcnJvciAke2Vycm9yTmFtZSA/IGBcIiR7ZXJyb3JOYW1lfVwiIGAgOiAnJ31ub3QgZm91bmQgb24gQUJJLmAsXG4gICAgICAgICAgICAnTWFrZSBzdXJlIHlvdSBhcmUgdXNpbmcgdGhlIGNvcnJlY3QgQUJJIGFuZCB0aGF0IHRoZSBlcnJvciBleGlzdHMgb24gaXQuJyxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBuYW1lOiAnQWJpRXJyb3JOb3RGb3VuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFiaUVycm9yU2lnbmF0dXJlTm90Rm91bmRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3Ioc2lnbmF0dXJlLCB7IGRvY3NQYXRoIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgYEVuY29kZWQgZXJyb3Igc2lnbmF0dXJlIFwiJHtzaWduYXR1cmV9XCIgbm90IGZvdW5kIG9uIEFCSS5gLFxuICAgICAgICAgICAgJ01ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIHRoZSBjb3JyZWN0IEFCSSBhbmQgdGhhdCB0aGUgZXJyb3IgZXhpc3RzIG9uIGl0LicsXG4gICAgICAgICAgICBgWW91IGNhbiBsb29rIHVwIHRoZSBkZWNvZGVkIHNpZ25hdHVyZSBoZXJlOiBodHRwczovL29wZW5jaGFpbi54eXovc2lnbmF0dXJlcz9xdWVyeT0ke3NpZ25hdHVyZX0uYCxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBuYW1lOiAnQWJpRXJyb3JTaWduYXR1cmVOb3RGb3VuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcInNpZ25hdHVyZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnNpZ25hdHVyZSA9IHNpZ25hdHVyZTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQWJpRXZlbnRTaWduYXR1cmVFbXB0eVRvcGljc0Vycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGRvY3NQYXRoIH0pIHtcbiAgICAgICAgc3VwZXIoJ0Nhbm5vdCBleHRyYWN0IGV2ZW50IHNpZ25hdHVyZSBmcm9tIGVtcHR5IHRvcGljcy4nLCB7XG4gICAgICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgICAgIG5hbWU6ICdBYmlFdmVudFNpZ25hdHVyZUVtcHR5VG9waWNzRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQWJpRXZlbnRTaWduYXR1cmVOb3RGb3VuZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihzaWduYXR1cmUsIHsgZG9jc1BhdGggfSkge1xuICAgICAgICBzdXBlcihbXG4gICAgICAgICAgICBgRW5jb2RlZCBldmVudCBzaWduYXR1cmUgXCIke3NpZ25hdHVyZX1cIiBub3QgZm91bmQgb24gQUJJLmAsXG4gICAgICAgICAgICAnTWFrZSBzdXJlIHlvdSBhcmUgdXNpbmcgdGhlIGNvcnJlY3QgQUJJIGFuZCB0aGF0IHRoZSBldmVudCBleGlzdHMgb24gaXQuJyxcbiAgICAgICAgICAgIGBZb3UgY2FuIGxvb2sgdXAgdGhlIHNpZ25hdHVyZSBoZXJlOiBodHRwczovL29wZW5jaGFpbi54eXovc2lnbmF0dXJlcz9xdWVyeT0ke3NpZ25hdHVyZX0uYCxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBuYW1lOiAnQWJpRXZlbnRTaWduYXR1cmVOb3RGb3VuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFiaUV2ZW50Tm90Rm91bmRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoZXZlbnROYW1lLCB7IGRvY3NQYXRoIH0gPSB7fSkge1xuICAgICAgICBzdXBlcihbXG4gICAgICAgICAgICBgRXZlbnQgJHtldmVudE5hbWUgPyBgXCIke2V2ZW50TmFtZX1cIiBgIDogJyd9bm90IGZvdW5kIG9uIEFCSS5gLFxuICAgICAgICAgICAgJ01ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIHRoZSBjb3JyZWN0IEFCSSBhbmQgdGhhdCB0aGUgZXZlbnQgZXhpc3RzIG9uIGl0LicsXG4gICAgICAgIF0uam9pbignXFxuJyksIHtcbiAgICAgICAgICAgIGRvY3NQYXRoLFxuICAgICAgICAgICAgbmFtZTogJ0FiaUV2ZW50Tm90Rm91bmRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBBYmlGdW5jdGlvbk5vdEZvdW5kRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKGZ1bmN0aW9uTmFtZSwgeyBkb2NzUGF0aCB9ID0ge30pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgYEZ1bmN0aW9uICR7ZnVuY3Rpb25OYW1lID8gYFwiJHtmdW5jdGlvbk5hbWV9XCIgYCA6ICcnfW5vdCBmb3VuZCBvbiBBQkkuYCxcbiAgICAgICAgICAgICdNYWtlIHN1cmUgeW91IGFyZSB1c2luZyB0aGUgY29ycmVjdCBBQkkgYW5kIHRoYXQgdGhlIGZ1bmN0aW9uIGV4aXN0cyBvbiBpdC4nLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7XG4gICAgICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgICAgIG5hbWU6ICdBYmlGdW5jdGlvbk5vdEZvdW5kRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQWJpRnVuY3Rpb25PdXRwdXRzTm90Rm91bmRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoZnVuY3Rpb25OYW1lLCB7IGRvY3NQYXRoIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgYEZ1bmN0aW9uIFwiJHtmdW5jdGlvbk5hbWV9XCIgZG9lcyBub3QgY29udGFpbiBhbnkgXFxgb3V0cHV0c1xcYCBvbiBBQkkuYCxcbiAgICAgICAgICAgICdDYW5ub3QgZGVjb2RlIGZ1bmN0aW9uIHJlc3VsdCB3aXRob3V0IGtub3dpbmcgd2hhdCB0aGUgcGFyYW1ldGVyIHR5cGVzIGFyZS4nLFxuICAgICAgICAgICAgJ01ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIHRoZSBjb3JyZWN0IEFCSSBhbmQgdGhhdCB0aGUgZnVuY3Rpb24gZXhpc3RzIG9uIGl0LicsXG4gICAgICAgIF0uam9pbignXFxuJyksIHtcbiAgICAgICAgICAgIGRvY3NQYXRoLFxuICAgICAgICAgICAgbmFtZTogJ0FiaUZ1bmN0aW9uT3V0cHV0c05vdEZvdW5kRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQWJpRnVuY3Rpb25TaWduYXR1cmVOb3RGb3VuZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihzaWduYXR1cmUsIHsgZG9jc1BhdGggfSkge1xuICAgICAgICBzdXBlcihbXG4gICAgICAgICAgICBgRW5jb2RlZCBmdW5jdGlvbiBzaWduYXR1cmUgXCIke3NpZ25hdHVyZX1cIiBub3QgZm91bmQgb24gQUJJLmAsXG4gICAgICAgICAgICAnTWFrZSBzdXJlIHlvdSBhcmUgdXNpbmcgdGhlIGNvcnJlY3QgQUJJIGFuZCB0aGF0IHRoZSBmdW5jdGlvbiBleGlzdHMgb24gaXQuJyxcbiAgICAgICAgICAgIGBZb3UgY2FuIGxvb2sgdXAgdGhlIHNpZ25hdHVyZSBoZXJlOiBodHRwczovL29wZW5jaGFpbi54eXovc2lnbmF0dXJlcz9xdWVyeT0ke3NpZ25hdHVyZX0uYCxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBuYW1lOiAnQWJpRnVuY3Rpb25TaWduYXR1cmVOb3RGb3VuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFiaUl0ZW1BbWJpZ3VpdHlFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeCwgeSkge1xuICAgICAgICBzdXBlcignRm91bmQgYW1iaWd1b3VzIHR5cGVzIGluIG92ZXJsb2FkZWQgQUJJIGl0ZW1zLicsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgIGBcXGAke3gudHlwZX1cXGAgaW4gXFxgJHtmb3JtYXRBYmlJdGVtKHguYWJpSXRlbSl9XFxgLCBhbmRgLFxuICAgICAgICAgICAgICAgIGBcXGAke3kudHlwZX1cXGAgaW4gXFxgJHtmb3JtYXRBYmlJdGVtKHkuYWJpSXRlbSl9XFxgYCxcbiAgICAgICAgICAgICAgICAnJyxcbiAgICAgICAgICAgICAgICAnVGhlc2UgdHlwZXMgZW5jb2RlIGRpZmZlcmVudGx5IGFuZCBjYW5ub3QgYmUgZGlzdGluZ3Vpc2hlZCBhdCBydW50aW1lLicsXG4gICAgICAgICAgICAgICAgJ1JlbW92ZSBvbmUgb2YgdGhlIGFtYmlndW91cyBpdGVtcyBpbiB0aGUgQUJJLicsXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgbmFtZTogJ0FiaUl0ZW1BbWJpZ3VpdHlFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBCeXRlc1NpemVNaXNtYXRjaEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGV4cGVjdGVkU2l6ZSwgZ2l2ZW5TaXplLCB9KSB7XG4gICAgICAgIHN1cGVyKGBFeHBlY3RlZCBieXRlcyR7ZXhwZWN0ZWRTaXplfSwgZ290IGJ5dGVzJHtnaXZlblNpemV9LmAsIHtcbiAgICAgICAgICAgIG5hbWU6ICdCeXRlc1NpemVNaXNtYXRjaEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIERlY29kZUxvZ0RhdGFNaXNtYXRjaCBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBhYmlJdGVtLCBkYXRhLCBwYXJhbXMsIHNpemUsIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgYERhdGEgc2l6ZSBvZiAke3NpemV9IGJ5dGVzIGlzIHRvbyBzbWFsbCBmb3Igbm9uLWluZGV4ZWQgZXZlbnQgcGFyYW1ldGVycy5gLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICBgUGFyYW1zOiAoJHtmb3JtYXRBYmlQYXJhbXMocGFyYW1zLCB7IGluY2x1ZGVOYW1lOiB0cnVlIH0pfSlgLFxuICAgICAgICAgICAgICAgIGBEYXRhOiAgICR7ZGF0YX0gKCR7c2l6ZX0gYnl0ZXMpYCxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBuYW1lOiAnRGVjb2RlTG9nRGF0YU1pc21hdGNoJyxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImFiaUl0ZW1cIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwiZGF0YVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJwYXJhbXNcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwic2l6ZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFiaUl0ZW0gPSBhYmlJdGVtO1xuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgICAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgICAgICAgdGhpcy5zaXplID0gc2l6ZTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgRGVjb2RlTG9nVG9waWNzTWlzbWF0Y2ggZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgYWJpSXRlbSwgcGFyYW0sIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgYEV4cGVjdGVkIGEgdG9waWMgZm9yIGluZGV4ZWQgZXZlbnQgcGFyYW1ldGVyJHtwYXJhbS5uYW1lID8gYCBcIiR7cGFyYW0ubmFtZX1cImAgOiAnJ30gb24gZXZlbnQgXCIke2Zvcm1hdEFiaUl0ZW0oYWJpSXRlbSwgeyBpbmNsdWRlTmFtZTogdHJ1ZSB9KX1cIi5gLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7IG5hbWU6ICdEZWNvZGVMb2dUb3BpY3NNaXNtYXRjaCcgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImFiaUl0ZW1cIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hYmlJdGVtID0gYWJpSXRlbTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgSW52YWxpZEFiaUVuY29kaW5nVHlwZUVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih0eXBlLCB7IGRvY3NQYXRoIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgYFR5cGUgXCIke3R5cGV9XCIgaXMgbm90IGEgdmFsaWQgZW5jb2RpbmcgdHlwZS5gLFxuICAgICAgICAgICAgJ1BsZWFzZSBwcm92aWRlIGEgdmFsaWQgQUJJIHR5cGUuJyxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwgeyBkb2NzUGF0aCwgbmFtZTogJ0ludmFsaWRBYmlFbmNvZGluZ1R5cGUnIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQWJpRGVjb2RpbmdUeXBlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHR5cGUsIHsgZG9jc1BhdGggfSkge1xuICAgICAgICBzdXBlcihbXG4gICAgICAgICAgICBgVHlwZSBcIiR7dHlwZX1cIiBpcyBub3QgYSB2YWxpZCBkZWNvZGluZyB0eXBlLmAsXG4gICAgICAgICAgICAnUGxlYXNlIHByb3ZpZGUgYSB2YWxpZCBBQkkgdHlwZS4nLFxuICAgICAgICBdLmpvaW4oJ1xcbicpLCB7IGRvY3NQYXRoLCBuYW1lOiAnSW52YWxpZEFiaURlY29kaW5nVHlwZScgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRBcnJheUVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih2YWx1ZSkge1xuICAgICAgICBzdXBlcihbYFZhbHVlIFwiJHt2YWx1ZX1cIiBpcyBub3QgYSB2YWxpZCBhcnJheS5gXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgbmFtZTogJ0ludmFsaWRBcnJheUVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWREZWZpbml0aW9uVHlwZUVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih0eXBlKSB7XG4gICAgICAgIHN1cGVyKFtcbiAgICAgICAgICAgIGBcIiR7dHlwZX1cIiBpcyBub3QgYSB2YWxpZCBkZWZpbml0aW9uIHR5cGUuYCxcbiAgICAgICAgICAgICdWYWxpZCB0eXBlczogXCJmdW5jdGlvblwiLCBcImV2ZW50XCIsIFwiZXJyb3JcIicsXG4gICAgICAgIF0uam9pbignXFxuJyksIHsgbmFtZTogJ0ludmFsaWREZWZpbml0aW9uVHlwZUVycm9yJyB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgVW5zdXBwb3J0ZWRQYWNrZWRBYmlUeXBlIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih0eXBlKSB7XG4gICAgICAgIHN1cGVyKGBUeXBlIFwiJHt0eXBlfVwiIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIHBhY2tlZCBlbmNvZGluZy5gLCB7XG4gICAgICAgICAgICBuYW1lOiAnVW5zdXBwb3J0ZWRQYWNrZWRBYmlUeXBlJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YWJpLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/account.js": /*!**************************************************!*\ !*** ./node_modules/viem/_esm/errors/account.js ***! \**************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccountNotFoundError: () => (/* binding */ AccountNotFoundError),\n/* harmony export */ AccountTypeNotSupportedError: () => (/* binding */ AccountTypeNotSupportedError)\n/* harmony export */ });\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass AccountNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ docsPath } = {}) {\n super([\n 'Could not find an Account to execute with this Action.',\n 'Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client.',\n ].join('\\n'), {\n docsPath,\n docsSlug: 'account',\n name: 'AccountNotFoundError',\n });\n }\n}\nclass AccountTypeNotSupportedError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ docsPath, metaMessages, type, }) {\n super(`Account type \"${type}\" is not supported.`, {\n docsPath,\n metaMessages,\n name: 'AccountTypeNotSupportedError',\n });\n }\n}\n//# sourceMappingURL=account.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2FjY291bnQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXNDO0FBQy9CLG1DQUFtQywrQ0FBUztBQUNuRCxrQkFBa0IsV0FBVyxJQUFJO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTywyQ0FBMkMsK0NBQVM7QUFDM0Qsa0JBQWtCLCtCQUErQjtBQUNqRCwrQkFBK0IsS0FBSztBQUNwQztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9lcnJvcnMvYWNjb3VudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuL2Jhc2UuanMnO1xuZXhwb3J0IGNsYXNzIEFjY291bnROb3RGb3VuZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGRvY3NQYXRoIH0gPSB7fSkge1xuICAgICAgICBzdXBlcihbXG4gICAgICAgICAgICAnQ291bGQgbm90IGZpbmQgYW4gQWNjb3VudCB0byBleGVjdXRlIHdpdGggdGhpcyBBY3Rpb24uJyxcbiAgICAgICAgICAgICdQbGVhc2UgcHJvdmlkZSBhbiBBY2NvdW50IHdpdGggdGhlIGBhY2NvdW50YCBhcmd1bWVudCBvbiB0aGUgQWN0aW9uLCBvciBieSBzdXBwbHlpbmcgYW4gYGFjY291bnRgIHRvIHRoZSBDbGllbnQuJyxcbiAgICAgICAgXS5qb2luKCdcXG4nKSwge1xuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBkb2NzU2x1ZzogJ2FjY291bnQnLFxuICAgICAgICAgICAgbmFtZTogJ0FjY291bnROb3RGb3VuZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFjY291bnRUeXBlTm90U3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgZG9jc1BhdGgsIG1ldGFNZXNzYWdlcywgdHlwZSwgfSkge1xuICAgICAgICBzdXBlcihgQWNjb3VudCB0eXBlIFwiJHt0eXBlfVwiIGlzIG5vdCBzdXBwb3J0ZWQuYCwge1xuICAgICAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXMsXG4gICAgICAgICAgICBuYW1lOiAnQWNjb3VudFR5cGVOb3RTdXBwb3J0ZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWFjY291bnQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/account.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/block.js": /*!************************************************!*\ !*** ./node_modules/viem/_esm/errors/block.js ***! \************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BlockNotFoundError: () => (/* binding */ BlockNotFoundError)\n/* harmony export */ });\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass BlockNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ blockHash, blockNumber, }) {\n let identifier = 'Block';\n if (blockHash)\n identifier = `Block at hash \"${blockHash}\"`;\n if (blockNumber)\n identifier = `Block at number \"${blockNumber}\"`;\n super(`${identifier} could not be found.`, { name: 'BlockNotFoundError' });\n }\n}\n//# sourceMappingURL=block.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2Jsb2NrLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXNDO0FBQy9CLGlDQUFpQywrQ0FBUztBQUNqRCxrQkFBa0IseUJBQXlCO0FBQzNDO0FBQ0E7QUFDQSwyQ0FBMkMsVUFBVTtBQUNyRDtBQUNBLDZDQUE2QyxZQUFZO0FBQ3pELGlCQUFpQixZQUFZLHdCQUF3Qiw0QkFBNEI7QUFDakY7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS9lcnJvcnMvYmxvY2suanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi9iYXNlLmpzJztcbmV4cG9ydCBjbGFzcyBCbG9ja05vdEZvdW5kRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgYmxvY2tIYXNoLCBibG9ja051bWJlciwgfSkge1xuICAgICAgICBsZXQgaWRlbnRpZmllciA9ICdCbG9jayc7XG4gICAgICAgIGlmIChibG9ja0hhc2gpXG4gICAgICAgICAgICBpZGVudGlmaWVyID0gYEJsb2NrIGF0IGhhc2ggXCIke2Jsb2NrSGFzaH1cImA7XG4gICAgICAgIGlmIChibG9ja051bWJlcilcbiAgICAgICAgICAgIGlkZW50aWZpZXIgPSBgQmxvY2sgYXQgbnVtYmVyIFwiJHtibG9ja051bWJlcn1cImA7XG4gICAgICAgIHN1cGVyKGAke2lkZW50aWZpZXJ9IGNvdWxkIG5vdCBiZSBmb3VuZC5gLCB7IG5hbWU6ICdCbG9ja05vdEZvdW5kRXJyb3InIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJsb2NrLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/block.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/calls.js": /*!************************************************!*\ !*** ./node_modules/viem/_esm/errors/calls.js ***! \************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BundleFailedError: () => (/* binding */ BundleFailedError)\n/* harmony export */ });\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass BundleFailedError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(result) {\n super(`Call bundle failed with status: ${result.statusCode}`, {\n name: 'BundleFailedError',\n });\n Object.defineProperty(this, \"result\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.result = result;\n }\n}\n//# sourceMappingURL=calls.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2NhbGxzLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXNDO0FBQy9CLGdDQUFnQywrQ0FBUztBQUNoRDtBQUNBLGlEQUFpRCxrQkFBa0I7QUFDbkU7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2NhbGxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4vYmFzZS5qcyc7XG5leHBvcnQgY2xhc3MgQnVuZGxlRmFpbGVkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHJlc3VsdCkge1xuICAgICAgICBzdXBlcihgQ2FsbCBidW5kbGUgZmFpbGVkIHdpdGggc3RhdHVzOiAke3Jlc3VsdC5zdGF0dXNDb2RlfWAsIHtcbiAgICAgICAgICAgIG5hbWU6ICdCdW5kbGVGYWlsZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJyZXN1bHRcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5yZXN1bHQgPSByZXN1bHQ7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FsbHMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/calls.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js": /*!***************************************************!*\ !*** ./node_modules/viem/_esm/errors/contract.js ***! \***************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CallExecutionError: () => (/* binding */ CallExecutionError),\n/* harmony export */ ContractFunctionExecutionError: () => (/* binding */ ContractFunctionExecutionError),\n/* harmony export */ ContractFunctionRevertedError: () => (/* binding */ ContractFunctionRevertedError),\n/* harmony export */ ContractFunctionZeroDataError: () => (/* binding */ ContractFunctionZeroDataError),\n/* harmony export */ CounterfactualDeploymentFailedError: () => (/* binding */ CounterfactualDeploymentFailedError),\n/* harmony export */ RawContractError: () => (/* binding */ RawContractError)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _constants_solidity_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../constants/solidity.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/solidity.js\");\n/* harmony import */ var _utils_abi_decodeErrorResult_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../utils/abi/decodeErrorResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeErrorResult.js\");\n/* harmony import */ var _utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../utils/abi/formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n/* harmony import */ var _utils_abi_formatAbiItemWithArgs_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/abi/formatAbiItemWithArgs.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItemWithArgs.js\");\n/* harmony import */ var _utils_abi_getAbiItem_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../utils/abi/getAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\");\n/* harmony import */ var _utils_unit_formatEther_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/unit/formatEther.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/unit/formatEther.js\");\n/* harmony import */ var _utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/unit/formatGwei.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/unit/formatGwei.js\");\n/* harmony import */ var _abi_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _stateOverride_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./stateOverride.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/stateOverride.js\");\n/* harmony import */ var _transaction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/utils.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\nclass CallExecutionError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(cause, { account: account_, docsPath, chain, data, gas, gasPrice, maxFeePerGas, maxPriorityFeePerGas, nonce, to, value, stateOverride, }) {\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_1__.parseAccount)(account_) : undefined;\n let prettyArgs = (0,_transaction_js__WEBPACK_IMPORTED_MODULE_2__.prettyPrint)({\n from: account?.address,\n to,\n value: typeof value !== 'undefined' &&\n `${(0,_utils_unit_formatEther_js__WEBPACK_IMPORTED_MODULE_3__.formatEther)(value)} ${chain?.nativeCurrency?.symbol || 'ETH'}`,\n data,\n gas,\n gasPrice: typeof gasPrice !== 'undefined' && `${(0,_utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_4__.formatGwei)(gasPrice)} gwei`,\n maxFeePerGas: typeof maxFeePerGas !== 'undefined' &&\n `${(0,_utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_4__.formatGwei)(maxFeePerGas)} gwei`,\n maxPriorityFeePerGas: typeof maxPriorityFeePerGas !== 'undefined' &&\n `${(0,_utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_4__.formatGwei)(maxPriorityFeePerGas)} gwei`,\n nonce,\n });\n if (stateOverride) {\n prettyArgs += `\\n${(0,_stateOverride_js__WEBPACK_IMPORTED_MODULE_5__.prettyStateOverride)(stateOverride)}`;\n }\n super(cause.shortMessage, {\n cause,\n docsPath,\n metaMessages: [\n ...(cause.metaMessages ? [...cause.metaMessages, ' '] : []),\n 'Raw Call Arguments:',\n prettyArgs,\n ].filter(Boolean),\n name: 'CallExecutionError',\n });\n Object.defineProperty(this, \"cause\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.cause = cause;\n }\n}\nclass ContractFunctionExecutionError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(cause, { abi, args, contractAddress, docsPath, functionName, sender, }) {\n const abiItem = (0,_utils_abi_getAbiItem_js__WEBPACK_IMPORTED_MODULE_6__.getAbiItem)({ abi, args, name: functionName });\n const formattedArgs = abiItem\n ? (0,_utils_abi_formatAbiItemWithArgs_js__WEBPACK_IMPORTED_MODULE_7__.formatAbiItemWithArgs)({\n abiItem,\n args,\n includeFunctionName: false,\n includeName: false,\n })\n : undefined;\n const functionWithParams = abiItem\n ? (0,_utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_8__.formatAbiItem)(abiItem, { includeName: true })\n : undefined;\n const prettyArgs = (0,_transaction_js__WEBPACK_IMPORTED_MODULE_2__.prettyPrint)({\n address: contractAddress && (0,_utils_js__WEBPACK_IMPORTED_MODULE_9__.getContractAddress)(contractAddress),\n function: functionWithParams,\n args: formattedArgs &&\n formattedArgs !== '()' &&\n `${[...Array(functionName?.length ?? 0).keys()]\n .map(() => ' ')\n .join('')}${formattedArgs}`,\n sender,\n });\n super(cause.shortMessage ||\n `An unknown error occurred while executing the contract function \"${functionName}\".`, {\n cause,\n docsPath,\n metaMessages: [\n ...(cause.metaMessages ? [...cause.metaMessages, ' '] : []),\n prettyArgs && 'Contract Call:',\n prettyArgs,\n ].filter(Boolean),\n name: 'ContractFunctionExecutionError',\n });\n Object.defineProperty(this, \"abi\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"args\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"cause\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"contractAddress\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"formattedArgs\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"functionName\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"sender\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.abi = abi;\n this.args = args;\n this.cause = cause;\n this.contractAddress = contractAddress;\n this.functionName = functionName;\n this.sender = sender;\n }\n}\nclass ContractFunctionRevertedError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ abi, data, functionName, message, }) {\n let cause;\n let decodedData;\n let metaMessages;\n let reason;\n if (data && data !== '0x') {\n try {\n decodedData = (0,_utils_abi_decodeErrorResult_js__WEBPACK_IMPORTED_MODULE_10__.decodeErrorResult)({ abi, data });\n const { abiItem, errorName, args: errorArgs } = decodedData;\n if (errorName === 'Error') {\n reason = errorArgs[0];\n }\n else if (errorName === 'Panic') {\n const [firstArg] = errorArgs;\n reason = _constants_solidity_js__WEBPACK_IMPORTED_MODULE_11__.panicReasons[firstArg];\n }\n else {\n const errorWithParams = abiItem\n ? (0,_utils_abi_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_8__.formatAbiItem)(abiItem, { includeName: true })\n : undefined;\n const formattedArgs = abiItem && errorArgs\n ? (0,_utils_abi_formatAbiItemWithArgs_js__WEBPACK_IMPORTED_MODULE_7__.formatAbiItemWithArgs)({\n abiItem,\n args: errorArgs,\n includeFunctionName: false,\n includeName: false,\n })\n : undefined;\n metaMessages = [\n errorWithParams ? `Error: ${errorWithParams}` : '',\n formattedArgs && formattedArgs !== '()'\n ? ` ${[...Array(errorName?.length ?? 0).keys()]\n .map(() => ' ')\n .join('')}${formattedArgs}`\n : '',\n ];\n }\n }\n catch (err) {\n cause = err;\n }\n }\n else if (message)\n reason = message;\n let signature;\n if (cause instanceof _abi_js__WEBPACK_IMPORTED_MODULE_12__.AbiErrorSignatureNotFoundError) {\n signature = cause.signature;\n metaMessages = [\n `Unable to decode signature \"${signature}\" as it was not found on the provided ABI.`,\n 'Make sure you are using the correct ABI and that the error exists on it.',\n `You can look up the decoded signature here: https://openchain.xyz/signatures?query=${signature}.`,\n ];\n }\n super((reason && reason !== 'execution reverted') || signature\n ? [\n `The contract function \"${functionName}\" reverted with the following ${signature ? 'signature' : 'reason'}:`,\n reason || signature,\n ].join('\\n')\n : `The contract function \"${functionName}\" reverted.`, {\n cause,\n metaMessages,\n name: 'ContractFunctionRevertedError',\n });\n Object.defineProperty(this, \"data\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"raw\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"reason\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"signature\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.data = decodedData;\n this.raw = data;\n this.reason = reason;\n this.signature = signature;\n }\n}\nclass ContractFunctionZeroDataError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ functionName }) {\n super(`The contract function \"${functionName}\" returned no data (\"0x\").`, {\n metaMessages: [\n 'This could be due to any of the following:',\n ` - The contract does not have the function \"${functionName}\",`,\n ' - The parameters passed to the contract function may be invalid, or',\n ' - The address is not a contract.',\n ],\n name: 'ContractFunctionZeroDataError',\n });\n }\n}\nclass CounterfactualDeploymentFailedError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ factory }) {\n super(`Deployment for counterfactual contract call failed${factory ? ` for factory \"${factory}\".` : ''}`, {\n metaMessages: [\n 'Please ensure:',\n '- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).',\n '- The `factoryData` is a valid encoded function call for contract deployment function on the factory.',\n ],\n name: 'CounterfactualDeploymentFailedError',\n });\n }\n}\nclass RawContractError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ data, message, }) {\n super(message || '', { name: 'RawContractError' });\n Object.defineProperty(this, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 3\n });\n Object.defineProperty(this, \"data\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.data = data;\n }\n}\n//# sourceMappingURL=contract.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2NvbnRyYWN0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBaUU7QUFDVDtBQUNlO0FBQ1Q7QUFDZ0I7QUFDdEI7QUFDRztBQUNGO0FBQ0M7QUFDcEI7QUFDbUI7QUFDVjtBQUNDO0FBQ3pDLGlDQUFpQywrQ0FBUztBQUNqRCx5QkFBeUIsK0hBQStIO0FBQ3hKLG1DQUFtQyw2RUFBWTtBQUMvQyx5QkFBeUIsNERBQVc7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHVFQUFXLFNBQVMsRUFBRSx1Q0FBdUM7QUFDaEY7QUFDQTtBQUNBLDREQUE0RCxxRUFBVSxZQUFZO0FBQ2xGO0FBQ0EsbUJBQW1CLHFFQUFVLGdCQUFnQjtBQUM3QztBQUNBLG1CQUFtQixxRUFBVSx3QkFBd0I7QUFDckQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQSwrQkFBK0Isc0VBQW1CLGdCQUFnQjtBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLDZDQUE2QywrQ0FBUztBQUM3RCx5QkFBeUIsNkRBQTZEO0FBQ3RGLHdCQUF3QixvRUFBVSxHQUFHLCtCQUErQjtBQUNwRTtBQUNBLGNBQWMsMEZBQXFCO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxjQUFjLDBFQUFhLFlBQVksbUJBQW1CO0FBQzFEO0FBQ0EsMkJBQTJCLDREQUFXO0FBQ3RDLHdDQUF3Qyw2REFBa0I7QUFDMUQ7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0EsOEJBQThCLEVBQUUsY0FBYztBQUM5QztBQUNBLFNBQVM7QUFDVDtBQUNBLGdGQUFnRixhQUFhO0FBQzdGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sNENBQTRDLCtDQUFTO0FBQzVELGtCQUFrQixtQ0FBbUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLG1GQUFpQixHQUFHLFdBQVc7QUFDN0Qsd0JBQXdCLHNDQUFzQztBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGlFQUFZO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwwRUFBYSxZQUFZLG1CQUFtQjtBQUN0RTtBQUNBO0FBQ0EsMEJBQTBCLDBGQUFxQjtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0Esb0RBQW9ELGdCQUFnQjtBQUNwRTtBQUNBLHdDQUF3QztBQUN4QztBQUNBLDBDQUEwQyxFQUFFLGNBQWM7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixvRUFBOEI7QUFDM0Q7QUFDQTtBQUNBLCtDQUErQyxVQUFVO0FBQ3pEO0FBQ0Esc0dBQXNHLFVBQVU7QUFDaEg7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEMsYUFBYSxnQ0FBZ0MsbUNBQW1DO0FBQzFIO0FBQ0E7QUFDQSx3Q0FBd0MsYUFBYTtBQUNyRDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyw0Q0FBNEMsK0NBQVM7QUFDNUQsa0JBQWtCLGNBQWM7QUFDaEMsd0NBQXdDLGFBQWE7QUFDckQ7QUFDQTtBQUNBLGdFQUFnRSxhQUFhO0FBQzdFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxrREFBa0QsK0NBQVM7QUFDbEUsa0JBQWtCLFNBQVM7QUFDM0IsbUVBQW1FLDJCQUEyQixRQUFRLFNBQVM7QUFDL0c7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTywrQkFBK0IsK0NBQVM7QUFDL0Msa0JBQWtCLGdCQUFnQjtBQUNsQywrQkFBK0IsMEJBQTBCO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2NvbnRyYWN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCB9IGZyb20gJy4uL2FjY291bnRzL3V0aWxzL3BhcnNlQWNjb3VudC5qcyc7XG5pbXBvcnQgeyBwYW5pY1JlYXNvbnMgfSBmcm9tICcuLi9jb25zdGFudHMvc29saWRpdHkuanMnO1xuaW1wb3J0IHsgZGVjb2RlRXJyb3JSZXN1bHQsIH0gZnJvbSAnLi4vdXRpbHMvYWJpL2RlY29kZUVycm9yUmVzdWx0LmpzJztcbmltcG9ydCB7IGZvcm1hdEFiaUl0ZW0gfSBmcm9tICcuLi91dGlscy9hYmkvZm9ybWF0QWJpSXRlbS5qcyc7XG5pbXBvcnQgeyBmb3JtYXRBYmlJdGVtV2l0aEFyZ3MgfSBmcm9tICcuLi91dGlscy9hYmkvZm9ybWF0QWJpSXRlbVdpdGhBcmdzLmpzJztcbmltcG9ydCB7IGdldEFiaUl0ZW0gfSBmcm9tICcuLi91dGlscy9hYmkvZ2V0QWJpSXRlbS5qcyc7XG5pbXBvcnQgeyBmb3JtYXRFdGhlciB9IGZyb20gJy4uL3V0aWxzL3VuaXQvZm9ybWF0RXRoZXIuanMnO1xuaW1wb3J0IHsgZm9ybWF0R3dlaSB9IGZyb20gJy4uL3V0aWxzL3VuaXQvZm9ybWF0R3dlaS5qcyc7XG5pbXBvcnQgeyBBYmlFcnJvclNpZ25hdHVyZU5vdEZvdW5kRXJyb3IgfSBmcm9tICcuL2FiaS5qcyc7XG5pbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuL2Jhc2UuanMnO1xuaW1wb3J0IHsgcHJldHR5U3RhdGVPdmVycmlkZSB9IGZyb20gJy4vc3RhdGVPdmVycmlkZS5qcyc7XG5pbXBvcnQgeyBwcmV0dHlQcmludCB9IGZyb20gJy4vdHJhbnNhY3Rpb24uanMnO1xuaW1wb3J0IHsgZ2V0Q29udHJhY3RBZGRyZXNzIH0gZnJvbSAnLi91dGlscy5qcyc7XG5leHBvcnQgY2xhc3MgQ2FsbEV4ZWN1dGlvbkVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihjYXVzZSwgeyBhY2NvdW50OiBhY2NvdW50XywgZG9jc1BhdGgsIGNoYWluLCBkYXRhLCBnYXMsIGdhc1ByaWNlLCBtYXhGZWVQZXJHYXMsIG1heFByaW9yaXR5RmVlUGVyR2FzLCBub25jZSwgdG8sIHZhbHVlLCBzdGF0ZU92ZXJyaWRlLCB9KSB7XG4gICAgICAgIGNvbnN0IGFjY291bnQgPSBhY2NvdW50XyA/IHBhcnNlQWNjb3VudChhY2NvdW50XykgOiB1bmRlZmluZWQ7XG4gICAgICAgIGxldCBwcmV0dHlBcmdzID0gcHJldHR5UHJpbnQoe1xuICAgICAgICAgICAgZnJvbTogYWNjb3VudD8uYWRkcmVzcyxcbiAgICAgICAgICAgIHRvLFxuICAgICAgICAgICAgdmFsdWU6IHR5cGVvZiB2YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgICAgICBgJHtmb3JtYXRFdGhlcih2YWx1ZSl9ICR7Y2hhaW4/Lm5hdGl2ZUN1cnJlbmN5Py5zeW1ib2wgfHwgJ0VUSCd9YCxcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICBnYXMsXG4gICAgICAgICAgICBnYXNQcmljZTogdHlwZW9mIGdhc1ByaWNlICE9PSAndW5kZWZpbmVkJyAmJiBgJHtmb3JtYXRHd2VpKGdhc1ByaWNlKX0gZ3dlaWAsXG4gICAgICAgICAgICBtYXhGZWVQZXJHYXM6IHR5cGVvZiBtYXhGZWVQZXJHYXMgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICAgICAgYCR7Zm9ybWF0R3dlaShtYXhGZWVQZXJHYXMpfSBnd2VpYCxcbiAgICAgICAgICAgIG1heFByaW9yaXR5RmVlUGVyR2FzOiB0eXBlb2YgbWF4UHJpb3JpdHlGZWVQZXJHYXMgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICAgICAgYCR7Zm9ybWF0R3dlaShtYXhQcmlvcml0eUZlZVBlckdhcyl9IGd3ZWlgLFxuICAgICAgICAgICAgbm9uY2UsXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoc3RhdGVPdmVycmlkZSkge1xuICAgICAgICAgICAgcHJldHR5QXJncyArPSBgXFxuJHtwcmV0dHlTdGF0ZU92ZXJyaWRlKHN0YXRlT3ZlcnJpZGUpfWA7XG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIoY2F1c2Uuc2hvcnRNZXNzYWdlLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIGRvY3NQYXRoLFxuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgLi4uKGNhdXNlLm1ldGFNZXNzYWdlcyA/IFsuLi5jYXVzZS5tZXRhTWVzc2FnZXMsICcgJ10gOiBbXSksXG4gICAgICAgICAgICAgICAgJ1JhdyBDYWxsIEFyZ3VtZW50czonLFxuICAgICAgICAgICAgICAgIHByZXR0eUFyZ3MsXG4gICAgICAgICAgICBdLmZpbHRlcihCb29sZWFuKSxcbiAgICAgICAgICAgIG5hbWU6ICdDYWxsRXhlY3V0aW9uRXJyb3InLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwiY2F1c2VcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jYXVzZSA9IGNhdXNlO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBDb250cmFjdEZ1bmN0aW9uRXhlY3V0aW9uRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKGNhdXNlLCB7IGFiaSwgYXJncywgY29udHJhY3RBZGRyZXNzLCBkb2NzUGF0aCwgZnVuY3Rpb25OYW1lLCBzZW5kZXIsIH0pIHtcbiAgICAgICAgY29uc3QgYWJpSXRlbSA9IGdldEFiaUl0ZW0oeyBhYmksIGFyZ3MsIG5hbWU6IGZ1bmN0aW9uTmFtZSB9KTtcbiAgICAgICAgY29uc3QgZm9ybWF0dGVkQXJncyA9IGFiaUl0ZW1cbiAgICAgICAgICAgID8gZm9ybWF0QWJpSXRlbVdpdGhBcmdzKHtcbiAgICAgICAgICAgICAgICBhYmlJdGVtLFxuICAgICAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgICAgICAgaW5jbHVkZUZ1bmN0aW9uTmFtZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgaW5jbHVkZU5hbWU6IGZhbHNlLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBmdW5jdGlvbldpdGhQYXJhbXMgPSBhYmlJdGVtXG4gICAgICAgICAgICA/IGZvcm1hdEFiaUl0ZW0oYWJpSXRlbSwgeyBpbmNsdWRlTmFtZTogdHJ1ZSB9KVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IHByZXR0eUFyZ3MgPSBwcmV0dHlQcmludCh7XG4gICAgICAgICAgICBhZGRyZXNzOiBjb250cmFjdEFkZHJlc3MgJiYgZ2V0Q29udHJhY3RBZGRyZXNzKGNvbnRyYWN0QWRkcmVzcyksXG4gICAgICAgICAgICBmdW5jdGlvbjogZnVuY3Rpb25XaXRoUGFyYW1zLFxuICAgICAgICAgICAgYXJnczogZm9ybWF0dGVkQXJncyAmJlxuICAgICAgICAgICAgICAgIGZvcm1hdHRlZEFyZ3MgIT09ICcoKScgJiZcbiAgICAgICAgICAgICAgICBgJHtbLi4uQXJyYXkoZnVuY3Rpb25OYW1lPy5sZW5ndGggPz8gMCkua2V5cygpXVxuICAgICAgICAgICAgICAgICAgICAubWFwKCgpID0+ICcgJylcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJycpfSR7Zm9ybWF0dGVkQXJnc31gLFxuICAgICAgICAgICAgc2VuZGVyLFxuICAgICAgICB9KTtcbiAgICAgICAgc3VwZXIoY2F1c2Uuc2hvcnRNZXNzYWdlIHx8XG4gICAgICAgICAgICBgQW4gdW5rbm93biBlcnJvciBvY2N1cnJlZCB3aGlsZSBleGVjdXRpbmcgdGhlIGNvbnRyYWN0IGZ1bmN0aW9uIFwiJHtmdW5jdGlvbk5hbWV9XCIuYCwge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgIC4uLihjYXVzZS5tZXRhTWVzc2FnZXMgPyBbLi4uY2F1c2UubWV0YU1lc3NhZ2VzLCAnICddIDogW10pLFxuICAgICAgICAgICAgICAgIHByZXR0eUFyZ3MgJiYgJ0NvbnRyYWN0IENhbGw6JyxcbiAgICAgICAgICAgICAgICBwcmV0dHlBcmdzLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnQ29udHJhY3RGdW5jdGlvbkV4ZWN1dGlvbkVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImFiaVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJhcmdzXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImNhdXNlXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImNvbnRyYWN0QWRkcmVzc1wiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJmb3JtYXR0ZWRBcmdzXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImZ1bmN0aW9uTmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJzZW5kZXJcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hYmkgPSBhYmk7XG4gICAgICAgIHRoaXMuYXJncyA9IGFyZ3M7XG4gICAgICAgIHRoaXMuY2F1c2UgPSBjYXVzZTtcbiAgICAgICAgdGhpcy5jb250cmFjdEFkZHJlc3MgPSBjb250cmFjdEFkZHJlc3M7XG4gICAgICAgIHRoaXMuZnVuY3Rpb25OYW1lID0gZnVuY3Rpb25OYW1lO1xuICAgICAgICB0aGlzLnNlbmRlciA9IHNlbmRlcjtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQ29udHJhY3RGdW5jdGlvblJldmVydGVkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgYWJpLCBkYXRhLCBmdW5jdGlvbk5hbWUsIG1lc3NhZ2UsIH0pIHtcbiAgICAgICAgbGV0IGNhdXNlO1xuICAgICAgICBsZXQgZGVjb2RlZERhdGE7XG4gICAgICAgIGxldCBtZXRhTWVzc2FnZXM7XG4gICAgICAgIGxldCByZWFzb247XG4gICAgICAgIGlmIChkYXRhICYmIGRhdGEgIT09ICcweCcpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgZGVjb2RlZERhdGEgPSBkZWNvZGVFcnJvclJlc3VsdCh7IGFiaSwgZGF0YSB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGFiaUl0ZW0sIGVycm9yTmFtZSwgYXJnczogZXJyb3JBcmdzIH0gPSBkZWNvZGVkRGF0YTtcbiAgICAgICAgICAgICAgICBpZiAoZXJyb3JOYW1lID09PSAnRXJyb3InKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlYXNvbiA9IGVycm9yQXJnc1swXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoZXJyb3JOYW1lID09PSAnUGFuaWMnKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IFtmaXJzdEFyZ10gPSBlcnJvckFyZ3M7XG4gICAgICAgICAgICAgICAgICAgIHJlYXNvbiA9IHBhbmljUmVhc29uc1tmaXJzdEFyZ107XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlcnJvcldpdGhQYXJhbXMgPSBhYmlJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGZvcm1hdEFiaUl0ZW0oYWJpSXRlbSwgeyBpbmNsdWRlTmFtZTogdHJ1ZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZEFyZ3MgPSBhYmlJdGVtICYmIGVycm9yQXJnc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXRBYmlJdGVtV2l0aEFyZ3Moe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFiaUl0ZW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnczogZXJyb3JBcmdzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVGdW5jdGlvbk5hbWU6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVOYW1lOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgbWV0YU1lc3NhZ2VzID0gW1xuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JXaXRoUGFyYW1zID8gYEVycm9yOiAke2Vycm9yV2l0aFBhcmFtc31gIDogJycsXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXR0ZWRBcmdzICYmIGZvcm1hdHRlZEFyZ3MgIT09ICcoKSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGAgICAgICAgJHtbLi4uQXJyYXkoZXJyb3JOYW1lPy5sZW5ndGggPz8gMCkua2V5cygpXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKCgpID0+ICcgJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oJycpfSR7Zm9ybWF0dGVkQXJnc31gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgY2F1c2UgPSBlcnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAobWVzc2FnZSlcbiAgICAgICAgICAgIHJlYXNvbiA9IG1lc3NhZ2U7XG4gICAgICAgIGxldCBzaWduYXR1cmU7XG4gICAgICAgIGlmIChjYXVzZSBpbnN0YW5jZW9mIEFiaUVycm9yU2lnbmF0dXJlTm90Rm91bmRFcnJvcikge1xuICAgICAgICAgICAgc2lnbmF0dXJlID0gY2F1c2Uuc2lnbmF0dXJlO1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzID0gW1xuICAgICAgICAgICAgICAgIGBVbmFibGUgdG8gZGVjb2RlIHNpZ25hdHVyZSBcIiR7c2lnbmF0dXJlfVwiIGFzIGl0IHdhcyBub3QgZm91bmQgb24gdGhlIHByb3ZpZGVkIEFCSS5gLFxuICAgICAgICAgICAgICAgICdNYWtlIHN1cmUgeW91IGFyZSB1c2luZyB0aGUgY29ycmVjdCBBQkkgYW5kIHRoYXQgdGhlIGVycm9yIGV4aXN0cyBvbiBpdC4nLFxuICAgICAgICAgICAgICAgIGBZb3UgY2FuIGxvb2sgdXAgdGhlIGRlY29kZWQgc2lnbmF0dXJlIGhlcmU6IGh0dHBzOi8vb3BlbmNoYWluLnh5ei9zaWduYXR1cmVzP3F1ZXJ5PSR7c2lnbmF0dXJlfS5gLFxuICAgICAgICAgICAgXTtcbiAgICAgICAgfVxuICAgICAgICBzdXBlcigocmVhc29uICYmIHJlYXNvbiAhPT0gJ2V4ZWN1dGlvbiByZXZlcnRlZCcpIHx8IHNpZ25hdHVyZVxuICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgYFRoZSBjb250cmFjdCBmdW5jdGlvbiBcIiR7ZnVuY3Rpb25OYW1lfVwiIHJldmVydGVkIHdpdGggdGhlIGZvbGxvd2luZyAke3NpZ25hdHVyZSA/ICdzaWduYXR1cmUnIDogJ3JlYXNvbid9OmAsXG4gICAgICAgICAgICAgICAgcmVhc29uIHx8IHNpZ25hdHVyZSxcbiAgICAgICAgICAgIF0uam9pbignXFxuJylcbiAgICAgICAgICAgIDogYFRoZSBjb250cmFjdCBmdW5jdGlvbiBcIiR7ZnVuY3Rpb25OYW1lfVwiIHJldmVydGVkLmAsIHtcbiAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzLFxuICAgICAgICAgICAgbmFtZTogJ0NvbnRyYWN0RnVuY3Rpb25SZXZlcnRlZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImRhdGFcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwicmF3XCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcInJlYXNvblwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJzaWduYXR1cmVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kYXRhID0gZGVjb2RlZERhdGE7XG4gICAgICAgIHRoaXMucmF3ID0gZGF0YTtcbiAgICAgICAgdGhpcy5yZWFzb24gPSByZWFzb247XG4gICAgICAgIHRoaXMuc2lnbmF0dXJlID0gc2lnbmF0dXJlO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBDb250cmFjdEZ1bmN0aW9uWmVyb0RhdGFFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBmdW5jdGlvbk5hbWUgfSkge1xuICAgICAgICBzdXBlcihgVGhlIGNvbnRyYWN0IGZ1bmN0aW9uIFwiJHtmdW5jdGlvbk5hbWV9XCIgcmV0dXJuZWQgbm8gZGF0YSAoXCIweFwiKS5gLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnVGhpcyBjb3VsZCBiZSBkdWUgdG8gYW55IG9mIHRoZSBmb2xsb3dpbmc6JyxcbiAgICAgICAgICAgICAgICBgICAtIFRoZSBjb250cmFjdCBkb2VzIG5vdCBoYXZlIHRoZSBmdW5jdGlvbiBcIiR7ZnVuY3Rpb25OYW1lfVwiLGAsXG4gICAgICAgICAgICAgICAgJyAgLSBUaGUgcGFyYW1ldGVycyBwYXNzZWQgdG8gdGhlIGNvbnRyYWN0IGZ1bmN0aW9uIG1heSBiZSBpbnZhbGlkLCBvcicsXG4gICAgICAgICAgICAgICAgJyAgLSBUaGUgYWRkcmVzcyBpcyBub3QgYSBjb250cmFjdC4nLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIG5hbWU6ICdDb250cmFjdEZ1bmN0aW9uWmVyb0RhdGFFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBDb3VudGVyZmFjdHVhbERlcGxveW1lbnRGYWlsZWRFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBmYWN0b3J5IH0pIHtcbiAgICAgICAgc3VwZXIoYERlcGxveW1lbnQgZm9yIGNvdW50ZXJmYWN0dWFsIGNvbnRyYWN0IGNhbGwgZmFpbGVkJHtmYWN0b3J5ID8gYCBmb3IgZmFjdG9yeSBcIiR7ZmFjdG9yeX1cIi5gIDogJyd9YCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgJ1BsZWFzZSBlbnN1cmU6JyxcbiAgICAgICAgICAgICAgICAnLSBUaGUgYGZhY3RvcnlgIGlzIGEgdmFsaWQgY29udHJhY3QgZGVwbG95bWVudCBmYWN0b3J5IChpZS4gQ3JlYXRlMiBGYWN0b3J5LCBFUkMtNDMzNyBGYWN0b3J5LCBldGMpLicsXG4gICAgICAgICAgICAgICAgJy0gVGhlIGBmYWN0b3J5RGF0YWAgaXMgYSB2YWxpZCBlbmNvZGVkIGZ1bmN0aW9uIGNhbGwgZm9yIGNvbnRyYWN0IGRlcGxveW1lbnQgZnVuY3Rpb24gb24gdGhlIGZhY3RvcnkuJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBuYW1lOiAnQ291bnRlcmZhY3R1YWxEZXBsb3ltZW50RmFpbGVkRXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgUmF3Q29udHJhY3RFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBkYXRhLCBtZXNzYWdlLCB9KSB7XG4gICAgICAgIHN1cGVyKG1lc3NhZ2UgfHwgJycsIHsgbmFtZTogJ1Jhd0NvbnRyYWN0RXJyb3InIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJjb2RlXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAzXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJkYXRhXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29udHJhY3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/eip712.js": /*!*************************************************!*\ !*** ./node_modules/viem/_esm/errors/eip712.js ***! \*************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Eip712DomainNotFoundError: () => (/* binding */ Eip712DomainNotFoundError)\n/* harmony export */ });\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass Eip712DomainNotFoundError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ address }) {\n super(`No EIP-712 domain found on contract \"${address}\".`, {\n metaMessages: [\n 'Ensure that:',\n `- The contract is deployed at the address \"${address}\".`,\n '- `eip712Domain()` function exists on the contract.',\n '- `eip712Domain()` function matches signature to ERC-5267 specification.',\n ],\n name: 'Eip712DomainNotFoundError',\n });\n }\n}\n//# sourceMappingURL=eip712.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2VpcDcxMi5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFzQztBQUMvQix3Q0FBd0MsK0NBQVM7QUFDeEQsa0JBQWtCLFNBQVM7QUFDM0Isc0RBQXNELFFBQVE7QUFDOUQ7QUFDQTtBQUNBLDhEQUE4RCxRQUFRO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2VpcDcxMi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuL2Jhc2UuanMnO1xuZXhwb3J0IGNsYXNzIEVpcDcxMkRvbWFpbk5vdEZvdW5kRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgYWRkcmVzcyB9KSB7XG4gICAgICAgIHN1cGVyKGBObyBFSVAtNzEyIGRvbWFpbiBmb3VuZCBvbiBjb250cmFjdCBcIiR7YWRkcmVzc31cIi5gLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnRW5zdXJlIHRoYXQ6JyxcbiAgICAgICAgICAgICAgICBgLSBUaGUgY29udHJhY3QgaXMgZGVwbG95ZWQgYXQgdGhlIGFkZHJlc3MgXCIke2FkZHJlc3N9XCIuYCxcbiAgICAgICAgICAgICAgICAnLSBgZWlwNzEyRG9tYWluKClgIGZ1bmN0aW9uIGV4aXN0cyBvbiB0aGUgY29udHJhY3QuJyxcbiAgICAgICAgICAgICAgICAnLSBgZWlwNzEyRG9tYWluKClgIGZ1bmN0aW9uIG1hdGNoZXMgc2lnbmF0dXJlIHRvIEVSQy01MjY3IHNwZWNpZmljYXRpb24uJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBuYW1lOiAnRWlwNzEyRG9tYWluTm90Rm91bmRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVpcDcxMi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/eip712.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/ens.js": /*!**********************************************!*\ !*** ./node_modules/viem/_esm/errors/ens.js ***! \**********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EnsAvatarInvalidMetadataError: () => (/* binding */ EnsAvatarInvalidMetadataError),\n/* harmony export */ EnsAvatarInvalidNftUriError: () => (/* binding */ EnsAvatarInvalidNftUriError),\n/* harmony export */ EnsAvatarUnsupportedNamespaceError: () => (/* binding */ EnsAvatarUnsupportedNamespaceError),\n/* harmony export */ EnsAvatarUriResolutionError: () => (/* binding */ EnsAvatarUriResolutionError),\n/* harmony export */ EnsInvalidChainIdError: () => (/* binding */ EnsInvalidChainIdError)\n/* harmony export */ });\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass EnsAvatarInvalidMetadataError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ data }) {\n super('Unable to extract image from metadata. The metadata may be malformed or invalid.', {\n metaMessages: [\n '- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.',\n '',\n `Provided data: ${JSON.stringify(data)}`,\n ],\n name: 'EnsAvatarInvalidMetadataError',\n });\n }\n}\nclass EnsAvatarInvalidNftUriError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ reason }) {\n super(`ENS NFT avatar URI is invalid. ${reason}`, {\n name: 'EnsAvatarInvalidNftUriError',\n });\n }\n}\nclass EnsAvatarUriResolutionError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ uri }) {\n super(`Unable to resolve ENS avatar URI \"${uri}\". The URI may be malformed, invalid, or does not respond with a valid image.`, { name: 'EnsAvatarUriResolutionError' });\n }\n}\nclass EnsAvatarUnsupportedNamespaceError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ namespace }) {\n super(`ENS NFT avatar namespace \"${namespace}\" is not supported. Must be \"erc721\" or \"erc1155\".`, { name: 'EnsAvatarUnsupportedNamespaceError' });\n }\n}\nclass EnsInvalidChainIdError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ chainId }) {\n super(`Invalid ENSIP-11 chainId: ${chainId}. Must be between 0 and 0x7fffffff, or 1.`, {\n name: 'EnsInvalidChainIdError',\n });\n }\n}\n//# sourceMappingURL=ens.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2Vucy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBc0M7QUFDL0IsNENBQTRDLCtDQUFTO0FBQzVELGtCQUFrQixNQUFNO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLHFCQUFxQjtBQUN2RDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTywwQ0FBMEMsK0NBQVM7QUFDMUQsa0JBQWtCLFFBQVE7QUFDMUIsZ0RBQWdELE9BQU87QUFDdkQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLDBDQUEwQywrQ0FBUztBQUMxRCxrQkFBa0IsS0FBSztBQUN2QixtREFBbUQsSUFBSSxrRkFBa0YscUNBQXFDO0FBQzlLO0FBQ0E7QUFDTyxpREFBaUQsK0NBQVM7QUFDakUsa0JBQWtCLFdBQVc7QUFDN0IsMkNBQTJDLFVBQVUsdURBQXVELDRDQUE0QztBQUN4SjtBQUNBO0FBQ08scUNBQXFDLCtDQUFTO0FBQ3JELGtCQUFrQixTQUFTO0FBQzNCLDJDQUEyQyxRQUFRO0FBQ25EO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2Vucy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuL2Jhc2UuanMnO1xuZXhwb3J0IGNsYXNzIEVuc0F2YXRhckludmFsaWRNZXRhZGF0YUVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGRhdGEgfSkge1xuICAgICAgICBzdXBlcignVW5hYmxlIHRvIGV4dHJhY3QgaW1hZ2UgZnJvbSBtZXRhZGF0YS4gVGhlIG1ldGFkYXRhIG1heSBiZSBtYWxmb3JtZWQgb3IgaW52YWxpZC4nLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnLSBNZXRhZGF0YSBtdXN0IGJlIGEgSlNPTiBvYmplY3Qgd2l0aCBhdCBsZWFzdCBhbiBgaW1hZ2VgLCBgaW1hZ2VfdXJsYCBvciBgaW1hZ2VfZGF0YWAgcHJvcGVydHkuJyxcbiAgICAgICAgICAgICAgICAnJyxcbiAgICAgICAgICAgICAgICBgUHJvdmlkZWQgZGF0YTogJHtKU09OLnN0cmluZ2lmeShkYXRhKX1gLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIG5hbWU6ICdFbnNBdmF0YXJJbnZhbGlkTWV0YWRhdGFFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBFbnNBdmF0YXJJbnZhbGlkTmZ0VXJpRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcmVhc29uIH0pIHtcbiAgICAgICAgc3VwZXIoYEVOUyBORlQgYXZhdGFyIFVSSSBpcyBpbnZhbGlkLiAke3JlYXNvbn1gLCB7XG4gICAgICAgICAgICBuYW1lOiAnRW5zQXZhdGFySW52YWxpZE5mdFVyaUVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEVuc0F2YXRhclVyaVJlc29sdXRpb25FcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyB1cmkgfSkge1xuICAgICAgICBzdXBlcihgVW5hYmxlIHRvIHJlc29sdmUgRU5TIGF2YXRhciBVUkkgXCIke3VyaX1cIi4gVGhlIFVSSSBtYXkgYmUgbWFsZm9ybWVkLCBpbnZhbGlkLCBvciBkb2VzIG5vdCByZXNwb25kIHdpdGggYSB2YWxpZCBpbWFnZS5gLCB7IG5hbWU6ICdFbnNBdmF0YXJVcmlSZXNvbHV0aW9uRXJyb3InIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBFbnNBdmF0YXJVbnN1cHBvcnRlZE5hbWVzcGFjZUVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IG5hbWVzcGFjZSB9KSB7XG4gICAgICAgIHN1cGVyKGBFTlMgTkZUIGF2YXRhciBuYW1lc3BhY2UgXCIke25hbWVzcGFjZX1cIiBpcyBub3Qgc3VwcG9ydGVkLiBNdXN0IGJlIFwiZXJjNzIxXCIgb3IgXCJlcmMxMTU1XCIuYCwgeyBuYW1lOiAnRW5zQXZhdGFyVW5zdXBwb3J0ZWROYW1lc3BhY2VFcnJvcicgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEVuc0ludmFsaWRDaGFpbklkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY2hhaW5JZCB9KSB7XG4gICAgICAgIHN1cGVyKGBJbnZhbGlkIEVOU0lQLTExIGNoYWluSWQ6ICR7Y2hhaW5JZH0uIE11c3QgYmUgYmV0d2VlbiAwIGFuZCAweDdmZmZmZmZmLCBvciAxLmAsIHtcbiAgICAgICAgICAgIG5hbWU6ICdFbnNJbnZhbGlkQ2hhaW5JZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZW5zLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/ens.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/estimateGas.js": /*!******************************************************!*\ !*** ./node_modules/viem/_esm/errors/estimateGas.js ***! \******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EstimateGasExecutionError: () => (/* binding */ EstimateGasExecutionError)\n/* harmony export */ });\n/* harmony import */ var _utils_unit_formatEther_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/unit/formatEther.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/unit/formatEther.js\");\n/* harmony import */ var _utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/unit/formatGwei.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/unit/formatGwei.js\");\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _transaction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n\n\n\n\nclass EstimateGasExecutionError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(cause, { account, docsPath, chain, data, gas, gasPrice, maxFeePerGas, maxPriorityFeePerGas, nonce, to, value, }) {\n const prettyArgs = (0,_transaction_js__WEBPACK_IMPORTED_MODULE_1__.prettyPrint)({\n from: account?.address,\n to,\n value: typeof value !== 'undefined' &&\n `${(0,_utils_unit_formatEther_js__WEBPACK_IMPORTED_MODULE_2__.formatEther)(value)} ${chain?.nativeCurrency?.symbol || 'ETH'}`,\n data,\n gas,\n gasPrice: typeof gasPrice !== 'undefined' && `${(0,_utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_3__.formatGwei)(gasPrice)} gwei`,\n maxFeePerGas: typeof maxFeePerGas !== 'undefined' &&\n `${(0,_utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_3__.formatGwei)(maxFeePerGas)} gwei`,\n maxPriorityFeePerGas: typeof maxPriorityFeePerGas !== 'undefined' &&\n `${(0,_utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_3__.formatGwei)(maxPriorityFeePerGas)} gwei`,\n nonce,\n });\n super(cause.shortMessage, {\n cause,\n docsPath,\n metaMessages: [\n ...(cause.metaMessages ? [...cause.metaMessages, ' '] : []),\n 'Estimate Gas Arguments:',\n prettyArgs,\n ].filter(Boolean),\n name: 'EstimateGasExecutionError',\n });\n Object.defineProperty(this, \"cause\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.cause = cause;\n }\n}\n//# sourceMappingURL=estimateGas.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2VzdGltYXRlR2FzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQTJEO0FBQ0Y7QUFDbkI7QUFDUztBQUN4Qyx3Q0FBd0MsK0NBQVM7QUFDeEQseUJBQXlCLHNHQUFzRztBQUMvSCwyQkFBMkIsNERBQVc7QUFDdEM7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHVFQUFXLFNBQVMsRUFBRSx1Q0FBdUM7QUFDaEY7QUFDQTtBQUNBLDREQUE0RCxxRUFBVSxZQUFZO0FBQ2xGO0FBQ0EsbUJBQW1CLHFFQUFVLGdCQUFnQjtBQUM3QztBQUNBLG1CQUFtQixxRUFBVSx3QkFBd0I7QUFDckQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2Vycm9ycy9lc3RpbWF0ZUdhcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXRFdGhlciB9IGZyb20gJy4uL3V0aWxzL3VuaXQvZm9ybWF0RXRoZXIuanMnO1xuaW1wb3J0IHsgZm9ybWF0R3dlaSB9IGZyb20gJy4uL3V0aWxzL3VuaXQvZm9ybWF0R3dlaS5qcyc7XG5pbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuL2Jhc2UuanMnO1xuaW1wb3J0IHsgcHJldHR5UHJpbnQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLmpzJztcbmV4cG9ydCBjbGFzcyBFc3RpbWF0ZUdhc0V4ZWN1dGlvbkVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihjYXVzZSwgeyBhY2NvdW50LCBkb2NzUGF0aCwgY2hhaW4sIGRhdGEsIGdhcywgZ2FzUHJpY2UsIG1heEZlZVBlckdhcywgbWF4UHJpb3JpdHlGZWVQZXJHYXMsIG5vbmNlLCB0bywgdmFsdWUsIH0pIHtcbiAgICAgICAgY29uc3QgcHJldHR5QXJncyA9IHByZXR0eVByaW50KHtcbiAgICAgICAgICAgIGZyb206IGFjY291bnQ/LmFkZHJlc3MsXG4gICAgICAgICAgICB0byxcbiAgICAgICAgICAgIHZhbHVlOiB0eXBlb2YgdmFsdWUgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICAgICAgYCR7Zm9ybWF0RXRoZXIodmFsdWUpfSAke2NoYWluPy5uYXRpdmVDdXJyZW5jeT8uc3ltYm9sIHx8ICdFVEgnfWAsXG4gICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgZ2FzLFxuICAgICAgICAgICAgZ2FzUHJpY2U6IHR5cGVvZiBnYXNQcmljZSAhPT0gJ3VuZGVmaW5lZCcgJiYgYCR7Zm9ybWF0R3dlaShnYXNQcmljZSl9IGd3ZWlgLFxuICAgICAgICAgICAgbWF4RmVlUGVyR2FzOiB0eXBlb2YgbWF4RmVlUGVyR2FzICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgICAgIGAke2Zvcm1hdEd3ZWkobWF4RmVlUGVyR2FzKX0gZ3dlaWAsXG4gICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhczogdHlwZW9mIG1heFByaW9yaXR5RmVlUGVyR2FzICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgICAgIGAke2Zvcm1hdEd3ZWkobWF4UHJpb3JpdHlGZWVQZXJHYXMpfSBnd2VpYCxcbiAgICAgICAgICAgIG5vbmNlLFxuICAgICAgICB9KTtcbiAgICAgICAgc3VwZXIoY2F1c2Uuc2hvcnRNZXNzYWdlLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgIGRvY3NQYXRoLFxuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgLi4uKGNhdXNlLm1ldGFNZXNzYWdlcyA/IFsuLi5jYXVzZS5tZXRhTWVzc2FnZXMsICcgJ10gOiBbXSksXG4gICAgICAgICAgICAgICAgJ0VzdGltYXRlIEdhcyBBcmd1bWVudHM6JyxcbiAgICAgICAgICAgICAgICBwcmV0dHlBcmdzLFxuICAgICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICBuYW1lOiAnRXN0aW1hdGVHYXNFeGVjdXRpb25FcnJvcicsXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJjYXVzZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNhdXNlID0gY2F1c2U7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZXN0aW1hdGVHYXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/estimateGas.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/fee.js": /*!**********************************************!*\ !*** ./node_modules/viem/_esm/errors/fee.js ***! \**********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BaseFeeScalarError: () => (/* binding */ BaseFeeScalarError),\n/* harmony export */ Eip1559FeesNotSupportedError: () => (/* binding */ Eip1559FeesNotSupportedError),\n/* harmony export */ MaxFeePerGasTooLowError: () => (/* binding */ MaxFeePerGasTooLowError)\n/* harmony export */ });\n/* harmony import */ var _utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/unit/formatGwei.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/unit/formatGwei.js\");\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\n\nclass BaseFeeScalarError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor() {\n super('`baseFeeMultiplier` must be greater than 1.', {\n name: 'BaseFeeScalarError',\n });\n }\n}\nclass Eip1559FeesNotSupportedError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor() {\n super('Chain does not support EIP-1559 fees.', {\n name: 'Eip1559FeesNotSupportedError',\n });\n }\n}\nclass MaxFeePerGasTooLowError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ maxPriorityFeePerGas }) {\n super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${(0,_utils_unit_formatGwei_js__WEBPACK_IMPORTED_MODULE_1__.formatGwei)(maxPriorityFeePerGas)} gwei).`, { name: 'MaxFeePerGasTooLowError' });\n }\n}\n//# sourceMappingURL=fee.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2ZlZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUF5RDtBQUNuQjtBQUMvQixpQ0FBaUMsK0NBQVM7QUFDakQ7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTywyQ0FBMkMsK0NBQVM7QUFDM0Q7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxzQ0FBc0MsK0NBQVM7QUFDdEQsa0JBQWtCLHNCQUFzQjtBQUN4QyxvRkFBb0YscUVBQVUsd0JBQXdCLFdBQVcsaUNBQWlDO0FBQ2xLO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2ZlZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXRHd2VpIH0gZnJvbSAnLi4vdXRpbHMvdW5pdC9mb3JtYXRHd2VpLmpzJztcbmltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4vYmFzZS5qcyc7XG5leHBvcnQgY2xhc3MgQmFzZUZlZVNjYWxhckVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoJ2BiYXNlRmVlTXVsdGlwbGllcmAgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS4nLCB7XG4gICAgICAgICAgICBuYW1lOiAnQmFzZUZlZVNjYWxhckVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEVpcDE1NTlGZWVzTm90U3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcignQ2hhaW4gZG9lcyBub3Qgc3VwcG9ydCBFSVAtMTU1OSBmZWVzLicsIHtcbiAgICAgICAgICAgIG5hbWU6ICdFaXAxNTU5RmVlc05vdFN1cHBvcnRlZEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIE1heEZlZVBlckdhc1Rvb0xvd0Vycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IG1heFByaW9yaXR5RmVlUGVyR2FzIH0pIHtcbiAgICAgICAgc3VwZXIoYFxcYG1heEZlZVBlckdhc1xcYCBjYW5ub3QgYmUgbGVzcyB0aGFuIHRoZSBcXGBtYXhQcmlvcml0eUZlZVBlckdhc1xcYCAoJHtmb3JtYXRHd2VpKG1heFByaW9yaXR5RmVlUGVyR2FzKX0gZ3dlaSkuYCwgeyBuYW1lOiAnTWF4RmVlUGVyR2FzVG9vTG93RXJyb3InIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWZlZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/fee.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/log.js": /*!**********************************************!*\ !*** ./node_modules/viem/_esm/errors/log.js ***! \**********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FilterTypeNotSupportedError: () => (/* binding */ FilterTypeNotSupportedError)\n/* harmony export */ });\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass FilterTypeNotSupportedError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor(type) {\n super(`Filter type \"${type}\" is not supported.`, {\n name: 'FilterTypeNotSupportedError',\n });\n }\n}\n//# sourceMappingURL=log.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL2xvZy5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFzQztBQUMvQiwwQ0FBMEMsK0NBQVM7QUFDMUQ7QUFDQSw4QkFBOEIsS0FBSztBQUNuQztBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2Vycm9ycy9sb2cuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi9iYXNlLmpzJztcbmV4cG9ydCBjbGFzcyBGaWx0ZXJUeXBlTm90U3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHR5cGUpIHtcbiAgICAgICAgc3VwZXIoYEZpbHRlciB0eXBlIFwiJHt0eXBlfVwiIGlzIG5vdCBzdXBwb3J0ZWQuYCwge1xuICAgICAgICAgICAgbmFtZTogJ0ZpbHRlclR5cGVOb3RTdXBwb3J0ZWRFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWxvZy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/log.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/stateOverride.js": /*!********************************************************!*\ !*** ./node_modules/viem/_esm/errors/stateOverride.js ***! \********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccountStateConflictError: () => (/* binding */ AccountStateConflictError),\n/* harmony export */ StateAssignmentConflictError: () => (/* binding */ StateAssignmentConflictError),\n/* harmony export */ prettyStateMapping: () => (/* binding */ prettyStateMapping),\n/* harmony export */ prettyStateOverride: () => (/* binding */ prettyStateOverride)\n/* harmony export */ });\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nclass AccountStateConflictError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ address }) {\n super(`State for account \"${address}\" is set multiple times.`, {\n name: 'AccountStateConflictError',\n });\n }\n}\nclass StateAssignmentConflictError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor() {\n super('state and stateDiff are set on the same account.', {\n name: 'StateAssignmentConflictError',\n });\n }\n}\n/** @internal */\nfunction prettyStateMapping(stateMapping) {\n return stateMapping.reduce((pretty, { slot, value }) => {\n return `${pretty} ${slot}: ${value}\\n`;\n }, '');\n}\nfunction prettyStateOverride(stateOverride) {\n return stateOverride\n .reduce((pretty, { address, ...state }) => {\n let val = `${pretty} ${address}:\\n`;\n if (state.nonce)\n val += ` nonce: ${state.nonce}\\n`;\n if (state.balance)\n val += ` balance: ${state.balance}\\n`;\n if (state.code)\n val += ` code: ${state.code}\\n`;\n if (state.state) {\n val += ' state:\\n';\n val += prettyStateMapping(state.state);\n }\n if (state.stateDiff) {\n val += ' stateDiff:\\n';\n val += prettyStateMapping(state.stateDiff);\n }\n return val;\n }, ' State Override:\\n')\n .slice(0, -1);\n}\n//# sourceMappingURL=stateOverride.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL3N0YXRlT3ZlcnJpZGUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBc0M7QUFDL0Isd0NBQXdDLCtDQUFTO0FBQ3hELGtCQUFrQixTQUFTO0FBQzNCLG9DQUFvQyxRQUFRO0FBQzVDO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTywyQ0FBMkMsK0NBQVM7QUFDM0Q7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsMENBQTBDLGFBQWE7QUFDdkQsa0JBQWtCLGVBQWUsRUFBRSxLQUFLLElBQUksTUFBTTtBQUNsRCxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0EsMkJBQTJCLG1CQUFtQjtBQUM5QyxxQkFBcUIsV0FBVyxFQUFFLFFBQVE7QUFDMUM7QUFDQSxtQ0FBbUMsWUFBWTtBQUMvQztBQUNBLHFDQUFxQyxjQUFjO0FBQ25EO0FBQ0Esa0NBQWtDLFdBQVc7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL3N0YXRlT3ZlcnJpZGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi9iYXNlLmpzJztcbmV4cG9ydCBjbGFzcyBBY2NvdW50U3RhdGVDb25mbGljdEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGFkZHJlc3MgfSkge1xuICAgICAgICBzdXBlcihgU3RhdGUgZm9yIGFjY291bnQgXCIke2FkZHJlc3N9XCIgaXMgc2V0IG11bHRpcGxlIHRpbWVzLmAsIHtcbiAgICAgICAgICAgIG5hbWU6ICdBY2NvdW50U3RhdGVDb25mbGljdEVycm9yJyxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIFN0YXRlQXNzaWdubWVudENvbmZsaWN0RXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcignc3RhdGUgYW5kIHN0YXRlRGlmZiBhcmUgc2V0IG9uIHRoZSBzYW1lIGFjY291bnQuJywge1xuICAgICAgICAgICAgbmFtZTogJ1N0YXRlQXNzaWdubWVudENvbmZsaWN0RXJyb3InLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gcHJldHR5U3RhdGVNYXBwaW5nKHN0YXRlTWFwcGluZykge1xuICAgIHJldHVybiBzdGF0ZU1hcHBpbmcucmVkdWNlKChwcmV0dHksIHsgc2xvdCwgdmFsdWUgfSkgPT4ge1xuICAgICAgICByZXR1cm4gYCR7cHJldHR5fSAgICAgICAgJHtzbG90fTogJHt2YWx1ZX1cXG5gO1xuICAgIH0sICcnKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBwcmV0dHlTdGF0ZU92ZXJyaWRlKHN0YXRlT3ZlcnJpZGUpIHtcbiAgICByZXR1cm4gc3RhdGVPdmVycmlkZVxuICAgICAgICAucmVkdWNlKChwcmV0dHksIHsgYWRkcmVzcywgLi4uc3RhdGUgfSkgPT4ge1xuICAgICAgICBsZXQgdmFsID0gYCR7cHJldHR5fSAgICAke2FkZHJlc3N9OlxcbmA7XG4gICAgICAgIGlmIChzdGF0ZS5ub25jZSlcbiAgICAgICAgICAgIHZhbCArPSBgICAgICAgbm9uY2U6ICR7c3RhdGUubm9uY2V9XFxuYDtcbiAgICAgICAgaWYgKHN0YXRlLmJhbGFuY2UpXG4gICAgICAgICAgICB2YWwgKz0gYCAgICAgIGJhbGFuY2U6ICR7c3RhdGUuYmFsYW5jZX1cXG5gO1xuICAgICAgICBpZiAoc3RhdGUuY29kZSlcbiAgICAgICAgICAgIHZhbCArPSBgICAgICAgY29kZTogJHtzdGF0ZS5jb2RlfVxcbmA7XG4gICAgICAgIGlmIChzdGF0ZS5zdGF0ZSkge1xuICAgICAgICAgICAgdmFsICs9ICcgICAgICBzdGF0ZTpcXG4nO1xuICAgICAgICAgICAgdmFsICs9IHByZXR0eVN0YXRlTWFwcGluZyhzdGF0ZS5zdGF0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0YXRlLnN0YXRlRGlmZikge1xuICAgICAgICAgICAgdmFsICs9ICcgICAgICBzdGF0ZURpZmY6XFxuJztcbiAgICAgICAgICAgIHZhbCArPSBwcmV0dHlTdGF0ZU1hcHBpbmcoc3RhdGUuc3RhdGVEaWZmKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsO1xuICAgIH0sICcgIFN0YXRlIE92ZXJyaWRlOlxcbicpXG4gICAgICAgIC5zbGljZSgwLCAtMSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdGF0ZU92ZXJyaWRlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/stateOverride.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/errors/typedData.js": /*!****************************************************!*\ !*** ./node_modules/viem/_esm/errors/typedData.js ***! \****************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidDomainError: () => (/* binding */ InvalidDomainError),\n/* harmony export */ InvalidPrimaryTypeError: () => (/* binding */ InvalidPrimaryTypeError),\n/* harmony export */ InvalidStructTypeError: () => (/* binding */ InvalidStructTypeError)\n/* harmony export */ });\n/* harmony import */ var _utils_stringify_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\n\nclass InvalidDomainError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ domain }) {\n super(`Invalid domain \"${(0,_utils_stringify_js__WEBPACK_IMPORTED_MODULE_1__.stringify)(domain)}\".`, {\n metaMessages: ['Must be a valid EIP-712 domain.'],\n });\n }\n}\nclass InvalidPrimaryTypeError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ primaryType, types, }) {\n super(`Invalid primary type \\`${primaryType}\\` must be one of \\`${JSON.stringify(Object.keys(types))}\\`.`, {\n docsPath: '/api/glossary/Errors#typeddatainvalidprimarytypeerror',\n metaMessages: ['Check that the primary type is a key in `types`.'],\n });\n }\n}\nclass InvalidStructTypeError extends _base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ type }) {\n super(`Struct type \"${type}\" is invalid.`, {\n metaMessages: ['Struct type must not be a Solidity type.'],\n name: 'InvalidStructTypeError',\n });\n }\n}\n//# sourceMappingURL=typedData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vZXJyb3JzL3R5cGVkRGF0YS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFrRDtBQUNaO0FBQy9CLGlDQUFpQywrQ0FBUztBQUNqRCxrQkFBa0IsUUFBUTtBQUMxQixpQ0FBaUMsOERBQVMsU0FBUztBQUNuRDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ08sc0NBQXNDLCtDQUFTO0FBQ3RELGtCQUFrQixxQkFBcUI7QUFDdkMsd0NBQXdDLFlBQVksc0JBQXNCLG1DQUFtQztBQUM3RztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxxQ0FBcUMsK0NBQVM7QUFDckQsa0JBQWtCLE1BQU07QUFDeEIsOEJBQThCLEtBQUs7QUFDbkM7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL2Vycm9ycy90eXBlZERhdGEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3RyaW5naWZ5IH0gZnJvbSAnLi4vdXRpbHMvc3RyaW5naWZ5LmpzJztcbmltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4vYmFzZS5qcyc7XG5leHBvcnQgY2xhc3MgSW52YWxpZERvbWFpbkVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGRvbWFpbiB9KSB7XG4gICAgICAgIHN1cGVyKGBJbnZhbGlkIGRvbWFpbiBcIiR7c3RyaW5naWZ5KGRvbWFpbil9XCIuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbJ011c3QgYmUgYSB2YWxpZCBFSVAtNzEyIGRvbWFpbi4nXSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRQcmltYXJ5VHlwZUVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHByaW1hcnlUeXBlLCB0eXBlcywgfSkge1xuICAgICAgICBzdXBlcihgSW52YWxpZCBwcmltYXJ5IHR5cGUgXFxgJHtwcmltYXJ5VHlwZX1cXGAgbXVzdCBiZSBvbmUgb2YgXFxgJHtKU09OLnN0cmluZ2lmeShPYmplY3Qua2V5cyh0eXBlcykpfVxcYC5gLCB7XG4gICAgICAgICAgICBkb2NzUGF0aDogJy9hcGkvZ2xvc3NhcnkvRXJyb3JzI3R5cGVkZGF0YWludmFsaWRwcmltYXJ5dHlwZWVycm9yJyxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogWydDaGVjayB0aGF0IHRoZSBwcmltYXJ5IHR5cGUgaXMgYSBrZXkgaW4gYHR5cGVzYC4nXSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRTdHJ1Y3RUeXBlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgdHlwZSB9KSB7XG4gICAgICAgIHN1cGVyKGBTdHJ1Y3QgdHlwZSBcIiR7dHlwZX1cIiBpcyBpbnZhbGlkLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogWydTdHJ1Y3QgdHlwZSBtdXN0IG5vdCBiZSBhIFNvbGlkaXR5IHR5cGUuJ10sXG4gICAgICAgICAgICBuYW1lOiAnSW52YWxpZFN0cnVjdFR5cGVFcnJvcicsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXR5cGVkRGF0YS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/errors/typedData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeAbiParameters: () => (/* binding */ decodeAbiParameters)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _address_getAddress_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../address/getAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/getAddress.js\");\n/* harmony import */ var _cursor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../cursor.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/cursor.js\");\n/* harmony import */ var _data_size_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../data/size.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var _data_slice_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../data/slice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/slice.js\");\n/* harmony import */ var _data_trim_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../data/trim.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/trim.js\");\n/* harmony import */ var _encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../encoding/fromBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromBytes.js\");\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n\n\n\n\n\n\n\n\n\n\nfunction decodeAbiParameters(params, data) {\n const bytes = typeof data === 'string' ? (0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_0__.hexToBytes)(data) : data;\n const cursor = (0,_cursor_js__WEBPACK_IMPORTED_MODULE_1__.createCursor)(bytes);\n if ((0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(bytes) === 0 && params.length > 0)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__.AbiDecodingZeroDataError();\n if ((0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(data) && (0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(data) < 32)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__.AbiDecodingDataSizeTooSmallError({\n data: typeof data === 'string' ? data : (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__.bytesToHex)(data),\n params: params,\n size: (0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(data),\n });\n let consumed = 0;\n const values = [];\n for (let i = 0; i < params.length; ++i) {\n const param = params[i];\n cursor.setPosition(consumed);\n const [data, consumed_] = decodeParameter(cursor, param, {\n staticPosition: 0,\n });\n consumed += consumed_;\n values.push(data);\n }\n return values;\n}\nfunction decodeParameter(cursor, param, { staticPosition }) {\n const arrayComponents = (0,_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_5__.getArrayComponents)(param.type);\n if (arrayComponents) {\n const [length, type] = arrayComponents;\n return decodeArray(cursor, { ...param, type }, { length, staticPosition });\n }\n if (param.type === 'tuple')\n return decodeTuple(cursor, param, { staticPosition });\n if (param.type === 'address')\n return decodeAddress(cursor);\n if (param.type === 'bool')\n return decodeBool(cursor);\n if (param.type.startsWith('bytes'))\n return decodeBytes(cursor, param, { staticPosition });\n if (param.type.startsWith('uint') || param.type.startsWith('int'))\n return decodeNumber(cursor, param);\n if (param.type === 'string')\n return decodeString(cursor, { staticPosition });\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__.InvalidAbiDecodingTypeError(param.type, {\n docsPath: '/docs/contract/decodeAbiParameters',\n });\n}\n////////////////////////////////////////////////////////////////////\n// Type Decoders\nconst sizeOfLength = 32;\nconst sizeOfOffset = 32;\nfunction decodeAddress(cursor) {\n const value = cursor.readBytes(32);\n return [(0,_address_getAddress_js__WEBPACK_IMPORTED_MODULE_6__.checksumAddress)((0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__.bytesToHex)((0,_data_slice_js__WEBPACK_IMPORTED_MODULE_7__.sliceBytes)(value, -20))), 32];\n}\nfunction decodeArray(cursor, param, { length, staticPosition }) {\n // If the length of the array is not known in advance (dynamic array),\n // this means we will need to wonder off to the pointer and decode.\n if (!length) {\n // Dealing with a dynamic type, so get the offset of the array data.\n const offset = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(sizeOfOffset));\n // Start is the static position of current slot + offset.\n const start = staticPosition + offset;\n const startOfData = start + sizeOfLength;\n // Get the length of the array from the offset.\n cursor.setPosition(start);\n const length = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(sizeOfLength));\n // Check if the array has any dynamic children.\n const dynamicChild = hasDynamicChild(param);\n let consumed = 0;\n const value = [];\n for (let i = 0; i < length; ++i) {\n // If any of the children is dynamic, then all elements will be offset pointer, thus size of one slot (32 bytes).\n // Otherwise, elements will be the size of their encoding (consumed bytes).\n cursor.setPosition(startOfData + (dynamicChild ? i * 32 : consumed));\n const [data, consumed_] = decodeParameter(cursor, param, {\n staticPosition: startOfData,\n });\n consumed += consumed_;\n value.push(data);\n }\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n }\n // If the length of the array is known in advance,\n // and the length of an element deeply nested in the array is not known,\n // we need to decode the offset of the array data.\n if (hasDynamicChild(param)) {\n // Dealing with dynamic types, so get the offset of the array data.\n const offset = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(sizeOfOffset));\n // Start is the static position of current slot + offset.\n const start = staticPosition + offset;\n const value = [];\n for (let i = 0; i < length; ++i) {\n // Move cursor along to the next slot (next offset pointer).\n cursor.setPosition(start + i * 32);\n const [data] = decodeParameter(cursor, param, {\n staticPosition: start,\n });\n value.push(data);\n }\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n }\n // If the length of the array is known in advance and the array is deeply static,\n // then we can just decode each element in sequence.\n let consumed = 0;\n const value = [];\n for (let i = 0; i < length; ++i) {\n const [data, consumed_] = decodeParameter(cursor, param, {\n staticPosition: staticPosition + consumed,\n });\n consumed += consumed_;\n value.push(data);\n }\n return [value, consumed];\n}\nfunction decodeBool(cursor) {\n return [(0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToBool)(cursor.readBytes(32), { size: 32 }), 32];\n}\nfunction decodeBytes(cursor, param, { staticPosition }) {\n const [_, size] = param.type.split('bytes');\n if (!size) {\n // Dealing with dynamic types, so get the offset of the bytes data.\n const offset = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(32));\n // Set position of the cursor to start of bytes data.\n cursor.setPosition(staticPosition + offset);\n const length = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(32));\n // If there is no length, we have zero data.\n if (length === 0) {\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return ['0x', 32];\n }\n const data = cursor.readBytes(length);\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [(0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__.bytesToHex)(data), 32];\n }\n const value = (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__.bytesToHex)(cursor.readBytes(Number.parseInt(size, 10), 32));\n return [value, 32];\n}\nfunction decodeNumber(cursor, param) {\n const signed = param.type.startsWith('int');\n const size = Number.parseInt(param.type.split('int')[1] || '256', 10);\n const value = cursor.readBytes(32);\n return [\n size > 48\n ? (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToBigInt)(value, { signed })\n : (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(value, { signed }),\n 32,\n ];\n}\nfunction decodeTuple(cursor, param, { staticPosition }) {\n // Tuples can have unnamed components (i.e. they are arrays), so we must\n // determine whether the tuple is named or unnamed. In the case of a named\n // tuple, the value will be an object where each property is the name of the\n // component. In the case of an unnamed tuple, the value will be an array.\n const hasUnnamedChild = param.components.length === 0 || param.components.some(({ name }) => !name);\n // Initialize the value to an object or an array, depending on whether the\n // tuple is named or unnamed.\n const value = hasUnnamedChild ? [] : {};\n let consumed = 0;\n // If the tuple has a dynamic child, we must first decode the offset to the\n // tuple data.\n if (hasDynamicChild(param)) {\n // Dealing with dynamic types, so get the offset of the tuple data.\n const offset = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(sizeOfOffset));\n // Start is the static position of referencing slot + offset.\n const start = staticPosition + offset;\n for (let i = 0; i < param.components.length; ++i) {\n const component = param.components[i];\n cursor.setPosition(start + consumed);\n const [data, consumed_] = decodeParameter(cursor, component, {\n staticPosition: start,\n });\n consumed += consumed_;\n value[hasUnnamedChild ? i : component?.name] = data;\n }\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n }\n // If the tuple has static children, we can just decode each component\n // in sequence.\n for (let i = 0; i < param.components.length; ++i) {\n const component = param.components[i];\n const [data, consumed_] = decodeParameter(cursor, component, {\n staticPosition,\n });\n value[hasUnnamedChild ? i : component?.name] = data;\n consumed += consumed_;\n }\n return [value, consumed];\n}\nfunction decodeString(cursor, { staticPosition }) {\n // Get offset to start of string data.\n const offset = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(32));\n // Start is the static position of current slot + offset.\n const start = staticPosition + offset;\n cursor.setPosition(start);\n const length = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToNumber)(cursor.readBytes(32));\n // If there is no length, we have zero data (empty string).\n if (length === 0) {\n cursor.setPosition(staticPosition + 32);\n return ['', 32];\n }\n const data = cursor.readBytes(length, 32);\n const value = (0,_encoding_fromBytes_js__WEBPACK_IMPORTED_MODULE_8__.bytesToString)((0,_data_trim_js__WEBPACK_IMPORTED_MODULE_9__.trim)(data));\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n}\nfunction hasDynamicChild(param) {\n const { type } = param;\n if (type === 'string')\n return true;\n if (type === 'bytes')\n return true;\n if (type.endsWith('[]'))\n return true;\n if (type === 'tuple')\n return param.components?.some(hasDynamicChild);\n const arrayComponents = (0,_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_5__.getArrayComponents)(param.type);\n if (arrayComponents &&\n hasDynamicChild({ ...param, type: arrayComponents[1] }))\n return true;\n return false;\n}\n//# sourceMappingURL=decodeAbiParameters.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2RlY29kZUFiaVBhcmFtZXRlcnMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBK0g7QUFDbkU7QUFDZjtBQUNOO0FBQ087QUFDUDtBQUM4RDtBQUNqRDtBQUNGO0FBQ1k7QUFDdkQ7QUFDUCw2Q0FBNkMsZ0VBQVU7QUFDdkQsbUJBQW1CLHdEQUFZO0FBQy9CLFFBQVEsbURBQUk7QUFDWixrQkFBa0Isb0VBQXdCO0FBQzFDLFFBQVEsbURBQUksVUFBVSxtREFBSTtBQUMxQixrQkFBa0IsNEVBQWdDO0FBQ2xELG9EQUFvRCw4REFBVTtBQUM5RDtBQUNBLGtCQUFrQixtREFBSTtBQUN0QixTQUFTO0FBQ1Q7QUFDQTtBQUNBLG9CQUFvQixtQkFBbUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBDQUEwQyxnQkFBZ0I7QUFDMUQsNEJBQTRCLDJFQUFrQjtBQUM5QztBQUNBO0FBQ0EscUNBQXFDLGdCQUFnQixJQUFJLHdCQUF3QjtBQUNqRjtBQUNBO0FBQ0EsNENBQTRDLGdCQUFnQjtBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLGdCQUFnQjtBQUM1RDtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsZ0JBQWdCO0FBQ3RELGNBQWMsdUVBQTJCO0FBQ3pDO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSx1RUFBZSxDQUFDLDhEQUFVLENBQUMsMERBQVU7QUFDakQ7QUFDQSxzQ0FBc0Msd0JBQXdCO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHFFQUFhO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIscUVBQWE7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsWUFBWTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixxRUFBYTtBQUNwQztBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsWUFBWTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixZQUFZO0FBQ2hDO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtRUFBVyx5QkFBeUIsVUFBVTtBQUMxRDtBQUNBLHNDQUFzQyxnQkFBZ0I7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHFFQUFhO0FBQ3BDO0FBQ0E7QUFDQSx1QkFBdUIscUVBQWE7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLDhEQUFVO0FBQzFCO0FBQ0Esa0JBQWtCLDhEQUFVO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHFFQUFhLFVBQVUsUUFBUTtBQUM3QyxjQUFjLHFFQUFhLFVBQVUsUUFBUTtBQUM3QztBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsZ0JBQWdCO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0ZBQXNGLE1BQU07QUFDNUY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixxRUFBYTtBQUNwQztBQUNBO0FBQ0Esd0JBQXdCLDZCQUE2QjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNkJBQTZCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLGdCQUFnQjtBQUNoRDtBQUNBLG1CQUFtQixxRUFBYTtBQUNoQztBQUNBO0FBQ0E7QUFDQSxtQkFBbUIscUVBQWE7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLHFFQUFhLENBQUMsbURBQUk7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLDJFQUFrQjtBQUM5QztBQUNBLDBCQUEwQixvQ0FBb0M7QUFDOUQ7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2FiaS9kZWNvZGVBYmlQYXJhbWV0ZXJzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFiaURlY29kaW5nRGF0YVNpemVUb29TbWFsbEVycm9yLCBBYmlEZWNvZGluZ1plcm9EYXRhRXJyb3IsIEludmFsaWRBYmlEZWNvZGluZ1R5cGVFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IGNoZWNrc3VtQWRkcmVzcywgfSBmcm9tICcuLi9hZGRyZXNzL2dldEFkZHJlc3MuanMnO1xuaW1wb3J0IHsgY3JlYXRlQ3Vyc29yLCB9IGZyb20gJy4uL2N1cnNvci5qcyc7XG5pbXBvcnQgeyBzaXplIH0gZnJvbSAnLi4vZGF0YS9zaXplLmpzJztcbmltcG9ydCB7IHNsaWNlQnl0ZXMgfSBmcm9tICcuLi9kYXRhL3NsaWNlLmpzJztcbmltcG9ydCB7IHRyaW0gfSBmcm9tICcuLi9kYXRhL3RyaW0uanMnO1xuaW1wb3J0IHsgYnl0ZXNUb0JpZ0ludCwgYnl0ZXNUb0Jvb2wsIGJ5dGVzVG9OdW1iZXIsIGJ5dGVzVG9TdHJpbmcsIH0gZnJvbSAnLi4vZW5jb2RpbmcvZnJvbUJ5dGVzLmpzJztcbmltcG9ydCB7IGhleFRvQnl0ZXMgfSBmcm9tICcuLi9lbmNvZGluZy90b0J5dGVzLmpzJztcbmltcG9ydCB7IGJ5dGVzVG9IZXggfSBmcm9tICcuLi9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBnZXRBcnJheUNvbXBvbmVudHMgfSBmcm9tICcuL2VuY29kZUFiaVBhcmFtZXRlcnMuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZUFiaVBhcmFtZXRlcnMocGFyYW1zLCBkYXRhKSB7XG4gICAgY29uc3QgYnl0ZXMgPSB0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycgPyBoZXhUb0J5dGVzKGRhdGEpIDogZGF0YTtcbiAgICBjb25zdCBjdXJzb3IgPSBjcmVhdGVDdXJzb3IoYnl0ZXMpO1xuICAgIGlmIChzaXplKGJ5dGVzKSA9PT0gMCAmJiBwYXJhbXMubGVuZ3RoID4gMClcbiAgICAgICAgdGhyb3cgbmV3IEFiaURlY29kaW5nWmVyb0RhdGFFcnJvcigpO1xuICAgIGlmIChzaXplKGRhdGEpICYmIHNpemUoZGF0YSkgPCAzMilcbiAgICAgICAgdGhyb3cgbmV3IEFiaURlY29kaW5nRGF0YVNpemVUb29TbWFsbEVycm9yKHtcbiAgICAgICAgICAgIGRhdGE6IHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJyA/IGRhdGEgOiBieXRlc1RvSGV4KGRhdGEpLFxuICAgICAgICAgICAgcGFyYW1zOiBwYXJhbXMsXG4gICAgICAgICAgICBzaXplOiBzaXplKGRhdGEpLFxuICAgICAgICB9KTtcbiAgICBsZXQgY29uc3VtZWQgPSAwO1xuICAgIGNvbnN0IHZhbHVlcyA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFyYW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IHBhcmFtID0gcGFyYW1zW2ldO1xuICAgICAgICBjdXJzb3Iuc2V0UG9zaXRpb24oY29uc3VtZWQpO1xuICAgICAgICBjb25zdCBbZGF0YSwgY29uc3VtZWRfXSA9IGRlY29kZVBhcmFtZXRlcihjdXJzb3IsIHBhcmFtLCB7XG4gICAgICAgICAgICBzdGF0aWNQb3NpdGlvbjogMCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN1bWVkICs9IGNvbnN1bWVkXztcbiAgICAgICAgdmFsdWVzLnB1c2goZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZXM7XG59XG5mdW5jdGlvbiBkZWNvZGVQYXJhbWV0ZXIoY3Vyc29yLCBwYXJhbSwgeyBzdGF0aWNQb3NpdGlvbiB9KSB7XG4gICAgY29uc3QgYXJyYXlDb21wb25lbnRzID0gZ2V0QXJyYXlDb21wb25lbnRzKHBhcmFtLnR5cGUpO1xuICAgIGlmIChhcnJheUNvbXBvbmVudHMpIHtcbiAgICAgICAgY29uc3QgW2xlbmd0aCwgdHlwZV0gPSBhcnJheUNvbXBvbmVudHM7XG4gICAgICAgIHJldHVybiBkZWNvZGVBcnJheShjdXJzb3IsIHsgLi4ucGFyYW0sIHR5cGUgfSwgeyBsZW5ndGgsIHN0YXRpY1Bvc2l0aW9uIH0pO1xuICAgIH1cbiAgICBpZiAocGFyYW0udHlwZSA9PT0gJ3R1cGxlJylcbiAgICAgICAgcmV0dXJuIGRlY29kZVR1cGxlKGN1cnNvciwgcGFyYW0sIHsgc3RhdGljUG9zaXRpb24gfSk7XG4gICAgaWYgKHBhcmFtLnR5cGUgPT09ICdhZGRyZXNzJylcbiAgICAgICAgcmV0dXJuIGRlY29kZUFkZHJlc3MoY3Vyc29yKTtcbiAgICBpZiAocGFyYW0udHlwZSA9PT0gJ2Jvb2wnKVxuICAgICAgICByZXR1cm4gZGVjb2RlQm9vbChjdXJzb3IpO1xuICAgIGlmIChwYXJhbS50eXBlLnN0YXJ0c1dpdGgoJ2J5dGVzJykpXG4gICAgICAgIHJldHVybiBkZWNvZGVCeXRlcyhjdXJzb3IsIHBhcmFtLCB7IHN0YXRpY1Bvc2l0aW9uIH0pO1xuICAgIGlmIChwYXJhbS50eXBlLnN0YXJ0c1dpdGgoJ3VpbnQnKSB8fCBwYXJhbS50eXBlLnN0YXJ0c1dpdGgoJ2ludCcpKVxuICAgICAgICByZXR1cm4gZGVjb2RlTnVtYmVyKGN1cnNvciwgcGFyYW0pO1xuICAgIGlmIChwYXJhbS50eXBlID09PSAnc3RyaW5nJylcbiAgICAgICAgcmV0dXJuIGRlY29kZVN0cmluZyhjdXJzb3IsIHsgc3RhdGljUG9zaXRpb24gfSk7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBYmlEZWNvZGluZ1R5cGVFcnJvcihwYXJhbS50eXBlLCB7XG4gICAgICAgIGRvY3NQYXRoOiAnL2RvY3MvY29udHJhY3QvZGVjb2RlQWJpUGFyYW1ldGVycycsXG4gICAgfSk7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gVHlwZSBEZWNvZGVyc1xuY29uc3Qgc2l6ZU9mTGVuZ3RoID0gMzI7XG5jb25zdCBzaXplT2ZPZmZzZXQgPSAzMjtcbmZ1bmN0aW9uIGRlY29kZUFkZHJlc3MoY3Vyc29yKSB7XG4gICAgY29uc3QgdmFsdWUgPSBjdXJzb3IucmVhZEJ5dGVzKDMyKTtcbiAgICByZXR1cm4gW2NoZWNrc3VtQWRkcmVzcyhieXRlc1RvSGV4KHNsaWNlQnl0ZXModmFsdWUsIC0yMCkpKSwgMzJdO1xufVxuZnVuY3Rpb24gZGVjb2RlQXJyYXkoY3Vyc29yLCBwYXJhbSwgeyBsZW5ndGgsIHN0YXRpY1Bvc2l0aW9uIH0pIHtcbiAgICAvLyBJZiB0aGUgbGVuZ3RoIG9mIHRoZSBhcnJheSBpcyBub3Qga25vd24gaW4gYWR2YW5jZSAoZHluYW1pYyBhcnJheSksXG4gICAgLy8gdGhpcyBtZWFucyB3ZSB3aWxsIG5lZWQgdG8gd29uZGVyIG9mZiB0byB0aGUgcG9pbnRlciBhbmQgZGVjb2RlLlxuICAgIGlmICghbGVuZ3RoKSB7XG4gICAgICAgIC8vIERlYWxpbmcgd2l0aCBhIGR5bmFtaWMgdHlwZSwgc28gZ2V0IHRoZSBvZmZzZXQgb2YgdGhlIGFycmF5IGRhdGEuXG4gICAgICAgIGNvbnN0IG9mZnNldCA9IGJ5dGVzVG9OdW1iZXIoY3Vyc29yLnJlYWRCeXRlcyhzaXplT2ZPZmZzZXQpKTtcbiAgICAgICAgLy8gU3RhcnQgaXMgdGhlIHN0YXRpYyBwb3NpdGlvbiBvZiBjdXJyZW50IHNsb3QgKyBvZmZzZXQuXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gc3RhdGljUG9zaXRpb24gKyBvZmZzZXQ7XG4gICAgICAgIGNvbnN0IHN0YXJ0T2ZEYXRhID0gc3RhcnQgKyBzaXplT2ZMZW5ndGg7XG4gICAgICAgIC8vIEdldCB0aGUgbGVuZ3RoIG9mIHRoZSBhcnJheSBmcm9tIHRoZSBvZmZzZXQuXG4gICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGFydCk7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IGJ5dGVzVG9OdW1iZXIoY3Vyc29yLnJlYWRCeXRlcyhzaXplT2ZMZW5ndGgpKTtcbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGFycmF5IGhhcyBhbnkgZHluYW1pYyBjaGlsZHJlbi5cbiAgICAgICAgY29uc3QgZHluYW1pY0NoaWxkID0gaGFzRHluYW1pY0NoaWxkKHBhcmFtKTtcbiAgICAgICAgbGV0IGNvbnN1bWVkID0gMDtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgLy8gSWYgYW55IG9mIHRoZSBjaGlsZHJlbiBpcyBkeW5hbWljLCB0aGVuIGFsbCBlbGVtZW50cyB3aWxsIGJlIG9mZnNldCBwb2ludGVyLCB0aHVzIHNpemUgb2Ygb25lIHNsb3QgKDMyIGJ5dGVzKS5cbiAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgZWxlbWVudHMgd2lsbCBiZSB0aGUgc2l6ZSBvZiB0aGVpciBlbmNvZGluZyAoY29uc3VtZWQgYnl0ZXMpLlxuICAgICAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXJ0T2ZEYXRhICsgKGR5bmFtaWNDaGlsZCA/IGkgKiAzMiA6IGNvbnN1bWVkKSk7XG4gICAgICAgICAgICBjb25zdCBbZGF0YSwgY29uc3VtZWRfXSA9IGRlY29kZVBhcmFtZXRlcihjdXJzb3IsIHBhcmFtLCB7XG4gICAgICAgICAgICAgICAgc3RhdGljUG9zaXRpb246IHN0YXJ0T2ZEYXRhLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdW1lZCArPSBjb25zdW1lZF87XG4gICAgICAgICAgICB2YWx1ZS5wdXNoKGRhdGEpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEFzIHdlIGhhdmUgZ29uZSB3b25kZXJpbmcsIHJlc3RvcmUgdG8gdGhlIG9yaWdpbmFsIHBvc2l0aW9uICsgbmV4dCBzbG90LlxuICAgICAgICBjdXJzb3Iuc2V0UG9zaXRpb24oc3RhdGljUG9zaXRpb24gKyAzMik7XG4gICAgICAgIHJldHVybiBbdmFsdWUsIDMyXTtcbiAgICB9XG4gICAgLy8gSWYgdGhlIGxlbmd0aCBvZiB0aGUgYXJyYXkgaXMga25vd24gaW4gYWR2YW5jZSxcbiAgICAvLyBhbmQgdGhlIGxlbmd0aCBvZiBhbiBlbGVtZW50IGRlZXBseSBuZXN0ZWQgaW4gdGhlIGFycmF5IGlzIG5vdCBrbm93bixcbiAgICAvLyB3ZSBuZWVkIHRvIGRlY29kZSB0aGUgb2Zmc2V0IG9mIHRoZSBhcnJheSBkYXRhLlxuICAgIGlmIChoYXNEeW5hbWljQ2hpbGQocGFyYW0pKSB7XG4gICAgICAgIC8vIERlYWxpbmcgd2l0aCBkeW5hbWljIHR5cGVzLCBzbyBnZXQgdGhlIG9mZnNldCBvZiB0aGUgYXJyYXkgZGF0YS5cbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gYnl0ZXNUb051bWJlcihjdXJzb3IucmVhZEJ5dGVzKHNpemVPZk9mZnNldCkpO1xuICAgICAgICAvLyBTdGFydCBpcyB0aGUgc3RhdGljIHBvc2l0aW9uIG9mIGN1cnJlbnQgc2xvdCArIG9mZnNldC5cbiAgICAgICAgY29uc3Qgc3RhcnQgPSBzdGF0aWNQb3NpdGlvbiArIG9mZnNldDtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgLy8gTW92ZSBjdXJzb3IgYWxvbmcgdG8gdGhlIG5leHQgc2xvdCAobmV4dCBvZmZzZXQgcG9pbnRlcikuXG4gICAgICAgICAgICBjdXJzb3Iuc2V0UG9zaXRpb24oc3RhcnQgKyBpICogMzIpO1xuICAgICAgICAgICAgY29uc3QgW2RhdGFdID0gZGVjb2RlUGFyYW1ldGVyKGN1cnNvciwgcGFyYW0sIHtcbiAgICAgICAgICAgICAgICBzdGF0aWNQb3NpdGlvbjogc3RhcnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHZhbHVlLnB1c2goZGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQXMgd2UgaGF2ZSBnb25lIHdvbmRlcmluZywgcmVzdG9yZSB0byB0aGUgb3JpZ2luYWwgcG9zaXRpb24gKyBuZXh0IHNsb3QuXG4gICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGF0aWNQb3NpdGlvbiArIDMyKTtcbiAgICAgICAgcmV0dXJuIFt2YWx1ZSwgMzJdO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgbGVuZ3RoIG9mIHRoZSBhcnJheSBpcyBrbm93biBpbiBhZHZhbmNlIGFuZCB0aGUgYXJyYXkgaXMgZGVlcGx5IHN0YXRpYyxcbiAgICAvLyB0aGVuIHdlIGNhbiBqdXN0IGRlY29kZSBlYWNoIGVsZW1lbnQgaW4gc2VxdWVuY2UuXG4gICAgbGV0IGNvbnN1bWVkID0gMDtcbiAgICBjb25zdCB2YWx1ZSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuZ3RoOyArK2kpIHtcbiAgICAgICAgY29uc3QgW2RhdGEsIGNvbnN1bWVkX10gPSBkZWNvZGVQYXJhbWV0ZXIoY3Vyc29yLCBwYXJhbSwge1xuICAgICAgICAgICAgc3RhdGljUG9zaXRpb246IHN0YXRpY1Bvc2l0aW9uICsgY29uc3VtZWQsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdW1lZCArPSBjb25zdW1lZF87XG4gICAgICAgIHZhbHVlLnB1c2goZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBbdmFsdWUsIGNvbnN1bWVkXTtcbn1cbmZ1bmN0aW9uIGRlY29kZUJvb2woY3Vyc29yKSB7XG4gICAgcmV0dXJuIFtieXRlc1RvQm9vbChjdXJzb3IucmVhZEJ5dGVzKDMyKSwgeyBzaXplOiAzMiB9KSwgMzJdO1xufVxuZnVuY3Rpb24gZGVjb2RlQnl0ZXMoY3Vyc29yLCBwYXJhbSwgeyBzdGF0aWNQb3NpdGlvbiB9KSB7XG4gICAgY29uc3QgW18sIHNpemVdID0gcGFyYW0udHlwZS5zcGxpdCgnYnl0ZXMnKTtcbiAgICBpZiAoIXNpemUpIHtcbiAgICAgICAgLy8gRGVhbGluZyB3aXRoIGR5bmFtaWMgdHlwZXMsIHNvIGdldCB0aGUgb2Zmc2V0IG9mIHRoZSBieXRlcyBkYXRhLlxuICAgICAgICBjb25zdCBvZmZzZXQgPSBieXRlc1RvTnVtYmVyKGN1cnNvci5yZWFkQnl0ZXMoMzIpKTtcbiAgICAgICAgLy8gU2V0IHBvc2l0aW9uIG9mIHRoZSBjdXJzb3IgdG8gc3RhcnQgb2YgYnl0ZXMgZGF0YS5cbiAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXRpY1Bvc2l0aW9uICsgb2Zmc2V0KTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gYnl0ZXNUb051bWJlcihjdXJzb3IucmVhZEJ5dGVzKDMyKSk7XG4gICAgICAgIC8vIElmIHRoZXJlIGlzIG5vIGxlbmd0aCwgd2UgaGF2ZSB6ZXJvIGRhdGEuXG4gICAgICAgIGlmIChsZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIC8vIEFzIHdlIGhhdmUgZ29uZSB3b25kZXJpbmcsIHJlc3RvcmUgdG8gdGhlIG9yaWdpbmFsIHBvc2l0aW9uICsgbmV4dCBzbG90LlxuICAgICAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXRpY1Bvc2l0aW9uICsgMzIpO1xuICAgICAgICAgICAgcmV0dXJuIFsnMHgnLCAzMl07XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZGF0YSA9IGN1cnNvci5yZWFkQnl0ZXMobGVuZ3RoKTtcbiAgICAgICAgLy8gQXMgd2UgaGF2ZSBnb25lIHdvbmRlcmluZywgcmVzdG9yZSB0byB0aGUgb3JpZ2luYWwgcG9zaXRpb24gKyBuZXh0IHNsb3QuXG4gICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGF0aWNQb3NpdGlvbiArIDMyKTtcbiAgICAgICAgcmV0dXJuIFtieXRlc1RvSGV4KGRhdGEpLCAzMl07XG4gICAgfVxuICAgIGNvbnN0IHZhbHVlID0gYnl0ZXNUb0hleChjdXJzb3IucmVhZEJ5dGVzKE51bWJlci5wYXJzZUludChzaXplLCAxMCksIDMyKSk7XG4gICAgcmV0dXJuIFt2YWx1ZSwgMzJdO1xufVxuZnVuY3Rpb24gZGVjb2RlTnVtYmVyKGN1cnNvciwgcGFyYW0pIHtcbiAgICBjb25zdCBzaWduZWQgPSBwYXJhbS50eXBlLnN0YXJ0c1dpdGgoJ2ludCcpO1xuICAgIGNvbnN0IHNpemUgPSBOdW1iZXIucGFyc2VJbnQocGFyYW0udHlwZS5zcGxpdCgnaW50JylbMV0gfHwgJzI1NicsIDEwKTtcbiAgICBjb25zdCB2YWx1ZSA9IGN1cnNvci5yZWFkQnl0ZXMoMzIpO1xuICAgIHJldHVybiBbXG4gICAgICAgIHNpemUgPiA0OFxuICAgICAgICAgICAgPyBieXRlc1RvQmlnSW50KHZhbHVlLCB7IHNpZ25lZCB9KVxuICAgICAgICAgICAgOiBieXRlc1RvTnVtYmVyKHZhbHVlLCB7IHNpZ25lZCB9KSxcbiAgICAgICAgMzIsXG4gICAgXTtcbn1cbmZ1bmN0aW9uIGRlY29kZVR1cGxlKGN1cnNvciwgcGFyYW0sIHsgc3RhdGljUG9zaXRpb24gfSkge1xuICAgIC8vIFR1cGxlcyBjYW4gaGF2ZSB1bm5hbWVkIGNvbXBvbmVudHMgKGkuZS4gdGhleSBhcmUgYXJyYXlzKSwgc28gd2UgbXVzdFxuICAgIC8vIGRldGVybWluZSB3aGV0aGVyIHRoZSB0dXBsZSBpcyBuYW1lZCBvciB1bm5hbWVkLiBJbiB0aGUgY2FzZSBvZiBhIG5hbWVkXG4gICAgLy8gdHVwbGUsIHRoZSB2YWx1ZSB3aWxsIGJlIGFuIG9iamVjdCB3aGVyZSBlYWNoIHByb3BlcnR5IGlzIHRoZSBuYW1lIG9mIHRoZVxuICAgIC8vIGNvbXBvbmVudC4gSW4gdGhlIGNhc2Ugb2YgYW4gdW5uYW1lZCB0dXBsZSwgdGhlIHZhbHVlIHdpbGwgYmUgYW4gYXJyYXkuXG4gICAgY29uc3QgaGFzVW5uYW1lZENoaWxkID0gcGFyYW0uY29tcG9uZW50cy5sZW5ndGggPT09IDAgfHwgcGFyYW0uY29tcG9uZW50cy5zb21lKCh7IG5hbWUgfSkgPT4gIW5hbWUpO1xuICAgIC8vIEluaXRpYWxpemUgdGhlIHZhbHVlIHRvIGFuIG9iamVjdCBvciBhbiBhcnJheSwgZGVwZW5kaW5nIG9uIHdoZXRoZXIgdGhlXG4gICAgLy8gdHVwbGUgaXMgbmFtZWQgb3IgdW5uYW1lZC5cbiAgICBjb25zdCB2YWx1ZSA9IGhhc1VubmFtZWRDaGlsZCA/IFtdIDoge307XG4gICAgbGV0IGNvbnN1bWVkID0gMDtcbiAgICAvLyBJZiB0aGUgdHVwbGUgaGFzIGEgZHluYW1pYyBjaGlsZCwgd2UgbXVzdCBmaXJzdCBkZWNvZGUgdGhlIG9mZnNldCB0byB0aGVcbiAgICAvLyB0dXBsZSBkYXRhLlxuICAgIGlmIChoYXNEeW5hbWljQ2hpbGQocGFyYW0pKSB7XG4gICAgICAgIC8vIERlYWxpbmcgd2l0aCBkeW5hbWljIHR5cGVzLCBzbyBnZXQgdGhlIG9mZnNldCBvZiB0aGUgdHVwbGUgZGF0YS5cbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gYnl0ZXNUb051bWJlcihjdXJzb3IucmVhZEJ5dGVzKHNpemVPZk9mZnNldCkpO1xuICAgICAgICAvLyBTdGFydCBpcyB0aGUgc3RhdGljIHBvc2l0aW9uIG9mIHJlZmVyZW5jaW5nIHNsb3QgKyBvZmZzZXQuXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gc3RhdGljUG9zaXRpb24gKyBvZmZzZXQ7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFyYW0uY29tcG9uZW50cy5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gcGFyYW0uY29tcG9uZW50c1tpXTtcbiAgICAgICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGFydCArIGNvbnN1bWVkKTtcbiAgICAgICAgICAgIGNvbnN0IFtkYXRhLCBjb25zdW1lZF9dID0gZGVjb2RlUGFyYW1ldGVyKGN1cnNvciwgY29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgc3RhdGljUG9zaXRpb246IHN0YXJ0LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdW1lZCArPSBjb25zdW1lZF87XG4gICAgICAgICAgICB2YWx1ZVtoYXNVbm5hbWVkQ2hpbGQgPyBpIDogY29tcG9uZW50Py5uYW1lXSA9IGRhdGE7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQXMgd2UgaGF2ZSBnb25lIHdvbmRlcmluZywgcmVzdG9yZSB0byB0aGUgb3JpZ2luYWwgcG9zaXRpb24gKyBuZXh0IHNsb3QuXG4gICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGF0aWNQb3NpdGlvbiArIDMyKTtcbiAgICAgICAgcmV0dXJuIFt2YWx1ZSwgMzJdO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgdHVwbGUgaGFzIHN0YXRpYyBjaGlsZHJlbiwgd2UgY2FuIGp1c3QgZGVjb2RlIGVhY2ggY29tcG9uZW50XG4gICAgLy8gaW4gc2VxdWVuY2UuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJhbS5jb21wb25lbnRzLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IHBhcmFtLmNvbXBvbmVudHNbaV07XG4gICAgICAgIGNvbnN0IFtkYXRhLCBjb25zdW1lZF9dID0gZGVjb2RlUGFyYW1ldGVyKGN1cnNvciwgY29tcG9uZW50LCB7XG4gICAgICAgICAgICBzdGF0aWNQb3NpdGlvbixcbiAgICAgICAgfSk7XG4gICAgICAgIHZhbHVlW2hhc1VubmFtZWRDaGlsZCA/IGkgOiBjb21wb25lbnQ/Lm5hbWVdID0gZGF0YTtcbiAgICAgICAgY29uc3VtZWQgKz0gY29uc3VtZWRfO1xuICAgIH1cbiAgICByZXR1cm4gW3ZhbHVlLCBjb25zdW1lZF07XG59XG5mdW5jdGlvbiBkZWNvZGVTdHJpbmcoY3Vyc29yLCB7IHN0YXRpY1Bvc2l0aW9uIH0pIHtcbiAgICAvLyBHZXQgb2Zmc2V0IHRvIHN0YXJ0IG9mIHN0cmluZyBkYXRhLlxuICAgIGNvbnN0IG9mZnNldCA9IGJ5dGVzVG9OdW1iZXIoY3Vyc29yLnJlYWRCeXRlcygzMikpO1xuICAgIC8vIFN0YXJ0IGlzIHRoZSBzdGF0aWMgcG9zaXRpb24gb2YgY3VycmVudCBzbG90ICsgb2Zmc2V0LlxuICAgIGNvbnN0IHN0YXJ0ID0gc3RhdGljUG9zaXRpb24gKyBvZmZzZXQ7XG4gICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXJ0KTtcbiAgICBjb25zdCBsZW5ndGggPSBieXRlc1RvTnVtYmVyKGN1cnNvci5yZWFkQnl0ZXMoMzIpKTtcbiAgICAvLyBJZiB0aGVyZSBpcyBubyBsZW5ndGgsIHdlIGhhdmUgemVybyBkYXRhIChlbXB0eSBzdHJpbmcpLlxuICAgIGlmIChsZW5ndGggPT09IDApIHtcbiAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXRpY1Bvc2l0aW9uICsgMzIpO1xuICAgICAgICByZXR1cm4gWycnLCAzMl07XG4gICAgfVxuICAgIGNvbnN0IGRhdGEgPSBjdXJzb3IucmVhZEJ5dGVzKGxlbmd0aCwgMzIpO1xuICAgIGNvbnN0IHZhbHVlID0gYnl0ZXNUb1N0cmluZyh0cmltKGRhdGEpKTtcbiAgICAvLyBBcyB3ZSBoYXZlIGdvbmUgd29uZGVyaW5nLCByZXN0b3JlIHRvIHRoZSBvcmlnaW5hbCBwb3NpdGlvbiArIG5leHQgc2xvdC5cbiAgICBjdXJzb3Iuc2V0UG9zaXRpb24oc3RhdGljUG9zaXRpb24gKyAzMik7XG4gICAgcmV0dXJuIFt2YWx1ZSwgMzJdO1xufVxuZnVuY3Rpb24gaGFzRHluYW1pY0NoaWxkKHBhcmFtKSB7XG4gICAgY29uc3QgeyB0eXBlIH0gPSBwYXJhbTtcbiAgICBpZiAodHlwZSA9PT0gJ3N0cmluZycpXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIGlmICh0eXBlID09PSAnYnl0ZXMnKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAodHlwZS5lbmRzV2l0aCgnW10nKSlcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgaWYgKHR5cGUgPT09ICd0dXBsZScpXG4gICAgICAgIHJldHVybiBwYXJhbS5jb21wb25lbnRzPy5zb21lKGhhc0R5bmFtaWNDaGlsZCk7XG4gICAgY29uc3QgYXJyYXlDb21wb25lbnRzID0gZ2V0QXJyYXlDb21wb25lbnRzKHBhcmFtLnR5cGUpO1xuICAgIGlmIChhcnJheUNvbXBvbmVudHMgJiZcbiAgICAgICAgaGFzRHluYW1pY0NoaWxkKHsgLi4ucGFyYW0sIHR5cGU6IGFycmF5Q29tcG9uZW50c1sxXSB9KSlcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGVjb2RlQWJpUGFyYW1ldGVycy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeErrorResult.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/decodeErrorResult.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeErrorResult: () => (/* binding */ decodeErrorResult)\n/* harmony export */ });\n/* harmony import */ var _constants_solidity_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../constants/solidity.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/solidity.js\");\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _data_slice_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../data/slice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/slice.js\");\n/* harmony import */ var _hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../hash/toFunctionSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toFunctionSelector.js\");\n/* harmony import */ var _decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./decodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js\");\n/* harmony import */ var _formatAbiItem_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n\n\n\n\n\n\nfunction decodeErrorResult(parameters) {\n const { abi, data } = parameters;\n const signature = (0,_data_slice_js__WEBPACK_IMPORTED_MODULE_0__.slice)(data, 0, 4);\n if (signature === '0x')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiDecodingZeroDataError();\n const abi_ = [...(abi || []), _constants_solidity_js__WEBPACK_IMPORTED_MODULE_2__.solidityError, _constants_solidity_js__WEBPACK_IMPORTED_MODULE_2__.solidityPanic];\n const abiItem = abi_.find((x) => x.type === 'error' && signature === (0,_hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_3__.toFunctionSelector)((0,_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_4__.formatAbiItem)(x)));\n if (!abiItem)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiErrorSignatureNotFoundError(signature, {\n docsPath: '/docs/contract/decodeErrorResult',\n });\n return {\n abiItem,\n args: 'inputs' in abiItem && abiItem.inputs && abiItem.inputs.length > 0\n ? (0,_decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_5__.decodeAbiParameters)(abiItem.inputs, (0,_data_slice_js__WEBPACK_IMPORTED_MODULE_0__.slice)(data, 4))\n : undefined,\n errorName: abiItem.name,\n };\n}\n//# sourceMappingURL=decodeErrorResult.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2RlY29kZUVycm9yUmVzdWx0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBMkU7QUFDcUI7QUFDdkQ7QUFDMkI7QUFDSjtBQUNiO0FBQzVDO0FBQ1AsWUFBWSxZQUFZO0FBQ3hCLHNCQUFzQixxREFBSztBQUMzQjtBQUNBLGtCQUFrQixvRUFBd0I7QUFDMUMsa0NBQWtDLGlFQUFhLEVBQUUsaUVBQWE7QUFDOUQseUVBQXlFLCtFQUFrQixDQUFDLGdFQUFhO0FBQ3pHO0FBQ0Esa0JBQWtCLDBFQUE4QjtBQUNoRDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxjQUFjLDRFQUFtQixpQkFBaUIscURBQUs7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2RlY29kZUVycm9yUmVzdWx0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNvbGlkaXR5RXJyb3IsIHNvbGlkaXR5UGFuaWMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvc29saWRpdHkuanMnO1xuaW1wb3J0IHsgQWJpRGVjb2RpbmdaZXJvRGF0YUVycm9yLCBBYmlFcnJvclNpZ25hdHVyZU5vdEZvdW5kRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2FiaS5qcyc7XG5pbXBvcnQgeyBzbGljZSB9IGZyb20gJy4uL2RhdGEvc2xpY2UuanMnO1xuaW1wb3J0IHsgdG9GdW5jdGlvblNlbGVjdG9yLCB9IGZyb20gJy4uL2hhc2gvdG9GdW5jdGlvblNlbGVjdG9yLmpzJztcbmltcG9ydCB7IGRlY29kZUFiaVBhcmFtZXRlcnMsIH0gZnJvbSAnLi9kZWNvZGVBYmlQYXJhbWV0ZXJzLmpzJztcbmltcG9ydCB7IGZvcm1hdEFiaUl0ZW0gfSBmcm9tICcuL2Zvcm1hdEFiaUl0ZW0uanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZUVycm9yUmVzdWx0KHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFiaSwgZGF0YSB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBzaWduYXR1cmUgPSBzbGljZShkYXRhLCAwLCA0KTtcbiAgICBpZiAoc2lnbmF0dXJlID09PSAnMHgnKVxuICAgICAgICB0aHJvdyBuZXcgQWJpRGVjb2RpbmdaZXJvRGF0YUVycm9yKCk7XG4gICAgY29uc3QgYWJpXyA9IFsuLi4oYWJpIHx8IFtdKSwgc29saWRpdHlFcnJvciwgc29saWRpdHlQYW5pY107XG4gICAgY29uc3QgYWJpSXRlbSA9IGFiaV8uZmluZCgoeCkgPT4geC50eXBlID09PSAnZXJyb3InICYmIHNpZ25hdHVyZSA9PT0gdG9GdW5jdGlvblNlbGVjdG9yKGZvcm1hdEFiaUl0ZW0oeCkpKTtcbiAgICBpZiAoIWFiaUl0ZW0pXG4gICAgICAgIHRocm93IG5ldyBBYmlFcnJvclNpZ25hdHVyZU5vdEZvdW5kRXJyb3Ioc2lnbmF0dXJlLCB7XG4gICAgICAgICAgICBkb2NzUGF0aDogJy9kb2NzL2NvbnRyYWN0L2RlY29kZUVycm9yUmVzdWx0JyxcbiAgICAgICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYWJpSXRlbSxcbiAgICAgICAgYXJnczogJ2lucHV0cycgaW4gYWJpSXRlbSAmJiBhYmlJdGVtLmlucHV0cyAmJiBhYmlJdGVtLmlucHV0cy5sZW5ndGggPiAwXG4gICAgICAgICAgICA/IGRlY29kZUFiaVBhcmFtZXRlcnMoYWJpSXRlbS5pbnB1dHMsIHNsaWNlKGRhdGEsIDQpKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIGVycm9yTmFtZTogYWJpSXRlbS5uYW1lLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kZWNvZGVFcnJvclJlc3VsdC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeErrorResult.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeEventLog.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/decodeEventLog.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeEventLog: () => (/* binding */ decodeEventLog)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_cursor_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../errors/cursor.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/cursor.js\");\n/* harmony import */ var _data_size_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../data/size.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var _hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../hash/toEventSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toEventSelector.js\");\n/* harmony import */ var _decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./decodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js\");\n/* harmony import */ var _formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n\n\n\n\n\n\nconst docsPath = '/docs/contract/decodeEventLog';\nfunction decodeEventLog(parameters) {\n const { abi, data, strict: strict_, topics, } = parameters;\n const strict = strict_ ?? true;\n const [signature, ...argTopics] = topics;\n if (!signature)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiEventSignatureEmptyTopicsError({ docsPath });\n const abiItem = abi.find((x) => x.type === 'event' &&\n signature === (0,_hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_1__.toEventSelector)((0,_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__.formatAbiItem)(x)));\n if (!(abiItem && 'name' in abiItem) || abiItem.type !== 'event')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiEventSignatureNotFoundError(signature, { docsPath });\n const { name, inputs } = abiItem;\n const isUnnamed = inputs?.some((x) => !('name' in x && x.name));\n const args = isUnnamed ? [] : {};\n // Decode topics (indexed args).\n const indexedInputs = inputs\n .map((x, i) => [x, i])\n .filter(([x]) => 'indexed' in x && x.indexed);\n for (let i = 0; i < indexedInputs.length; i++) {\n const [param, argIndex] = indexedInputs[i];\n const topic = argTopics[i];\n if (!topic)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.DecodeLogTopicsMismatch({\n abiItem,\n param: param,\n });\n args[isUnnamed ? argIndex : param.name || argIndex] = decodeTopic({\n param,\n value: topic,\n });\n }\n // Decode data (non-indexed args).\n const nonIndexedInputs = inputs.filter((x) => !('indexed' in x && x.indexed));\n if (nonIndexedInputs.length > 0) {\n if (data && data !== '0x') {\n try {\n const decodedData = (0,_decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__.decodeAbiParameters)(nonIndexedInputs, data);\n if (decodedData) {\n if (isUnnamed)\n for (let i = 0; i < inputs.length; i++)\n args[i] = args[i] ?? decodedData.shift();\n else\n for (let i = 0; i < nonIndexedInputs.length; i++)\n args[nonIndexedInputs[i].name] = decodedData[i];\n }\n }\n catch (err) {\n if (strict) {\n if (err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiDecodingDataSizeTooSmallError ||\n err instanceof _errors_cursor_js__WEBPACK_IMPORTED_MODULE_4__.PositionOutOfBoundsError)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.DecodeLogDataMismatch({\n abiItem,\n data: data,\n params: nonIndexedInputs,\n size: (0,_data_size_js__WEBPACK_IMPORTED_MODULE_5__.size)(data),\n });\n throw err;\n }\n }\n }\n else if (strict) {\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.DecodeLogDataMismatch({\n abiItem,\n data: '0x',\n params: nonIndexedInputs,\n size: 0,\n });\n }\n }\n return {\n eventName: name,\n args: Object.values(args).length > 0 ? args : undefined,\n };\n}\nfunction decodeTopic({ param, value }) {\n if (param.type === 'string' ||\n param.type === 'bytes' ||\n param.type === 'tuple' ||\n param.type.match(/^(.*)\\[(\\d+)?\\]$/))\n return value;\n const decodedArg = (0,_decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__.decodeAbiParameters)([param], value) || [];\n return decodedArg[0];\n}\n//# sourceMappingURL=decodeEventLog.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2RlY29kZUV2ZW50TG9nLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBMkw7QUFDekg7QUFDM0I7QUFDdUI7QUFDRTtBQUNiO0FBQ25EO0FBQ087QUFDUCxZQUFZLHNDQUFzQztBQUNsRDtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsNkVBQWlDLEdBQUcsVUFBVTtBQUNoRTtBQUNBLHNCQUFzQix5RUFBZSxDQUFDLGdFQUFhO0FBQ25EO0FBQ0Esa0JBQWtCLDBFQUE4QixjQUFjLFVBQVU7QUFDeEUsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwwQkFBMEI7QUFDOUM7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLG1FQUF1QjtBQUM3QztBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsNEVBQW1CO0FBQ3ZEO0FBQ0E7QUFDQSx3Q0FBd0MsbUJBQW1CO0FBQzNEO0FBQ0E7QUFDQSx3Q0FBd0MsNkJBQTZCO0FBQ3JFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsNEVBQWdDO0FBQ3ZFLHVDQUF1Qyx1RUFBd0I7QUFDL0Qsa0NBQWtDLGlFQUFxQjtBQUN2RDtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0MsbURBQUk7QUFDdEMseUJBQXlCO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsaUVBQXFCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLGNBQWM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qiw0RUFBbUI7QUFDMUM7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9hYmkvZGVjb2RlRXZlbnRMb2cuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJpRGVjb2RpbmdEYXRhU2l6ZVRvb1NtYWxsRXJyb3IsIEFiaUV2ZW50U2lnbmF0dXJlRW1wdHlUb3BpY3NFcnJvciwgQWJpRXZlbnRTaWduYXR1cmVOb3RGb3VuZEVycm9yLCBEZWNvZGVMb2dEYXRhTWlzbWF0Y2gsIERlY29kZUxvZ1RvcGljc01pc21hdGNoLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9hYmkuanMnO1xuaW1wb3J0IHsgUG9zaXRpb25PdXRPZkJvdW5kc0Vycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2N1cnNvci5qcyc7XG5pbXBvcnQgeyBzaXplIH0gZnJvbSAnLi4vZGF0YS9zaXplLmpzJztcbmltcG9ydCB7IHRvRXZlbnRTZWxlY3RvciwgfSBmcm9tICcuLi9oYXNoL3RvRXZlbnRTZWxlY3Rvci5qcyc7XG5pbXBvcnQgeyBkZWNvZGVBYmlQYXJhbWV0ZXJzLCB9IGZyb20gJy4vZGVjb2RlQWJpUGFyYW1ldGVycy5qcyc7XG5pbXBvcnQgeyBmb3JtYXRBYmlJdGVtIH0gZnJvbSAnLi9mb3JtYXRBYmlJdGVtLmpzJztcbmNvbnN0IGRvY3NQYXRoID0gJy9kb2NzL2NvbnRyYWN0L2RlY29kZUV2ZW50TG9nJztcbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVFdmVudExvZyhwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhYmksIGRhdGEsIHN0cmljdDogc3RyaWN0XywgdG9waWNzLCB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBzdHJpY3QgPSBzdHJpY3RfID8/IHRydWU7XG4gICAgY29uc3QgW3NpZ25hdHVyZSwgLi4uYXJnVG9waWNzXSA9IHRvcGljcztcbiAgICBpZiAoIXNpZ25hdHVyZSlcbiAgICAgICAgdGhyb3cgbmV3IEFiaUV2ZW50U2lnbmF0dXJlRW1wdHlUb3BpY3NFcnJvcih7IGRvY3NQYXRoIH0pO1xuICAgIGNvbnN0IGFiaUl0ZW0gPSBhYmkuZmluZCgoeCkgPT4geC50eXBlID09PSAnZXZlbnQnICYmXG4gICAgICAgIHNpZ25hdHVyZSA9PT0gdG9FdmVudFNlbGVjdG9yKGZvcm1hdEFiaUl0ZW0oeCkpKTtcbiAgICBpZiAoIShhYmlJdGVtICYmICduYW1lJyBpbiBhYmlJdGVtKSB8fCBhYmlJdGVtLnR5cGUgIT09ICdldmVudCcpXG4gICAgICAgIHRocm93IG5ldyBBYmlFdmVudFNpZ25hdHVyZU5vdEZvdW5kRXJyb3Ioc2lnbmF0dXJlLCB7IGRvY3NQYXRoIH0pO1xuICAgIGNvbnN0IHsgbmFtZSwgaW5wdXRzIH0gPSBhYmlJdGVtO1xuICAgIGNvbnN0IGlzVW5uYW1lZCA9IGlucHV0cz8uc29tZSgoeCkgPT4gISgnbmFtZScgaW4geCAmJiB4Lm5hbWUpKTtcbiAgICBjb25zdCBhcmdzID0gaXNVbm5hbWVkID8gW10gOiB7fTtcbiAgICAvLyBEZWNvZGUgdG9waWNzIChpbmRleGVkIGFyZ3MpLlxuICAgIGNvbnN0IGluZGV4ZWRJbnB1dHMgPSBpbnB1dHNcbiAgICAgICAgLm1hcCgoeCwgaSkgPT4gW3gsIGldKVxuICAgICAgICAuZmlsdGVyKChbeF0pID0+ICdpbmRleGVkJyBpbiB4ICYmIHguaW5kZXhlZCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbmRleGVkSW5wdXRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IFtwYXJhbSwgYXJnSW5kZXhdID0gaW5kZXhlZElucHV0c1tpXTtcbiAgICAgICAgY29uc3QgdG9waWMgPSBhcmdUb3BpY3NbaV07XG4gICAgICAgIGlmICghdG9waWMpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRGVjb2RlTG9nVG9waWNzTWlzbWF0Y2goe1xuICAgICAgICAgICAgICAgIGFiaUl0ZW0sXG4gICAgICAgICAgICAgICAgcGFyYW06IHBhcmFtLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIGFyZ3NbaXNVbm5hbWVkID8gYXJnSW5kZXggOiBwYXJhbS5uYW1lIHx8IGFyZ0luZGV4XSA9IGRlY29kZVRvcGljKHtcbiAgICAgICAgICAgIHBhcmFtLFxuICAgICAgICAgICAgdmFsdWU6IHRvcGljLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgLy8gRGVjb2RlIGRhdGEgKG5vbi1pbmRleGVkIGFyZ3MpLlxuICAgIGNvbnN0IG5vbkluZGV4ZWRJbnB1dHMgPSBpbnB1dHMuZmlsdGVyKCh4KSA9PiAhKCdpbmRleGVkJyBpbiB4ICYmIHguaW5kZXhlZCkpO1xuICAgIGlmIChub25JbmRleGVkSW5wdXRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKGRhdGEgJiYgZGF0YSAhPT0gJzB4Jykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkZWNvZGVkRGF0YSA9IGRlY29kZUFiaVBhcmFtZXRlcnMobm9uSW5kZXhlZElucHV0cywgZGF0YSk7XG4gICAgICAgICAgICAgICAgaWYgKGRlY29kZWREYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc1VubmFtZWQpXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0cy5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzW2ldID0gYXJnc1tpXSA/PyBkZWNvZGVkRGF0YS5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vbkluZGV4ZWRJbnB1dHMubGVuZ3RoOyBpKyspXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnc1tub25JbmRleGVkSW5wdXRzW2ldLm5hbWVdID0gZGVjb2RlZERhdGFbaV07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgIGlmIChzdHJpY3QpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEFiaURlY29kaW5nRGF0YVNpemVUb29TbWFsbEVycm9yIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBlcnIgaW5zdGFuY2VvZiBQb3NpdGlvbk91dE9mQm91bmRzRXJyb3IpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRGVjb2RlTG9nRGF0YU1pc21hdGNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYmlJdGVtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiBub25JbmRleGVkSW5wdXRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IHNpemUoZGF0YSksXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChzdHJpY3QpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBEZWNvZGVMb2dEYXRhTWlzbWF0Y2goe1xuICAgICAgICAgICAgICAgIGFiaUl0ZW0sXG4gICAgICAgICAgICAgICAgZGF0YTogJzB4JyxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IG5vbkluZGV4ZWRJbnB1dHMsXG4gICAgICAgICAgICAgICAgc2l6ZTogMCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIGV2ZW50TmFtZTogbmFtZSxcbiAgICAgICAgYXJnczogT2JqZWN0LnZhbHVlcyhhcmdzKS5sZW5ndGggPiAwID8gYXJncyA6IHVuZGVmaW5lZCxcbiAgICB9O1xufVxuZnVuY3Rpb24gZGVjb2RlVG9waWMoeyBwYXJhbSwgdmFsdWUgfSkge1xuICAgIGlmIChwYXJhbS50eXBlID09PSAnc3RyaW5nJyB8fFxuICAgICAgICBwYXJhbS50eXBlID09PSAnYnl0ZXMnIHx8XG4gICAgICAgIHBhcmFtLnR5cGUgPT09ICd0dXBsZScgfHxcbiAgICAgICAgcGFyYW0udHlwZS5tYXRjaCgvXiguKilcXFsoXFxkKyk/XFxdJC8pKVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgY29uc3QgZGVjb2RlZEFyZyA9IGRlY29kZUFiaVBhcmFtZXRlcnMoW3BhcmFtXSwgdmFsdWUpIHx8IFtdO1xuICAgIHJldHVybiBkZWNvZGVkQXJnWzBdO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGVjb2RlRXZlbnRMb2cuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeEventLog.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionData.js": /*!****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/decodeFunctionData.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeFunctionData: () => (/* binding */ decodeFunctionData)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _data_slice_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../data/slice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/slice.js\");\n/* harmony import */ var _hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../hash/toFunctionSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toFunctionSelector.js\");\n/* harmony import */ var _decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./decodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js\");\n/* harmony import */ var _formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n\n\n\n\n\nfunction decodeFunctionData(parameters) {\n const { abi, data } = parameters;\n const signature = (0,_data_slice_js__WEBPACK_IMPORTED_MODULE_0__.slice)(data, 0, 4);\n const description = abi.find((x) => x.type === 'function' &&\n signature === (0,_hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_1__.toFunctionSelector)((0,_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__.formatAbiItem)(x)));\n if (!description)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__.AbiFunctionSignatureNotFoundError(signature, {\n docsPath: '/docs/contract/decodeFunctionData',\n });\n return {\n functionName: description.name,\n args: ('inputs' in description &&\n description.inputs &&\n description.inputs.length > 0\n ? (0,_decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_4__.decodeAbiParameters)(description.inputs, (0,_data_slice_js__WEBPACK_IMPORTED_MODULE_0__.slice)(data, 4))\n : undefined),\n };\n}\n//# sourceMappingURL=decodeFunctionData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2RlY29kZUZ1bmN0aW9uRGF0YS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBd0U7QUFDL0I7QUFDMkI7QUFDSjtBQUNiO0FBQzVDO0FBQ1AsWUFBWSxZQUFZO0FBQ3hCLHNCQUFzQixxREFBSztBQUMzQjtBQUNBLHNCQUFzQiwrRUFBa0IsQ0FBQyxnRUFBYTtBQUN0RDtBQUNBLGtCQUFrQiw2RUFBaUM7QUFDbkQ7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsNEVBQW1CLHFCQUFxQixxREFBSztBQUMzRDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2RlY29kZUZ1bmN0aW9uRGF0YS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYmlGdW5jdGlvblNpZ25hdHVyZU5vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IHNsaWNlIH0gZnJvbSAnLi4vZGF0YS9zbGljZS5qcyc7XG5pbXBvcnQgeyB0b0Z1bmN0aW9uU2VsZWN0b3IsIH0gZnJvbSAnLi4vaGFzaC90b0Z1bmN0aW9uU2VsZWN0b3IuanMnO1xuaW1wb3J0IHsgZGVjb2RlQWJpUGFyYW1ldGVycywgfSBmcm9tICcuL2RlY29kZUFiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0IHsgZm9ybWF0QWJpSXRlbSB9IGZyb20gJy4vZm9ybWF0QWJpSXRlbS5qcyc7XG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlRnVuY3Rpb25EYXRhKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFiaSwgZGF0YSB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBzaWduYXR1cmUgPSBzbGljZShkYXRhLCAwLCA0KTtcbiAgICBjb25zdCBkZXNjcmlwdGlvbiA9IGFiaS5maW5kKCh4KSA9PiB4LnR5cGUgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgICAgc2lnbmF0dXJlID09PSB0b0Z1bmN0aW9uU2VsZWN0b3IoZm9ybWF0QWJpSXRlbSh4KSkpO1xuICAgIGlmICghZGVzY3JpcHRpb24pXG4gICAgICAgIHRocm93IG5ldyBBYmlGdW5jdGlvblNpZ25hdHVyZU5vdEZvdW5kRXJyb3Ioc2lnbmF0dXJlLCB7XG4gICAgICAgICAgICBkb2NzUGF0aDogJy9kb2NzL2NvbnRyYWN0L2RlY29kZUZ1bmN0aW9uRGF0YScsXG4gICAgICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIGZ1bmN0aW9uTmFtZTogZGVzY3JpcHRpb24ubmFtZSxcbiAgICAgICAgYXJnczogKCdpbnB1dHMnIGluIGRlc2NyaXB0aW9uICYmXG4gICAgICAgICAgICBkZXNjcmlwdGlvbi5pbnB1dHMgJiZcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uLmlucHV0cy5sZW5ndGggPiAwXG4gICAgICAgICAgICA/IGRlY29kZUFiaVBhcmFtZXRlcnMoZGVzY3JpcHRpb24uaW5wdXRzLCBzbGljZShkYXRhLCA0KSlcbiAgICAgICAgICAgIDogdW5kZWZpbmVkKSxcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGVjb2RlRnVuY3Rpb25EYXRhLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeFunctionResult: () => (/* binding */ decodeFunctionResult)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./decodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeAbiParameters.js\");\n/* harmony import */ var _getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\");\n\n\n\nconst docsPath = '/docs/contract/decodeFunctionResult';\nfunction decodeFunctionResult(parameters) {\n const { abi, args, functionName, data } = parameters;\n let abiItem = abi[0];\n if (functionName) {\n const item = (0,_getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__.getAbiItem)({ abi, args, name: functionName });\n if (!item)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionNotFoundError(functionName, { docsPath });\n abiItem = item;\n }\n if (abiItem.type !== 'function')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionNotFoundError(undefined, { docsPath });\n if (!abiItem.outputs)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionOutputsNotFoundError(abiItem.name, { docsPath });\n const values = (0,_decodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_2__.decodeAbiParameters)(abiItem.outputs, data);\n if (values && values.length > 1)\n return values;\n if (values && values.length === 1)\n return values[0];\n return undefined;\n}\n//# sourceMappingURL=decodeFunctionResult.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2RlY29kZUZ1bmN0aW9uUmVzdWx0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBaUc7QUFDakM7QUFDbkI7QUFDN0M7QUFDTztBQUNQLFlBQVksZ0NBQWdDO0FBQzVDO0FBQ0E7QUFDQSxxQkFBcUIsMERBQVUsR0FBRywrQkFBK0I7QUFDakU7QUFDQSxzQkFBc0Isb0VBQXdCLGlCQUFpQixVQUFVO0FBQ3pFO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixvRUFBd0IsY0FBYyxVQUFVO0FBQ2xFO0FBQ0Esa0JBQWtCLDJFQUErQixpQkFBaUIsVUFBVTtBQUM1RSxtQkFBbUIsNEVBQW1CO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9hYmkvZGVjb2RlRnVuY3Rpb25SZXN1bHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJpRnVuY3Rpb25Ob3RGb3VuZEVycm9yLCBBYmlGdW5jdGlvbk91dHB1dHNOb3RGb3VuZEVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9hYmkuanMnO1xuaW1wb3J0IHsgZGVjb2RlQWJpUGFyYW1ldGVycywgfSBmcm9tICcuL2RlY29kZUFiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0IHsgZ2V0QWJpSXRlbSB9IGZyb20gJy4vZ2V0QWJpSXRlbS5qcyc7XG5jb25zdCBkb2NzUGF0aCA9ICcvZG9jcy9jb250cmFjdC9kZWNvZGVGdW5jdGlvblJlc3VsdCc7XG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlRnVuY3Rpb25SZXN1bHQocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWJpLCBhcmdzLCBmdW5jdGlvbk5hbWUsIGRhdGEgfSA9IHBhcmFtZXRlcnM7XG4gICAgbGV0IGFiaUl0ZW0gPSBhYmlbMF07XG4gICAgaWYgKGZ1bmN0aW9uTmFtZSkge1xuICAgICAgICBjb25zdCBpdGVtID0gZ2V0QWJpSXRlbSh7IGFiaSwgYXJncywgbmFtZTogZnVuY3Rpb25OYW1lIH0pO1xuICAgICAgICBpZiAoIWl0ZW0pXG4gICAgICAgICAgICB0aHJvdyBuZXcgQWJpRnVuY3Rpb25Ob3RGb3VuZEVycm9yKGZ1bmN0aW9uTmFtZSwgeyBkb2NzUGF0aCB9KTtcbiAgICAgICAgYWJpSXRlbSA9IGl0ZW07XG4gICAgfVxuICAgIGlmIChhYmlJdGVtLnR5cGUgIT09ICdmdW5jdGlvbicpXG4gICAgICAgIHRocm93IG5ldyBBYmlGdW5jdGlvbk5vdEZvdW5kRXJyb3IodW5kZWZpbmVkLCB7IGRvY3NQYXRoIH0pO1xuICAgIGlmICghYWJpSXRlbS5vdXRwdXRzKVxuICAgICAgICB0aHJvdyBuZXcgQWJpRnVuY3Rpb25PdXRwdXRzTm90Rm91bmRFcnJvcihhYmlJdGVtLm5hbWUsIHsgZG9jc1BhdGggfSk7XG4gICAgY29uc3QgdmFsdWVzID0gZGVjb2RlQWJpUGFyYW1ldGVycyhhYmlJdGVtLm91dHB1dHMsIGRhdGEpO1xuICAgIGlmICh2YWx1ZXMgJiYgdmFsdWVzLmxlbmd0aCA+IDEpXG4gICAgICAgIHJldHVybiB2YWx1ZXM7XG4gICAgaWYgKHZhbHVlcyAmJiB2YWx1ZXMubGVuZ3RoID09PSAxKVxuICAgICAgICByZXR1cm4gdmFsdWVzWzBdO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kZWNvZGVGdW5jdGlvblJlc3VsdC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionResult.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeAbiParameters: () => (/* binding */ encodeAbiParameters),\n/* harmony export */ getArrayComponents: () => (/* binding */ getArrayComponents)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_address_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../errors/address.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/address.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_encoding_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../errors/encoding.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/encoding.js\");\n/* harmony import */ var _address_isAddress_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../address/isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _data_pad_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../data/pad.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/pad.js\");\n/* harmony import */ var _data_size_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../data/size.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var _data_slice_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../data/slice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/slice.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _regex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../regex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/regex.js\");\n\n\n\n\n\n\n\n\n\n\n\n/**\n * @description Encodes a list of primitive values into an ABI-encoded hex value.\n *\n * - Docs: https://viem.sh/docs/abi/encodeAbiParameters#encodeabiparameters\n *\n * Generates ABI encoded data using the [ABI specification](https://docs.soliditylang.org/en/latest/abi-spec), given a set of ABI parameters (inputs/outputs) and their corresponding values.\n *\n * @param params - a set of ABI Parameters (params), that can be in the shape of the inputs or outputs attribute of an ABI Item.\n * @param values - a set of values (values) that correspond to the given params.\n * @example\n * ```typescript\n * import { encodeAbiParameters } from 'viem'\n *\n * const encodedData = encodeAbiParameters(\n * [\n * { name: 'x', type: 'string' },\n * { name: 'y', type: 'uint' },\n * { name: 'z', type: 'bool' }\n * ],\n * ['wagmi', 420n, true]\n * )\n * ```\n *\n * You can also pass in Human Readable parameters with the parseAbiParameters utility.\n *\n * @example\n * ```typescript\n * import { encodeAbiParameters, parseAbiParameters } from 'viem'\n *\n * const encodedData = encodeAbiParameters(\n * parseAbiParameters('string x, uint y, bool z'),\n * ['wagmi', 420n, true]\n * )\n * ```\n */\nfunction encodeAbiParameters(params, values) {\n if (params.length !== values.length)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiEncodingLengthMismatchError({\n expectedLength: params.length,\n givenLength: values.length,\n });\n // Prepare the parameters to determine dynamic types to encode.\n const preparedParams = prepareParams({\n params: params,\n values: values,\n });\n const data = encodeParams(preparedParams);\n if (data.length === 0)\n return '0x';\n return data;\n}\nfunction prepareParams({ params, values, }) {\n const preparedParams = [];\n for (let i = 0; i < params.length; i++) {\n preparedParams.push(prepareParam({ param: params[i], value: values[i] }));\n }\n return preparedParams;\n}\nfunction prepareParam({ param, value, }) {\n const arrayComponents = getArrayComponents(param.type);\n if (arrayComponents) {\n const [length, type] = arrayComponents;\n return encodeArray(value, { length, param: { ...param, type } });\n }\n if (param.type === 'tuple') {\n return encodeTuple(value, {\n param: param,\n });\n }\n if (param.type === 'address') {\n return encodeAddress(value);\n }\n if (param.type === 'bool') {\n return encodeBool(value);\n }\n if (param.type.startsWith('uint') || param.type.startsWith('int')) {\n const signed = param.type.startsWith('int');\n const [, , size = '256'] = _regex_js__WEBPACK_IMPORTED_MODULE_1__.integerRegex.exec(param.type) ?? [];\n return encodeNumber(value, {\n signed,\n size: Number(size),\n });\n }\n if (param.type.startsWith('bytes')) {\n return encodeBytes(value, { param });\n }\n if (param.type === 'string') {\n return encodeString(value);\n }\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.InvalidAbiEncodingTypeError(param.type, {\n docsPath: '/docs/contract/encodeAbiParameters',\n });\n}\nfunction encodeParams(preparedParams) {\n // 1. Compute the size of the static part of the parameters.\n let staticSize = 0;\n for (let i = 0; i < preparedParams.length; i++) {\n const { dynamic, encoded } = preparedParams[i];\n if (dynamic)\n staticSize += 32;\n else\n staticSize += (0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(encoded);\n }\n // 2. Split the parameters into static and dynamic parts.\n const staticParams = [];\n const dynamicParams = [];\n let dynamicSize = 0;\n for (let i = 0; i < preparedParams.length; i++) {\n const { dynamic, encoded } = preparedParams[i];\n if (dynamic) {\n staticParams.push((0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(staticSize + dynamicSize, { size: 32 }));\n dynamicParams.push(encoded);\n dynamicSize += (0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(encoded);\n }\n else {\n staticParams.push(encoded);\n }\n }\n // 3. Concatenate static and dynamic parts.\n return (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_4__.concat)([...staticParams, ...dynamicParams]);\n}\nfunction encodeAddress(value) {\n if (!(0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_5__.isAddress)(value))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_6__.InvalidAddressError({ address: value });\n return { dynamic: false, encoded: (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_7__.padHex)(value.toLowerCase()) };\n}\nfunction encodeArray(value, { length, param, }) {\n const dynamic = length === null;\n if (!Array.isArray(value))\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.InvalidArrayError(value);\n if (!dynamic && value.length !== length)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiEncodingArrayLengthMismatchError({\n expectedLength: length,\n givenLength: value.length,\n type: `${param.type}[${length}]`,\n });\n let dynamicChild = false;\n const preparedParams = [];\n for (let i = 0; i < value.length; i++) {\n const preparedParam = prepareParam({ param, value: value[i] });\n if (preparedParam.dynamic)\n dynamicChild = true;\n preparedParams.push(preparedParam);\n }\n if (dynamic || dynamicChild) {\n const data = encodeParams(preparedParams);\n if (dynamic) {\n const length = (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(preparedParams.length, { size: 32 });\n return {\n dynamic: true,\n encoded: preparedParams.length > 0 ? (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_4__.concat)([length, data]) : length,\n };\n }\n if (dynamicChild)\n return { dynamic: true, encoded: data };\n }\n return {\n dynamic: false,\n encoded: (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_4__.concat)(preparedParams.map(({ encoded }) => encoded)),\n };\n}\nfunction encodeBytes(value, { param }) {\n const [, paramSize] = param.type.split('bytes');\n const bytesSize = (0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(value);\n if (!paramSize) {\n let value_ = value;\n // If the size is not divisible by 32 bytes, pad the end\n // with empty bytes to the ceiling 32 bytes.\n if (bytesSize % 32 !== 0)\n value_ = (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_7__.padHex)(value_, {\n dir: 'right',\n size: Math.ceil((value.length - 2) / 2 / 32) * 32,\n });\n return {\n dynamic: true,\n encoded: (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_4__.concat)([(0,_data_pad_js__WEBPACK_IMPORTED_MODULE_7__.padHex)((0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(bytesSize, { size: 32 })), value_]),\n };\n }\n if (bytesSize !== Number.parseInt(paramSize, 10))\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiEncodingBytesSizeMismatchError({\n expectedSize: Number.parseInt(paramSize, 10),\n value,\n });\n return { dynamic: false, encoded: (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_7__.padHex)(value, { dir: 'right' }) };\n}\nfunction encodeBool(value) {\n if (typeof value !== 'boolean')\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_8__.BaseError(`Invalid boolean value: \"${value}\" (type: ${typeof value}). Expected: \\`true\\` or \\`false\\`.`);\n return { dynamic: false, encoded: (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_7__.padHex)((0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.boolToHex)(value)) };\n}\nfunction encodeNumber(value, { signed, size = 256 }) {\n if (typeof size === 'number') {\n const max = 2n ** (BigInt(size) - (signed ? 1n : 0n)) - 1n;\n const min = signed ? -max - 1n : 0n;\n if (value > max || value < min)\n throw new _errors_encoding_js__WEBPACK_IMPORTED_MODULE_9__.IntegerOutOfRangeError({\n max: max.toString(),\n min: min.toString(),\n signed,\n size: size / 8,\n value: value.toString(),\n });\n }\n return {\n dynamic: false,\n encoded: (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(value, {\n size: 32,\n signed,\n }),\n };\n}\nfunction encodeString(value) {\n const hexValue = (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.stringToHex)(value);\n const partsLength = Math.ceil((0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(hexValue) / 32);\n const parts = [];\n for (let i = 0; i < partsLength; i++) {\n parts.push((0,_data_pad_js__WEBPACK_IMPORTED_MODULE_7__.padHex)((0,_data_slice_js__WEBPACK_IMPORTED_MODULE_10__.slice)(hexValue, i * 32, (i + 1) * 32), {\n dir: 'right',\n }));\n }\n return {\n dynamic: true,\n encoded: (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_4__.concat)([\n (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_7__.padHex)((0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)((0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(hexValue), { size: 32 })),\n ...parts,\n ]),\n };\n}\nfunction encodeTuple(value, { param }) {\n let dynamic = false;\n const preparedParams = [];\n for (let i = 0; i < param.components.length; i++) {\n const param_ = param.components[i];\n const index = Array.isArray(value) ? i : param_.name;\n const preparedParam = prepareParam({\n param: param_,\n value: value[index],\n });\n preparedParams.push(preparedParam);\n if (preparedParam.dynamic)\n dynamic = true;\n }\n return {\n dynamic,\n encoded: dynamic\n ? encodeParams(preparedParams)\n : (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_4__.concat)(preparedParams.map(({ encoded }) => encoded)),\n };\n}\nfunction getArrayComponents(type) {\n const matches = type.match(/^(.*)\\[(\\d+)?\\]$/);\n return matches\n ? // Return `null` if the array is dynamic.\n [matches[2] ? Number(matches[2]) : null, matches[1]]\n : undefined;\n}\n//# sourceMappingURL=encodeAbiParameters.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZUFiaVBhcmFtZXRlcnMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUE4TDtBQUMvSDtBQUNkO0FBQ2lCO0FBQ2Q7QUFDVDtBQUNIO0FBQ0Q7QUFDRTtBQUNtQztBQUNqQztBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxzQkFBc0I7QUFDbEM7QUFDQTtBQUNBO0FBQ0EsU0FBUywyQkFBMkI7QUFDcEMsU0FBUyx5QkFBeUI7QUFDbEMsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksMENBQTBDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLGtCQUFrQiwwRUFBOEI7QUFDaEQ7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLGlCQUFpQjtBQUMxQztBQUNBLG9CQUFvQixtQkFBbUI7QUFDdkMsMkNBQTJDLG9DQUFvQztBQUMvRTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsZUFBZTtBQUN2QztBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsaUJBQWlCLGtCQUFrQjtBQUN2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsbURBQVk7QUFDL0M7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxvQ0FBb0MsT0FBTztBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsdUVBQTJCO0FBQ3pDO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQyxnQkFBZ0IsbUJBQW1CO0FBQ25DO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixtREFBSTtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQyxnQkFBZ0IsbUJBQW1CO0FBQ25DO0FBQ0EsOEJBQThCLCtEQUFXLDZCQUE2QixVQUFVO0FBQ2hGO0FBQ0EsMkJBQTJCLG1EQUFJO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsdURBQU07QUFDakI7QUFDQTtBQUNBLFNBQVMsZ0VBQVM7QUFDbEIsa0JBQWtCLG1FQUFtQixHQUFHLGdCQUFnQjtBQUN4RCxhQUFhLHlCQUF5QixvREFBTTtBQUM1QztBQUNBLDhCQUE4QixnQkFBZ0I7QUFDOUM7QUFDQTtBQUNBLGtCQUFrQiw2REFBaUI7QUFDbkM7QUFDQSxrQkFBa0IsK0VBQW1DO0FBQ3JEO0FBQ0E7QUFDQSxxQkFBcUIsV0FBVyxHQUFHLE9BQU87QUFDMUMsU0FBUztBQUNUO0FBQ0E7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDLDZDQUE2Qyx3QkFBd0I7QUFDckU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsK0RBQVcsMEJBQTBCLFVBQVU7QUFDMUU7QUFDQTtBQUNBLHFEQUFxRCx1REFBTTtBQUMzRDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLHVEQUFNLHVCQUF1QixTQUFTO0FBQ3ZEO0FBQ0E7QUFDQSw4QkFBOEIsT0FBTztBQUNyQztBQUNBLHNCQUFzQixtREFBSTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLG9EQUFNO0FBQzNCO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLHFCQUFxQix1REFBTSxFQUFFLG9EQUFNLENBQUMsK0RBQVcsY0FBYyxVQUFVO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQiw2RUFBaUM7QUFDbkQ7QUFDQTtBQUNBLFNBQVM7QUFDVCxhQUFhLHlCQUF5QixvREFBTSxVQUFVLGNBQWM7QUFDcEU7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLHNEQUFTLDRCQUE0QixNQUFNLFdBQVcsYUFBYTtBQUNyRixhQUFhLHlCQUF5QixvREFBTSxDQUFDLDZEQUFTO0FBQ3REO0FBQ0EsK0JBQStCLG9CQUFvQjtBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQix1RUFBc0I7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsK0RBQVc7QUFDNUI7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsK0RBQVc7QUFDaEMsa0NBQWtDLG1EQUFJO0FBQ3RDO0FBQ0Esb0JBQW9CLGlCQUFpQjtBQUNyQyxtQkFBbUIsb0RBQU0sQ0FBQyxzREFBSztBQUMvQjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsdURBQU07QUFDdkIsWUFBWSxvREFBTSxDQUFDLCtEQUFXLENBQUMsbURBQUksY0FBYyxVQUFVO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLE9BQU87QUFDckM7QUFDQTtBQUNBLG9CQUFvQiw2QkFBNkI7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyx1REFBTSx1QkFBdUIsU0FBUztBQUNwRDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZUFiaVBhcmFtZXRlcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJpRW5jb2RpbmdBcnJheUxlbmd0aE1pc21hdGNoRXJyb3IsIEFiaUVuY29kaW5nQnl0ZXNTaXplTWlzbWF0Y2hFcnJvciwgQWJpRW5jb2RpbmdMZW5ndGhNaXNtYXRjaEVycm9yLCBJbnZhbGlkQWJpRW5jb2RpbmdUeXBlRXJyb3IsIEludmFsaWRBcnJheUVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9hYmkuanMnO1xuaW1wb3J0IHsgSW52YWxpZEFkZHJlc3NFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWRkcmVzcy5qcyc7XG5pbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYmFzZS5qcyc7XG5pbXBvcnQgeyBJbnRlZ2VyT3V0T2ZSYW5nZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2VuY29kaW5nLmpzJztcbmltcG9ydCB7IGlzQWRkcmVzcyB9IGZyb20gJy4uL2FkZHJlc3MvaXNBZGRyZXNzLmpzJztcbmltcG9ydCB7IGNvbmNhdCB9IGZyb20gJy4uL2RhdGEvY29uY2F0LmpzJztcbmltcG9ydCB7IHBhZEhleCB9IGZyb20gJy4uL2RhdGEvcGFkLmpzJztcbmltcG9ydCB7IHNpemUgfSBmcm9tICcuLi9kYXRhL3NpemUuanMnO1xuaW1wb3J0IHsgc2xpY2UgfSBmcm9tICcuLi9kYXRhL3NsaWNlLmpzJztcbmltcG9ydCB7IGJvb2xUb0hleCwgbnVtYmVyVG9IZXgsIHN0cmluZ1RvSGV4LCB9IGZyb20gJy4uL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGludGVnZXJSZWdleCB9IGZyb20gJy4uL3JlZ2V4LmpzJztcbi8qKlxuICogQGRlc2NyaXB0aW9uIEVuY29kZXMgYSBsaXN0IG9mIHByaW1pdGl2ZSB2YWx1ZXMgaW50byBhbiBBQkktZW5jb2RlZCBoZXggdmFsdWUuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hYmkvZW5jb2RlQWJpUGFyYW1ldGVycyNlbmNvZGVhYmlwYXJhbWV0ZXJzXG4gKlxuICogICBHZW5lcmF0ZXMgQUJJIGVuY29kZWQgZGF0YSB1c2luZyB0aGUgW0FCSSBzcGVjaWZpY2F0aW9uXShodHRwczovL2RvY3Muc29saWRpdHlsYW5nLm9yZy9lbi9sYXRlc3QvYWJpLXNwZWMpLCBnaXZlbiBhIHNldCBvZiBBQkkgcGFyYW1ldGVycyAoaW5wdXRzL291dHB1dHMpIGFuZCB0aGVpciBjb3JyZXNwb25kaW5nIHZhbHVlcy5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gYSBzZXQgb2YgQUJJIFBhcmFtZXRlcnMgKHBhcmFtcyksIHRoYXQgY2FuIGJlIGluIHRoZSBzaGFwZSBvZiB0aGUgaW5wdXRzIG9yIG91dHB1dHMgYXR0cmlidXRlIG9mIGFuIEFCSSBJdGVtLlxuICogQHBhcmFtIHZhbHVlcyAtIGEgc2V0IG9mIHZhbHVlcyAodmFsdWVzKSB0aGF0IGNvcnJlc3BvbmQgdG8gdGhlIGdpdmVuIHBhcmFtcy5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBlbmNvZGVBYmlQYXJhbWV0ZXJzIH0gZnJvbSAndmllbSdcbiAqXG4gKiBjb25zdCBlbmNvZGVkRGF0YSA9IGVuY29kZUFiaVBhcmFtZXRlcnMoXG4gKiAgIFtcbiAqICAgICB7IG5hbWU6ICd4JywgdHlwZTogJ3N0cmluZycgfSxcbiAqICAgICB7IG5hbWU6ICd5JywgdHlwZTogJ3VpbnQnIH0sXG4gKiAgICAgeyBuYW1lOiAneicsIHR5cGU6ICdib29sJyB9XG4gKiAgIF0sXG4gKiAgIFsnd2FnbWknLCA0MjBuLCB0cnVlXVxuICogKVxuICogYGBgXG4gKlxuICogWW91IGNhbiBhbHNvIHBhc3MgaW4gSHVtYW4gUmVhZGFibGUgcGFyYW1ldGVycyB3aXRoIHRoZSBwYXJzZUFiaVBhcmFtZXRlcnMgdXRpbGl0eS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgZW5jb2RlQWJpUGFyYW1ldGVycywgcGFyc2VBYmlQYXJhbWV0ZXJzIH0gZnJvbSAndmllbSdcbiAqXG4gKiBjb25zdCBlbmNvZGVkRGF0YSA9IGVuY29kZUFiaVBhcmFtZXRlcnMoXG4gKiAgIHBhcnNlQWJpUGFyYW1ldGVycygnc3RyaW5nIHgsIHVpbnQgeSwgYm9vbCB6JyksXG4gKiAgIFsnd2FnbWknLCA0MjBuLCB0cnVlXVxuICogKVxuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVBYmlQYXJhbWV0ZXJzKHBhcmFtcywgdmFsdWVzKSB7XG4gICAgaWYgKHBhcmFtcy5sZW5ndGggIT09IHZhbHVlcy5sZW5ndGgpXG4gICAgICAgIHRocm93IG5ldyBBYmlFbmNvZGluZ0xlbmd0aE1pc21hdGNoRXJyb3Ioe1xuICAgICAgICAgICAgZXhwZWN0ZWRMZW5ndGg6IHBhcmFtcy5sZW5ndGgsXG4gICAgICAgICAgICBnaXZlbkxlbmd0aDogdmFsdWVzLmxlbmd0aCxcbiAgICAgICAgfSk7XG4gICAgLy8gUHJlcGFyZSB0aGUgcGFyYW1ldGVycyB0byBkZXRlcm1pbmUgZHluYW1pYyB0eXBlcyB0byBlbmNvZGUuXG4gICAgY29uc3QgcHJlcGFyZWRQYXJhbXMgPSBwcmVwYXJlUGFyYW1zKHtcbiAgICAgICAgcGFyYW1zOiBwYXJhbXMsXG4gICAgICAgIHZhbHVlczogdmFsdWVzLFxuICAgIH0pO1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVQYXJhbXMocHJlcGFyZWRQYXJhbXMpO1xuICAgIGlmIChkYXRhLmxlbmd0aCA9PT0gMClcbiAgICAgICAgcmV0dXJuICcweCc7XG4gICAgcmV0dXJuIGRhdGE7XG59XG5mdW5jdGlvbiBwcmVwYXJlUGFyYW1zKHsgcGFyYW1zLCB2YWx1ZXMsIH0pIHtcbiAgICBjb25zdCBwcmVwYXJlZFBhcmFtcyA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFyYW1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHByZXBhcmVkUGFyYW1zLnB1c2gocHJlcGFyZVBhcmFtKHsgcGFyYW06IHBhcmFtc1tpXSwgdmFsdWU6IHZhbHVlc1tpXSB9KSk7XG4gICAgfVxuICAgIHJldHVybiBwcmVwYXJlZFBhcmFtcztcbn1cbmZ1bmN0aW9uIHByZXBhcmVQYXJhbSh7IHBhcmFtLCB2YWx1ZSwgfSkge1xuICAgIGNvbnN0IGFycmF5Q29tcG9uZW50cyA9IGdldEFycmF5Q29tcG9uZW50cyhwYXJhbS50eXBlKTtcbiAgICBpZiAoYXJyYXlDb21wb25lbnRzKSB7XG4gICAgICAgIGNvbnN0IFtsZW5ndGgsIHR5cGVdID0gYXJyYXlDb21wb25lbnRzO1xuICAgICAgICByZXR1cm4gZW5jb2RlQXJyYXkodmFsdWUsIHsgbGVuZ3RoLCBwYXJhbTogeyAuLi5wYXJhbSwgdHlwZSB9IH0pO1xuICAgIH1cbiAgICBpZiAocGFyYW0udHlwZSA9PT0gJ3R1cGxlJykge1xuICAgICAgICByZXR1cm4gZW5jb2RlVHVwbGUodmFsdWUsIHtcbiAgICAgICAgICAgIHBhcmFtOiBwYXJhbSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChwYXJhbS50eXBlID09PSAnYWRkcmVzcycpIHtcbiAgICAgICAgcmV0dXJuIGVuY29kZUFkZHJlc3ModmFsdWUpO1xuICAgIH1cbiAgICBpZiAocGFyYW0udHlwZSA9PT0gJ2Jvb2wnKSB7XG4gICAgICAgIHJldHVybiBlbmNvZGVCb29sKHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHBhcmFtLnR5cGUuc3RhcnRzV2l0aCgndWludCcpIHx8IHBhcmFtLnR5cGUuc3RhcnRzV2l0aCgnaW50JykpIHtcbiAgICAgICAgY29uc3Qgc2lnbmVkID0gcGFyYW0udHlwZS5zdGFydHNXaXRoKCdpbnQnKTtcbiAgICAgICAgY29uc3QgWywgLCBzaXplID0gJzI1NiddID0gaW50ZWdlclJlZ2V4LmV4ZWMocGFyYW0udHlwZSkgPz8gW107XG4gICAgICAgIHJldHVybiBlbmNvZGVOdW1iZXIodmFsdWUsIHtcbiAgICAgICAgICAgIHNpZ25lZCxcbiAgICAgICAgICAgIHNpemU6IE51bWJlcihzaXplKSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChwYXJhbS50eXBlLnN0YXJ0c1dpdGgoJ2J5dGVzJykpIHtcbiAgICAgICAgcmV0dXJuIGVuY29kZUJ5dGVzKHZhbHVlLCB7IHBhcmFtIH0pO1xuICAgIH1cbiAgICBpZiAocGFyYW0udHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGVuY29kZVN0cmluZyh2YWx1ZSk7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkQWJpRW5jb2RpbmdUeXBlRXJyb3IocGFyYW0udHlwZSwge1xuICAgICAgICBkb2NzUGF0aDogJy9kb2NzL2NvbnRyYWN0L2VuY29kZUFiaVBhcmFtZXRlcnMnLFxuICAgIH0pO1xufVxuZnVuY3Rpb24gZW5jb2RlUGFyYW1zKHByZXBhcmVkUGFyYW1zKSB7XG4gICAgLy8gMS4gQ29tcHV0ZSB0aGUgc2l6ZSBvZiB0aGUgc3RhdGljIHBhcnQgb2YgdGhlIHBhcmFtZXRlcnMuXG4gICAgbGV0IHN0YXRpY1NpemUgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJlcGFyZWRQYXJhbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgeyBkeW5hbWljLCBlbmNvZGVkIH0gPSBwcmVwYXJlZFBhcmFtc1tpXTtcbiAgICAgICAgaWYgKGR5bmFtaWMpXG4gICAgICAgICAgICBzdGF0aWNTaXplICs9IDMyO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBzdGF0aWNTaXplICs9IHNpemUoZW5jb2RlZCk7XG4gICAgfVxuICAgIC8vIDIuIFNwbGl0IHRoZSBwYXJhbWV0ZXJzIGludG8gc3RhdGljIGFuZCBkeW5hbWljIHBhcnRzLlxuICAgIGNvbnN0IHN0YXRpY1BhcmFtcyA9IFtdO1xuICAgIGNvbnN0IGR5bmFtaWNQYXJhbXMgPSBbXTtcbiAgICBsZXQgZHluYW1pY1NpemUgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJlcGFyZWRQYXJhbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgeyBkeW5hbWljLCBlbmNvZGVkIH0gPSBwcmVwYXJlZFBhcmFtc1tpXTtcbiAgICAgICAgaWYgKGR5bmFtaWMpIHtcbiAgICAgICAgICAgIHN0YXRpY1BhcmFtcy5wdXNoKG51bWJlclRvSGV4KHN0YXRpY1NpemUgKyBkeW5hbWljU2l6ZSwgeyBzaXplOiAzMiB9KSk7XG4gICAgICAgICAgICBkeW5hbWljUGFyYW1zLnB1c2goZW5jb2RlZCk7XG4gICAgICAgICAgICBkeW5hbWljU2l6ZSArPSBzaXplKGVuY29kZWQpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgc3RhdGljUGFyYW1zLnB1c2goZW5jb2RlZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gMy4gQ29uY2F0ZW5hdGUgc3RhdGljIGFuZCBkeW5hbWljIHBhcnRzLlxuICAgIHJldHVybiBjb25jYXQoWy4uLnN0YXRpY1BhcmFtcywgLi4uZHluYW1pY1BhcmFtc10pO1xufVxuZnVuY3Rpb24gZW5jb2RlQWRkcmVzcyh2YWx1ZSkge1xuICAgIGlmICghaXNBZGRyZXNzKHZhbHVlKSlcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBZGRyZXNzRXJyb3IoeyBhZGRyZXNzOiB2YWx1ZSB9KTtcbiAgICByZXR1cm4geyBkeW5hbWljOiBmYWxzZSwgZW5jb2RlZDogcGFkSGV4KHZhbHVlLnRvTG93ZXJDYXNlKCkpIH07XG59XG5mdW5jdGlvbiBlbmNvZGVBcnJheSh2YWx1ZSwgeyBsZW5ndGgsIHBhcmFtLCB9KSB7XG4gICAgY29uc3QgZHluYW1pYyA9IGxlbmd0aCA9PT0gbnVsbDtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFycmF5RXJyb3IodmFsdWUpO1xuICAgIGlmICghZHluYW1pYyAmJiB2YWx1ZS5sZW5ndGggIT09IGxlbmd0aClcbiAgICAgICAgdGhyb3cgbmV3IEFiaUVuY29kaW5nQXJyYXlMZW5ndGhNaXNtYXRjaEVycm9yKHtcbiAgICAgICAgICAgIGV4cGVjdGVkTGVuZ3RoOiBsZW5ndGgsXG4gICAgICAgICAgICBnaXZlbkxlbmd0aDogdmFsdWUubGVuZ3RoLFxuICAgICAgICAgICAgdHlwZTogYCR7cGFyYW0udHlwZX1bJHtsZW5ndGh9XWAsXG4gICAgICAgIH0pO1xuICAgIGxldCBkeW5hbWljQ2hpbGQgPSBmYWxzZTtcbiAgICBjb25zdCBwcmVwYXJlZFBhcmFtcyA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgcHJlcGFyZWRQYXJhbSA9IHByZXBhcmVQYXJhbSh7IHBhcmFtLCB2YWx1ZTogdmFsdWVbaV0gfSk7XG4gICAgICAgIGlmIChwcmVwYXJlZFBhcmFtLmR5bmFtaWMpXG4gICAgICAgICAgICBkeW5hbWljQ2hpbGQgPSB0cnVlO1xuICAgICAgICBwcmVwYXJlZFBhcmFtcy5wdXNoKHByZXBhcmVkUGFyYW0pO1xuICAgIH1cbiAgICBpZiAoZHluYW1pYyB8fCBkeW5hbWljQ2hpbGQpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IGVuY29kZVBhcmFtcyhwcmVwYXJlZFBhcmFtcyk7XG4gICAgICAgIGlmIChkeW5hbWljKSB7XG4gICAgICAgICAgICBjb25zdCBsZW5ndGggPSBudW1iZXJUb0hleChwcmVwYXJlZFBhcmFtcy5sZW5ndGgsIHsgc2l6ZTogMzIgfSk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGR5bmFtaWM6IHRydWUsXG4gICAgICAgICAgICAgICAgZW5jb2RlZDogcHJlcGFyZWRQYXJhbXMubGVuZ3RoID4gMCA/IGNvbmNhdChbbGVuZ3RoLCBkYXRhXSkgOiBsZW5ndGgsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChkeW5hbWljQ2hpbGQpXG4gICAgICAgICAgICByZXR1cm4geyBkeW5hbWljOiB0cnVlLCBlbmNvZGVkOiBkYXRhIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIGR5bmFtaWM6IGZhbHNlLFxuICAgICAgICBlbmNvZGVkOiBjb25jYXQocHJlcGFyZWRQYXJhbXMubWFwKCh7IGVuY29kZWQgfSkgPT4gZW5jb2RlZCkpLFxuICAgIH07XG59XG5mdW5jdGlvbiBlbmNvZGVCeXRlcyh2YWx1ZSwgeyBwYXJhbSB9KSB7XG4gICAgY29uc3QgWywgcGFyYW1TaXplXSA9IHBhcmFtLnR5cGUuc3BsaXQoJ2J5dGVzJyk7XG4gICAgY29uc3QgYnl0ZXNTaXplID0gc2l6ZSh2YWx1ZSk7XG4gICAgaWYgKCFwYXJhbVNpemUpIHtcbiAgICAgICAgbGV0IHZhbHVlXyA9IHZhbHVlO1xuICAgICAgICAvLyBJZiB0aGUgc2l6ZSBpcyBub3QgZGl2aXNpYmxlIGJ5IDMyIGJ5dGVzLCBwYWQgdGhlIGVuZFxuICAgICAgICAvLyB3aXRoIGVtcHR5IGJ5dGVzIHRvIHRoZSBjZWlsaW5nIDMyIGJ5dGVzLlxuICAgICAgICBpZiAoYnl0ZXNTaXplICUgMzIgIT09IDApXG4gICAgICAgICAgICB2YWx1ZV8gPSBwYWRIZXgodmFsdWVfLCB7XG4gICAgICAgICAgICAgICAgZGlyOiAncmlnaHQnLFxuICAgICAgICAgICAgICAgIHNpemU6IE1hdGguY2VpbCgodmFsdWUubGVuZ3RoIC0gMikgLyAyIC8gMzIpICogMzIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGR5bmFtaWM6IHRydWUsXG4gICAgICAgICAgICBlbmNvZGVkOiBjb25jYXQoW3BhZEhleChudW1iZXJUb0hleChieXRlc1NpemUsIHsgc2l6ZTogMzIgfSkpLCB2YWx1ZV9dKSxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgaWYgKGJ5dGVzU2l6ZSAhPT0gTnVtYmVyLnBhcnNlSW50KHBhcmFtU2l6ZSwgMTApKVxuICAgICAgICB0aHJvdyBuZXcgQWJpRW5jb2RpbmdCeXRlc1NpemVNaXNtYXRjaEVycm9yKHtcbiAgICAgICAgICAgIGV4cGVjdGVkU2l6ZTogTnVtYmVyLnBhcnNlSW50KHBhcmFtU2l6ZSwgMTApLFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgIH0pO1xuICAgIHJldHVybiB7IGR5bmFtaWM6IGZhbHNlLCBlbmNvZGVkOiBwYWRIZXgodmFsdWUsIHsgZGlyOiAncmlnaHQnIH0pIH07XG59XG5mdW5jdGlvbiBlbmNvZGVCb29sKHZhbHVlKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ2Jvb2xlYW4nKVxuICAgICAgICB0aHJvdyBuZXcgQmFzZUVycm9yKGBJbnZhbGlkIGJvb2xlYW4gdmFsdWU6IFwiJHt2YWx1ZX1cIiAodHlwZTogJHt0eXBlb2YgdmFsdWV9KS4gRXhwZWN0ZWQ6IFxcYHRydWVcXGAgb3IgXFxgZmFsc2VcXGAuYCk7XG4gICAgcmV0dXJuIHsgZHluYW1pYzogZmFsc2UsIGVuY29kZWQ6IHBhZEhleChib29sVG9IZXgodmFsdWUpKSB9O1xufVxuZnVuY3Rpb24gZW5jb2RlTnVtYmVyKHZhbHVlLCB7IHNpZ25lZCwgc2l6ZSA9IDI1NiB9KSB7XG4gICAgaWYgKHR5cGVvZiBzaXplID09PSAnbnVtYmVyJykge1xuICAgICAgICBjb25zdCBtYXggPSAybiAqKiAoQmlnSW50KHNpemUpIC0gKHNpZ25lZCA/IDFuIDogMG4pKSAtIDFuO1xuICAgICAgICBjb25zdCBtaW4gPSBzaWduZWQgPyAtbWF4IC0gMW4gOiAwbjtcbiAgICAgICAgaWYgKHZhbHVlID4gbWF4IHx8IHZhbHVlIDwgbWluKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludGVnZXJPdXRPZlJhbmdlRXJyb3Ioe1xuICAgICAgICAgICAgICAgIG1heDogbWF4LnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgbWluOiBtaW4udG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICBzaWduZWQsXG4gICAgICAgICAgICAgICAgc2l6ZTogc2l6ZSAvIDgsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlLnRvU3RyaW5nKCksXG4gICAgICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZHluYW1pYzogZmFsc2UsXG4gICAgICAgIGVuY29kZWQ6IG51bWJlclRvSGV4KHZhbHVlLCB7XG4gICAgICAgICAgICBzaXplOiAzMixcbiAgICAgICAgICAgIHNpZ25lZCxcbiAgICAgICAgfSksXG4gICAgfTtcbn1cbmZ1bmN0aW9uIGVuY29kZVN0cmluZyh2YWx1ZSkge1xuICAgIGNvbnN0IGhleFZhbHVlID0gc3RyaW5nVG9IZXgodmFsdWUpO1xuICAgIGNvbnN0IHBhcnRzTGVuZ3RoID0gTWF0aC5jZWlsKHNpemUoaGV4VmFsdWUpIC8gMzIpO1xuICAgIGNvbnN0IHBhcnRzID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJ0c0xlbmd0aDsgaSsrKSB7XG4gICAgICAgIHBhcnRzLnB1c2gocGFkSGV4KHNsaWNlKGhleFZhbHVlLCBpICogMzIsIChpICsgMSkgKiAzMiksIHtcbiAgICAgICAgICAgIGRpcjogJ3JpZ2h0JyxcbiAgICAgICAgfSkpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICBkeW5hbWljOiB0cnVlLFxuICAgICAgICBlbmNvZGVkOiBjb25jYXQoW1xuICAgICAgICAgICAgcGFkSGV4KG51bWJlclRvSGV4KHNpemUoaGV4VmFsdWUpLCB7IHNpemU6IDMyIH0pKSxcbiAgICAgICAgICAgIC4uLnBhcnRzLFxuICAgICAgICBdKSxcbiAgICB9O1xufVxuZnVuY3Rpb24gZW5jb2RlVHVwbGUodmFsdWUsIHsgcGFyYW0gfSkge1xuICAgIGxldCBkeW5hbWljID0gZmFsc2U7XG4gICAgY29uc3QgcHJlcGFyZWRQYXJhbXMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcmFtLmNvbXBvbmVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgcGFyYW1fID0gcGFyYW0uY29tcG9uZW50c1tpXTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IGkgOiBwYXJhbV8ubmFtZTtcbiAgICAgICAgY29uc3QgcHJlcGFyZWRQYXJhbSA9IHByZXBhcmVQYXJhbSh7XG4gICAgICAgICAgICBwYXJhbTogcGFyYW1fLFxuICAgICAgICAgICAgdmFsdWU6IHZhbHVlW2luZGV4XSxcbiAgICAgICAgfSk7XG4gICAgICAgIHByZXBhcmVkUGFyYW1zLnB1c2gocHJlcGFyZWRQYXJhbSk7XG4gICAgICAgIGlmIChwcmVwYXJlZFBhcmFtLmR5bmFtaWMpXG4gICAgICAgICAgICBkeW5hbWljID0gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZHluYW1pYyxcbiAgICAgICAgZW5jb2RlZDogZHluYW1pY1xuICAgICAgICAgICAgPyBlbmNvZGVQYXJhbXMocHJlcGFyZWRQYXJhbXMpXG4gICAgICAgICAgICA6IGNvbmNhdChwcmVwYXJlZFBhcmFtcy5tYXAoKHsgZW5jb2RlZCB9KSA9PiBlbmNvZGVkKSksXG4gICAgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBnZXRBcnJheUNvbXBvbmVudHModHlwZSkge1xuICAgIGNvbnN0IG1hdGNoZXMgPSB0eXBlLm1hdGNoKC9eKC4qKVxcWyhcXGQrKT9cXF0kLyk7XG4gICAgcmV0dXJuIG1hdGNoZXNcbiAgICAgICAgPyAvLyBSZXR1cm4gYG51bGxgIGlmIHRoZSBhcnJheSBpcyBkeW5hbWljLlxuICAgICAgICAgICAgW21hdGNoZXNbMl0gPyBOdW1iZXIobWF0Y2hlc1syXSkgOiBudWxsLCBtYXRjaGVzWzFdXVxuICAgICAgICA6IHVuZGVmaW5lZDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVuY29kZUFiaVBhcmFtZXRlcnMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeDeployData.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/encodeDeployData.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeDeployData: () => (/* binding */ encodeDeployData)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n\n\n\nconst docsPath = '/docs/contract/encodeDeployData';\nfunction encodeDeployData(parameters) {\n const { abi, args, bytecode } = parameters;\n if (!args || args.length === 0)\n return bytecode;\n const description = abi.find((x) => 'type' in x && x.type === 'constructor');\n if (!description)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiConstructorNotFoundError({ docsPath });\n if (!('inputs' in description))\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiConstructorParamsNotFoundError({ docsPath });\n if (!description.inputs || description.inputs.length === 0)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiConstructorParamsNotFoundError({ docsPath });\n const data = (0,_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_1__.encodeAbiParameters)(description.inputs, args);\n return (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_2__.concatHex)([bytecode, data]);\n}\n//# sourceMappingURL=encodeDeployData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZURlcGxveURhdGEuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFzRztBQUN4RDtBQUNrQjtBQUNoRTtBQUNPO0FBQ1AsWUFBWSxzQkFBc0I7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsdUVBQTJCLEdBQUcsVUFBVTtBQUMxRDtBQUNBLGtCQUFrQiw2RUFBaUMsR0FBRyxVQUFVO0FBQ2hFO0FBQ0Esa0JBQWtCLDZFQUFpQyxHQUFHLFVBQVU7QUFDaEUsaUJBQWlCLDRFQUFtQjtBQUNwQyxXQUFXLDBEQUFTO0FBQ3BCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2FiaS9lbmNvZGVEZXBsb3lEYXRhLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFiaUNvbnN0cnVjdG9yTm90Rm91bmRFcnJvciwgQWJpQ29uc3RydWN0b3JQYXJhbXNOb3RGb3VuZEVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9hYmkuanMnO1xuaW1wb3J0IHsgY29uY2F0SGV4IH0gZnJvbSAnLi4vZGF0YS9jb25jYXQuanMnO1xuaW1wb3J0IHsgZW5jb2RlQWJpUGFyYW1ldGVycywgfSBmcm9tICcuL2VuY29kZUFiaVBhcmFtZXRlcnMuanMnO1xuY29uc3QgZG9jc1BhdGggPSAnL2RvY3MvY29udHJhY3QvZW5jb2RlRGVwbG95RGF0YSc7XG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlRGVwbG95RGF0YShwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhYmksIGFyZ3MsIGJ5dGVjb2RlIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGlmICghYXJncyB8fCBhcmdzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgcmV0dXJuIGJ5dGVjb2RlO1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gYWJpLmZpbmQoKHgpID0+ICd0eXBlJyBpbiB4ICYmIHgudHlwZSA9PT0gJ2NvbnN0cnVjdG9yJyk7XG4gICAgaWYgKCFkZXNjcmlwdGlvbilcbiAgICAgICAgdGhyb3cgbmV3IEFiaUNvbnN0cnVjdG9yTm90Rm91bmRFcnJvcih7IGRvY3NQYXRoIH0pO1xuICAgIGlmICghKCdpbnB1dHMnIGluIGRlc2NyaXB0aW9uKSlcbiAgICAgICAgdGhyb3cgbmV3IEFiaUNvbnN0cnVjdG9yUGFyYW1zTm90Rm91bmRFcnJvcih7IGRvY3NQYXRoIH0pO1xuICAgIGlmICghZGVzY3JpcHRpb24uaW5wdXRzIHx8IGRlc2NyaXB0aW9uLmlucHV0cy5sZW5ndGggPT09IDApXG4gICAgICAgIHRocm93IG5ldyBBYmlDb25zdHJ1Y3RvclBhcmFtc05vdEZvdW5kRXJyb3IoeyBkb2NzUGF0aCB9KTtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlQWJpUGFyYW1ldGVycyhkZXNjcmlwdGlvbi5pbnB1dHMsIGFyZ3MpO1xuICAgIHJldHVybiBjb25jYXRIZXgoW2J5dGVjb2RlLCBkYXRhXSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1lbmNvZGVEZXBsb3lEYXRhLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeDeployData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeErrorResult.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/encodeErrorResult.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeErrorResult: () => (/* binding */ encodeErrorResult)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../hash/toFunctionSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toFunctionSelector.js\");\n/* harmony import */ var _encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var _formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n/* harmony import */ var _getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\");\n\n\n\n\n\n\nconst docsPath = '/docs/contract/encodeErrorResult';\nfunction encodeErrorResult(parameters) {\n const { abi, errorName, args } = parameters;\n let abiItem = abi[0];\n if (errorName) {\n const item = (0,_getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__.getAbiItem)({ abi, args, name: errorName });\n if (!item)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiErrorNotFoundError(errorName, { docsPath });\n abiItem = item;\n }\n if (abiItem.type !== 'error')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiErrorNotFoundError(undefined, { docsPath });\n const definition = (0,_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__.formatAbiItem)(abiItem);\n const signature = (0,_hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_3__.toFunctionSelector)(definition);\n let data = '0x';\n if (args && args.length > 0) {\n if (!abiItem.inputs)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiErrorInputsNotFoundError(abiItem.name, { docsPath });\n data = (0,_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_4__.encodeAbiParameters)(abiItem.inputs, args);\n }\n return (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_5__.concatHex)([signature, data]);\n}\n//# sourceMappingURL=encodeErrorResult.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZUVycm9yUmVzdWx0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBMEY7QUFDNUM7QUFDc0I7QUFDSjtBQUNiO0FBQ047QUFDN0M7QUFDTztBQUNQLFlBQVksdUJBQXVCO0FBQ25DO0FBQ0E7QUFDQSxxQkFBcUIsMERBQVUsR0FBRyw0QkFBNEI7QUFDOUQ7QUFDQSxzQkFBc0IsaUVBQXFCLGNBQWMsVUFBVTtBQUNuRTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsaUVBQXFCLGNBQWMsVUFBVTtBQUMvRCx1QkFBdUIsZ0VBQWE7QUFDcEMsc0JBQXNCLCtFQUFrQjtBQUN4QztBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsdUVBQTJCLGlCQUFpQixVQUFVO0FBQzVFLGVBQWUsNEVBQW1CO0FBQ2xDO0FBQ0EsV0FBVywwREFBUztBQUNwQjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9hYmkvZW5jb2RlRXJyb3JSZXN1bHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJpRXJyb3JJbnB1dHNOb3RGb3VuZEVycm9yLCBBYmlFcnJvck5vdEZvdW5kRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2FiaS5qcyc7XG5pbXBvcnQgeyBjb25jYXRIZXggfSBmcm9tICcuLi9kYXRhL2NvbmNhdC5qcyc7XG5pbXBvcnQgeyB0b0Z1bmN0aW9uU2VsZWN0b3IsIH0gZnJvbSAnLi4vaGFzaC90b0Z1bmN0aW9uU2VsZWN0b3IuanMnO1xuaW1wb3J0IHsgZW5jb2RlQWJpUGFyYW1ldGVycywgfSBmcm9tICcuL2VuY29kZUFiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0IHsgZm9ybWF0QWJpSXRlbSB9IGZyb20gJy4vZm9ybWF0QWJpSXRlbS5qcyc7XG5pbXBvcnQgeyBnZXRBYmlJdGVtIH0gZnJvbSAnLi9nZXRBYmlJdGVtLmpzJztcbmNvbnN0IGRvY3NQYXRoID0gJy9kb2NzL2NvbnRyYWN0L2VuY29kZUVycm9yUmVzdWx0JztcbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVFcnJvclJlc3VsdChwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhYmksIGVycm9yTmFtZSwgYXJncyB9ID0gcGFyYW1ldGVycztcbiAgICBsZXQgYWJpSXRlbSA9IGFiaVswXTtcbiAgICBpZiAoZXJyb3JOYW1lKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBnZXRBYmlJdGVtKHsgYWJpLCBhcmdzLCBuYW1lOiBlcnJvck5hbWUgfSk7XG4gICAgICAgIGlmICghaXRlbSlcbiAgICAgICAgICAgIHRocm93IG5ldyBBYmlFcnJvck5vdEZvdW5kRXJyb3IoZXJyb3JOYW1lLCB7IGRvY3NQYXRoIH0pO1xuICAgICAgICBhYmlJdGVtID0gaXRlbTtcbiAgICB9XG4gICAgaWYgKGFiaUl0ZW0udHlwZSAhPT0gJ2Vycm9yJylcbiAgICAgICAgdGhyb3cgbmV3IEFiaUVycm9yTm90Rm91bmRFcnJvcih1bmRlZmluZWQsIHsgZG9jc1BhdGggfSk7XG4gICAgY29uc3QgZGVmaW5pdGlvbiA9IGZvcm1hdEFiaUl0ZW0oYWJpSXRlbSk7XG4gICAgY29uc3Qgc2lnbmF0dXJlID0gdG9GdW5jdGlvblNlbGVjdG9yKGRlZmluaXRpb24pO1xuICAgIGxldCBkYXRhID0gJzB4JztcbiAgICBpZiAoYXJncyAmJiBhcmdzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKCFhYmlJdGVtLmlucHV0cylcbiAgICAgICAgICAgIHRocm93IG5ldyBBYmlFcnJvcklucHV0c05vdEZvdW5kRXJyb3IoYWJpSXRlbS5uYW1lLCB7IGRvY3NQYXRoIH0pO1xuICAgICAgICBkYXRhID0gZW5jb2RlQWJpUGFyYW1ldGVycyhhYmlJdGVtLmlucHV0cywgYXJncyk7XG4gICAgfVxuICAgIHJldHVybiBjb25jYXRIZXgoW3NpZ25hdHVyZSwgZGF0YV0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZW5jb2RlRXJyb3JSZXN1bHQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeErrorResult.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeEventTopics.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/encodeEventTopics.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeEventTopics: () => (/* binding */ encodeEventTopics)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_log_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../errors/log.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/log.js\");\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../hash/toEventSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toEventSelector.js\");\n/* harmony import */ var _encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var _formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n/* harmony import */ var _getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\");\n\n\n\n\n\n\n\n\nconst docsPath = '/docs/contract/encodeEventTopics';\nfunction encodeEventTopics(parameters) {\n const { abi, eventName, args } = parameters;\n let abiItem = abi[0];\n if (eventName) {\n const item = (0,_getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__.getAbiItem)({ abi, name: eventName });\n if (!item)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiEventNotFoundError(eventName, { docsPath });\n abiItem = item;\n }\n if (abiItem.type !== 'event')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiEventNotFoundError(undefined, { docsPath });\n const definition = (0,_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_2__.formatAbiItem)(abiItem);\n const signature = (0,_hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_3__.toEventSelector)(definition);\n let topics = [];\n if (args && 'inputs' in abiItem) {\n const indexedInputs = abiItem.inputs?.filter((param) => 'indexed' in param && param.indexed);\n const args_ = Array.isArray(args)\n ? args\n : Object.values(args).length > 0\n ? (indexedInputs?.map((x) => args[x.name]) ?? [])\n : [];\n if (args_.length > 0) {\n topics =\n indexedInputs?.map((param, i) => {\n if (Array.isArray(args_[i]))\n return args_[i].map((_, j) => encodeArg({ param, value: args_[i][j] }));\n return typeof args_[i] !== 'undefined' && args_[i] !== null\n ? encodeArg({ param, value: args_[i] })\n : null;\n }) ?? [];\n }\n }\n return [signature, ...topics];\n}\nfunction encodeArg({ param, value, }) {\n if (param.type === 'string' || param.type === 'bytes')\n return (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)((0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_5__.toBytes)(value));\n if (param.type === 'tuple' || param.type.match(/^(.*)\\[(\\d+)?\\]$/))\n throw new _errors_log_js__WEBPACK_IMPORTED_MODULE_6__.FilterTypeNotSupportedError(param.type);\n return (0,_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_7__.encodeAbiParameters)([param], [value]);\n}\n//# sourceMappingURL=encodeEventTopics.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZUV2ZW50VG9waWNzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUE2RDtBQUNNO0FBQ2xCO0FBQ0E7QUFDYTtBQUNFO0FBQ2I7QUFDTjtBQUM3QztBQUNPO0FBQ1AsWUFBWSx1QkFBdUI7QUFDbkM7QUFDQTtBQUNBLHFCQUFxQiwwREFBVSxHQUFHLHNCQUFzQjtBQUN4RDtBQUNBLHNCQUFzQixpRUFBcUIsY0FBYyxVQUFVO0FBQ25FO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixpRUFBcUIsY0FBYyxVQUFVO0FBQy9ELHVCQUF1QixnRUFBYTtBQUNwQyxzQkFBc0IseUVBQWU7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0VBQWtFLDJCQUEyQjtBQUM3RjtBQUNBLHNDQUFzQyx3QkFBd0I7QUFDOUQ7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsZUFBZTtBQUNwQztBQUNBLGVBQWUsNkRBQVMsQ0FBQyw2REFBTztBQUNoQztBQUNBLGtCQUFrQix1RUFBMkI7QUFDN0MsV0FBVyw0RUFBbUI7QUFDOUI7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZUV2ZW50VG9waWNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFiaUV2ZW50Tm90Rm91bmRFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IEZpbHRlclR5cGVOb3RTdXBwb3J0ZWRFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvbG9nLmpzJztcbmltcG9ydCB7IHRvQnl0ZXMgfSBmcm9tICcuLi9lbmNvZGluZy90b0J5dGVzLmpzJztcbmltcG9ydCB7IGtlY2NhazI1NiB9IGZyb20gJy4uL2hhc2gva2VjY2FrMjU2LmpzJztcbmltcG9ydCB7IHRvRXZlbnRTZWxlY3RvciwgfSBmcm9tICcuLi9oYXNoL3RvRXZlbnRTZWxlY3Rvci5qcyc7XG5pbXBvcnQgeyBlbmNvZGVBYmlQYXJhbWV0ZXJzLCB9IGZyb20gJy4vZW5jb2RlQWJpUGFyYW1ldGVycy5qcyc7XG5pbXBvcnQgeyBmb3JtYXRBYmlJdGVtIH0gZnJvbSAnLi9mb3JtYXRBYmlJdGVtLmpzJztcbmltcG9ydCB7IGdldEFiaUl0ZW0gfSBmcm9tICcuL2dldEFiaUl0ZW0uanMnO1xuY29uc3QgZG9jc1BhdGggPSAnL2RvY3MvY29udHJhY3QvZW5jb2RlRXZlbnRUb3BpY3MnO1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZUV2ZW50VG9waWNzKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFiaSwgZXZlbnROYW1lLCBhcmdzIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGxldCBhYmlJdGVtID0gYWJpWzBdO1xuICAgIGlmIChldmVudE5hbWUpIHtcbiAgICAgICAgY29uc3QgaXRlbSA9IGdldEFiaUl0ZW0oeyBhYmksIG5hbWU6IGV2ZW50TmFtZSB9KTtcbiAgICAgICAgaWYgKCFpdGVtKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEFiaUV2ZW50Tm90Rm91bmRFcnJvcihldmVudE5hbWUsIHsgZG9jc1BhdGggfSk7XG4gICAgICAgIGFiaUl0ZW0gPSBpdGVtO1xuICAgIH1cbiAgICBpZiAoYWJpSXRlbS50eXBlICE9PSAnZXZlbnQnKVxuICAgICAgICB0aHJvdyBuZXcgQWJpRXZlbnROb3RGb3VuZEVycm9yKHVuZGVmaW5lZCwgeyBkb2NzUGF0aCB9KTtcbiAgICBjb25zdCBkZWZpbml0aW9uID0gZm9ybWF0QWJpSXRlbShhYmlJdGVtKTtcbiAgICBjb25zdCBzaWduYXR1cmUgPSB0b0V2ZW50U2VsZWN0b3IoZGVmaW5pdGlvbik7XG4gICAgbGV0IHRvcGljcyA9IFtdO1xuICAgIGlmIChhcmdzICYmICdpbnB1dHMnIGluIGFiaUl0ZW0pIHtcbiAgICAgICAgY29uc3QgaW5kZXhlZElucHV0cyA9IGFiaUl0ZW0uaW5wdXRzPy5maWx0ZXIoKHBhcmFtKSA9PiAnaW5kZXhlZCcgaW4gcGFyYW0gJiYgcGFyYW0uaW5kZXhlZCk7XG4gICAgICAgIGNvbnN0IGFyZ3NfID0gQXJyYXkuaXNBcnJheShhcmdzKVxuICAgICAgICAgICAgPyBhcmdzXG4gICAgICAgICAgICA6IE9iamVjdC52YWx1ZXMoYXJncykubGVuZ3RoID4gMFxuICAgICAgICAgICAgICAgID8gKGluZGV4ZWRJbnB1dHM/Lm1hcCgoeCkgPT4gYXJnc1t4Lm5hbWVdKSA/PyBbXSlcbiAgICAgICAgICAgICAgICA6IFtdO1xuICAgICAgICBpZiAoYXJnc18ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdG9waWNzID1cbiAgICAgICAgICAgICAgICBpbmRleGVkSW5wdXRzPy5tYXAoKHBhcmFtLCBpKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFyZ3NfW2ldKSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhcmdzX1tpXS5tYXAoKF8sIGopID0+IGVuY29kZUFyZyh7IHBhcmFtLCB2YWx1ZTogYXJnc19baV1bal0gfSkpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHlwZW9mIGFyZ3NfW2ldICE9PSAndW5kZWZpbmVkJyAmJiBhcmdzX1tpXSAhPT0gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBlbmNvZGVBcmcoeyBwYXJhbSwgdmFsdWU6IGFyZ3NfW2ldIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICA6IG51bGw7XG4gICAgICAgICAgICAgICAgfSkgPz8gW107XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIFtzaWduYXR1cmUsIC4uLnRvcGljc107XG59XG5mdW5jdGlvbiBlbmNvZGVBcmcoeyBwYXJhbSwgdmFsdWUsIH0pIHtcbiAgICBpZiAocGFyYW0udHlwZSA9PT0gJ3N0cmluZycgfHwgcGFyYW0udHlwZSA9PT0gJ2J5dGVzJylcbiAgICAgICAgcmV0dXJuIGtlY2NhazI1Nih0b0J5dGVzKHZhbHVlKSk7XG4gICAgaWYgKHBhcmFtLnR5cGUgPT09ICd0dXBsZScgfHwgcGFyYW0udHlwZS5tYXRjaCgvXiguKilcXFsoXFxkKyk/XFxdJC8pKVxuICAgICAgICB0aHJvdyBuZXcgRmlsdGVyVHlwZU5vdFN1cHBvcnRlZEVycm9yKHBhcmFtLnR5cGUpO1xuICAgIHJldHVybiBlbmNvZGVBYmlQYXJhbWV0ZXJzKFtwYXJhbV0sIFt2YWx1ZV0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZW5jb2RlRXZlbnRUb3BpY3MuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeEventTopics.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js": /*!****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/encodeFunctionData.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeFunctionData: () => (/* binding */ encodeFunctionData)\n/* harmony export */ });\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var _prepareEncodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prepareEncodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/prepareEncodeFunctionData.js\");\n\n\n\nfunction encodeFunctionData(parameters) {\n const { args } = parameters;\n const { abi, functionName } = (() => {\n if (parameters.abi.length === 1 &&\n parameters.functionName?.startsWith('0x'))\n return parameters;\n return (0,_prepareEncodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__.prepareEncodeFunctionData)(parameters);\n })();\n const abiItem = abi[0];\n const signature = functionName;\n const data = 'inputs' in abiItem && abiItem.inputs\n ? (0,_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_1__.encodeAbiParameters)(abiItem.inputs, args ?? [])\n : undefined;\n return (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_2__.concatHex)([signature, data ?? '0x']);\n}\n//# sourceMappingURL=encodeFunctionData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZUZ1bmN0aW9uRGF0YS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQThDO0FBQ2tCO0FBQ1c7QUFDcEU7QUFDUCxZQUFZLE9BQU87QUFDbkIsWUFBWSxvQkFBb0I7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsZUFBZSx3RkFBeUI7QUFDeEMsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLFVBQVUsNEVBQW1CO0FBQzdCO0FBQ0EsV0FBVywwREFBUztBQUNwQjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9hYmkvZW5jb2RlRnVuY3Rpb25EYXRhLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbmNhdEhleCB9IGZyb20gJy4uL2RhdGEvY29uY2F0LmpzJztcbmltcG9ydCB7IGVuY29kZUFiaVBhcmFtZXRlcnMsIH0gZnJvbSAnLi9lbmNvZGVBYmlQYXJhbWV0ZXJzLmpzJztcbmltcG9ydCB7IHByZXBhcmVFbmNvZGVGdW5jdGlvbkRhdGEgfSBmcm9tICcuL3ByZXBhcmVFbmNvZGVGdW5jdGlvbkRhdGEuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZUZ1bmN0aW9uRGF0YShwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhcmdzIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHsgYWJpLCBmdW5jdGlvbk5hbWUgfSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChwYXJhbWV0ZXJzLmFiaS5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgICAgIHBhcmFtZXRlcnMuZnVuY3Rpb25OYW1lPy5zdGFydHNXaXRoKCcweCcpKVxuICAgICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gICAgICAgIHJldHVybiBwcmVwYXJlRW5jb2RlRnVuY3Rpb25EYXRhKHBhcmFtZXRlcnMpO1xuICAgIH0pKCk7XG4gICAgY29uc3QgYWJpSXRlbSA9IGFiaVswXTtcbiAgICBjb25zdCBzaWduYXR1cmUgPSBmdW5jdGlvbk5hbWU7XG4gICAgY29uc3QgZGF0YSA9ICdpbnB1dHMnIGluIGFiaUl0ZW0gJiYgYWJpSXRlbS5pbnB1dHNcbiAgICAgICAgPyBlbmNvZGVBYmlQYXJhbWV0ZXJzKGFiaUl0ZW0uaW5wdXRzLCBhcmdzID8/IFtdKVxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gY29uY2F0SGV4KFtzaWduYXR1cmUsIGRhdGEgPz8gJzB4J10pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZW5jb2RlRnVuY3Rpb25EYXRhLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionResult.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/encodeFunctionResult.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeFunctionResult: () => (/* binding */ encodeFunctionResult)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var _getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\");\n\n\n\nconst docsPath = '/docs/contract/encodeFunctionResult';\nfunction encodeFunctionResult(parameters) {\n const { abi, functionName, result } = parameters;\n let abiItem = abi[0];\n if (functionName) {\n const item = (0,_getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__.getAbiItem)({ abi, name: functionName });\n if (!item)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionNotFoundError(functionName, { docsPath });\n abiItem = item;\n }\n if (abiItem.type !== 'function')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionNotFoundError(undefined, { docsPath });\n if (!abiItem.outputs)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionOutputsNotFoundError(abiItem.name, { docsPath });\n const values = (() => {\n if (abiItem.outputs.length === 0)\n return [];\n if (abiItem.outputs.length === 1)\n return [result];\n if (Array.isArray(result))\n return result;\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.InvalidArrayError(result);\n })();\n return (0,_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_2__.encodeAbiParameters)(abiItem.outputs, values);\n}\n//# sourceMappingURL=encodeFunctionResult.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZUZ1bmN0aW9uUmVzdWx0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBb0g7QUFDcEQ7QUFDbkI7QUFDN0M7QUFDTztBQUNQLFlBQVksNEJBQTRCO0FBQ3hDO0FBQ0E7QUFDQSxxQkFBcUIsMERBQVUsR0FBRyx5QkFBeUI7QUFDM0Q7QUFDQSxzQkFBc0Isb0VBQXdCLGlCQUFpQixVQUFVO0FBQ3pFO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixvRUFBd0IsY0FBYyxVQUFVO0FBQ2xFO0FBQ0Esa0JBQWtCLDJFQUErQixpQkFBaUIsVUFBVTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQiw2REFBaUI7QUFDbkMsS0FBSztBQUNMLFdBQVcsNEVBQW1CO0FBQzlCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2FiaS9lbmNvZGVGdW5jdGlvblJlc3VsdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYmlGdW5jdGlvbk5vdEZvdW5kRXJyb3IsIEFiaUZ1bmN0aW9uT3V0cHV0c05vdEZvdW5kRXJyb3IsIEludmFsaWRBcnJheUVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9hYmkuanMnO1xuaW1wb3J0IHsgZW5jb2RlQWJpUGFyYW1ldGVycywgfSBmcm9tICcuL2VuY29kZUFiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0IHsgZ2V0QWJpSXRlbSB9IGZyb20gJy4vZ2V0QWJpSXRlbS5qcyc7XG5jb25zdCBkb2NzUGF0aCA9ICcvZG9jcy9jb250cmFjdC9lbmNvZGVGdW5jdGlvblJlc3VsdCc7XG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlRnVuY3Rpb25SZXN1bHQocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWJpLCBmdW5jdGlvbk5hbWUsIHJlc3VsdCB9ID0gcGFyYW1ldGVycztcbiAgICBsZXQgYWJpSXRlbSA9IGFiaVswXTtcbiAgICBpZiAoZnVuY3Rpb25OYW1lKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBnZXRBYmlJdGVtKHsgYWJpLCBuYW1lOiBmdW5jdGlvbk5hbWUgfSk7XG4gICAgICAgIGlmICghaXRlbSlcbiAgICAgICAgICAgIHRocm93IG5ldyBBYmlGdW5jdGlvbk5vdEZvdW5kRXJyb3IoZnVuY3Rpb25OYW1lLCB7IGRvY3NQYXRoIH0pO1xuICAgICAgICBhYmlJdGVtID0gaXRlbTtcbiAgICB9XG4gICAgaWYgKGFiaUl0ZW0udHlwZSAhPT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgdGhyb3cgbmV3IEFiaUZ1bmN0aW9uTm90Rm91bmRFcnJvcih1bmRlZmluZWQsIHsgZG9jc1BhdGggfSk7XG4gICAgaWYgKCFhYmlJdGVtLm91dHB1dHMpXG4gICAgICAgIHRocm93IG5ldyBBYmlGdW5jdGlvbk91dHB1dHNOb3RGb3VuZEVycm9yKGFiaUl0ZW0ubmFtZSwgeyBkb2NzUGF0aCB9KTtcbiAgICBjb25zdCB2YWx1ZXMgPSAoKCkgPT4ge1xuICAgICAgICBpZiAoYWJpSXRlbS5vdXRwdXRzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgaWYgKGFiaUl0ZW0ub3V0cHV0cy5sZW5ndGggPT09IDEpXG4gICAgICAgICAgICByZXR1cm4gW3Jlc3VsdF07XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlc3VsdCkpXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFycmF5RXJyb3IocmVzdWx0KTtcbiAgICB9KSgpO1xuICAgIHJldHVybiBlbmNvZGVBYmlQYXJhbWV0ZXJzKGFiaUl0ZW0ub3V0cHV0cywgdmFsdWVzKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVuY29kZUZ1bmN0aW9uUmVzdWx0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionResult.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodePacked.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/encodePacked.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodePacked: () => (/* binding */ encodePacked)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_address_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/address.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/address.js\");\n/* harmony import */ var _address_isAddress_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../address/isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _data_pad_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../data/pad.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/pad.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _regex_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../regex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/regex.js\");\n\n\n\n\n\n\n\nfunction encodePacked(types, values) {\n if (types.length !== values.length)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.AbiEncodingLengthMismatchError({\n expectedLength: types.length,\n givenLength: values.length,\n });\n const data = [];\n for (let i = 0; i < types.length; i++) {\n const type = types[i];\n const value = values[i];\n data.push(encode(type, value));\n }\n return (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_1__.concatHex)(data);\n}\nfunction encode(type, value, isArray = false) {\n if (type === 'address') {\n const address = value;\n if (!(0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_2__.isAddress)(address))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_3__.InvalidAddressError({ address });\n return (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_4__.pad)(address.toLowerCase(), {\n size: isArray ? 32 : null,\n });\n }\n if (type === 'string')\n return (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_5__.stringToHex)(value);\n if (type === 'bytes')\n return value;\n if (type === 'bool')\n return (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_4__.pad)((0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_5__.boolToHex)(value), { size: isArray ? 32 : 1 });\n const intMatch = type.match(_regex_js__WEBPACK_IMPORTED_MODULE_6__.integerRegex);\n if (intMatch) {\n const [_type, baseType, bits = '256'] = intMatch;\n const size = Number.parseInt(bits, 10) / 8;\n return (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_5__.numberToHex)(value, {\n size: isArray ? 32 : size,\n signed: baseType === 'int',\n });\n }\n const bytesMatch = type.match(_regex_js__WEBPACK_IMPORTED_MODULE_6__.bytesRegex);\n if (bytesMatch) {\n const [_type, size] = bytesMatch;\n if (Number.parseInt(size, 10) !== (value.length - 2) / 2)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.BytesSizeMismatchError({\n expectedSize: Number.parseInt(size, 10),\n givenSize: (value.length - 2) / 2,\n });\n return (0,_data_pad_js__WEBPACK_IMPORTED_MODULE_4__.pad)(value, { dir: 'right', size: isArray ? 32 : null });\n }\n const arrayMatch = type.match(_regex_js__WEBPACK_IMPORTED_MODULE_6__.arrayRegex);\n if (arrayMatch && Array.isArray(value)) {\n const [_type, childType] = arrayMatch;\n const data = [];\n for (let i = 0; i < value.length; i++) {\n data.push(encode(childType, value[i], true));\n }\n if (data.length === 0)\n return '0x';\n return (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_1__.concatHex)(data);\n }\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.UnsupportedPackedAbiType(type);\n}\n//# sourceMappingURL=encodePacked.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2VuY29kZVBhY2tlZC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUF3SDtBQUN6RDtBQUNYO0FBQ047QUFDVDtBQUN1QztBQUNUO0FBQzVEO0FBQ1A7QUFDQSxrQkFBa0IsMEVBQThCO0FBQ2hEO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVywwREFBUztBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsZ0VBQVM7QUFDdEIsc0JBQXNCLG1FQUFtQixHQUFHLFNBQVM7QUFDckQsZUFBZSxpREFBRztBQUNsQjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsZUFBZSwrREFBVztBQUMxQjtBQUNBO0FBQ0E7QUFDQSxlQUFlLGlEQUFHLENBQUMsNkRBQVMsV0FBVyx3QkFBd0I7QUFDL0QsZ0NBQWdDLG1EQUFZO0FBQzVDO0FBQ0E7QUFDQTtBQUNBLGVBQWUsK0RBQVc7QUFDMUI7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLGtDQUFrQyxpREFBVTtBQUM1QztBQUNBO0FBQ0E7QUFDQSxzQkFBc0Isa0VBQXNCO0FBQzVDO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsZUFBZSxpREFBRyxVQUFVLHlDQUF5QztBQUNyRTtBQUNBLGtDQUFrQyxpREFBVTtBQUM1QztBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isa0JBQWtCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSwwREFBUztBQUN4QjtBQUNBLGNBQWMsb0VBQXdCO0FBQ3RDO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2FiaS9lbmNvZGVQYWNrZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJpRW5jb2RpbmdMZW5ndGhNaXNtYXRjaEVycm9yLCBCeXRlc1NpemVNaXNtYXRjaEVycm9yLCBVbnN1cHBvcnRlZFBhY2tlZEFiaVR5cGUsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2FiaS5qcyc7XG5pbXBvcnQgeyBJbnZhbGlkQWRkcmVzc0Vycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9hZGRyZXNzLmpzJztcbmltcG9ydCB7IGlzQWRkcmVzcyB9IGZyb20gJy4uL2FkZHJlc3MvaXNBZGRyZXNzLmpzJztcbmltcG9ydCB7IGNvbmNhdEhleCB9IGZyb20gJy4uL2RhdGEvY29uY2F0LmpzJztcbmltcG9ydCB7IHBhZCB9IGZyb20gJy4uL2RhdGEvcGFkLmpzJztcbmltcG9ydCB7IGJvb2xUb0hleCwgbnVtYmVyVG9IZXgsIHN0cmluZ1RvSGV4LCB9IGZyb20gJy4uL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGFycmF5UmVnZXgsIGJ5dGVzUmVnZXgsIGludGVnZXJSZWdleCB9IGZyb20gJy4uL3JlZ2V4LmpzJztcbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVQYWNrZWQodHlwZXMsIHZhbHVlcykge1xuICAgIGlmICh0eXBlcy5sZW5ndGggIT09IHZhbHVlcy5sZW5ndGgpXG4gICAgICAgIHRocm93IG5ldyBBYmlFbmNvZGluZ0xlbmd0aE1pc21hdGNoRXJyb3Ioe1xuICAgICAgICAgICAgZXhwZWN0ZWRMZW5ndGg6IHR5cGVzLmxlbmd0aCxcbiAgICAgICAgICAgIGdpdmVuTGVuZ3RoOiB2YWx1ZXMubGVuZ3RoLFxuICAgICAgICB9KTtcbiAgICBjb25zdCBkYXRhID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0eXBlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCB0eXBlID0gdHlwZXNbaV07XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzW2ldO1xuICAgICAgICBkYXRhLnB1c2goZW5jb2RlKHR5cGUsIHZhbHVlKSk7XG4gICAgfVxuICAgIHJldHVybiBjb25jYXRIZXgoZGF0YSk7XG59XG5mdW5jdGlvbiBlbmNvZGUodHlwZSwgdmFsdWUsIGlzQXJyYXkgPSBmYWxzZSkge1xuICAgIGlmICh0eXBlID09PSAnYWRkcmVzcycpIHtcbiAgICAgICAgY29uc3QgYWRkcmVzcyA9IHZhbHVlO1xuICAgICAgICBpZiAoIWlzQWRkcmVzcyhhZGRyZXNzKSlcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkQWRkcmVzc0Vycm9yKHsgYWRkcmVzcyB9KTtcbiAgICAgICAgcmV0dXJuIHBhZChhZGRyZXNzLnRvTG93ZXJDYXNlKCksIHtcbiAgICAgICAgICAgIHNpemU6IGlzQXJyYXkgPyAzMiA6IG51bGwsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gJ3N0cmluZycpXG4gICAgICAgIHJldHVybiBzdHJpbmdUb0hleCh2YWx1ZSk7XG4gICAgaWYgKHR5cGUgPT09ICdieXRlcycpXG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICBpZiAodHlwZSA9PT0gJ2Jvb2wnKVxuICAgICAgICByZXR1cm4gcGFkKGJvb2xUb0hleCh2YWx1ZSksIHsgc2l6ZTogaXNBcnJheSA/IDMyIDogMSB9KTtcbiAgICBjb25zdCBpbnRNYXRjaCA9IHR5cGUubWF0Y2goaW50ZWdlclJlZ2V4KTtcbiAgICBpZiAoaW50TWF0Y2gpIHtcbiAgICAgICAgY29uc3QgW190eXBlLCBiYXNlVHlwZSwgYml0cyA9ICcyNTYnXSA9IGludE1hdGNoO1xuICAgICAgICBjb25zdCBzaXplID0gTnVtYmVyLnBhcnNlSW50KGJpdHMsIDEwKSAvIDg7XG4gICAgICAgIHJldHVybiBudW1iZXJUb0hleCh2YWx1ZSwge1xuICAgICAgICAgICAgc2l6ZTogaXNBcnJheSA/IDMyIDogc2l6ZSxcbiAgICAgICAgICAgIHNpZ25lZDogYmFzZVR5cGUgPT09ICdpbnQnLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgYnl0ZXNNYXRjaCA9IHR5cGUubWF0Y2goYnl0ZXNSZWdleCk7XG4gICAgaWYgKGJ5dGVzTWF0Y2gpIHtcbiAgICAgICAgY29uc3QgW190eXBlLCBzaXplXSA9IGJ5dGVzTWF0Y2g7XG4gICAgICAgIGlmIChOdW1iZXIucGFyc2VJbnQoc2l6ZSwgMTApICE9PSAodmFsdWUubGVuZ3RoIC0gMikgLyAyKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEJ5dGVzU2l6ZU1pc21hdGNoRXJyb3Ioe1xuICAgICAgICAgICAgICAgIGV4cGVjdGVkU2l6ZTogTnVtYmVyLnBhcnNlSW50KHNpemUsIDEwKSxcbiAgICAgICAgICAgICAgICBnaXZlblNpemU6ICh2YWx1ZS5sZW5ndGggLSAyKSAvIDIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHBhZCh2YWx1ZSwgeyBkaXI6ICdyaWdodCcsIHNpemU6IGlzQXJyYXkgPyAzMiA6IG51bGwgfSk7XG4gICAgfVxuICAgIGNvbnN0IGFycmF5TWF0Y2ggPSB0eXBlLm1hdGNoKGFycmF5UmVnZXgpO1xuICAgIGlmIChhcnJheU1hdGNoICYmIEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IFtfdHlwZSwgY2hpbGRUeXBlXSA9IGFycmF5TWF0Y2g7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgZGF0YS5wdXNoKGVuY29kZShjaGlsZFR5cGUsIHZhbHVlW2ldLCB0cnVlKSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRhdGEubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuICcweCc7XG4gICAgICAgIHJldHVybiBjb25jYXRIZXgoZGF0YSk7XG4gICAgfVxuICAgIHRocm93IG5ldyBVbnN1cHBvcnRlZFBhY2tlZEFiaVR5cGUodHlwZSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1lbmNvZGVQYWNrZWQuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodePacked.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js": /*!***********************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/formatAbiItem.js ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatAbiItem: () => (/* binding */ formatAbiItem),\n/* harmony export */ formatAbiParams: () => (/* binding */ formatAbiParams)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n\nfunction formatAbiItem(abiItem, { includeName = false } = {}) {\n if (abiItem.type !== 'function' &&\n abiItem.type !== 'event' &&\n abiItem.type !== 'error')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_0__.InvalidDefinitionTypeError(abiItem.type);\n return `${abiItem.name}(${formatAbiParams(abiItem.inputs, { includeName })})`;\n}\nfunction formatAbiParams(params, { includeName = false } = {}) {\n if (!params)\n return '';\n return params\n .map((param) => formatAbiParam(param, { includeName }))\n .join(includeName ? ', ' : ',');\n}\nfunction formatAbiParam(param, { includeName }) {\n if (param.type.startsWith('tuple')) {\n return `(${formatAbiParams(param.components, { includeName })})${param.type.slice('tuple'.length)}`;\n }\n return param.type + (includeName && param.name ? ` ${param.name}` : '');\n}\n//# sourceMappingURL=formatAbiItem.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2Zvcm1hdEFiaUl0ZW0uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWtFO0FBQzNELGtDQUFrQyxzQkFBc0IsSUFBSTtBQUNuRTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0Isc0VBQTBCO0FBQzVDLGNBQWMsYUFBYSxHQUFHLGtDQUFrQyxhQUFhLEVBQUU7QUFDL0U7QUFDTyxtQ0FBbUMsc0JBQXNCLElBQUk7QUFDcEU7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELGFBQWE7QUFDN0Q7QUFDQTtBQUNBLGlDQUFpQyxhQUFhO0FBQzlDO0FBQ0EsbUJBQW1CLG9DQUFvQyxhQUFhLEVBQUUsR0FBRyxpQ0FBaUM7QUFDMUc7QUFDQSx5REFBeUQsV0FBVztBQUNwRTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9hYmkvZm9ybWF0QWJpSXRlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnZhbGlkRGVmaW5pdGlvblR5cGVFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRBYmlJdGVtKGFiaUl0ZW0sIHsgaW5jbHVkZU5hbWUgPSBmYWxzZSB9ID0ge30pIHtcbiAgICBpZiAoYWJpSXRlbS50eXBlICE9PSAnZnVuY3Rpb24nICYmXG4gICAgICAgIGFiaUl0ZW0udHlwZSAhPT0gJ2V2ZW50JyAmJlxuICAgICAgICBhYmlJdGVtLnR5cGUgIT09ICdlcnJvcicpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkRGVmaW5pdGlvblR5cGVFcnJvcihhYmlJdGVtLnR5cGUpO1xuICAgIHJldHVybiBgJHthYmlJdGVtLm5hbWV9KCR7Zm9ybWF0QWJpUGFyYW1zKGFiaUl0ZW0uaW5wdXRzLCB7IGluY2x1ZGVOYW1lIH0pfSlgO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEFiaVBhcmFtcyhwYXJhbXMsIHsgaW5jbHVkZU5hbWUgPSBmYWxzZSB9ID0ge30pIHtcbiAgICBpZiAoIXBhcmFtcylcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIHJldHVybiBwYXJhbXNcbiAgICAgICAgLm1hcCgocGFyYW0pID0+IGZvcm1hdEFiaVBhcmFtKHBhcmFtLCB7IGluY2x1ZGVOYW1lIH0pKVxuICAgICAgICAuam9pbihpbmNsdWRlTmFtZSA/ICcsICcgOiAnLCcpO1xufVxuZnVuY3Rpb24gZm9ybWF0QWJpUGFyYW0ocGFyYW0sIHsgaW5jbHVkZU5hbWUgfSkge1xuICAgIGlmIChwYXJhbS50eXBlLnN0YXJ0c1dpdGgoJ3R1cGxlJykpIHtcbiAgICAgICAgcmV0dXJuIGAoJHtmb3JtYXRBYmlQYXJhbXMocGFyYW0uY29tcG9uZW50cywgeyBpbmNsdWRlTmFtZSB9KX0pJHtwYXJhbS50eXBlLnNsaWNlKCd0dXBsZScubGVuZ3RoKX1gO1xuICAgIH1cbiAgICByZXR1cm4gcGFyYW0udHlwZSArIChpbmNsdWRlTmFtZSAmJiBwYXJhbS5uYW1lID8gYCAke3BhcmFtLm5hbWV9YCA6ICcnKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWZvcm1hdEFiaUl0ZW0uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItemWithArgs.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/formatAbiItemWithArgs.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatAbiItemWithArgs: () => (/* binding */ formatAbiItemWithArgs)\n/* harmony export */ });\n/* harmony import */ var _stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n\nfunction formatAbiItemWithArgs({ abiItem, args, includeFunctionName = true, includeName = false, }) {\n if (!('name' in abiItem))\n return;\n if (!('inputs' in abiItem))\n return;\n if (!abiItem.inputs)\n return;\n return `${includeFunctionName ? abiItem.name : ''}(${abiItem.inputs\n .map((input, i) => `${includeName && input.name ? `${input.name}: ` : ''}${typeof args[i] === 'object' ? (0,_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)(args[i]) : args[i]}`)\n .join(', ')})`;\n}\n//# sourceMappingURL=formatAbiItemWithArgs.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2Zvcm1hdEFiaUl0ZW1XaXRoQXJncy5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE0QztBQUNyQyxpQ0FBaUMsaUVBQWlFO0FBQ3pHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsd0NBQXdDLEdBQUc7QUFDekQsOEJBQThCLCtCQUErQixXQUFXLFNBQVMsRUFBRSw4QkFBOEIsd0RBQVMsb0JBQW9CO0FBQzlJLG9CQUFvQjtBQUNwQjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9hYmkvZm9ybWF0QWJpSXRlbVdpdGhBcmdzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHN0cmluZ2lmeSB9IGZyb20gJy4uL3N0cmluZ2lmeS5qcyc7XG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0QWJpSXRlbVdpdGhBcmdzKHsgYWJpSXRlbSwgYXJncywgaW5jbHVkZUZ1bmN0aW9uTmFtZSA9IHRydWUsIGluY2x1ZGVOYW1lID0gZmFsc2UsIH0pIHtcbiAgICBpZiAoISgnbmFtZScgaW4gYWJpSXRlbSkpXG4gICAgICAgIHJldHVybjtcbiAgICBpZiAoISgnaW5wdXRzJyBpbiBhYmlJdGVtKSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGlmICghYWJpSXRlbS5pbnB1dHMpXG4gICAgICAgIHJldHVybjtcbiAgICByZXR1cm4gYCR7aW5jbHVkZUZ1bmN0aW9uTmFtZSA/IGFiaUl0ZW0ubmFtZSA6ICcnfSgke2FiaUl0ZW0uaW5wdXRzXG4gICAgICAgIC5tYXAoKGlucHV0LCBpKSA9PiBgJHtpbmNsdWRlTmFtZSAmJiBpbnB1dC5uYW1lID8gYCR7aW5wdXQubmFtZX06IGAgOiAnJ30ke3R5cGVvZiBhcmdzW2ldID09PSAnb2JqZWN0JyA/IHN0cmluZ2lmeShhcmdzW2ldKSA6IGFyZ3NbaV19YClcbiAgICAgICAgLmpvaW4oJywgJyl9KWA7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1mb3JtYXRBYmlJdGVtV2l0aEFyZ3MuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItemWithArgs.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js": /*!********************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/getAbiItem.js ***! \********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getAbiItem: () => (/* binding */ getAbiItem),\n/* harmony export */ getAmbiguousTypes: () => (/* binding */ getAmbiguousTypes),\n/* harmony export */ isArgOfType: () => (/* binding */ isArgOfType)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _utils_data_isHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/data/isHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/isHex.js\");\n/* harmony import */ var _address_isAddress_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../address/isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var _hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../hash/toEventSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toEventSelector.js\");\n/* harmony import */ var _hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../hash/toFunctionSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toFunctionSelector.js\");\n\n\n\n\n\nfunction getAbiItem(parameters) {\n const { abi, args = [], name } = parameters;\n const isSelector = (0,_utils_data_isHex_js__WEBPACK_IMPORTED_MODULE_0__.isHex)(name, { strict: false });\n const abiItems = abi.filter((abiItem) => {\n if (isSelector) {\n if (abiItem.type === 'function')\n return (0,_hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_1__.toFunctionSelector)(abiItem) === name;\n if (abiItem.type === 'event')\n return (0,_hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_2__.toEventSelector)(abiItem) === name;\n return false;\n }\n return 'name' in abiItem && abiItem.name === name;\n });\n if (abiItems.length === 0)\n return undefined;\n if (abiItems.length === 1)\n return abiItems[0];\n let matchedAbiItem;\n for (const abiItem of abiItems) {\n if (!('inputs' in abiItem))\n continue;\n if (!args || args.length === 0) {\n if (!abiItem.inputs || abiItem.inputs.length === 0)\n return abiItem;\n continue;\n }\n if (!abiItem.inputs)\n continue;\n if (abiItem.inputs.length === 0)\n continue;\n if (abiItem.inputs.length !== args.length)\n continue;\n const matched = args.every((arg, index) => {\n const abiParameter = 'inputs' in abiItem && abiItem.inputs[index];\n if (!abiParameter)\n return false;\n return isArgOfType(arg, abiParameter);\n });\n if (matched) {\n // Check for ambiguity against already matched parameters (e.g. `address` vs `bytes20`).\n if (matchedAbiItem &&\n 'inputs' in matchedAbiItem &&\n matchedAbiItem.inputs) {\n const ambiguousTypes = getAmbiguousTypes(abiItem.inputs, matchedAbiItem.inputs, args);\n if (ambiguousTypes)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_3__.AbiItemAmbiguityError({\n abiItem,\n type: ambiguousTypes[0],\n }, {\n abiItem: matchedAbiItem,\n type: ambiguousTypes[1],\n });\n }\n matchedAbiItem = abiItem;\n }\n }\n if (matchedAbiItem)\n return matchedAbiItem;\n return abiItems[0];\n}\n/** @internal */\nfunction isArgOfType(arg, abiParameter) {\n const argType = typeof arg;\n const abiParameterType = abiParameter.type;\n switch (abiParameterType) {\n case 'address':\n return (0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_4__.isAddress)(arg, { strict: false });\n case 'bool':\n return argType === 'boolean';\n case 'function':\n return argType === 'string';\n case 'string':\n return argType === 'string';\n default: {\n if (abiParameterType === 'tuple' && 'components' in abiParameter)\n return Object.values(abiParameter.components).every((component, index) => {\n return isArgOfType(Object.values(arg)[index], component);\n });\n // `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n // https://regexr.com/6v8hp\n if (/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(abiParameterType))\n return argType === 'number' || argType === 'bigint';\n // `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n // https://regexr.com/6va55\n if (/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(abiParameterType))\n return argType === 'string' || arg instanceof Uint8Array;\n // fixed-length (`<type>[M]`) and dynamic (`<type>[]`) arrays\n // https://regexr.com/6va6i\n if (/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(abiParameterType)) {\n return (Array.isArray(arg) &&\n arg.every((x) => isArgOfType(x, {\n ...abiParameter,\n // Pop off `[]` or `[M]` from end of type\n type: abiParameterType.replace(/(\\[[0-9]{0,}\\])$/, ''),\n })));\n }\n return false;\n }\n }\n}\n/** @internal */\nfunction getAmbiguousTypes(sourceParameters, targetParameters, args) {\n for (const parameterIndex in sourceParameters) {\n const sourceParameter = sourceParameters[parameterIndex];\n const targetParameter = targetParameters[parameterIndex];\n if (sourceParameter.type === 'tuple' &&\n targetParameter.type === 'tuple' &&\n 'components' in sourceParameter &&\n 'components' in targetParameter)\n return getAmbiguousTypes(sourceParameter.components, targetParameter.components, args[parameterIndex]);\n const types = [sourceParameter.type, targetParameter.type];\n const ambiguous = (() => {\n if (types.includes('address') && types.includes('bytes20'))\n return true;\n if (types.includes('address') && types.includes('string'))\n return (0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_4__.isAddress)(args[parameterIndex], { strict: false });\n if (types.includes('address') && types.includes('bytes'))\n return (0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_4__.isAddress)(args[parameterIndex], { strict: false });\n return false;\n })();\n if (ambiguous)\n return types;\n }\n return;\n}\n//# sourceMappingURL=getAbiItem.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL2dldEFiaUl0ZW0uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBNkQ7QUFDWDtBQUNFO0FBQ1M7QUFDTztBQUM3RDtBQUNQLFlBQVksdUJBQXVCO0FBQ25DLHVCQUF1QiwyREFBSyxTQUFTLGVBQWU7QUFDcEQ7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLCtFQUFrQjtBQUN6QztBQUNBLHVCQUF1Qix5RUFBZTtBQUN0QztBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLGlFQUFxQjtBQUNuRDtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixnRUFBUyxRQUFRLGVBQWU7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsSUFBSSxTQUFTLEdBQUc7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpRUFBaUUsR0FBRztBQUNwRSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixnRUFBUyx5QkFBeUIsZUFBZTtBQUN4RTtBQUNBLHVCQUF1QixnRUFBUyx5QkFBeUIsZUFBZTtBQUN4RTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2FiaS9nZXRBYmlJdGVtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFiaUl0ZW1BbWJpZ3VpdHlFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IGlzSGV4IH0gZnJvbSAnLi4vLi4vdXRpbHMvZGF0YS9pc0hleC5qcyc7XG5pbXBvcnQgeyBpc0FkZHJlc3MgfSBmcm9tICcuLi9hZGRyZXNzL2lzQWRkcmVzcy5qcyc7XG5pbXBvcnQgeyB0b0V2ZW50U2VsZWN0b3IgfSBmcm9tICcuLi9oYXNoL3RvRXZlbnRTZWxlY3Rvci5qcyc7XG5pbXBvcnQgeyB0b0Z1bmN0aW9uU2VsZWN0b3IsIH0gZnJvbSAnLi4vaGFzaC90b0Z1bmN0aW9uU2VsZWN0b3IuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFiaUl0ZW0ocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYWJpLCBhcmdzID0gW10sIG5hbWUgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgaXNTZWxlY3RvciA9IGlzSGV4KG5hbWUsIHsgc3RyaWN0OiBmYWxzZSB9KTtcbiAgICBjb25zdCBhYmlJdGVtcyA9IGFiaS5maWx0ZXIoKGFiaUl0ZW0pID0+IHtcbiAgICAgICAgaWYgKGlzU2VsZWN0b3IpIHtcbiAgICAgICAgICAgIGlmIChhYmlJdGVtLnR5cGUgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRvRnVuY3Rpb25TZWxlY3RvcihhYmlJdGVtKSA9PT0gbmFtZTtcbiAgICAgICAgICAgIGlmIChhYmlJdGVtLnR5cGUgPT09ICdldmVudCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRvRXZlbnRTZWxlY3RvcihhYmlJdGVtKSA9PT0gbmFtZTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJ25hbWUnIGluIGFiaUl0ZW0gJiYgYWJpSXRlbS5uYW1lID09PSBuYW1lO1xuICAgIH0pO1xuICAgIGlmIChhYmlJdGVtcy5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgaWYgKGFiaUl0ZW1zLmxlbmd0aCA9PT0gMSlcbiAgICAgICAgcmV0dXJuIGFiaUl0ZW1zWzBdO1xuICAgIGxldCBtYXRjaGVkQWJpSXRlbTtcbiAgICBmb3IgKGNvbnN0IGFiaUl0ZW0gb2YgYWJpSXRlbXMpIHtcbiAgICAgICAgaWYgKCEoJ2lucHV0cycgaW4gYWJpSXRlbSkpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgaWYgKCFhcmdzIHx8IGFyZ3MubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBpZiAoIWFiaUl0ZW0uaW5wdXRzIHx8IGFiaUl0ZW0uaW5wdXRzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgICAgICByZXR1cm4gYWJpSXRlbTtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghYWJpSXRlbS5pbnB1dHMpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgaWYgKGFiaUl0ZW0uaW5wdXRzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBpZiAoYWJpSXRlbS5pbnB1dHMubGVuZ3RoICE9PSBhcmdzLmxlbmd0aClcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBjb25zdCBtYXRjaGVkID0gYXJncy5ldmVyeSgoYXJnLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWJpUGFyYW1ldGVyID0gJ2lucHV0cycgaW4gYWJpSXRlbSAmJiBhYmlJdGVtLmlucHV0c1tpbmRleF07XG4gICAgICAgICAgICBpZiAoIWFiaVBhcmFtZXRlcilcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gaXNBcmdPZlR5cGUoYXJnLCBhYmlQYXJhbWV0ZXIpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKG1hdGNoZWQpIHtcbiAgICAgICAgICAgIC8vIENoZWNrIGZvciBhbWJpZ3VpdHkgYWdhaW5zdCBhbHJlYWR5IG1hdGNoZWQgcGFyYW1ldGVycyAoZS5nLiBgYWRkcmVzc2AgdnMgYGJ5dGVzMjBgKS5cbiAgICAgICAgICAgIGlmIChtYXRjaGVkQWJpSXRlbSAmJlxuICAgICAgICAgICAgICAgICdpbnB1dHMnIGluIG1hdGNoZWRBYmlJdGVtICYmXG4gICAgICAgICAgICAgICAgbWF0Y2hlZEFiaUl0ZW0uaW5wdXRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYW1iaWd1b3VzVHlwZXMgPSBnZXRBbWJpZ3VvdXNUeXBlcyhhYmlJdGVtLmlucHV0cywgbWF0Y2hlZEFiaUl0ZW0uaW5wdXRzLCBhcmdzKTtcbiAgICAgICAgICAgICAgICBpZiAoYW1iaWd1b3VzVHlwZXMpXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBBYmlJdGVtQW1iaWd1aXR5RXJyb3Ioe1xuICAgICAgICAgICAgICAgICAgICAgICAgYWJpSXRlbSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IGFtYmlndW91c1R5cGVzWzBdLFxuICAgICAgICAgICAgICAgICAgICB9LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhYmlJdGVtOiBtYXRjaGVkQWJpSXRlbSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IGFtYmlndW91c1R5cGVzWzFdLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG1hdGNoZWRBYmlJdGVtID0gYWJpSXRlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAobWF0Y2hlZEFiaUl0ZW0pXG4gICAgICAgIHJldHVybiBtYXRjaGVkQWJpSXRlbTtcbiAgICByZXR1cm4gYWJpSXRlbXNbMF07XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gaXNBcmdPZlR5cGUoYXJnLCBhYmlQYXJhbWV0ZXIpIHtcbiAgICBjb25zdCBhcmdUeXBlID0gdHlwZW9mIGFyZztcbiAgICBjb25zdCBhYmlQYXJhbWV0ZXJUeXBlID0gYWJpUGFyYW1ldGVyLnR5cGU7XG4gICAgc3dpdGNoIChhYmlQYXJhbWV0ZXJUeXBlKSB7XG4gICAgICAgIGNhc2UgJ2FkZHJlc3MnOlxuICAgICAgICAgICAgcmV0dXJuIGlzQWRkcmVzcyhhcmcsIHsgc3RyaWN0OiBmYWxzZSB9KTtcbiAgICAgICAgY2FzZSAnYm9vbCc6XG4gICAgICAgICAgICByZXR1cm4gYXJnVHlwZSA9PT0gJ2Jvb2xlYW4nO1xuICAgICAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICAgICAgICByZXR1cm4gYXJnVHlwZSA9PT0gJ3N0cmluZyc7XG4gICAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgICAgICByZXR1cm4gYXJnVHlwZSA9PT0gJ3N0cmluZyc7XG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgIGlmIChhYmlQYXJhbWV0ZXJUeXBlID09PSAndHVwbGUnICYmICdjb21wb25lbnRzJyBpbiBhYmlQYXJhbWV0ZXIpXG4gICAgICAgICAgICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXMoYWJpUGFyYW1ldGVyLmNvbXBvbmVudHMpLmV2ZXJ5KChjb21wb25lbnQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBpc0FyZ09mVHlwZShPYmplY3QudmFsdWVzKGFyZylbaW5kZXhdLCBjb21wb25lbnQpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gYCh1KWludDxNPmA6ICh1bilzaWduZWQgaW50ZWdlciB0eXBlIG9mIGBNYCBiaXRzLCBgMCA8IE0gPD0gMjU2YCwgYE0gJSA4ID09IDBgXG4gICAgICAgICAgICAvLyBodHRwczovL3JlZ2V4ci5jb20vNnY4aHBcbiAgICAgICAgICAgIGlmICgvXnU/aW50KDh8MTZ8MjR8MzJ8NDB8NDh8NTZ8NjR8NzJ8ODB8ODh8OTZ8MTA0fDExMnwxMjB8MTI4fDEzNnwxNDR8MTUyfDE2MHwxNjh8MTc2fDE4NHwxOTJ8MjAwfDIwOHwyMTZ8MjI0fDIzMnwyNDB8MjQ4fDI1Nik/JC8udGVzdChhYmlQYXJhbWV0ZXJUeXBlKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gYXJnVHlwZSA9PT0gJ251bWJlcicgfHwgYXJnVHlwZSA9PT0gJ2JpZ2ludCc7XG4gICAgICAgICAgICAvLyBgYnl0ZXM8TT5gOiBiaW5hcnkgdHlwZSBvZiBgTWAgYnl0ZXMsIGAwIDwgTSA8PSAzMmBcbiAgICAgICAgICAgIC8vIGh0dHBzOi8vcmVnZXhyLmNvbS82dmE1NVxuICAgICAgICAgICAgaWYgKC9eYnl0ZXMoWzEtOV18MVswLTldfDJbMC05XXwzWzAtMl0pPyQvLnRlc3QoYWJpUGFyYW1ldGVyVHlwZSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFyZ1R5cGUgPT09ICdzdHJpbmcnIHx8IGFyZyBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk7XG4gICAgICAgICAgICAvLyBmaXhlZC1sZW5ndGggKGA8dHlwZT5bTV1gKSBhbmQgZHluYW1pYyAoYDx0eXBlPltdYCkgYXJyYXlzXG4gICAgICAgICAgICAvLyBodHRwczovL3JlZ2V4ci5jb20vNnZhNmlcbiAgICAgICAgICAgIGlmICgvW2Etel0rWzEtOV17MCwzfShcXFtbMC05XXswLH1cXF0pKyQvLnRlc3QoYWJpUGFyYW1ldGVyVHlwZSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gKEFycmF5LmlzQXJyYXkoYXJnKSAmJlxuICAgICAgICAgICAgICAgICAgICBhcmcuZXZlcnkoKHgpID0+IGlzQXJnT2ZUeXBlKHgsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmFiaVBhcmFtZXRlcixcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBvcCBvZmYgYFtdYCBvciBgW01dYCBmcm9tIGVuZCBvZiB0eXBlXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBhYmlQYXJhbWV0ZXJUeXBlLnJlcGxhY2UoLyhcXFtbMC05XXswLH1cXF0pJC8sICcnKSxcbiAgICAgICAgICAgICAgICAgICAgfSkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBbWJpZ3VvdXNUeXBlcyhzb3VyY2VQYXJhbWV0ZXJzLCB0YXJnZXRQYXJhbWV0ZXJzLCBhcmdzKSB7XG4gICAgZm9yIChjb25zdCBwYXJhbWV0ZXJJbmRleCBpbiBzb3VyY2VQYXJhbWV0ZXJzKSB7XG4gICAgICAgIGNvbnN0IHNvdXJjZVBhcmFtZXRlciA9IHNvdXJjZVBhcmFtZXRlcnNbcGFyYW1ldGVySW5kZXhdO1xuICAgICAgICBjb25zdCB0YXJnZXRQYXJhbWV0ZXIgPSB0YXJnZXRQYXJhbWV0ZXJzW3BhcmFtZXRlckluZGV4XTtcbiAgICAgICAgaWYgKHNvdXJjZVBhcmFtZXRlci50eXBlID09PSAndHVwbGUnICYmXG4gICAgICAgICAgICB0YXJnZXRQYXJhbWV0ZXIudHlwZSA9PT0gJ3R1cGxlJyAmJlxuICAgICAgICAgICAgJ2NvbXBvbmVudHMnIGluIHNvdXJjZVBhcmFtZXRlciAmJlxuICAgICAgICAgICAgJ2NvbXBvbmVudHMnIGluIHRhcmdldFBhcmFtZXRlcilcbiAgICAgICAgICAgIHJldHVybiBnZXRBbWJpZ3VvdXNUeXBlcyhzb3VyY2VQYXJhbWV0ZXIuY29tcG9uZW50cywgdGFyZ2V0UGFyYW1ldGVyLmNvbXBvbmVudHMsIGFyZ3NbcGFyYW1ldGVySW5kZXhdKTtcbiAgICAgICAgY29uc3QgdHlwZXMgPSBbc291cmNlUGFyYW1ldGVyLnR5cGUsIHRhcmdldFBhcmFtZXRlci50eXBlXTtcbiAgICAgICAgY29uc3QgYW1iaWd1b3VzID0gKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlcy5pbmNsdWRlcygnYWRkcmVzcycpICYmIHR5cGVzLmluY2x1ZGVzKCdieXRlczIwJykpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICBpZiAodHlwZXMuaW5jbHVkZXMoJ2FkZHJlc3MnKSAmJiB0eXBlcy5pbmNsdWRlcygnc3RyaW5nJykpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzQWRkcmVzcyhhcmdzW3BhcmFtZXRlckluZGV4XSwgeyBzdHJpY3Q6IGZhbHNlIH0pO1xuICAgICAgICAgICAgaWYgKHR5cGVzLmluY2x1ZGVzKCdhZGRyZXNzJykgJiYgdHlwZXMuaW5jbHVkZXMoJ2J5dGVzJykpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzQWRkcmVzcyhhcmdzW3BhcmFtZXRlckluZGV4XSwgeyBzdHJpY3Q6IGZhbHNlIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9KSgpO1xuICAgICAgICBpZiAoYW1iaWd1b3VzKVxuICAgICAgICAgICAgcmV0dXJuIHR5cGVzO1xuICAgIH1cbiAgICByZXR1cm47XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRBYmlJdGVtLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/parseEventLogs.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/parseEventLogs.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseEventLogs: () => (/* binding */ parseEventLogs)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../address/isAddressEqual.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js\");\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../hash/toEventSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toEventSelector.js\");\n/* harmony import */ var _decodeEventLog_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./decodeEventLog.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeEventLog.js\");\n// TODO(v3): checksum address.\n\n\n\n\n\n\n/**\n * Extracts & decodes logs matching the provided signature(s) (`abi` + optional `eventName`)\n * from a set of opaque logs.\n *\n * @param parameters - {@link ParseEventLogsParameters}\n * @returns The logs. {@link ParseEventLogsReturnType}\n *\n * @example\n * import { createClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n * import { parseEventLogs } from 'viem/op-stack'\n *\n * const client = createClient({\n * chain: mainnet,\n * transport: http(),\n * })\n *\n * const receipt = await getTransactionReceipt(client, {\n * hash: '0xec23b2ba4bc59ba61554507c1b1bc91649e6586eb2dd00c728e8ed0db8bb37ea',\n * })\n *\n * const logs = parseEventLogs({ logs: receipt.logs })\n * // [{ args: { ... }, eventName: 'TransactionDeposited', ... }, ...]\n */\nfunction parseEventLogs(parameters) {\n const { abi, args, logs, strict = true } = parameters;\n const eventName = (() => {\n if (!parameters.eventName)\n return undefined;\n if (Array.isArray(parameters.eventName))\n return parameters.eventName;\n return [parameters.eventName];\n })();\n return logs\n .map((log) => {\n try {\n const abiItem = abi.find((abiItem) => abiItem.type === 'event' &&\n log.topics[0] === (0,_hash_toEventSelector_js__WEBPACK_IMPORTED_MODULE_0__.toEventSelector)(abiItem));\n if (!abiItem)\n return null;\n const event = (0,_decodeEventLog_js__WEBPACK_IMPORTED_MODULE_1__.decodeEventLog)({\n ...log,\n abi: [abiItem],\n strict,\n });\n // Check that the decoded event name matches the provided event name.\n if (eventName && !eventName.includes(event.eventName))\n return null;\n // Check that the decoded event args match the provided args.\n if (!includesArgs({\n args: event.args,\n inputs: abiItem.inputs,\n matchArgs: args,\n }))\n return null;\n return { ...event, ...log };\n }\n catch (err) {\n let eventName;\n let isUnnamed;\n if (err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_2__.AbiEventSignatureNotFoundError)\n return null;\n if (err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_2__.DecodeLogDataMismatch ||\n err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_2__.DecodeLogTopicsMismatch) {\n // If strict mode is on, and log data/topics do not match event definition, skip.\n if (strict)\n return null;\n eventName = err.abiItem.name;\n isUnnamed = err.abiItem.inputs?.some((x) => !('name' in x && x.name));\n }\n // Set args to empty if there is an error decoding (e.g. indexed/non-indexed params mismatch).\n return { ...log, args: isUnnamed ? [] : {}, eventName };\n }\n })\n .filter(Boolean);\n}\nfunction includesArgs(parameters) {\n const { args, inputs, matchArgs } = parameters;\n if (!matchArgs)\n return true;\n if (!args)\n return false;\n function isEqual(input, value, arg) {\n try {\n if (input.type === 'address')\n return (0,_address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_3__.isAddressEqual)(value, arg);\n if (input.type === 'string' || input.type === 'bytes')\n return (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_4__.keccak256)((0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_5__.toBytes)(value)) === arg;\n return value === arg;\n }\n catch {\n return false;\n }\n }\n if (Array.isArray(args) && Array.isArray(matchArgs)) {\n return matchArgs.every((value, index) => {\n if (value === null || value === undefined)\n return true;\n const input = inputs[index];\n if (!input)\n return false;\n const value_ = Array.isArray(value) ? value : [value];\n return value_.some((value) => isEqual(input, value, args[index]));\n });\n }\n if (typeof args === 'object' &&\n !Array.isArray(args) &&\n typeof matchArgs === 'object' &&\n !Array.isArray(matchArgs))\n return Object.entries(matchArgs).every(([key, value]) => {\n if (value === null || value === undefined)\n return true;\n const input = inputs.find((input) => input.name === key);\n if (!input)\n return false;\n const value_ = Array.isArray(value) ? value : [value];\n return value_.some((value) => isEqual(input, value, args[key]));\n });\n return false;\n}\n//# sourceMappingURL=parseEventLogs.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL3BhcnNlRXZlbnRMb2dzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTtBQUNzSDtBQUN4RDtBQUNiO0FBQ0E7QUFDWTtBQUNQO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCLHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0EsWUFBWSxxQkFBcUI7QUFDakMsWUFBWSxVQUFVO0FBQ3RCLFlBQVksaUJBQWlCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLGlDQUFpQyxvQkFBb0I7QUFDckQsU0FBUyxRQUFRLEtBQUssMENBQTBDO0FBQ2hFO0FBQ087QUFDUCxZQUFZLGlDQUFpQztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0MseUVBQWU7QUFDakQ7QUFDQTtBQUNBLDBCQUEwQixrRUFBYztBQUN4QztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQiwwRUFBOEI7QUFDN0Q7QUFDQSwrQkFBK0IsaUVBQXFCO0FBQ3BELCtCQUErQixtRUFBdUI7QUFDdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsaUNBQWlDO0FBQ3REO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLFlBQVksMEJBQTBCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLDBFQUFjO0FBQ3JDO0FBQ0EsdUJBQXVCLDZEQUFTLENBQUMsNkRBQU87QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL3BhcnNlRXZlbnRMb2dzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE8odjMpOiBjaGVja3N1bSBhZGRyZXNzLlxuaW1wb3J0IHsgQWJpRXZlbnRTaWduYXR1cmVOb3RGb3VuZEVycm9yLCBEZWNvZGVMb2dEYXRhTWlzbWF0Y2gsIERlY29kZUxvZ1RvcGljc01pc21hdGNoLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9hYmkuanMnO1xuaW1wb3J0IHsgaXNBZGRyZXNzRXF1YWwgfSBmcm9tICcuLi9hZGRyZXNzL2lzQWRkcmVzc0VxdWFsLmpzJztcbmltcG9ydCB7IHRvQnl0ZXMgfSBmcm9tICcuLi9lbmNvZGluZy90b0J5dGVzLmpzJztcbmltcG9ydCB7IGtlY2NhazI1NiB9IGZyb20gJy4uL2hhc2gva2VjY2FrMjU2LmpzJztcbmltcG9ydCB7IHRvRXZlbnRTZWxlY3RvciB9IGZyb20gJy4uL2hhc2gvdG9FdmVudFNlbGVjdG9yLmpzJztcbmltcG9ydCB7IGRlY29kZUV2ZW50TG9nLCB9IGZyb20gJy4vZGVjb2RlRXZlbnRMb2cuanMnO1xuLyoqXG4gKiBFeHRyYWN0cyAmIGRlY29kZXMgbG9ncyBtYXRjaGluZyB0aGUgcHJvdmlkZWQgc2lnbmF0dXJlKHMpIChgYWJpYCArIG9wdGlvbmFsIGBldmVudE5hbWVgKVxuICogZnJvbSBhIHNldCBvZiBvcGFxdWUgbG9ncy5cbiAqXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIHtAbGluayBQYXJzZUV2ZW50TG9nc1BhcmFtZXRlcnN9XG4gKiBAcmV0dXJucyBUaGUgbG9ncy4ge0BsaW5rIFBhcnNlRXZlbnRMb2dzUmV0dXJuVHlwZX1cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgY3JlYXRlQ2xpZW50LCBodHRwIH0gZnJvbSAndmllbSdcbiAqIGltcG9ydCB7IG1haW5uZXQgfSBmcm9tICd2aWVtL2NoYWlucydcbiAqIGltcG9ydCB7IHBhcnNlRXZlbnRMb2dzIH0gZnJvbSAndmllbS9vcC1zdGFjaydcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBjcmVhdGVDbGllbnQoe1xuICogICBjaGFpbjogbWFpbm5ldCxcbiAqICAgdHJhbnNwb3J0OiBodHRwKCksXG4gKiB9KVxuICpcbiAqIGNvbnN0IHJlY2VpcHQgPSBhd2FpdCBnZXRUcmFuc2FjdGlvblJlY2VpcHQoY2xpZW50LCB7XG4gKiAgIGhhc2g6ICcweGVjMjNiMmJhNGJjNTliYTYxNTU0NTA3YzFiMWJjOTE2NDllNjU4NmViMmRkMDBjNzI4ZThlZDBkYjhiYjM3ZWEnLFxuICogfSlcbiAqXG4gKiBjb25zdCBsb2dzID0gcGFyc2VFdmVudExvZ3MoeyBsb2dzOiByZWNlaXB0LmxvZ3MgfSlcbiAqIC8vIFt7IGFyZ3M6IHsgLi4uIH0sIGV2ZW50TmFtZTogJ1RyYW5zYWN0aW9uRGVwb3NpdGVkJywgLi4uIH0sIC4uLl1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlRXZlbnRMb2dzKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFiaSwgYXJncywgbG9ncywgc3RyaWN0ID0gdHJ1ZSB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBldmVudE5hbWUgPSAoKCkgPT4ge1xuICAgICAgICBpZiAoIXBhcmFtZXRlcnMuZXZlbnROYW1lKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVycy5ldmVudE5hbWUpKVxuICAgICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnMuZXZlbnROYW1lO1xuICAgICAgICByZXR1cm4gW3BhcmFtZXRlcnMuZXZlbnROYW1lXTtcbiAgICB9KSgpO1xuICAgIHJldHVybiBsb2dzXG4gICAgICAgIC5tYXAoKGxvZykgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgYWJpSXRlbSA9IGFiaS5maW5kKChhYmlJdGVtKSA9PiBhYmlJdGVtLnR5cGUgPT09ICdldmVudCcgJiZcbiAgICAgICAgICAgICAgICBsb2cudG9waWNzWzBdID09PSB0b0V2ZW50U2VsZWN0b3IoYWJpSXRlbSkpO1xuICAgICAgICAgICAgaWYgKCFhYmlJdGVtKVxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgY29uc3QgZXZlbnQgPSBkZWNvZGVFdmVudExvZyh7XG4gICAgICAgICAgICAgICAgLi4ubG9nLFxuICAgICAgICAgICAgICAgIGFiaTogW2FiaUl0ZW1dLFxuICAgICAgICAgICAgICAgIHN0cmljdCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gQ2hlY2sgdGhhdCB0aGUgZGVjb2RlZCBldmVudCBuYW1lIG1hdGNoZXMgdGhlIHByb3ZpZGVkIGV2ZW50IG5hbWUuXG4gICAgICAgICAgICBpZiAoZXZlbnROYW1lICYmICFldmVudE5hbWUuaW5jbHVkZXMoZXZlbnQuZXZlbnROYW1lKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIC8vIENoZWNrIHRoYXQgdGhlIGRlY29kZWQgZXZlbnQgYXJncyBtYXRjaCB0aGUgcHJvdmlkZWQgYXJncy5cbiAgICAgICAgICAgIGlmICghaW5jbHVkZXNBcmdzKHtcbiAgICAgICAgICAgICAgICBhcmdzOiBldmVudC5hcmdzLFxuICAgICAgICAgICAgICAgIGlucHV0czogYWJpSXRlbS5pbnB1dHMsXG4gICAgICAgICAgICAgICAgbWF0Y2hBcmdzOiBhcmdzLFxuICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICByZXR1cm4geyAuLi5ldmVudCwgLi4ubG9nIH07XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgbGV0IGV2ZW50TmFtZTtcbiAgICAgICAgICAgIGxldCBpc1VubmFtZWQ7XG4gICAgICAgICAgICBpZiAoZXJyIGluc3RhbmNlb2YgQWJpRXZlbnRTaWduYXR1cmVOb3RGb3VuZEVycm9yKVxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIERlY29kZUxvZ0RhdGFNaXNtYXRjaCB8fFxuICAgICAgICAgICAgICAgIGVyciBpbnN0YW5jZW9mIERlY29kZUxvZ1RvcGljc01pc21hdGNoKSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgc3RyaWN0IG1vZGUgaXMgb24sIGFuZCBsb2cgZGF0YS90b3BpY3MgZG8gbm90IG1hdGNoIGV2ZW50IGRlZmluaXRpb24sIHNraXAuXG4gICAgICAgICAgICAgICAgaWYgKHN0cmljdClcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgICAgZXZlbnROYW1lID0gZXJyLmFiaUl0ZW0ubmFtZTtcbiAgICAgICAgICAgICAgICBpc1VubmFtZWQgPSBlcnIuYWJpSXRlbS5pbnB1dHM/LnNvbWUoKHgpID0+ICEoJ25hbWUnIGluIHggJiYgeC5uYW1lKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBTZXQgYXJncyB0byBlbXB0eSBpZiB0aGVyZSBpcyBhbiBlcnJvciBkZWNvZGluZyAoZS5nLiBpbmRleGVkL25vbi1pbmRleGVkIHBhcmFtcyBtaXNtYXRjaCkuXG4gICAgICAgICAgICByZXR1cm4geyAuLi5sb2csIGFyZ3M6IGlzVW5uYW1lZCA/IFtdIDoge30sIGV2ZW50TmFtZSB9O1xuICAgICAgICB9XG4gICAgfSlcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKTtcbn1cbmZ1bmN0aW9uIGluY2x1ZGVzQXJncyhwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBhcmdzLCBpbnB1dHMsIG1hdGNoQXJncyB9ID0gcGFyYW1ldGVycztcbiAgICBpZiAoIW1hdGNoQXJncylcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgaWYgKCFhcmdzKVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgZnVuY3Rpb24gaXNFcXVhbChpbnB1dCwgdmFsdWUsIGFyZykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaWYgKGlucHV0LnR5cGUgPT09ICdhZGRyZXNzJylcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNBZGRyZXNzRXF1YWwodmFsdWUsIGFyZyk7XG4gICAgICAgICAgICBpZiAoaW5wdXQudHlwZSA9PT0gJ3N0cmluZycgfHwgaW5wdXQudHlwZSA9PT0gJ2J5dGVzJylcbiAgICAgICAgICAgICAgICByZXR1cm4ga2VjY2FrMjU2KHRvQnl0ZXModmFsdWUpKSA9PT0gYXJnO1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlID09PSBhcmc7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2gge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KGFyZ3MpICYmIEFycmF5LmlzQXJyYXkobWF0Y2hBcmdzKSkge1xuICAgICAgICByZXR1cm4gbWF0Y2hBcmdzLmV2ZXJ5KCh2YWx1ZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgY29uc3QgaW5wdXQgPSBpbnB1dHNbaW5kZXhdO1xuICAgICAgICAgICAgaWYgKCFpbnB1dClcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZV8gPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXTtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZV8uc29tZSgodmFsdWUpID0+IGlzRXF1YWwoaW5wdXQsIHZhbHVlLCBhcmdzW2luZGV4XSkpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBhcmdzID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAhQXJyYXkuaXNBcnJheShhcmdzKSAmJlxuICAgICAgICB0eXBlb2YgbWF0Y2hBcmdzID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAhQXJyYXkuaXNBcnJheShtYXRjaEFyZ3MpKVxuICAgICAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMobWF0Y2hBcmdzKS5ldmVyeSgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0ID0gaW5wdXRzLmZpbmQoKGlucHV0KSA9PiBpbnB1dC5uYW1lID09PSBrZXkpO1xuICAgICAgICAgICAgaWYgKCFpbnB1dClcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZV8gPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXTtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZV8uc29tZSgodmFsdWUpID0+IGlzRXF1YWwoaW5wdXQsIHZhbHVlLCBhcmdzW2tleV0pKTtcbiAgICAgICAgfSk7XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cGFyc2VFdmVudExvZ3MuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/parseEventLogs.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/abi/prepareEncodeFunctionData.js": /*!***********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/abi/prepareEncodeFunctionData.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ prepareEncodeFunctionData: () => (/* binding */ prepareEncodeFunctionData)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../hash/toFunctionSelector.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toFunctionSelector.js\");\n/* harmony import */ var _formatAbiItem_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./formatAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/formatAbiItem.js\");\n/* harmony import */ var _getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getAbiItem.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/getAbiItem.js\");\n\n\n\n\nconst docsPath = '/docs/contract/encodeFunctionData';\nfunction prepareEncodeFunctionData(parameters) {\n const { abi, args, functionName } = parameters;\n let abiItem = abi[0];\n if (functionName) {\n const item = (0,_getAbiItem_js__WEBPACK_IMPORTED_MODULE_0__.getAbiItem)({\n abi,\n args,\n name: functionName,\n });\n if (!item)\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionNotFoundError(functionName, { docsPath });\n abiItem = item;\n }\n if (abiItem.type !== 'function')\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_1__.AbiFunctionNotFoundError(undefined, { docsPath });\n return {\n abi: [abiItem],\n functionName: (0,_hash_toFunctionSelector_js__WEBPACK_IMPORTED_MODULE_2__.toFunctionSelector)((0,_formatAbiItem_js__WEBPACK_IMPORTED_MODULE_3__.formatAbiItem)(abiItem)),\n };\n}\n//# sourceMappingURL=prepareEncodeFunctionData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWJpL3ByZXBhcmVFbmNvZGVGdW5jdGlvbkRhdGEuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBZ0U7QUFDSTtBQUNqQjtBQUNOO0FBQzdDO0FBQ087QUFDUCxZQUFZLDBCQUEwQjtBQUN0QztBQUNBO0FBQ0EscUJBQXFCLDBEQUFVO0FBQy9CO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLHNCQUFzQixvRUFBd0IsaUJBQWlCLFVBQVU7QUFDekU7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9FQUF3QixjQUFjLFVBQVU7QUFDbEU7QUFDQTtBQUNBLHNCQUFzQiwrRUFBa0IsQ0FBQyxnRUFBYTtBQUN0RDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2FiaS9wcmVwYXJlRW5jb2RlRnVuY3Rpb25EYXRhLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFiaUZ1bmN0aW9uTm90Rm91bmRFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWJpLmpzJztcbmltcG9ydCB7IHRvRnVuY3Rpb25TZWxlY3RvciwgfSBmcm9tICcuLi9oYXNoL3RvRnVuY3Rpb25TZWxlY3Rvci5qcyc7XG5pbXBvcnQgeyBmb3JtYXRBYmlJdGVtIH0gZnJvbSAnLi9mb3JtYXRBYmlJdGVtLmpzJztcbmltcG9ydCB7IGdldEFiaUl0ZW0gfSBmcm9tICcuL2dldEFiaUl0ZW0uanMnO1xuY29uc3QgZG9jc1BhdGggPSAnL2RvY3MvY29udHJhY3QvZW5jb2RlRnVuY3Rpb25EYXRhJztcbmV4cG9ydCBmdW5jdGlvbiBwcmVwYXJlRW5jb2RlRnVuY3Rpb25EYXRhKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFiaSwgYXJncywgZnVuY3Rpb25OYW1lIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGxldCBhYmlJdGVtID0gYWJpWzBdO1xuICAgIGlmIChmdW5jdGlvbk5hbWUpIHtcbiAgICAgICAgY29uc3QgaXRlbSA9IGdldEFiaUl0ZW0oe1xuICAgICAgICAgICAgYWJpLFxuICAgICAgICAgICAgYXJncyxcbiAgICAgICAgICAgIG5hbWU6IGZ1bmN0aW9uTmFtZSxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghaXRlbSlcbiAgICAgICAgICAgIHRocm93IG5ldyBBYmlGdW5jdGlvbk5vdEZvdW5kRXJyb3IoZnVuY3Rpb25OYW1lLCB7IGRvY3NQYXRoIH0pO1xuICAgICAgICBhYmlJdGVtID0gaXRlbTtcbiAgICB9XG4gICAgaWYgKGFiaUl0ZW0udHlwZSAhPT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgdGhyb3cgbmV3IEFiaUZ1bmN0aW9uTm90Rm91bmRFcnJvcih1bmRlZmluZWQsIHsgZG9jc1BhdGggfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYWJpOiBbYWJpSXRlbV0sXG4gICAgICAgIGZ1bmN0aW9uTmFtZTogdG9GdW5jdGlvblNlbGVjdG9yKGZvcm1hdEFiaUl0ZW0oYWJpSXRlbSkpLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wcmVwYXJlRW5jb2RlRnVuY3Rpb25EYXRhLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/abi/prepareEncodeFunctionData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js": /*!****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/address/isAddressEqual.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isAddressEqual: () => (/* binding */ isAddressEqual)\n/* harmony export */ });\n/* harmony import */ var _errors_address_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/address.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/address.js\");\n/* harmony import */ var _isAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n\n\nfunction isAddressEqual(a, b) {\n if (!(0,_isAddress_js__WEBPACK_IMPORTED_MODULE_0__.isAddress)(a, { strict: false }))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_1__.InvalidAddressError({ address: a });\n if (!(0,_isAddress_js__WEBPACK_IMPORTED_MODULE_0__.isAddress)(b, { strict: false }))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_1__.InvalidAddressError({ address: b });\n return a.toLowerCase() === b.toLowerCase();\n}\n//# sourceMappingURL=isAddressEqual.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYWRkcmVzcy9pc0FkZHJlc3NFcXVhbC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBK0Q7QUFDcEI7QUFDcEM7QUFDUCxTQUFTLHdEQUFTLE1BQU0sZUFBZTtBQUN2QyxrQkFBa0IsbUVBQW1CLEdBQUcsWUFBWTtBQUNwRCxTQUFTLHdEQUFTLE1BQU0sZUFBZTtBQUN2QyxrQkFBa0IsbUVBQW1CLEdBQUcsWUFBWTtBQUNwRDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2FkZHJlc3MvaXNBZGRyZXNzRXF1YWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW52YWxpZEFkZHJlc3NFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWRkcmVzcy5qcyc7XG5pbXBvcnQgeyBpc0FkZHJlc3MgfSBmcm9tICcuL2lzQWRkcmVzcy5qcyc7XG5leHBvcnQgZnVuY3Rpb24gaXNBZGRyZXNzRXF1YWwoYSwgYikge1xuICAgIGlmICghaXNBZGRyZXNzKGEsIHsgc3RyaWN0OiBmYWxzZSB9KSlcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBZGRyZXNzRXJyb3IoeyBhZGRyZXNzOiBhIH0pO1xuICAgIGlmICghaXNBZGRyZXNzKGIsIHsgc3RyaWN0OiBmYWxzZSB9KSlcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBZGRyZXNzRXJyb3IoeyBhZGRyZXNzOiBiIH0pO1xuICAgIHJldHVybiBhLnRvTG93ZXJDYXNlKCkgPT09IGIudG9Mb3dlckNhc2UoKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWlzQWRkcmVzc0VxdWFsLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/hashAuthorization.js": /*!*************************************************************************!*\ !*** ./node_modules/viem/_esm/utils/authorization/hashAuthorization.js ***! \*************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hashAuthorization: () => (/* binding */ hashAuthorization)\n/* harmony export */ });\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _encoding_toRlp_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../encoding/toRlp.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toRlp.js\");\n/* harmony import */ var _hash_keccak256_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n\n\n\n\n\n/**\n * Computes an Authorization hash in [EIP-7702 format](https://eips.ethereum.org/EIPS/eip-7702): `keccak256('0x05' || rlp([chain_id, address, nonce]))`.\n */\nfunction hashAuthorization(parameters) {\n const { chainId, nonce, to } = parameters;\n const address = parameters.contractAddress ?? parameters.address;\n const hash = (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_0__.keccak256)((0,_data_concat_js__WEBPACK_IMPORTED_MODULE_1__.concatHex)([\n '0x05',\n (0,_encoding_toRlp_js__WEBPACK_IMPORTED_MODULE_2__.toRlp)([\n chainId ? (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(chainId) : '0x',\n address,\n nonce ? (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_3__.numberToHex)(nonce) : '0x',\n ]),\n ]));\n if (to === 'bytes')\n return (0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_4__.hexToBytes)(hash);\n return hash;\n}\n//# sourceMappingURL=hashAuthorization.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYXV0aG9yaXphdGlvbi9oYXNoQXV0aG9yaXphdGlvbi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBOEM7QUFDTTtBQUNEO0FBQ047QUFDSTtBQUNqRDtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVkscUJBQXFCO0FBQ2pDO0FBQ0EsaUJBQWlCLDZEQUFTLENBQUMsMERBQVM7QUFDcEM7QUFDQSxRQUFRLHlEQUFLO0FBQ2Isc0JBQXNCLCtEQUFXO0FBQ2pDO0FBQ0Esb0JBQW9CLCtEQUFXO0FBQy9CO0FBQ0E7QUFDQTtBQUNBLGVBQWUsZ0VBQVU7QUFDekI7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9hdXRob3JpemF0aW9uL2hhc2hBdXRob3JpemF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbmNhdEhleCB9IGZyb20gJy4uL2RhdGEvY29uY2F0LmpzJztcbmltcG9ydCB7IGhleFRvQnl0ZXMgfSBmcm9tICcuLi9lbmNvZGluZy90b0J5dGVzLmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4IH0gZnJvbSAnLi4vZW5jb2RpbmcvdG9IZXguanMnO1xuaW1wb3J0IHsgdG9SbHAgfSBmcm9tICcuLi9lbmNvZGluZy90b1JscC5qcyc7XG5pbXBvcnQgeyBrZWNjYWsyNTYgfSBmcm9tICcuLi9oYXNoL2tlY2NhazI1Ni5qcyc7XG4vKipcbiAqIENvbXB1dGVzIGFuIEF1dGhvcml6YXRpb24gaGFzaCBpbiBbRUlQLTc3MDIgZm9ybWF0XShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTc3MDIpOiBga2VjY2FrMjU2KCcweDA1JyB8fCBybHAoW2NoYWluX2lkLCBhZGRyZXNzLCBub25jZV0pKWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNoQXV0aG9yaXphdGlvbihwYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgeyBjaGFpbklkLCBub25jZSwgdG8gfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgYWRkcmVzcyA9IHBhcmFtZXRlcnMuY29udHJhY3RBZGRyZXNzID8/IHBhcmFtZXRlcnMuYWRkcmVzcztcbiAgICBjb25zdCBoYXNoID0ga2VjY2FrMjU2KGNvbmNhdEhleChbXG4gICAgICAgICcweDA1JyxcbiAgICAgICAgdG9SbHAoW1xuICAgICAgICAgICAgY2hhaW5JZCA/IG51bWJlclRvSGV4KGNoYWluSWQpIDogJzB4JyxcbiAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICBub25jZSA/IG51bWJlclRvSGV4KG5vbmNlKSA6ICcweCcsXG4gICAgICAgIF0pLFxuICAgIF0pKTtcbiAgICBpZiAodG8gPT09ICdieXRlcycpXG4gICAgICAgIHJldHVybiBoZXhUb0J5dGVzKGhhc2gpO1xuICAgIHJldHVybiBoYXNoO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aGFzaEF1dGhvcml6YXRpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/hashAuthorization.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/recoverAuthorizationAddress.js": /*!***********************************************************************************!*\ !*** ./node_modules/viem/_esm/utils/authorization/recoverAuthorizationAddress.js ***! \***********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ recoverAuthorizationAddress: () => (/* binding */ recoverAuthorizationAddress)\n/* harmony export */ });\n/* harmony import */ var _signature_recoverAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../signature/recoverAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/recoverAddress.js\");\n/* harmony import */ var _hashAuthorization_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./hashAuthorization.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/hashAuthorization.js\");\n\n\nasync function recoverAuthorizationAddress(parameters) {\n const { authorization, signature } = parameters;\n return (0,_signature_recoverAddress_js__WEBPACK_IMPORTED_MODULE_0__.recoverAddress)({\n hash: (0,_hashAuthorization_js__WEBPACK_IMPORTED_MODULE_1__.hashAuthorization)(authorization),\n signature: (signature ?? authorization),\n });\n}\n//# sourceMappingURL=recoverAuthorizationAddress.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYXV0aG9yaXphdGlvbi9yZWNvdmVyQXV0aG9yaXphdGlvbkFkZHJlc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWlFO0FBQ0w7QUFDckQ7QUFDUCxZQUFZLDJCQUEyQjtBQUN2QyxXQUFXLDRFQUFjO0FBQ3pCLGNBQWMsd0VBQWlCO0FBQy9CO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2F1dGhvcml6YXRpb24vcmVjb3ZlckF1dGhvcml6YXRpb25BZGRyZXNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlY292ZXJBZGRyZXNzLCB9IGZyb20gJy4uL3NpZ25hdHVyZS9yZWNvdmVyQWRkcmVzcy5qcyc7XG5pbXBvcnQgeyBoYXNoQXV0aG9yaXphdGlvbiwgfSBmcm9tICcuL2hhc2hBdXRob3JpemF0aW9uLmpzJztcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWNvdmVyQXV0aG9yaXphdGlvbkFkZHJlc3MocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgYXV0aG9yaXphdGlvbiwgc2lnbmF0dXJlIH0gPSBwYXJhbWV0ZXJzO1xuICAgIHJldHVybiByZWNvdmVyQWRkcmVzcyh7XG4gICAgICAgIGhhc2g6IGhhc2hBdXRob3JpemF0aW9uKGF1dGhvcml6YXRpb24pLFxuICAgICAgICBzaWduYXR1cmU6IChzaWduYXR1cmUgPz8gYXV0aG9yaXphdGlvbiksXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1yZWNvdmVyQXV0aG9yaXphdGlvbkFkZHJlc3MuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/recoverAuthorizationAddress.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/verifyAuthorization.js": /*!***************************************************************************!*\ !*** ./node_modules/viem/_esm/utils/authorization/verifyAuthorization.js ***! \***************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ verifyAuthorization: () => (/* binding */ verifyAuthorization)\n/* harmony export */ });\n/* harmony import */ var _address_getAddress_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../address/getAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/getAddress.js\");\n/* harmony import */ var _address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../address/isAddressEqual.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js\");\n/* harmony import */ var _recoverAuthorizationAddress_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./recoverAuthorizationAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/recoverAuthorizationAddress.js\");\n\n\n\n/**\n * Verify that an Authorization object was signed by the provided address.\n *\n * - Docs {@link https://viem.sh/docs/utilities/verifyAuthorization}\n *\n * @param parameters - {@link VerifyAuthorizationParameters}\n * @returns Whether or not the signature is valid. {@link VerifyAuthorizationReturnType}\n */\nasync function verifyAuthorization({ address, authorization, signature, }) {\n return (0,_address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_0__.isAddressEqual)((0,_address_getAddress_js__WEBPACK_IMPORTED_MODULE_1__.getAddress)(address), await (0,_recoverAuthorizationAddress_js__WEBPACK_IMPORTED_MODULE_2__.recoverAuthorizationAddress)({\n authorization,\n signature,\n }));\n}\n//# sourceMappingURL=verifyAuthorization.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvYXV0aG9yaXphdGlvbi92ZXJpZnlBdXRob3JpemF0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBc0Q7QUFDUztBQUNpQjtBQUNoRjtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQSx3QkFBd0I7QUFDeEIsb0RBQW9EO0FBQ3BEO0FBQ08scUNBQXFDLG9DQUFvQztBQUNoRixXQUFXLDBFQUFjLENBQUMsa0VBQVUsaUJBQWlCLDRGQUEyQjtBQUNoRjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2F1dGhvcml6YXRpb24vdmVyaWZ5QXV0aG9yaXphdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBZGRyZXNzIH0gZnJvbSAnLi4vYWRkcmVzcy9nZXRBZGRyZXNzLmpzJztcbmltcG9ydCB7IGlzQWRkcmVzc0VxdWFsLCB9IGZyb20gJy4uL2FkZHJlc3MvaXNBZGRyZXNzRXF1YWwuanMnO1xuaW1wb3J0IHsgcmVjb3ZlckF1dGhvcml6YXRpb25BZGRyZXNzLCB9IGZyb20gJy4vcmVjb3ZlckF1dGhvcml6YXRpb25BZGRyZXNzLmpzJztcbi8qKlxuICogVmVyaWZ5IHRoYXQgYW4gQXV0aG9yaXphdGlvbiBvYmplY3Qgd2FzIHNpZ25lZCBieSB0aGUgcHJvdmlkZWQgYWRkcmVzcy5cbiAqXG4gKiAtIERvY3Mge0BsaW5rIGh0dHBzOi8vdmllbS5zaC9kb2NzL3V0aWxpdGllcy92ZXJpZnlBdXRob3JpemF0aW9ufVxuICpcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0ge0BsaW5rIFZlcmlmeUF1dGhvcml6YXRpb25QYXJhbWV0ZXJzfVxuICogQHJldHVybnMgV2hldGhlciBvciBub3QgdGhlIHNpZ25hdHVyZSBpcyB2YWxpZC4ge0BsaW5rIFZlcmlmeUF1dGhvcml6YXRpb25SZXR1cm5UeXBlfVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdmVyaWZ5QXV0aG9yaXphdGlvbih7IGFkZHJlc3MsIGF1dGhvcml6YXRpb24sIHNpZ25hdHVyZSwgfSkge1xuICAgIHJldHVybiBpc0FkZHJlc3NFcXVhbChnZXRBZGRyZXNzKGFkZHJlc3MpLCBhd2FpdCByZWNvdmVyQXV0aG9yaXphdGlvbkFkZHJlc3Moe1xuICAgICAgICBhdXRob3JpemF0aW9uLFxuICAgICAgICBzaWduYXR1cmUsXG4gICAgfSkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dmVyaWZ5QXV0aG9yaXphdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/authorization/verifyAuthorization.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/chain/assertCurrentChain.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/chain/assertCurrentChain.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertCurrentChain: () => (/* binding */ assertCurrentChain)\n/* harmony export */ });\n/* harmony import */ var _errors_chain_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/chain.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/chain.js\");\n\nfunction assertCurrentChain({ chain, currentChainId, }) {\n if (!chain)\n throw new _errors_chain_js__WEBPACK_IMPORTED_MODULE_0__.ChainNotFoundError();\n if (currentChainId !== chain.id)\n throw new _errors_chain_js__WEBPACK_IMPORTED_MODULE_0__.ChainMismatchError({ chain, currentChainId });\n}\n//# sourceMappingURL=assertCurrentChain.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvY2hhaW4vYXNzZXJ0Q3VycmVudENoYWluLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQWdGO0FBQ3pFLDhCQUE4Qix3QkFBd0I7QUFDN0Q7QUFDQSxrQkFBa0IsZ0VBQWtCO0FBQ3BDO0FBQ0Esa0JBQWtCLGdFQUFrQixHQUFHLHVCQUF1QjtBQUM5RDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9jaGFpbi9hc3NlcnRDdXJyZW50Q2hhaW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhaW5NaXNtYXRjaEVycm9yLCBDaGFpbk5vdEZvdW5kRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2NoYWluLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRDdXJyZW50Q2hhaW4oeyBjaGFpbiwgY3VycmVudENoYWluSWQsIH0pIHtcbiAgICBpZiAoIWNoYWluKVxuICAgICAgICB0aHJvdyBuZXcgQ2hhaW5Ob3RGb3VuZEVycm9yKCk7XG4gICAgaWYgKGN1cnJlbnRDaGFpbklkICE9PSBjaGFpbi5pZClcbiAgICAgICAgdGhyb3cgbmV3IENoYWluTWlzbWF0Y2hFcnJvcih7IGNoYWluLCBjdXJyZW50Q2hhaW5JZCB9KTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWFzc2VydEN1cnJlbnRDaGFpbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/chain/assertCurrentChain.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js": /*!***********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/chain/getChainContractAddress.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getChainContractAddress: () => (/* binding */ getChainContractAddress)\n/* harmony export */ });\n/* harmony import */ var _errors_chain_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/chain.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/chain.js\");\n\nfunction getChainContractAddress({ blockNumber, chain, contract: name, }) {\n const contract = chain?.contracts?.[name];\n if (!contract)\n throw new _errors_chain_js__WEBPACK_IMPORTED_MODULE_0__.ChainDoesNotSupportContract({\n chain,\n contract: { name },\n });\n if (blockNumber &&\n contract.blockCreated &&\n contract.blockCreated > blockNumber)\n throw new _errors_chain_js__WEBPACK_IMPORTED_MODULE_0__.ChainDoesNotSupportContract({\n blockNumber,\n chain,\n contract: {\n name,\n blockCreated: contract.blockCreated,\n },\n });\n return contract.address;\n}\n//# sourceMappingURL=getChainContractAddress.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvY2hhaW4vZ2V0Q2hhaW5Db250cmFjdEFkZHJlc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBcUU7QUFDOUQsbUNBQW1DLHFDQUFxQztBQUMvRTtBQUNBO0FBQ0Esa0JBQWtCLHlFQUEyQjtBQUM3QztBQUNBLHdCQUF3QixNQUFNO0FBQzlCLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IseUVBQTJCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvY2hhaW4vZ2V0Q2hhaW5Db250cmFjdEFkZHJlc3MuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhaW5Eb2VzTm90U3VwcG9ydENvbnRyYWN0LCB9IGZyb20gJy4uLy4uL2Vycm9ycy9jaGFpbi5qcyc7XG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2hhaW5Db250cmFjdEFkZHJlc3MoeyBibG9ja051bWJlciwgY2hhaW4sIGNvbnRyYWN0OiBuYW1lLCB9KSB7XG4gICAgY29uc3QgY29udHJhY3QgPSBjaGFpbj8uY29udHJhY3RzPy5bbmFtZV07XG4gICAgaWYgKCFjb250cmFjdClcbiAgICAgICAgdGhyb3cgbmV3IENoYWluRG9lc05vdFN1cHBvcnRDb250cmFjdCh7XG4gICAgICAgICAgICBjaGFpbixcbiAgICAgICAgICAgIGNvbnRyYWN0OiB7IG5hbWUgfSxcbiAgICAgICAgfSk7XG4gICAgaWYgKGJsb2NrTnVtYmVyICYmXG4gICAgICAgIGNvbnRyYWN0LmJsb2NrQ3JlYXRlZCAmJlxuICAgICAgICBjb250cmFjdC5ibG9ja0NyZWF0ZWQgPiBibG9ja051bWJlcilcbiAgICAgICAgdGhyb3cgbmV3IENoYWluRG9lc05vdFN1cHBvcnRDb250cmFjdCh7XG4gICAgICAgICAgICBibG9ja051bWJlcixcbiAgICAgICAgICAgIGNoYWluLFxuICAgICAgICAgICAgY29udHJhY3Q6IHtcbiAgICAgICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgICAgIGJsb2NrQ3JlYXRlZDogY29udHJhY3QuYmxvY2tDcmVhdGVkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgcmV0dXJuIGNvbnRyYWN0LmFkZHJlc3M7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRDaGFpbkNvbnRyYWN0QWRkcmVzcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/chain/getChainContractAddress.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromBytes.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/utils/encoding/fromBytes.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ bytesToBigInt: () => (/* binding */ bytesToBigInt),\n/* harmony export */ bytesToBool: () => (/* binding */ bytesToBool),\n/* harmony export */ bytesToNumber: () => (/* binding */ bytesToNumber),\n/* harmony export */ bytesToString: () => (/* binding */ bytesToString),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes)\n/* harmony export */ });\n/* harmony import */ var _errors_encoding_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/encoding.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/encoding.js\");\n/* harmony import */ var _data_trim_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../data/trim.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/trim.js\");\n/* harmony import */ var _fromHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n\n\n/**\n * Decodes a byte array into a UTF-8 string, hex value, number, bigint or boolean.\n *\n * - Docs: https://viem.sh/docs/utilities/fromBytes\n * - Example: https://viem.sh/docs/utilities/fromBytes#usage\n *\n * @param bytes Byte array to decode.\n * @param toOrOpts Type to convert to or options.\n * @returns Decoded value.\n *\n * @example\n * import { fromBytes } from 'viem'\n * const data = fromBytes(new Uint8Array([1, 164]), 'number')\n * // 420\n *\n * @example\n * import { fromBytes } from 'viem'\n * const data = fromBytes(\n * new Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]),\n * 'string'\n * )\n * // 'Hello world'\n */\nfunction fromBytes(bytes, toOrOpts) {\n const opts = typeof toOrOpts === 'string' ? { to: toOrOpts } : toOrOpts;\n const to = opts.to;\n if (to === 'number')\n return bytesToNumber(bytes, opts);\n if (to === 'bigint')\n return bytesToBigInt(bytes, opts);\n if (to === 'boolean')\n return bytesToBool(bytes, opts);\n if (to === 'string')\n return bytesToString(bytes, opts);\n return (0,_toHex_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(bytes, opts);\n}\n/**\n * Decodes a byte array into a bigint.\n *\n * - Docs: https://viem.sh/docs/utilities/fromBytes#bytestobigint\n *\n * @param bytes Byte array to decode.\n * @param opts Options.\n * @returns BigInt value.\n *\n * @example\n * import { bytesToBigInt } from 'viem'\n * const data = bytesToBigInt(new Uint8Array([1, 164]))\n * // 420n\n */\nfunction bytesToBigInt(bytes, opts = {}) {\n if (typeof opts.size !== 'undefined')\n (0,_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.assertSize)(bytes, { size: opts.size });\n const hex = (0,_toHex_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(bytes, opts);\n return (0,_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.hexToBigInt)(hex, opts);\n}\n/**\n * Decodes a byte array into a boolean.\n *\n * - Docs: https://viem.sh/docs/utilities/fromBytes#bytestobool\n *\n * @param bytes Byte array to decode.\n * @param opts Options.\n * @returns Boolean value.\n *\n * @example\n * import { bytesToBool } from 'viem'\n * const data = bytesToBool(new Uint8Array([1]))\n * // true\n */\nfunction bytesToBool(bytes_, opts = {}) {\n let bytes = bytes_;\n if (typeof opts.size !== 'undefined') {\n (0,_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.assertSize)(bytes, { size: opts.size });\n bytes = (0,_data_trim_js__WEBPACK_IMPORTED_MODULE_2__.trim)(bytes);\n }\n if (bytes.length > 1 || bytes[0] > 1)\n throw new _errors_encoding_js__WEBPACK_IMPORTED_MODULE_3__.InvalidBytesBooleanError(bytes);\n return Boolean(bytes[0]);\n}\n/**\n * Decodes a byte array into a number.\n *\n * - Docs: https://viem.sh/docs/utilities/fromBytes#bytestonumber\n *\n * @param bytes Byte array to decode.\n * @param opts Options.\n * @returns Number value.\n *\n * @example\n * import { bytesToNumber } from 'viem'\n * const data = bytesToNumber(new Uint8Array([1, 164]))\n * // 420\n */\nfunction bytesToNumber(bytes, opts = {}) {\n if (typeof opts.size !== 'undefined')\n (0,_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.assertSize)(bytes, { size: opts.size });\n const hex = (0,_toHex_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(bytes, opts);\n return (0,_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.hexToNumber)(hex, opts);\n}\n/**\n * Decodes a byte array into a UTF-8 string.\n *\n * - Docs: https://viem.sh/docs/utilities/fromBytes#bytestostring\n *\n * @param bytes Byte array to decode.\n * @param opts Options.\n * @returns String value.\n *\n * @example\n * import { bytesToString } from 'viem'\n * const data = bytesToString(new Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // 'Hello world'\n */\nfunction bytesToString(bytes_, opts = {}) {\n let bytes = bytes_;\n if (typeof opts.size !== 'undefined') {\n (0,_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.assertSize)(bytes, { size: opts.size });\n bytes = (0,_data_trim_js__WEBPACK_IMPORTED_MODULE_2__.trim)(bytes, { dir: 'right' });\n }\n return new TextDecoder().decode(bytes);\n}\n//# sourceMappingURL=fromBytes.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5jb2RpbmcvZnJvbUJ5dGVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFvRTtBQUM3QjtBQUM4QjtBQUM3QjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1Asa0RBQWtELGVBQWU7QUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxxREFBVTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ08sdUNBQXVDO0FBQzlDO0FBQ0EsUUFBUSx1REFBVSxVQUFVLGlCQUFpQjtBQUM3QyxnQkFBZ0IscURBQVU7QUFDMUIsV0FBVyx3REFBVztBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxjQUFjO0FBQzFCO0FBQ0E7QUFDQTtBQUNPLHNDQUFzQztBQUM3QztBQUNBO0FBQ0EsUUFBUSx1REFBVSxVQUFVLGlCQUFpQjtBQUM3QyxnQkFBZ0IsbURBQUk7QUFDcEI7QUFDQTtBQUNBLGtCQUFrQix5RUFBd0I7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ08sdUNBQXVDO0FBQzlDO0FBQ0EsUUFBUSx1REFBVSxVQUFVLGlCQUFpQjtBQUM3QyxnQkFBZ0IscURBQVU7QUFDMUIsV0FBVyx3REFBVztBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ08sd0NBQXdDO0FBQy9DO0FBQ0E7QUFDQSxRQUFRLHVEQUFVLFVBQVUsaUJBQWlCO0FBQzdDLGdCQUFnQixtREFBSSxVQUFVLGNBQWM7QUFDNUM7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2VuY29kaW5nL2Zyb21CeXRlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnZhbGlkQnl0ZXNCb29sZWFuRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvZW5jb2RpbmcuanMnO1xuaW1wb3J0IHsgdHJpbSB9IGZyb20gJy4uL2RhdGEvdHJpbS5qcyc7XG5pbXBvcnQgeyBhc3NlcnRTaXplLCBoZXhUb0JpZ0ludCwgaGV4VG9OdW1iZXIsIH0gZnJvbSAnLi9mcm9tSGV4LmpzJztcbmltcG9ydCB7IGJ5dGVzVG9IZXggfSBmcm9tICcuL3RvSGV4LmpzJztcbi8qKlxuICogRGVjb2RlcyBhIGJ5dGUgYXJyYXkgaW50byBhIFVURi04IHN0cmluZywgaGV4IHZhbHVlLCBudW1iZXIsIGJpZ2ludCBvciBib29sZWFuLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvdXRpbGl0aWVzL2Zyb21CeXRlc1xuICogLSBFeGFtcGxlOiBodHRwczovL3ZpZW0uc2gvZG9jcy91dGlsaXRpZXMvZnJvbUJ5dGVzI3VzYWdlXG4gKlxuICogQHBhcmFtIGJ5dGVzIEJ5dGUgYXJyYXkgdG8gZGVjb2RlLlxuICogQHBhcmFtIHRvT3JPcHRzIFR5cGUgdG8gY29udmVydCB0byBvciBvcHRpb25zLlxuICogQHJldHVybnMgRGVjb2RlZCB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgZnJvbUJ5dGVzIH0gZnJvbSAndmllbSdcbiAqIGNvbnN0IGRhdGEgPSBmcm9tQnl0ZXMobmV3IFVpbnQ4QXJyYXkoWzEsIDE2NF0pLCAnbnVtYmVyJylcbiAqIC8vIDQyMFxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBmcm9tQnl0ZXMgfSBmcm9tICd2aWVtJ1xuICogY29uc3QgZGF0YSA9IGZyb21CeXRlcyhcbiAqICAgbmV3IFVpbnQ4QXJyYXkoWzcyLCAxMDEsIDEwOCwgMTA4LCAxMTEsIDMyLCA4NywgMTExLCAxMTQsIDEwOCwgMTAwLCAzM10pLFxuICogICAnc3RyaW5nJ1xuICogKVxuICogLy8gJ0hlbGxvIHdvcmxkJ1xuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUJ5dGVzKGJ5dGVzLCB0b09yT3B0cykge1xuICAgIGNvbnN0IG9wdHMgPSB0eXBlb2YgdG9Pck9wdHMgPT09ICdzdHJpbmcnID8geyB0bzogdG9Pck9wdHMgfSA6IHRvT3JPcHRzO1xuICAgIGNvbnN0IHRvID0gb3B0cy50bztcbiAgICBpZiAodG8gPT09ICdudW1iZXInKVxuICAgICAgICByZXR1cm4gYnl0ZXNUb051bWJlcihieXRlcywgb3B0cyk7XG4gICAgaWYgKHRvID09PSAnYmlnaW50JylcbiAgICAgICAgcmV0dXJuIGJ5dGVzVG9CaWdJbnQoYnl0ZXMsIG9wdHMpO1xuICAgIGlmICh0byA9PT0gJ2Jvb2xlYW4nKVxuICAgICAgICByZXR1cm4gYnl0ZXNUb0Jvb2woYnl0ZXMsIG9wdHMpO1xuICAgIGlmICh0byA9PT0gJ3N0cmluZycpXG4gICAgICAgIHJldHVybiBieXRlc1RvU3RyaW5nKGJ5dGVzLCBvcHRzKTtcbiAgICByZXR1cm4gYnl0ZXNUb0hleChieXRlcywgb3B0cyk7XG59XG4vKipcbiAqIERlY29kZXMgYSBieXRlIGFycmF5IGludG8gYSBiaWdpbnQuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy91dGlsaXRpZXMvZnJvbUJ5dGVzI2J5dGVzdG9iaWdpbnRcbiAqXG4gKiBAcGFyYW0gYnl0ZXMgQnl0ZSBhcnJheSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0cyBPcHRpb25zLlxuICogQHJldHVybnMgQmlnSW50IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBieXRlc1RvQmlnSW50IH0gZnJvbSAndmllbSdcbiAqIGNvbnN0IGRhdGEgPSBieXRlc1RvQmlnSW50KG5ldyBVaW50OEFycmF5KFsxLCAxNjRdKSlcbiAqIC8vIDQyMG5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9CaWdJbnQoYnl0ZXMsIG9wdHMgPSB7fSkge1xuICAgIGlmICh0eXBlb2Ygb3B0cy5zaXplICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgYXNzZXJ0U2l6ZShieXRlcywgeyBzaXplOiBvcHRzLnNpemUgfSk7XG4gICAgY29uc3QgaGV4ID0gYnl0ZXNUb0hleChieXRlcywgb3B0cyk7XG4gICAgcmV0dXJuIGhleFRvQmlnSW50KGhleCwgb3B0cyk7XG59XG4vKipcbiAqIERlY29kZXMgYSBieXRlIGFycmF5IGludG8gYSBib29sZWFuLlxuICpcbiAqIC0gRG9jczogaHR0cHM6Ly92aWVtLnNoL2RvY3MvdXRpbGl0aWVzL2Zyb21CeXRlcyNieXRlc3RvYm9vbFxuICpcbiAqIEBwYXJhbSBieXRlcyBCeXRlIGFycmF5IHRvIGRlY29kZS5cbiAqIEBwYXJhbSBvcHRzIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBCb29sZWFuIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBieXRlc1RvQm9vbCB9IGZyb20gJ3ZpZW0nXG4gKiBjb25zdCBkYXRhID0gYnl0ZXNUb0Jvb2wobmV3IFVpbnQ4QXJyYXkoWzFdKSlcbiAqIC8vIHRydWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9Cb29sKGJ5dGVzXywgb3B0cyA9IHt9KSB7XG4gICAgbGV0IGJ5dGVzID0gYnl0ZXNfO1xuICAgIGlmICh0eXBlb2Ygb3B0cy5zaXplICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBhc3NlcnRTaXplKGJ5dGVzLCB7IHNpemU6IG9wdHMuc2l6ZSB9KTtcbiAgICAgICAgYnl0ZXMgPSB0cmltKGJ5dGVzKTtcbiAgICB9XG4gICAgaWYgKGJ5dGVzLmxlbmd0aCA+IDEgfHwgYnl0ZXNbMF0gPiAxKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEJ5dGVzQm9vbGVhbkVycm9yKGJ5dGVzKTtcbiAgICByZXR1cm4gQm9vbGVhbihieXRlc1swXSk7XG59XG4vKipcbiAqIERlY29kZXMgYSBieXRlIGFycmF5IGludG8gYSBudW1iZXIuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy91dGlsaXRpZXMvZnJvbUJ5dGVzI2J5dGVzdG9udW1iZXJcbiAqXG4gKiBAcGFyYW0gYnl0ZXMgQnl0ZSBhcnJheSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0cyBPcHRpb25zLlxuICogQHJldHVybnMgTnVtYmVyIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBieXRlc1RvTnVtYmVyIH0gZnJvbSAndmllbSdcbiAqIGNvbnN0IGRhdGEgPSBieXRlc1RvTnVtYmVyKG5ldyBVaW50OEFycmF5KFsxLCAxNjRdKSlcbiAqIC8vIDQyMFxuICovXG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNUb051bWJlcihieXRlcywgb3B0cyA9IHt9KSB7XG4gICAgaWYgKHR5cGVvZiBvcHRzLnNpemUgIT09ICd1bmRlZmluZWQnKVxuICAgICAgICBhc3NlcnRTaXplKGJ5dGVzLCB7IHNpemU6IG9wdHMuc2l6ZSB9KTtcbiAgICBjb25zdCBoZXggPSBieXRlc1RvSGV4KGJ5dGVzLCBvcHRzKTtcbiAgICByZXR1cm4gaGV4VG9OdW1iZXIoaGV4LCBvcHRzKTtcbn1cbi8qKlxuICogRGVjb2RlcyBhIGJ5dGUgYXJyYXkgaW50byBhIFVURi04IHN0cmluZy5cbiAqXG4gKiAtIERvY3M6IGh0dHBzOi8vdmllbS5zaC9kb2NzL3V0aWxpdGllcy9mcm9tQnl0ZXMjYnl0ZXN0b3N0cmluZ1xuICpcbiAqIEBwYXJhbSBieXRlcyBCeXRlIGFycmF5IHRvIGRlY29kZS5cbiAqIEBwYXJhbSBvcHRzIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBTdHJpbmcgdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IGJ5dGVzVG9TdHJpbmcgfSBmcm9tICd2aWVtJ1xuICogY29uc3QgZGF0YSA9IGJ5dGVzVG9TdHJpbmcobmV3IFVpbnQ4QXJyYXkoWzcyLCAxMDEsIDEwOCwgMTA4LCAxMTEsIDMyLCA4NywgMTExLCAxMTQsIDEwOCwgMTAwLCAzM10pKVxuICogLy8gJ0hlbGxvIHdvcmxkJ1xuICovXG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNUb1N0cmluZyhieXRlc18sIG9wdHMgPSB7fSkge1xuICAgIGxldCBieXRlcyA9IGJ5dGVzXztcbiAgICBpZiAodHlwZW9mIG9wdHMuc2l6ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgYXNzZXJ0U2l6ZShieXRlcywgeyBzaXplOiBvcHRzLnNpemUgfSk7XG4gICAgICAgIGJ5dGVzID0gdHJpbShieXRlcywgeyBkaXI6ICdyaWdodCcgfSk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoYnl0ZXMpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZnJvbUJ5dGVzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromBytes.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/avatar/parseAvatarRecord.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/avatar/parseAvatarRecord.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseAvatarRecord: () => (/* binding */ parseAvatarRecord)\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/avatar/utils.js\");\n\n/*\n * @description Parses an ENS avatar record.\n *\n * @example\n * parseAvatarRecord('eip155:1/erc1155:0xb32979486938aa9694bfc898f35dbed459f44424/10063')\n * 'https://ipfs.io/ipfs/QmSP4nq9fnN9dAiCj42ug9Wa79rqmQerZXZch82VqpiH7U/image.gif'\n *\n * @see https://docs.ens.domains/web/avatars\n *\n */\nasync function parseAvatarRecord(client, { gatewayUrls, record, }) {\n if (/eip155:/i.test(record))\n return parseNftAvatarUri(client, { gatewayUrls, record });\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.parseAvatarUri)({ uri: record, gatewayUrls });\n}\nasync function parseNftAvatarUri(client, { gatewayUrls, record, }) {\n // parse NFT URI into properties\n const nft = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.parseNftUri)(record);\n // fetch tokenURI from the NFT contract\n const nftUri = await (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.getNftTokenUri)(client, { nft });\n // resolve the URI from the fetched tokenURI\n const { uri: resolvedNftUri, isOnChain, isEncoded, } = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.resolveAvatarUri)({ uri: nftUri, gatewayUrls });\n // if the resolved URI is on chain, return the data\n if (isOnChain &&\n (resolvedNftUri.includes('data:application/json;base64,') ||\n resolvedNftUri.startsWith('{'))) {\n const encodedJson = isEncoded\n ? // if it is encoded, decode it\n atob(resolvedNftUri.replace('data:application/json;base64,', ''))\n : // if it isn't encoded assume it is a JSON string, but it could be anything (it will error if it is)\n resolvedNftUri;\n const decoded = JSON.parse(encodedJson);\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.parseAvatarUri)({ uri: (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.getJsonImage)(decoded), gatewayUrls });\n }\n let uriTokenId = nft.tokenID;\n if (nft.namespace === 'erc1155')\n uriTokenId = uriTokenId.replace('0x', '').padStart(64, '0');\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.getMetadataAvatarUri)({\n gatewayUrls,\n uri: resolvedNftUri.replace(/(?:0x)?{id}/, uriTokenId),\n });\n}\n//# sourceMappingURL=parseAvatarRecord.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2F2YXRhci9wYXJzZUF2YXRhclJlY29yZC5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFnSTtBQUNoSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDJDQUEyQyxzQkFBc0I7QUFDeEU7QUFDQSwyQ0FBMkMscUJBQXFCO0FBQ2hFLFdBQVcseURBQWMsR0FBRywwQkFBMEI7QUFDdEQ7QUFDQSwyQ0FBMkMsc0JBQXNCO0FBQ2pFO0FBQ0EsZ0JBQWdCLHNEQUFXO0FBQzNCO0FBQ0EseUJBQXlCLHlEQUFjLFdBQVcsS0FBSztBQUN2RDtBQUNBLFlBQVksNkNBQTZDLEVBQUUsMkRBQWdCLEdBQUcsMEJBQTBCO0FBQ3hHO0FBQ0E7QUFDQSx3REFBd0Q7QUFDeEQsd0NBQXdDO0FBQ3hDO0FBQ0E7QUFDQSxtRUFBbUU7QUFDbkU7QUFDQTtBQUNBO0FBQ0EsZUFBZSx5REFBYyxHQUFHLEtBQUssdURBQVksd0JBQXdCO0FBQ3pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVywrREFBb0I7QUFDL0I7QUFDQSw2Q0FBNkMsR0FBRztBQUNoRCxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2F2YXRhci9wYXJzZUF2YXRhclJlY29yZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRKc29uSW1hZ2UsIGdldE1ldGFkYXRhQXZhdGFyVXJpLCBnZXROZnRUb2tlblVyaSwgcGFyc2VBdmF0YXJVcmksIHBhcnNlTmZ0VXJpLCByZXNvbHZlQXZhdGFyVXJpLCB9IGZyb20gJy4vdXRpbHMuanMnO1xuLypcbiAqIEBkZXNjcmlwdGlvbiBQYXJzZXMgYW4gRU5TIGF2YXRhciByZWNvcmQuXG4gKlxuICogQGV4YW1wbGVcbiAqIHBhcnNlQXZhdGFyUmVjb3JkKCdlaXAxNTU6MS9lcmMxMTU1OjB4YjMyOTc5NDg2OTM4YWE5Njk0YmZjODk4ZjM1ZGJlZDQ1OWY0NDQyNC8xMDA2MycpXG4gKiAnaHR0cHM6Ly9pcGZzLmlvL2lwZnMvUW1TUDRucTlmbk45ZEFpQ2o0MnVnOVdhNzlycW1RZXJaWFpjaDgyVnFwaUg3VS9pbWFnZS5naWYnXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZW5zLmRvbWFpbnMvd2ViL2F2YXRhcnNcbiAqXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwYXJzZUF2YXRhclJlY29yZChjbGllbnQsIHsgZ2F0ZXdheVVybHMsIHJlY29yZCwgfSkge1xuICAgIGlmICgvZWlwMTU1Oi9pLnRlc3QocmVjb3JkKSlcbiAgICAgICAgcmV0dXJuIHBhcnNlTmZ0QXZhdGFyVXJpKGNsaWVudCwgeyBnYXRld2F5VXJscywgcmVjb3JkIH0pO1xuICAgIHJldHVybiBwYXJzZUF2YXRhclVyaSh7IHVyaTogcmVjb3JkLCBnYXRld2F5VXJscyB9KTtcbn1cbmFzeW5jIGZ1bmN0aW9uIHBhcnNlTmZ0QXZhdGFyVXJpKGNsaWVudCwgeyBnYXRld2F5VXJscywgcmVjb3JkLCB9KSB7XG4gICAgLy8gcGFyc2UgTkZUIFVSSSBpbnRvIHByb3BlcnRpZXNcbiAgICBjb25zdCBuZnQgPSBwYXJzZU5mdFVyaShyZWNvcmQpO1xuICAgIC8vIGZldGNoIHRva2VuVVJJIGZyb20gdGhlIE5GVCBjb250cmFjdFxuICAgIGNvbnN0IG5mdFVyaSA9IGF3YWl0IGdldE5mdFRva2VuVXJpKGNsaWVudCwgeyBuZnQgfSk7XG4gICAgLy8gcmVzb2x2ZSB0aGUgVVJJIGZyb20gdGhlIGZldGNoZWQgdG9rZW5VUklcbiAgICBjb25zdCB7IHVyaTogcmVzb2x2ZWROZnRVcmksIGlzT25DaGFpbiwgaXNFbmNvZGVkLCB9ID0gcmVzb2x2ZUF2YXRhclVyaSh7IHVyaTogbmZ0VXJpLCBnYXRld2F5VXJscyB9KTtcbiAgICAvLyBpZiB0aGUgcmVzb2x2ZWQgVVJJIGlzIG9uIGNoYWluLCByZXR1cm4gdGhlIGRhdGFcbiAgICBpZiAoaXNPbkNoYWluICYmXG4gICAgICAgIChyZXNvbHZlZE5mdFVyaS5pbmNsdWRlcygnZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCwnKSB8fFxuICAgICAgICAgICAgcmVzb2x2ZWROZnRVcmkuc3RhcnRzV2l0aCgneycpKSkge1xuICAgICAgICBjb25zdCBlbmNvZGVkSnNvbiA9IGlzRW5jb2RlZFxuICAgICAgICAgICAgPyAvLyBpZiBpdCBpcyBlbmNvZGVkLCBkZWNvZGUgaXRcbiAgICAgICAgICAgICAgICBhdG9iKHJlc29sdmVkTmZ0VXJpLnJlcGxhY2UoJ2RhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsJywgJycpKVxuICAgICAgICAgICAgOiAvLyBpZiBpdCBpc24ndCBlbmNvZGVkIGFzc3VtZSBpdCBpcyBhIEpTT04gc3RyaW5nLCBidXQgaXQgY291bGQgYmUgYW55dGhpbmcgKGl0IHdpbGwgZXJyb3IgaWYgaXQgaXMpXG4gICAgICAgICAgICAgICAgcmVzb2x2ZWROZnRVcmk7XG4gICAgICAgIGNvbnN0IGRlY29kZWQgPSBKU09OLnBhcnNlKGVuY29kZWRKc29uKTtcbiAgICAgICAgcmV0dXJuIHBhcnNlQXZhdGFyVXJpKHsgdXJpOiBnZXRKc29uSW1hZ2UoZGVjb2RlZCksIGdhdGV3YXlVcmxzIH0pO1xuICAgIH1cbiAgICBsZXQgdXJpVG9rZW5JZCA9IG5mdC50b2tlbklEO1xuICAgIGlmIChuZnQubmFtZXNwYWNlID09PSAnZXJjMTE1NScpXG4gICAgICAgIHVyaVRva2VuSWQgPSB1cmlUb2tlbklkLnJlcGxhY2UoJzB4JywgJycpLnBhZFN0YXJ0KDY0LCAnMCcpO1xuICAgIHJldHVybiBnZXRNZXRhZGF0YUF2YXRhclVyaSh7XG4gICAgICAgIGdhdGV3YXlVcmxzLFxuICAgICAgICB1cmk6IHJlc29sdmVkTmZ0VXJpLnJlcGxhY2UoLyg/OjB4KT97aWR9LywgdXJpVG9rZW5JZCksXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wYXJzZUF2YXRhclJlY29yZC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/avatar/parseAvatarRecord.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/avatar/utils.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/avatar/utils.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getGateway: () => (/* binding */ getGateway),\n/* harmony export */ getJsonImage: () => (/* binding */ getJsonImage),\n/* harmony export */ getMetadataAvatarUri: () => (/* binding */ getMetadataAvatarUri),\n/* harmony export */ getNftTokenUri: () => (/* binding */ getNftTokenUri),\n/* harmony export */ isImageUri: () => (/* binding */ isImageUri),\n/* harmony export */ parseAvatarUri: () => (/* binding */ parseAvatarUri),\n/* harmony export */ parseNftUri: () => (/* binding */ parseNftUri),\n/* harmony export */ resolveAvatarUri: () => (/* binding */ resolveAvatarUri)\n/* harmony export */ });\n/* harmony import */ var _actions_public_readContract_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../actions/public/readContract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/readContract.js\");\n/* harmony import */ var _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../errors/ens.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/ens.js\");\n\n\nconst networkRegex = /(?<protocol>https?:\\/\\/[^/]*|ipfs:\\/|ipns:\\/|ar:\\/)?(?<root>\\/)?(?<subpath>ipfs\\/|ipns\\/)?(?<target>[\\w\\-.]+)(?<subtarget>\\/.*)?/;\nconst ipfsHashRegex = /^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\\/(?<target>[\\w\\-.]+))?(?<subtarget>\\/.*)?$/;\nconst base64Regex = /^data:([a-zA-Z\\-/+]*);base64,([^\"].*)/;\nconst dataURIRegex = /^data:([a-zA-Z\\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;\n/** @internal */\nasync function isImageUri(uri) {\n try {\n const res = await fetch(uri, { method: 'HEAD' });\n // retrieve content type header to check if content is image\n if (res.status === 200) {\n const contentType = res.headers.get('content-type');\n return contentType?.startsWith('image/');\n }\n return false;\n }\n catch (error) {\n // if error is not cors related then fail\n if (typeof error === 'object' && typeof error.response !== 'undefined') {\n return false;\n }\n // fail in NodeJS, since the error is not cors but any other network issue\n if (!Object.hasOwn(globalThis, 'Image'))\n return false;\n // in case of cors, use image api to validate if given url is an actual image\n return new Promise((resolve) => {\n const img = new Image();\n img.onload = () => {\n resolve(true);\n };\n img.onerror = () => {\n resolve(false);\n };\n img.src = uri;\n });\n }\n}\n/** @internal */\nfunction getGateway(custom, defaultGateway) {\n if (!custom)\n return defaultGateway;\n if (custom.endsWith('/'))\n return custom.slice(0, -1);\n return custom;\n}\nfunction resolveAvatarUri({ uri, gatewayUrls, }) {\n const isEncoded = base64Regex.test(uri);\n if (isEncoded)\n return { uri, isOnChain: true, isEncoded };\n const ipfsGateway = getGateway(gatewayUrls?.ipfs, 'https://ipfs.io');\n const arweaveGateway = getGateway(gatewayUrls?.arweave, 'https://arweave.net');\n const networkRegexMatch = uri.match(networkRegex);\n const { protocol, subpath, target, subtarget = '', } = networkRegexMatch?.groups || {};\n const isIPNS = protocol === 'ipns:/' || subpath === 'ipns/';\n const isIPFS = protocol === 'ipfs:/' || subpath === 'ipfs/' || ipfsHashRegex.test(uri);\n if (uri.startsWith('http') && !isIPNS && !isIPFS) {\n let replacedUri = uri;\n if (gatewayUrls?.arweave)\n replacedUri = uri.replace(/https:\\/\\/arweave.net/g, gatewayUrls?.arweave);\n return { uri: replacedUri, isOnChain: false, isEncoded: false };\n }\n if ((isIPNS || isIPFS) && target) {\n return {\n uri: `${ipfsGateway}/${isIPNS ? 'ipns' : 'ipfs'}/${target}${subtarget}`,\n isOnChain: false,\n isEncoded: false,\n };\n }\n if (protocol === 'ar:/' && target) {\n return {\n uri: `${arweaveGateway}/${target}${subtarget || ''}`,\n isOnChain: false,\n isEncoded: false,\n };\n }\n let parsedUri = uri.replace(dataURIRegex, '');\n if (parsedUri.startsWith('<svg')) {\n // if svg, base64 encode\n parsedUri = `data:image/svg+xml;base64,${btoa(parsedUri)}`;\n }\n if (parsedUri.startsWith('data:') || parsedUri.startsWith('{')) {\n return {\n uri: parsedUri,\n isOnChain: true,\n isEncoded: false,\n };\n }\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarUriResolutionError({ uri });\n}\nfunction getJsonImage(data) {\n // validation check for json data, must include one of theses properties\n if (typeof data !== 'object' ||\n (!('image' in data) && !('image_url' in data) && !('image_data' in data))) {\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarInvalidMetadataError({ data });\n }\n return data.image || data.image_url || data.image_data;\n}\nasync function getMetadataAvatarUri({ gatewayUrls, uri, }) {\n try {\n const res = await fetch(uri).then((res) => res.json());\n const image = await parseAvatarUri({\n gatewayUrls,\n uri: getJsonImage(res),\n });\n return image;\n }\n catch {\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarUriResolutionError({ uri });\n }\n}\nasync function parseAvatarUri({ gatewayUrls, uri, }) {\n const { uri: resolvedURI, isOnChain } = resolveAvatarUri({ uri, gatewayUrls });\n if (isOnChain)\n return resolvedURI;\n // check if resolvedURI is an image, if it is return the url\n const isImage = await isImageUri(resolvedURI);\n if (isImage)\n return resolvedURI;\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarUriResolutionError({ uri });\n}\nfunction parseNftUri(uri_) {\n let uri = uri_;\n // parse valid nft spec (CAIP-22/CAIP-29)\n // @see: https://github.com/ChainAgnostic/CAIPs/tree/master/CAIPs\n if (uri.startsWith('did:nft:')) {\n // convert DID to CAIP\n uri = uri.replace('did:nft:', '').replace(/_/g, '/');\n }\n const [reference, asset_namespace, tokenID] = uri.split('/');\n const [eip_namespace, chainID] = reference.split(':');\n const [erc_namespace, contractAddress] = asset_namespace.split(':');\n if (!eip_namespace || eip_namespace.toLowerCase() !== 'eip155')\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarInvalidNftUriError({ reason: 'Only EIP-155 supported' });\n if (!chainID)\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarInvalidNftUriError({ reason: 'Chain ID not found' });\n if (!contractAddress)\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarInvalidNftUriError({\n reason: 'Contract address not found',\n });\n if (!tokenID)\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarInvalidNftUriError({ reason: 'Token ID not found' });\n if (!erc_namespace)\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarInvalidNftUriError({ reason: 'ERC namespace not found' });\n return {\n chainID: Number.parseInt(chainID, 10),\n namespace: erc_namespace.toLowerCase(),\n contractAddress: contractAddress,\n tokenID,\n };\n}\nasync function getNftTokenUri(client, { nft }) {\n if (nft.namespace === 'erc721') {\n return (0,_actions_public_readContract_js__WEBPACK_IMPORTED_MODULE_1__.readContract)(client, {\n address: nft.contractAddress,\n abi: [\n {\n name: 'tokenURI',\n type: 'function',\n stateMutability: 'view',\n inputs: [{ name: 'tokenId', type: 'uint256' }],\n outputs: [{ name: '', type: 'string' }],\n },\n ],\n functionName: 'tokenURI',\n args: [BigInt(nft.tokenID)],\n });\n }\n if (nft.namespace === 'erc1155') {\n return (0,_actions_public_readContract_js__WEBPACK_IMPORTED_MODULE_1__.readContract)(client, {\n address: nft.contractAddress,\n abi: [\n {\n name: 'uri',\n type: 'function',\n stateMutability: 'view',\n inputs: [{ name: '_id', type: 'uint256' }],\n outputs: [{ name: '', type: 'string' }],\n },\n ],\n functionName: 'uri',\n args: [BigInt(nft.tokenID)],\n });\n }\n throw new _errors_ens_js__WEBPACK_IMPORTED_MODULE_0__.EnsAvatarUnsupportedNamespaceError({ namespace: nft.namespace });\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2F2YXRhci91dGlscy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQXdFO0FBQzhGO0FBQ3RLO0FBQ0EsZ0RBQWdELElBQUksY0FBYyxJQUFJLFdBQVcsSUFBSSx1QkFBdUIsSUFBSSxXQUFXLElBQUk7QUFDL0gsMkNBQTJDO0FBQzNDLDhDQUE4QztBQUM5QztBQUNPO0FBQ1A7QUFDQSx1Q0FBdUMsZ0JBQWdCO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sNEJBQTRCLG1CQUFtQjtBQUN0RDtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLFlBQVksNkNBQTZDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsWUFBWSxHQUFHLHlCQUF5QixHQUFHLE9BQU8sRUFBRSxVQUFVO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixlQUFlLEdBQUcsT0FBTyxFQUFFLGdCQUFnQjtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QyxTQUFTLGdCQUFnQjtBQUNqRTtBQUNBLGdFQUFnRTtBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHVFQUEyQixHQUFHLEtBQUs7QUFDakQ7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQix5RUFBNkIsR0FBRyxNQUFNO0FBQ3hEO0FBQ0E7QUFDQTtBQUNPLHNDQUFzQyxtQkFBbUI7QUFDaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsdUVBQTJCLEdBQUcsS0FBSztBQUNyRDtBQUNBO0FBQ08sZ0NBQWdDLG1CQUFtQjtBQUMxRCxZQUFZLDhCQUE4QixxQkFBcUIsa0JBQWtCO0FBQ2pGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsdUVBQTJCLEdBQUcsS0FBSztBQUNqRDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQix1RUFBMkIsR0FBRyxrQ0FBa0M7QUFDbEY7QUFDQSxrQkFBa0IsdUVBQTJCLEdBQUcsOEJBQThCO0FBQzlFO0FBQ0Esa0JBQWtCLHVFQUEyQjtBQUM3QztBQUNBLFNBQVM7QUFDVDtBQUNBLGtCQUFrQix1RUFBMkIsR0FBRyw4QkFBOEI7QUFDOUU7QUFDQSxrQkFBa0IsdUVBQTJCLEdBQUcsbUNBQW1DO0FBQ25GO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sd0NBQXdDLEtBQUs7QUFDcEQ7QUFDQSxlQUFlLDZFQUFZO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixrQ0FBa0M7QUFDakUsZ0NBQWdDLDBCQUEwQjtBQUMxRCxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxlQUFlLDZFQUFZO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQiw4QkFBOEI7QUFDN0QsZ0NBQWdDLDBCQUEwQjtBQUMxRCxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsY0FBYyw4RUFBa0MsR0FBRywwQkFBMEI7QUFDN0U7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2F2YXRhci91dGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWFkQ29udHJhY3QsIH0gZnJvbSAnLi4vLi4vLi4vYWN0aW9ucy9wdWJsaWMvcmVhZENvbnRyYWN0LmpzJztcbmltcG9ydCB7IEVuc0F2YXRhckludmFsaWRNZXRhZGF0YUVycm9yLCBFbnNBdmF0YXJJbnZhbGlkTmZ0VXJpRXJyb3IsIEVuc0F2YXRhclVuc3VwcG9ydGVkTmFtZXNwYWNlRXJyb3IsIEVuc0F2YXRhclVyaVJlc29sdXRpb25FcnJvciwgfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMvZW5zLmpzJztcbmNvbnN0IG5ldHdvcmtSZWdleCA9IC8oPzxwcm90b2NvbD5odHRwcz86XFwvXFwvW14vXSp8aXBmczpcXC98aXBuczpcXC98YXI6XFwvKT8oPzxyb290PlxcLyk/KD88c3VicGF0aD5pcGZzXFwvfGlwbnNcXC8pPyg/PHRhcmdldD5bXFx3XFwtLl0rKSg/PHN1YnRhcmdldD5cXC8uKik/LztcbmNvbnN0IGlwZnNIYXNoUmVnZXggPSAvXihRbVsxLTlBLUhKLU5QLVphLWttLXpdezQ0LH18YltBLVphLXoyLTddezU4LH18QltBLVoyLTddezU4LH18elsxLTlBLUhKLU5QLVphLWttLXpdezQ4LH18RlswLTlBLUZdezUwLH0pKFxcLyg/PHRhcmdldD5bXFx3XFwtLl0rKSk/KD88c3VidGFyZ2V0PlxcLy4qKT8kLztcbmNvbnN0IGJhc2U2NFJlZ2V4ID0gL15kYXRhOihbYS16QS1aXFwtLytdKik7YmFzZTY0LChbXlwiXS4qKS87XG5jb25zdCBkYXRhVVJJUmVnZXggPSAvXmRhdGE6KFthLXpBLVpcXC0vK10qKT8oO1thLXpBLVowLTldLio/KT8oLCkvO1xuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGlzSW1hZ2VVcmkodXJpKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2godXJpLCB7IG1ldGhvZDogJ0hFQUQnIH0pO1xuICAgICAgICAvLyByZXRyaWV2ZSBjb250ZW50IHR5cGUgaGVhZGVyIHRvIGNoZWNrIGlmIGNvbnRlbnQgaXMgaW1hZ2VcbiAgICAgICAgaWYgKHJlcy5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgICAgICAgY29uc3QgY29udGVudFR5cGUgPSByZXMuaGVhZGVycy5nZXQoJ2NvbnRlbnQtdHlwZScpO1xuICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnRUeXBlPy5zdGFydHNXaXRoKCdpbWFnZS8nKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAvLyBpZiBlcnJvciBpcyBub3QgY29ycyByZWxhdGVkIHRoZW4gZmFpbFxuICAgICAgICBpZiAodHlwZW9mIGVycm9yID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgZXJyb3IucmVzcG9uc2UgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZmFpbCBpbiBOb2RlSlMsIHNpbmNlIHRoZSBlcnJvciBpcyBub3QgY29ycyBidXQgYW55IG90aGVyIG5ldHdvcmsgaXNzdWVcbiAgICAgICAgaWYgKCFPYmplY3QuaGFzT3duKGdsb2JhbFRoaXMsICdJbWFnZScpKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAvLyBpbiBjYXNlIG9mIGNvcnMsIHVzZSBpbWFnZSBhcGkgdG8gdmFsaWRhdGUgaWYgZ2l2ZW4gdXJsIGlzIGFuIGFjdHVhbCBpbWFnZVxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpO1xuICAgICAgICAgICAgaW1nLm9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGltZy5vbmVycm9yID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJlc29sdmUoZmFsc2UpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGltZy5zcmMgPSB1cmk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRHYXRld2F5KGN1c3RvbSwgZGVmYXVsdEdhdGV3YXkpIHtcbiAgICBpZiAoIWN1c3RvbSlcbiAgICAgICAgcmV0dXJuIGRlZmF1bHRHYXRld2F5O1xuICAgIGlmIChjdXN0b20uZW5kc1dpdGgoJy8nKSlcbiAgICAgICAgcmV0dXJuIGN1c3RvbS5zbGljZSgwLCAtMSk7XG4gICAgcmV0dXJuIGN1c3RvbTtcbn1cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlQXZhdGFyVXJpKHsgdXJpLCBnYXRld2F5VXJscywgfSkge1xuICAgIGNvbnN0IGlzRW5jb2RlZCA9IGJhc2U2NFJlZ2V4LnRlc3QodXJpKTtcbiAgICBpZiAoaXNFbmNvZGVkKVxuICAgICAgICByZXR1cm4geyB1cmksIGlzT25DaGFpbjogdHJ1ZSwgaXNFbmNvZGVkIH07XG4gICAgY29uc3QgaXBmc0dhdGV3YXkgPSBnZXRHYXRld2F5KGdhdGV3YXlVcmxzPy5pcGZzLCAnaHR0cHM6Ly9pcGZzLmlvJyk7XG4gICAgY29uc3QgYXJ3ZWF2ZUdhdGV3YXkgPSBnZXRHYXRld2F5KGdhdGV3YXlVcmxzPy5hcndlYXZlLCAnaHR0cHM6Ly9hcndlYXZlLm5ldCcpO1xuICAgIGNvbnN0IG5ldHdvcmtSZWdleE1hdGNoID0gdXJpLm1hdGNoKG5ldHdvcmtSZWdleCk7XG4gICAgY29uc3QgeyBwcm90b2NvbCwgc3VicGF0aCwgdGFyZ2V0LCBzdWJ0YXJnZXQgPSAnJywgfSA9IG5ldHdvcmtSZWdleE1hdGNoPy5ncm91cHMgfHwge307XG4gICAgY29uc3QgaXNJUE5TID0gcHJvdG9jb2wgPT09ICdpcG5zOi8nIHx8IHN1YnBhdGggPT09ICdpcG5zLyc7XG4gICAgY29uc3QgaXNJUEZTID0gcHJvdG9jb2wgPT09ICdpcGZzOi8nIHx8IHN1YnBhdGggPT09ICdpcGZzLycgfHwgaXBmc0hhc2hSZWdleC50ZXN0KHVyaSk7XG4gICAgaWYgKHVyaS5zdGFydHNXaXRoKCdodHRwJykgJiYgIWlzSVBOUyAmJiAhaXNJUEZTKSB7XG4gICAgICAgIGxldCByZXBsYWNlZFVyaSA9IHVyaTtcbiAgICAgICAgaWYgKGdhdGV3YXlVcmxzPy5hcndlYXZlKVxuICAgICAgICAgICAgcmVwbGFjZWRVcmkgPSB1cmkucmVwbGFjZSgvaHR0cHM6XFwvXFwvYXJ3ZWF2ZS5uZXQvZywgZ2F0ZXdheVVybHM/LmFyd2VhdmUpO1xuICAgICAgICByZXR1cm4geyB1cmk6IHJlcGxhY2VkVXJpLCBpc09uQ2hhaW46IGZhbHNlLCBpc0VuY29kZWQ6IGZhbHNlIH07XG4gICAgfVxuICAgIGlmICgoaXNJUE5TIHx8IGlzSVBGUykgJiYgdGFyZ2V0KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB1cmk6IGAke2lwZnNHYXRld2F5fS8ke2lzSVBOUyA/ICdpcG5zJyA6ICdpcGZzJ30vJHt0YXJnZXR9JHtzdWJ0YXJnZXR9YCxcbiAgICAgICAgICAgIGlzT25DaGFpbjogZmFsc2UsXG4gICAgICAgICAgICBpc0VuY29kZWQ6IGZhbHNlLFxuICAgICAgICB9O1xuICAgIH1cbiAgICBpZiAocHJvdG9jb2wgPT09ICdhcjovJyAmJiB0YXJnZXQpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHVyaTogYCR7YXJ3ZWF2ZUdhdGV3YXl9LyR7dGFyZ2V0fSR7c3VidGFyZ2V0IHx8ICcnfWAsXG4gICAgICAgICAgICBpc09uQ2hhaW46IGZhbHNlLFxuICAgICAgICAgICAgaXNFbmNvZGVkOiBmYWxzZSxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgbGV0IHBhcnNlZFVyaSA9IHVyaS5yZXBsYWNlKGRhdGFVUklSZWdleCwgJycpO1xuICAgIGlmIChwYXJzZWRVcmkuc3RhcnRzV2l0aCgnPHN2ZycpKSB7XG4gICAgICAgIC8vIGlmIHN2ZywgYmFzZTY0IGVuY29kZVxuICAgICAgICBwYXJzZWRVcmkgPSBgZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCwke2J0b2EocGFyc2VkVXJpKX1gO1xuICAgIH1cbiAgICBpZiAocGFyc2VkVXJpLnN0YXJ0c1dpdGgoJ2RhdGE6JykgfHwgcGFyc2VkVXJpLnN0YXJ0c1dpdGgoJ3snKSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdXJpOiBwYXJzZWRVcmksXG4gICAgICAgICAgICBpc09uQ2hhaW46IHRydWUsXG4gICAgICAgICAgICBpc0VuY29kZWQ6IGZhbHNlLFxuICAgICAgICB9O1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRW5zQXZhdGFyVXJpUmVzb2x1dGlvbkVycm9yKHsgdXJpIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldEpzb25JbWFnZShkYXRhKSB7XG4gICAgLy8gdmFsaWRhdGlvbiBjaGVjayBmb3IganNvbiBkYXRhLCBtdXN0IGluY2x1ZGUgb25lIG9mIHRoZXNlcyBwcm9wZXJ0aWVzXG4gICAgaWYgKHR5cGVvZiBkYXRhICE9PSAnb2JqZWN0JyB8fFxuICAgICAgICAoISgnaW1hZ2UnIGluIGRhdGEpICYmICEoJ2ltYWdlX3VybCcgaW4gZGF0YSkgJiYgISgnaW1hZ2VfZGF0YScgaW4gZGF0YSkpKSB7XG4gICAgICAgIHRocm93IG5ldyBFbnNBdmF0YXJJbnZhbGlkTWV0YWRhdGFFcnJvcih7IGRhdGEgfSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhLmltYWdlIHx8IGRhdGEuaW1hZ2VfdXJsIHx8IGRhdGEuaW1hZ2VfZGF0YTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRNZXRhZGF0YUF2YXRhclVyaSh7IGdhdGV3YXlVcmxzLCB1cmksIH0pIHtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaCh1cmkpLnRoZW4oKHJlcykgPT4gcmVzLmpzb24oKSk7XG4gICAgICAgIGNvbnN0IGltYWdlID0gYXdhaXQgcGFyc2VBdmF0YXJVcmkoe1xuICAgICAgICAgICAgZ2F0ZXdheVVybHMsXG4gICAgICAgICAgICB1cmk6IGdldEpzb25JbWFnZShyZXMpLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGltYWdlO1xuICAgIH1cbiAgICBjYXRjaCB7XG4gICAgICAgIHRocm93IG5ldyBFbnNBdmF0YXJVcmlSZXNvbHV0aW9uRXJyb3IoeyB1cmkgfSk7XG4gICAgfVxufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBhcnNlQXZhdGFyVXJpKHsgZ2F0ZXdheVVybHMsIHVyaSwgfSkge1xuICAgIGNvbnN0IHsgdXJpOiByZXNvbHZlZFVSSSwgaXNPbkNoYWluIH0gPSByZXNvbHZlQXZhdGFyVXJpKHsgdXJpLCBnYXRld2F5VXJscyB9KTtcbiAgICBpZiAoaXNPbkNoYWluKVxuICAgICAgICByZXR1cm4gcmVzb2x2ZWRVUkk7XG4gICAgLy8gY2hlY2sgaWYgcmVzb2x2ZWRVUkkgaXMgYW4gaW1hZ2UsIGlmIGl0IGlzIHJldHVybiB0aGUgdXJsXG4gICAgY29uc3QgaXNJbWFnZSA9IGF3YWl0IGlzSW1hZ2VVcmkocmVzb2x2ZWRVUkkpO1xuICAgIGlmIChpc0ltYWdlKVxuICAgICAgICByZXR1cm4gcmVzb2x2ZWRVUkk7XG4gICAgdGhyb3cgbmV3IEVuc0F2YXRhclVyaVJlc29sdXRpb25FcnJvcih7IHVyaSB9KTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZU5mdFVyaSh1cmlfKSB7XG4gICAgbGV0IHVyaSA9IHVyaV87XG4gICAgLy8gcGFyc2UgdmFsaWQgbmZ0IHNwZWMgKENBSVAtMjIvQ0FJUC0yOSlcbiAgICAvLyBAc2VlOiBodHRwczovL2dpdGh1Yi5jb20vQ2hhaW5BZ25vc3RpYy9DQUlQcy90cmVlL21hc3Rlci9DQUlQc1xuICAgIGlmICh1cmkuc3RhcnRzV2l0aCgnZGlkOm5mdDonKSkge1xuICAgICAgICAvLyBjb252ZXJ0IERJRCB0byBDQUlQXG4gICAgICAgIHVyaSA9IHVyaS5yZXBsYWNlKCdkaWQ6bmZ0OicsICcnKS5yZXBsYWNlKC9fL2csICcvJyk7XG4gICAgfVxuICAgIGNvbnN0IFtyZWZlcmVuY2UsIGFzc2V0X25hbWVzcGFjZSwgdG9rZW5JRF0gPSB1cmkuc3BsaXQoJy8nKTtcbiAgICBjb25zdCBbZWlwX25hbWVzcGFjZSwgY2hhaW5JRF0gPSByZWZlcmVuY2Uuc3BsaXQoJzonKTtcbiAgICBjb25zdCBbZXJjX25hbWVzcGFjZSwgY29udHJhY3RBZGRyZXNzXSA9IGFzc2V0X25hbWVzcGFjZS5zcGxpdCgnOicpO1xuICAgIGlmICghZWlwX25hbWVzcGFjZSB8fCBlaXBfbmFtZXNwYWNlLnRvTG93ZXJDYXNlKCkgIT09ICdlaXAxNTUnKVxuICAgICAgICB0aHJvdyBuZXcgRW5zQXZhdGFySW52YWxpZE5mdFVyaUVycm9yKHsgcmVhc29uOiAnT25seSBFSVAtMTU1IHN1cHBvcnRlZCcgfSk7XG4gICAgaWYgKCFjaGFpbklEKVxuICAgICAgICB0aHJvdyBuZXcgRW5zQXZhdGFySW52YWxpZE5mdFVyaUVycm9yKHsgcmVhc29uOiAnQ2hhaW4gSUQgbm90IGZvdW5kJyB9KTtcbiAgICBpZiAoIWNvbnRyYWN0QWRkcmVzcylcbiAgICAgICAgdGhyb3cgbmV3IEVuc0F2YXRhckludmFsaWROZnRVcmlFcnJvcih7XG4gICAgICAgICAgICByZWFzb246ICdDb250cmFjdCBhZGRyZXNzIG5vdCBmb3VuZCcsXG4gICAgICAgIH0pO1xuICAgIGlmICghdG9rZW5JRClcbiAgICAgICAgdGhyb3cgbmV3IEVuc0F2YXRhckludmFsaWROZnRVcmlFcnJvcih7IHJlYXNvbjogJ1Rva2VuIElEIG5vdCBmb3VuZCcgfSk7XG4gICAgaWYgKCFlcmNfbmFtZXNwYWNlKVxuICAgICAgICB0aHJvdyBuZXcgRW5zQXZhdGFySW52YWxpZE5mdFVyaUVycm9yKHsgcmVhc29uOiAnRVJDIG5hbWVzcGFjZSBub3QgZm91bmQnIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIGNoYWluSUQ6IE51bWJlci5wYXJzZUludChjaGFpbklELCAxMCksXG4gICAgICAgIG5hbWVzcGFjZTogZXJjX25hbWVzcGFjZS50b0xvd2VyQ2FzZSgpLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6IGNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgdG9rZW5JRCxcbiAgICB9O1xufVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldE5mdFRva2VuVXJpKGNsaWVudCwgeyBuZnQgfSkge1xuICAgIGlmIChuZnQubmFtZXNwYWNlID09PSAnZXJjNzIxJykge1xuICAgICAgICByZXR1cm4gcmVhZENvbnRyYWN0KGNsaWVudCwge1xuICAgICAgICAgICAgYWRkcmVzczogbmZ0LmNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgICAgIGFiaTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3Rva2VuVVJJJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gICAgICAgICAgICAgICAgICAgIGlucHV0czogW3sgbmFtZTogJ3Rva2VuSWQnLCB0eXBlOiAndWludDI1NicgfV0sXG4gICAgICAgICAgICAgICAgICAgIG91dHB1dHM6IFt7IG5hbWU6ICcnLCB0eXBlOiAnc3RyaW5nJyB9XSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGZ1bmN0aW9uTmFtZTogJ3Rva2VuVVJJJyxcbiAgICAgICAgICAgIGFyZ3M6IFtCaWdJbnQobmZ0LnRva2VuSUQpXSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChuZnQubmFtZXNwYWNlID09PSAnZXJjMTE1NScpIHtcbiAgICAgICAgcmV0dXJuIHJlYWRDb250cmFjdChjbGllbnQsIHtcbiAgICAgICAgICAgIGFkZHJlc3M6IG5mdC5jb250cmFjdEFkZHJlc3MsXG4gICAgICAgICAgICBhYmk6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICd1cmknLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICAgICAgICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRzOiBbeyBuYW1lOiAnX2lkJywgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRzOiBbeyBuYW1lOiAnJywgdHlwZTogJ3N0cmluZycgfV0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBmdW5jdGlvbk5hbWU6ICd1cmknLFxuICAgICAgICAgICAgYXJnczogW0JpZ0ludChuZnQudG9rZW5JRCldLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVuc0F2YXRhclVuc3VwcG9ydGVkTmFtZXNwYWNlRXJyb3IoeyBuYW1lc3BhY2U6IG5mdC5uYW1lc3BhY2UgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD11dGlscy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/avatar/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/encodeLabelhash.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/encodeLabelhash.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeLabelhash: () => (/* binding */ encodeLabelhash)\n/* harmony export */ });\nfunction encodeLabelhash(hash) {\n return `[${hash.slice(2)}]`;\n}\n//# sourceMappingURL=encodeLabelhash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2VuY29kZUxhYmVsaGFzaC5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQU87QUFDUCxlQUFlLGNBQWM7QUFDN0I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2VuY29kZUxhYmVsaGFzaC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZW5jb2RlTGFiZWxoYXNoKGhhc2gpIHtcbiAgICByZXR1cm4gYFske2hhc2guc2xpY2UoMil9XWA7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1lbmNvZGVMYWJlbGhhc2guanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/encodeLabelhash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/encodedLabelToLabelhash.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/encodedLabelToLabelhash.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodedLabelToLabelhash: () => (/* binding */ encodedLabelToLabelhash)\n/* harmony export */ });\n/* harmony import */ var _data_isHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../data/isHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/isHex.js\");\n\nfunction encodedLabelToLabelhash(label) {\n if (label.length !== 66)\n return null;\n if (label.indexOf('[') !== 0)\n return null;\n if (label.indexOf(']') !== 65)\n return null;\n const hash = `0x${label.slice(1, 65)}`;\n if (!(0,_data_isHex_js__WEBPACK_IMPORTED_MODULE_0__.isHex)(hash))\n return null;\n return hash;\n}\n//# sourceMappingURL=encodedLabelToLabelhash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2VuY29kZWRMYWJlbFRvTGFiZWxoYXNoLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXlDO0FBQ2xDO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLG1CQUFtQjtBQUN6QyxTQUFTLHFEQUFLO0FBQ2Q7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2Vucy9lbmNvZGVkTGFiZWxUb0xhYmVsaGFzaC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0hleCB9IGZyb20gJy4uL2RhdGEvaXNIZXguanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZWRMYWJlbFRvTGFiZWxoYXNoKGxhYmVsKSB7XG4gICAgaWYgKGxhYmVsLmxlbmd0aCAhPT0gNjYpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGlmIChsYWJlbC5pbmRleE9mKCdbJykgIT09IDApXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGlmIChsYWJlbC5pbmRleE9mKCddJykgIT09IDY1KVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBjb25zdCBoYXNoID0gYDB4JHtsYWJlbC5zbGljZSgxLCA2NSl9YDtcbiAgICBpZiAoIWlzSGV4KGhhc2gpKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gaGFzaDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVuY29kZWRMYWJlbFRvTGFiZWxoYXNoLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/encodedLabelToLabelhash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/errors.js": /*!****************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/errors.js ***! \****************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isNullUniversalResolverError: () => (/* binding */ isNullUniversalResolverError)\n/* harmony export */ });\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n\n\n/*\n * @description Checks if error is a valid null result UniversalResolver error\n */\nfunction isNullUniversalResolverError(err) {\n if (!(err instanceof _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError))\n return false;\n const cause = err.walk((e) => e instanceof _errors_contract_js__WEBPACK_IMPORTED_MODULE_1__.ContractFunctionRevertedError);\n if (!(cause instanceof _errors_contract_js__WEBPACK_IMPORTED_MODULE_1__.ContractFunctionRevertedError))\n return false;\n if (cause.data?.errorName === 'HttpError')\n return true;\n if (cause.data?.errorName === 'ResolverError')\n return true;\n if (cause.data?.errorName === 'ResolverNotContract')\n return true;\n if (cause.data?.errorName === 'ResolverNotFound')\n return true;\n if (cause.data?.errorName === 'ReverseAddressMismatch')\n return true;\n if (cause.data?.errorName === 'UnsupportedResolverProfile')\n return true;\n return false;\n}\n//# sourceMappingURL=errors.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2Vycm9ycy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBaUQ7QUFDd0I7QUFDekU7QUFDQTtBQUNBO0FBQ087QUFDUCx5QkFBeUIsc0RBQVM7QUFDbEM7QUFDQSwrQ0FBK0MsOEVBQTZCO0FBQzVFLDJCQUEyQiw4RUFBNkI7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2Vucy9lcnJvcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2Jhc2UuanMnO1xuaW1wb3J0IHsgQ29udHJhY3RGdW5jdGlvblJldmVydGVkRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvY29udHJhY3QuanMnO1xuLypcbiAqIEBkZXNjcmlwdGlvbiBDaGVja3MgaWYgZXJyb3IgaXMgYSB2YWxpZCBudWxsIHJlc3VsdCBVbml2ZXJzYWxSZXNvbHZlciBlcnJvclxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNOdWxsVW5pdmVyc2FsUmVzb2x2ZXJFcnJvcihlcnIpIHtcbiAgICBpZiAoIShlcnIgaW5zdGFuY2VvZiBCYXNlRXJyb3IpKVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgY2F1c2UgPSBlcnIud2FsaygoZSkgPT4gZSBpbnN0YW5jZW9mIENvbnRyYWN0RnVuY3Rpb25SZXZlcnRlZEVycm9yKTtcbiAgICBpZiAoIShjYXVzZSBpbnN0YW5jZW9mIENvbnRyYWN0RnVuY3Rpb25SZXZlcnRlZEVycm9yKSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChjYXVzZS5kYXRhPy5lcnJvck5hbWUgPT09ICdIdHRwRXJyb3InKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoY2F1c2UuZGF0YT8uZXJyb3JOYW1lID09PSAnUmVzb2x2ZXJFcnJvcicpXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIGlmIChjYXVzZS5kYXRhPy5lcnJvck5hbWUgPT09ICdSZXNvbHZlck5vdENvbnRyYWN0JylcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgaWYgKGNhdXNlLmRhdGE/LmVycm9yTmFtZSA9PT0gJ1Jlc29sdmVyTm90Rm91bmQnKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoY2F1c2UuZGF0YT8uZXJyb3JOYW1lID09PSAnUmV2ZXJzZUFkZHJlc3NNaXNtYXRjaCcpXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIGlmIChjYXVzZS5kYXRhPy5lcnJvck5hbWUgPT09ICdVbnN1cHBvcnRlZFJlc29sdmVyUHJvZmlsZScpXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIHJldHVybiBmYWxzZTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVycm9ycy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/errors.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/labelhash.js": /*!*******************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/labelhash.js ***! \*******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ labelhash: () => (/* binding */ labelhash)\n/* harmony export */ });\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _hash_keccak256_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _encodedLabelToLabelhash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./encodedLabelToLabelhash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/encodedLabelToLabelhash.js\");\n\n\n\n\n/**\n * @description Hashes ENS label\n *\n * - Since ENS labels prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS labels](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `labelhash`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @example\n * labelhash('eth')\n * '0x4f5b812789fc606be1b3b16908db13fc7a9adf7ca72641f84d75b47069d3d7f0'\n */\nfunction labelhash(label) {\n const result = new Uint8Array(32).fill(0);\n if (!label)\n return (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(result);\n return (0,_encodedLabelToLabelhash_js__WEBPACK_IMPORTED_MODULE_1__.encodedLabelToLabelhash)(label) || (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_2__.keccak256)((0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_3__.stringToBytes)(label));\n}\n//# sourceMappingURL=labelhash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2xhYmVsaGFzaC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUF3RDtBQUNOO0FBQ0Q7QUFDdUI7QUFDeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0EsZUFBZSw4REFBVTtBQUN6QixXQUFXLG9GQUF1QixXQUFXLDZEQUFTLENBQUMsbUVBQWE7QUFDcEU7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2xhYmVsaGFzaC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzdHJpbmdUb0J5dGVzLCB9IGZyb20gJy4uL2VuY29kaW5nL3RvQnl0ZXMuanMnO1xuaW1wb3J0IHsgYnl0ZXNUb0hleCB9IGZyb20gJy4uL2VuY29kaW5nL3RvSGV4LmpzJztcbmltcG9ydCB7IGtlY2NhazI1NiB9IGZyb20gJy4uL2hhc2gva2VjY2FrMjU2LmpzJztcbmltcG9ydCB7IGVuY29kZWRMYWJlbFRvTGFiZWxoYXNoLCB9IGZyb20gJy4vZW5jb2RlZExhYmVsVG9MYWJlbGhhc2guanMnO1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gSGFzaGVzIEVOUyBsYWJlbFxuICpcbiAqIC0gU2luY2UgRU5TIGxhYmVscyBwcm9oaWJpdCBjZXJ0YWluIGZvcmJpZGRlbiBjaGFyYWN0ZXJzIChlLmcuIHVuZGVyc2NvcmUpIGFuZCBoYXZlIG90aGVyIHZhbGlkYXRpb24gcnVsZXMsIHlvdSBsaWtlbHkgd2FudCB0byBbbm9ybWFsaXplIEVOUyBsYWJlbHNdKGh0dHBzOi8vZG9jcy5lbnMuZG9tYWlucy9jb250cmFjdC1hcGktcmVmZXJlbmNlL25hbWUtcHJvY2Vzc2luZyNub3JtYWxpc2luZy1uYW1lcykgd2l0aCBbVVRTLTQ2IG5vcm1hbGl6YXRpb25dKGh0dHBzOi8vdW5pY29kZS5vcmcvcmVwb3J0cy90cjQ2KSBiZWZvcmUgcGFzc2luZyB0aGVtIHRvIGBsYWJlbGhhc2hgLiBZb3UgY2FuIHVzZSB0aGUgYnVpbHQtaW4gW2Bub3JtYWxpemVgXShodHRwczovL3ZpZW0uc2gvZG9jcy9lbnMvdXRpbGl0aWVzL25vcm1hbGl6ZSkgZnVuY3Rpb24gZm9yIHRoaXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGxhYmVsaGFzaCgnZXRoJylcbiAqICcweDRmNWI4MTI3ODlmYzYwNmJlMWIzYjE2OTA4ZGIxM2ZjN2E5YWRmN2NhNzI2NDFmODRkNzViNDcwNjlkM2Q3ZjAnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsYWJlbGhhc2gobGFiZWwpIHtcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgVWludDhBcnJheSgzMikuZmlsbCgwKTtcbiAgICBpZiAoIWxhYmVsKVxuICAgICAgICByZXR1cm4gYnl0ZXNUb0hleChyZXN1bHQpO1xuICAgIHJldHVybiBlbmNvZGVkTGFiZWxUb0xhYmVsaGFzaChsYWJlbCkgfHwga2VjY2FrMjU2KHN0cmluZ1RvQnl0ZXMobGFiZWwpKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWxhYmVsaGFzaC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/labelhash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/localBatchGatewayRequest.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/localBatchGatewayRequest.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ localBatchGatewayRequest: () => (/* binding */ localBatchGatewayRequest),\n/* harmony export */ localBatchGatewayUrl: () => (/* binding */ localBatchGatewayUrl)\n/* harmony export */ });\n/* harmony import */ var _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../constants/abis.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/abis.js\");\n/* harmony import */ var _constants_solidity_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../constants/solidity.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/solidity.js\");\n/* harmony import */ var _abi_decodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../abi/decodeFunctionData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/decodeFunctionData.js\");\n/* harmony import */ var _abi_encodeErrorResult_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../abi/encodeErrorResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeErrorResult.js\");\n/* harmony import */ var _abi_encodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../abi/encodeFunctionResult.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeFunctionResult.js\");\n\n\n\n\n\nconst localBatchGatewayUrl = 'x-batch-gateway:true';\nasync function localBatchGatewayRequest(parameters) {\n const { data, ccipRequest } = parameters;\n const { args: [queries], } = (0,_abi_decodeFunctionData_js__WEBPACK_IMPORTED_MODULE_0__.decodeFunctionData)({ abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__.batchGatewayAbi, data });\n const failures = [];\n const responses = [];\n await Promise.all(queries.map(async (query, i) => {\n try {\n responses[i] = query.urls.includes(localBatchGatewayUrl)\n ? await localBatchGatewayRequest({ data: query.data, ccipRequest })\n : await ccipRequest(query);\n failures[i] = false;\n }\n catch (err) {\n failures[i] = true;\n responses[i] = encodeError(err);\n }\n }));\n return (0,_abi_encodeFunctionResult_js__WEBPACK_IMPORTED_MODULE_2__.encodeFunctionResult)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__.batchGatewayAbi,\n functionName: 'query',\n result: [failures, responses],\n });\n}\nfunction encodeError(error) {\n if (error.name === 'HttpRequestError' && error.status)\n return (0,_abi_encodeErrorResult_js__WEBPACK_IMPORTED_MODULE_3__.encodeErrorResult)({\n abi: _constants_abis_js__WEBPACK_IMPORTED_MODULE_1__.batchGatewayAbi,\n errorName: 'HttpError',\n args: [error.status, error.shortMessage],\n });\n return (0,_abi_encodeErrorResult_js__WEBPACK_IMPORTED_MODULE_3__.encodeErrorResult)({\n abi: [_constants_solidity_js__WEBPACK_IMPORTED_MODULE_4__.solidityError],\n errorName: 'Error',\n args: ['shortMessage' in error ? error.shortMessage : error.message],\n });\n}\n//# sourceMappingURL=localBatchGatewayRequest.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2xvY2FsQmF0Y2hHYXRld2F5UmVxdWVzdC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQTBEO0FBQ0U7QUFDTTtBQUNGO0FBQ007QUFDL0Q7QUFDQTtBQUNQLFlBQVksb0JBQW9CO0FBQ2hDLFlBQVksbUJBQW1CLEVBQUUsOEVBQWtCLEdBQUcsS0FBSywrREFBZSxRQUFRO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtREFBbUQsK0JBQStCO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLFdBQVcsa0ZBQW9CO0FBQy9CLGFBQWEsK0RBQWU7QUFDNUI7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxlQUFlLDRFQUFpQjtBQUNoQyxpQkFBaUIsK0RBQWU7QUFDaEM7QUFDQTtBQUNBLFNBQVM7QUFDVCxXQUFXLDRFQUFpQjtBQUM1QixjQUFjLGlFQUFhO0FBQzNCO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL2xvY2FsQmF0Y2hHYXRld2F5UmVxdWVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBiYXRjaEdhdGV3YXlBYmkgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYWJpcy5qcyc7XG5pbXBvcnQgeyBzb2xpZGl0eUVycm9yIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3NvbGlkaXR5LmpzJztcbmltcG9ydCB7IGRlY29kZUZ1bmN0aW9uRGF0YSB9IGZyb20gJy4uL2FiaS9kZWNvZGVGdW5jdGlvbkRhdGEuanMnO1xuaW1wb3J0IHsgZW5jb2RlRXJyb3JSZXN1bHQgfSBmcm9tICcuLi9hYmkvZW5jb2RlRXJyb3JSZXN1bHQuanMnO1xuaW1wb3J0IHsgZW5jb2RlRnVuY3Rpb25SZXN1bHQgfSBmcm9tICcuLi9hYmkvZW5jb2RlRnVuY3Rpb25SZXN1bHQuanMnO1xuZXhwb3J0IGNvbnN0IGxvY2FsQmF0Y2hHYXRld2F5VXJsID0gJ3gtYmF0Y2gtZ2F0ZXdheTp0cnVlJztcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBsb2NhbEJhdGNoR2F0ZXdheVJlcXVlc3QocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgZGF0YSwgY2NpcFJlcXVlc3QgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgeyBhcmdzOiBbcXVlcmllc10sIH0gPSBkZWNvZGVGdW5jdGlvbkRhdGEoeyBhYmk6IGJhdGNoR2F0ZXdheUFiaSwgZGF0YSB9KTtcbiAgICBjb25zdCBmYWlsdXJlcyA9IFtdO1xuICAgIGNvbnN0IHJlc3BvbnNlcyA9IFtdO1xuICAgIGF3YWl0IFByb21pc2UuYWxsKHF1ZXJpZXMubWFwKGFzeW5jIChxdWVyeSwgaSkgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVzcG9uc2VzW2ldID0gcXVlcnkudXJscy5pbmNsdWRlcyhsb2NhbEJhdGNoR2F0ZXdheVVybClcbiAgICAgICAgICAgICAgICA/IGF3YWl0IGxvY2FsQmF0Y2hHYXRld2F5UmVxdWVzdCh7IGRhdGE6IHF1ZXJ5LmRhdGEsIGNjaXBSZXF1ZXN0IH0pXG4gICAgICAgICAgICAgICAgOiBhd2FpdCBjY2lwUmVxdWVzdChxdWVyeSk7XG4gICAgICAgICAgICBmYWlsdXJlc1tpXSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGZhaWx1cmVzW2ldID0gdHJ1ZTtcbiAgICAgICAgICAgIHJlc3BvbnNlc1tpXSA9IGVuY29kZUVycm9yKGVycik7XG4gICAgICAgIH1cbiAgICB9KSk7XG4gICAgcmV0dXJuIGVuY29kZUZ1bmN0aW9uUmVzdWx0KHtcbiAgICAgICAgYWJpOiBiYXRjaEdhdGV3YXlBYmksXG4gICAgICAgIGZ1bmN0aW9uTmFtZTogJ3F1ZXJ5JyxcbiAgICAgICAgcmVzdWx0OiBbZmFpbHVyZXMsIHJlc3BvbnNlc10sXG4gICAgfSk7XG59XG5mdW5jdGlvbiBlbmNvZGVFcnJvcihlcnJvcikge1xuICAgIGlmIChlcnJvci5uYW1lID09PSAnSHR0cFJlcXVlc3RFcnJvcicgJiYgZXJyb3Iuc3RhdHVzKVxuICAgICAgICByZXR1cm4gZW5jb2RlRXJyb3JSZXN1bHQoe1xuICAgICAgICAgICAgYWJpOiBiYXRjaEdhdGV3YXlBYmksXG4gICAgICAgICAgICBlcnJvck5hbWU6ICdIdHRwRXJyb3InLFxuICAgICAgICAgICAgYXJnczogW2Vycm9yLnN0YXR1cywgZXJyb3Iuc2hvcnRNZXNzYWdlXSxcbiAgICAgICAgfSk7XG4gICAgcmV0dXJuIGVuY29kZUVycm9yUmVzdWx0KHtcbiAgICAgICAgYWJpOiBbc29saWRpdHlFcnJvcl0sXG4gICAgICAgIGVycm9yTmFtZTogJ0Vycm9yJyxcbiAgICAgICAgYXJnczogWydzaG9ydE1lc3NhZ2UnIGluIGVycm9yID8gZXJyb3Iuc2hvcnRNZXNzYWdlIDogZXJyb3IubWVzc2FnZV0sXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1sb2NhbEJhdGNoR2F0ZXdheVJlcXVlc3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/localBatchGatewayRequest.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/namehash.js": /*!******************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/namehash.js ***! \******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ namehash: () => (/* binding */ namehash)\n/* harmony export */ });\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _hash_keccak256_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _encodedLabelToLabelhash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./encodedLabelToLabelhash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/encodedLabelToLabelhash.js\");\n\n\n\n\n\n/**\n * @description Hashes ENS name\n *\n * - Since ENS names prohibit certain forbidden characters (e.g. underscore) and have other validation rules, you likely want to [normalize ENS names](https://docs.ens.domains/contract-api-reference/name-processing#normalising-names) with [UTS-46 normalization](https://unicode.org/reports/tr46) before passing them to `namehash`. You can use the built-in [`normalize`](https://viem.sh/docs/ens/utilities/normalize) function for this.\n *\n * @example\n * namehash('wevm.eth')\n * '0x08c85f2f4059e930c45a6aeff9dcd3bd95dc3c5c1cddef6a0626b31152248560'\n *\n * @link https://eips.ethereum.org/EIPS/eip-137\n */\nfunction namehash(name) {\n let result = new Uint8Array(32).fill(0);\n if (!name)\n return (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(result);\n const labels = name.split('.');\n // Iterate in reverse order building up hash\n for (let i = labels.length - 1; i >= 0; i -= 1) {\n const hashFromEncodedLabel = (0,_encodedLabelToLabelhash_js__WEBPACK_IMPORTED_MODULE_1__.encodedLabelToLabelhash)(labels[i]);\n const hashed = hashFromEncodedLabel\n ? (0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_2__.toBytes)(hashFromEncodedLabel)\n : (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_3__.keccak256)((0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_2__.stringToBytes)(labels[i]), 'bytes');\n result = (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_3__.keccak256)((0,_data_concat_js__WEBPACK_IMPORTED_MODULE_4__.concat)([result, hashed]), 'bytes');\n }\n return (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(result);\n}\n//# sourceMappingURL=namehash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL25hbWVoYXNoLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUEyQztBQUNzQjtBQUNmO0FBQ0Q7QUFDdUI7QUFDeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLGVBQWUsOERBQVU7QUFDekI7QUFDQTtBQUNBLG9DQUFvQyxRQUFRO0FBQzVDLHFDQUFxQyxvRkFBdUI7QUFDNUQ7QUFDQSxjQUFjLDZEQUFPO0FBQ3JCLGNBQWMsNkRBQVMsQ0FBQyxtRUFBYTtBQUNyQyxpQkFBaUIsNkRBQVMsQ0FBQyx1REFBTTtBQUNqQztBQUNBLFdBQVcsOERBQVU7QUFDckI7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL25hbWVoYXNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbmNhdCB9IGZyb20gJy4uL2RhdGEvY29uY2F0LmpzJztcbmltcG9ydCB7IHN0cmluZ1RvQnl0ZXMsIHRvQnl0ZXMsIH0gZnJvbSAnLi4vZW5jb2RpbmcvdG9CeXRlcy5qcyc7XG5pbXBvcnQgeyBieXRlc1RvSGV4IH0gZnJvbSAnLi4vZW5jb2RpbmcvdG9IZXguanMnO1xuaW1wb3J0IHsga2VjY2FrMjU2IH0gZnJvbSAnLi4vaGFzaC9rZWNjYWsyNTYuanMnO1xuaW1wb3J0IHsgZW5jb2RlZExhYmVsVG9MYWJlbGhhc2gsIH0gZnJvbSAnLi9lbmNvZGVkTGFiZWxUb0xhYmVsaGFzaC5qcyc7XG4vKipcbiAqIEBkZXNjcmlwdGlvbiBIYXNoZXMgRU5TIG5hbWVcbiAqXG4gKiAtIFNpbmNlIEVOUyBuYW1lcyBwcm9oaWJpdCBjZXJ0YWluIGZvcmJpZGRlbiBjaGFyYWN0ZXJzIChlLmcuIHVuZGVyc2NvcmUpIGFuZCBoYXZlIG90aGVyIHZhbGlkYXRpb24gcnVsZXMsIHlvdSBsaWtlbHkgd2FudCB0byBbbm9ybWFsaXplIEVOUyBuYW1lc10oaHR0cHM6Ly9kb2NzLmVucy5kb21haW5zL2NvbnRyYWN0LWFwaS1yZWZlcmVuY2UvbmFtZS1wcm9jZXNzaW5nI25vcm1hbGlzaW5nLW5hbWVzKSB3aXRoIFtVVFMtNDYgbm9ybWFsaXphdGlvbl0oaHR0cHM6Ly91bmljb2RlLm9yZy9yZXBvcnRzL3RyNDYpIGJlZm9yZSBwYXNzaW5nIHRoZW0gdG8gYG5hbWVoYXNoYC4gWW91IGNhbiB1c2UgdGhlIGJ1aWx0LWluIFtgbm9ybWFsaXplYF0oaHR0cHM6Ly92aWVtLnNoL2RvY3MvZW5zL3V0aWxpdGllcy9ub3JtYWxpemUpIGZ1bmN0aW9uIGZvciB0aGlzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBuYW1laGFzaCgnd2V2bS5ldGgnKVxuICogJzB4MDhjODVmMmY0MDU5ZTkzMGM0NWE2YWVmZjlkY2QzYmQ5NWRjM2M1YzFjZGRlZjZhMDYyNmIzMTE1MjI0ODU2MCdcbiAqXG4gKiBAbGluayBodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTEzN1xuICovXG5leHBvcnQgZnVuY3Rpb24gbmFtZWhhc2gobmFtZSkge1xuICAgIGxldCByZXN1bHQgPSBuZXcgVWludDhBcnJheSgzMikuZmlsbCgwKTtcbiAgICBpZiAoIW5hbWUpXG4gICAgICAgIHJldHVybiBieXRlc1RvSGV4KHJlc3VsdCk7XG4gICAgY29uc3QgbGFiZWxzID0gbmFtZS5zcGxpdCgnLicpO1xuICAgIC8vIEl0ZXJhdGUgaW4gcmV2ZXJzZSBvcmRlciBidWlsZGluZyB1cCBoYXNoXG4gICAgZm9yIChsZXQgaSA9IGxhYmVscy5sZW5ndGggLSAxOyBpID49IDA7IGkgLT0gMSkge1xuICAgICAgICBjb25zdCBoYXNoRnJvbUVuY29kZWRMYWJlbCA9IGVuY29kZWRMYWJlbFRvTGFiZWxoYXNoKGxhYmVsc1tpXSk7XG4gICAgICAgIGNvbnN0IGhhc2hlZCA9IGhhc2hGcm9tRW5jb2RlZExhYmVsXG4gICAgICAgICAgICA/IHRvQnl0ZXMoaGFzaEZyb21FbmNvZGVkTGFiZWwpXG4gICAgICAgICAgICA6IGtlY2NhazI1NihzdHJpbmdUb0J5dGVzKGxhYmVsc1tpXSksICdieXRlcycpO1xuICAgICAgICByZXN1bHQgPSBrZWNjYWsyNTYoY29uY2F0KFtyZXN1bHQsIGhhc2hlZF0pLCAnYnl0ZXMnKTtcbiAgICB9XG4gICAgcmV0dXJuIGJ5dGVzVG9IZXgocmVzdWx0KTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW5hbWVoYXNoLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/namehash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/ens/packetToBytes.js": /*!***********************************************************!*\ !*** ./node_modules/viem/_esm/utils/ens/packetToBytes.js ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ packetToBytes: () => (/* binding */ packetToBytes)\n/* harmony export */ });\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _encodeLabelhash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./encodeLabelhash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/encodeLabelhash.js\");\n/* harmony import */ var _labelhash_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./labelhash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/ens/labelhash.js\");\n\n\n\n/*\n * @description Encodes a DNS packet into a ByteArray containing a UDP payload.\n *\n * @example\n * packetToBytes('awkweb.eth')\n * '0x0661776b7765620365746800'\n *\n * @see https://docs.ens.domains/resolution/names#dns\n *\n */\nfunction packetToBytes(packet) {\n // strip leading and trailing `.`\n const value = packet.replace(/^\\.|\\.$/gm, '');\n if (value.length === 0)\n return new Uint8Array(1);\n const bytes = new Uint8Array((0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_0__.stringToBytes)(value).byteLength + 2);\n let offset = 0;\n const list = value.split('.');\n for (let i = 0; i < list.length; i++) {\n let encoded = (0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_0__.stringToBytes)(list[i]);\n // if the length is > 255, make the encoded label value a labelhash\n // this is compatible with the universal resolver\n if (encoded.byteLength > 255)\n encoded = (0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_0__.stringToBytes)((0,_encodeLabelhash_js__WEBPACK_IMPORTED_MODULE_1__.encodeLabelhash)((0,_labelhash_js__WEBPACK_IMPORTED_MODULE_2__.labelhash)(list[i])));\n bytes[offset] = encoded.length;\n bytes.set(encoded, offset + 1);\n offset += encoded.length + 1;\n }\n if (bytes.byteLength !== offset + 1)\n return bytes.slice(0, offset + 1);\n return bytes;\n}\n//# sourceMappingURL=packetToBytes.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL3BhY2tldFRvQnl0ZXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF3RDtBQUNBO0FBQ2I7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLG1FQUFhO0FBQzlDO0FBQ0E7QUFDQSxvQkFBb0IsaUJBQWlCO0FBQ3JDLHNCQUFzQixtRUFBYTtBQUNuQztBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsbUVBQWEsQ0FBQyxvRUFBZSxDQUFDLHdEQUFTO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZW5zL3BhY2tldFRvQnl0ZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3RyaW5nVG9CeXRlcywgfSBmcm9tICcuLi9lbmNvZGluZy90b0J5dGVzLmpzJztcbmltcG9ydCB7IGVuY29kZUxhYmVsaGFzaCwgfSBmcm9tICcuL2VuY29kZUxhYmVsaGFzaC5qcyc7XG5pbXBvcnQgeyBsYWJlbGhhc2ggfSBmcm9tICcuL2xhYmVsaGFzaC5qcyc7XG4vKlxuICogQGRlc2NyaXB0aW9uIEVuY29kZXMgYSBETlMgcGFja2V0IGludG8gYSBCeXRlQXJyYXkgY29udGFpbmluZyBhIFVEUCBwYXlsb2FkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBwYWNrZXRUb0J5dGVzKCdhd2t3ZWIuZXRoJylcbiAqICcweDA2NjE3NzZiNzc2NTYyMDM2NTc0NjgwMCdcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5lbnMuZG9tYWlucy9yZXNvbHV0aW9uL25hbWVzI2Ruc1xuICpcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhY2tldFRvQnl0ZXMocGFja2V0KSB7XG4gICAgLy8gc3RyaXAgbGVhZGluZyBhbmQgdHJhaWxpbmcgYC5gXG4gICAgY29uc3QgdmFsdWUgPSBwYWNrZXQucmVwbGFjZSgvXlxcLnxcXC4kL2dtLCAnJyk7XG4gICAgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMClcbiAgICAgICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KDEpO1xuICAgIGNvbnN0IGJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkoc3RyaW5nVG9CeXRlcyh2YWx1ZSkuYnl0ZUxlbmd0aCArIDIpO1xuICAgIGxldCBvZmZzZXQgPSAwO1xuICAgIGNvbnN0IGxpc3QgPSB2YWx1ZS5zcGxpdCgnLicpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgICBsZXQgZW5jb2RlZCA9IHN0cmluZ1RvQnl0ZXMobGlzdFtpXSk7XG4gICAgICAgIC8vIGlmIHRoZSBsZW5ndGggaXMgPiAyNTUsIG1ha2UgdGhlIGVuY29kZWQgbGFiZWwgdmFsdWUgYSBsYWJlbGhhc2hcbiAgICAgICAgLy8gdGhpcyBpcyBjb21wYXRpYmxlIHdpdGggdGhlIHVuaXZlcnNhbCByZXNvbHZlclxuICAgICAgICBpZiAoZW5jb2RlZC5ieXRlTGVuZ3RoID4gMjU1KVxuICAgICAgICAgICAgZW5jb2RlZCA9IHN0cmluZ1RvQnl0ZXMoZW5jb2RlTGFiZWxoYXNoKGxhYmVsaGFzaChsaXN0W2ldKSkpO1xuICAgICAgICBieXRlc1tvZmZzZXRdID0gZW5jb2RlZC5sZW5ndGg7XG4gICAgICAgIGJ5dGVzLnNldChlbmNvZGVkLCBvZmZzZXQgKyAxKTtcbiAgICAgICAgb2Zmc2V0ICs9IGVuY29kZWQubGVuZ3RoICsgMTtcbiAgICB9XG4gICAgaWYgKGJ5dGVzLmJ5dGVMZW5ndGggIT09IG9mZnNldCArIDEpXG4gICAgICAgIHJldHVybiBieXRlcy5zbGljZSgwLCBvZmZzZXQgKyAxKTtcbiAgICByZXR1cm4gYnl0ZXM7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wYWNrZXRUb0J5dGVzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/ens/packetToBytes.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getCallError.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/utils/errors/getCallError.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getCallError: () => (/* binding */ getCallError)\n/* harmony export */ });\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n/* harmony import */ var _errors_node_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/node.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/node.js\");\n/* harmony import */ var _getNodeError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getNodeError.js\");\n\n\n\nfunction getCallError(err, { docsPath, ...args }) {\n const cause = (() => {\n const cause = (0,_getNodeError_js__WEBPACK_IMPORTED_MODULE_0__.getNodeError)(err, args);\n if (cause instanceof _errors_node_js__WEBPACK_IMPORTED_MODULE_1__.UnknownNodeError)\n return err;\n return cause;\n })();\n return new _errors_contract_js__WEBPACK_IMPORTED_MODULE_2__.CallExecutionError(cause, {\n docsPath,\n ...args,\n });\n}\n//# sourceMappingURL=getCallError.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZXJyb3JzL2dldENhbGxFcnJvci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQStEO0FBQ1A7QUFDTjtBQUMzQyw2QkFBNkIsbUJBQW1CO0FBQ3ZEO0FBQ0Esc0JBQXNCLDhEQUFZO0FBQ2xDLDZCQUE2Qiw2REFBZ0I7QUFDN0M7QUFDQTtBQUNBLEtBQUs7QUFDTCxlQUFlLG1FQUFrQjtBQUNqQztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2Vycm9ycy9nZXRDYWxsRXJyb3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FsbEV4ZWN1dGlvbkVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9jb250cmFjdC5qcyc7XG5pbXBvcnQgeyBVbmtub3duTm9kZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL25vZGUuanMnO1xuaW1wb3J0IHsgZ2V0Tm9kZUVycm9yLCB9IGZyb20gJy4vZ2V0Tm9kZUVycm9yLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBnZXRDYWxsRXJyb3IoZXJyLCB7IGRvY3NQYXRoLCAuLi5hcmdzIH0pIHtcbiAgICBjb25zdCBjYXVzZSA9ICgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNhdXNlID0gZ2V0Tm9kZUVycm9yKGVyciwgYXJncyk7XG4gICAgICAgIGlmIChjYXVzZSBpbnN0YW5jZW9mIFVua25vd25Ob2RlRXJyb3IpXG4gICAgICAgICAgICByZXR1cm4gZXJyO1xuICAgICAgICByZXR1cm4gY2F1c2U7XG4gICAgfSkoKTtcbiAgICByZXR1cm4gbmV3IENhbGxFeGVjdXRpb25FcnJvcihjYXVzZSwge1xuICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgLi4uYXJncyxcbiAgICB9KTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldENhbGxFcnJvci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getCallError.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getContractError.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/errors/getContractError.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getContractError: () => (/* binding */ getContractError)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_contract_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/contract.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/contract.js\");\n/* harmony import */ var _errors_request_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../errors/request.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/request.js\");\n/* harmony import */ var _errors_rpc_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/rpc.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/rpc.js\");\n\n\n\n\n\nconst EXECUTION_REVERTED_ERROR_CODE = 3;\nfunction getContractError(err, { abi, address, args, docsPath, functionName, sender, }) {\n const error = (err instanceof _errors_contract_js__WEBPACK_IMPORTED_MODULE_0__.RawContractError\n ? err\n : err instanceof _errors_base_js__WEBPACK_IMPORTED_MODULE_1__.BaseError\n ? err.walk((err) => 'data' in err) || err.walk()\n : {});\n const { code, data, details, message, shortMessage } = error;\n const cause = (() => {\n if (err instanceof _errors_abi_js__WEBPACK_IMPORTED_MODULE_2__.AbiDecodingZeroDataError)\n return new _errors_contract_js__WEBPACK_IMPORTED_MODULE_0__.ContractFunctionZeroDataError({ functionName });\n if ([EXECUTION_REVERTED_ERROR_CODE, _errors_rpc_js__WEBPACK_IMPORTED_MODULE_3__.InternalRpcError.code].includes(code) &&\n (data || details || message || shortMessage)) {\n return new _errors_contract_js__WEBPACK_IMPORTED_MODULE_0__.ContractFunctionRevertedError({\n abi,\n data: typeof data === 'object' ? data.data : data,\n functionName,\n message: error instanceof _errors_request_js__WEBPACK_IMPORTED_MODULE_4__.RpcRequestError\n ? details\n : (shortMessage ?? message),\n });\n }\n return err;\n })();\n return new _errors_contract_js__WEBPACK_IMPORTED_MODULE_0__.ContractFunctionExecutionError(cause, {\n abi,\n args,\n contractAddress: address,\n docsPath,\n functionName,\n sender,\n });\n}\n//# sourceMappingURL=getContractError.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZXJyb3JzL2dldENvbnRyYWN0RXJyb3IuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQStEO0FBQ2Q7QUFDMEc7QUFDakc7QUFDSDtBQUN2RDtBQUNPLGlDQUFpQyxxREFBcUQ7QUFDN0Ysa0NBQWtDLGlFQUFnQjtBQUNsRDtBQUNBLHlCQUF5QixzREFBUztBQUNsQztBQUNBLGdCQUFnQjtBQUNoQixZQUFZLDZDQUE2QztBQUN6RDtBQUNBLDJCQUEyQixvRUFBd0I7QUFDbkQsdUJBQXVCLDhFQUE2QixHQUFHLGNBQWM7QUFDckUsNENBQTRDLDREQUFnQjtBQUM1RDtBQUNBLHVCQUF1Qiw4RUFBNkI7QUFDcEQ7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLCtEQUFlO0FBQ3pEO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLEtBQUs7QUFDTCxlQUFlLCtFQUE4QjtBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZXJyb3JzL2dldENvbnRyYWN0RXJyb3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJpRGVjb2RpbmdaZXJvRGF0YUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL2FiaS5qcyc7XG5pbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYmFzZS5qcyc7XG5pbXBvcnQgeyBDb250cmFjdEZ1bmN0aW9uRXhlY3V0aW9uRXJyb3IsIENvbnRyYWN0RnVuY3Rpb25SZXZlcnRlZEVycm9yLCBDb250cmFjdEZ1bmN0aW9uWmVyb0RhdGFFcnJvciwgUmF3Q29udHJhY3RFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvY29udHJhY3QuanMnO1xuaW1wb3J0IHsgUnBjUmVxdWVzdEVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzL3JlcXVlc3QuanMnO1xuaW1wb3J0IHsgSW50ZXJuYWxScGNFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9ycGMuanMnO1xuY29uc3QgRVhFQ1VUSU9OX1JFVkVSVEVEX0VSUk9SX0NPREUgPSAzO1xuZXhwb3J0IGZ1bmN0aW9uIGdldENvbnRyYWN0RXJyb3IoZXJyLCB7IGFiaSwgYWRkcmVzcywgYXJncywgZG9jc1BhdGgsIGZ1bmN0aW9uTmFtZSwgc2VuZGVyLCB9KSB7XG4gICAgY29uc3QgZXJyb3IgPSAoZXJyIGluc3RhbmNlb2YgUmF3Q29udHJhY3RFcnJvclxuICAgICAgICA/IGVyclxuICAgICAgICA6IGVyciBpbnN0YW5jZW9mIEJhc2VFcnJvclxuICAgICAgICAgICAgPyBlcnIud2FsaygoZXJyKSA9PiAnZGF0YScgaW4gZXJyKSB8fCBlcnIud2FsaygpXG4gICAgICAgICAgICA6IHt9KTtcbiAgICBjb25zdCB7IGNvZGUsIGRhdGEsIGRldGFpbHMsIG1lc3NhZ2UsIHNob3J0TWVzc2FnZSB9ID0gZXJyb3I7XG4gICAgY29uc3QgY2F1c2UgPSAoKCkgPT4ge1xuICAgICAgICBpZiAoZXJyIGluc3RhbmNlb2YgQWJpRGVjb2RpbmdaZXJvRGF0YUVycm9yKVxuICAgICAgICAgICAgcmV0dXJuIG5ldyBDb250cmFjdEZ1bmN0aW9uWmVyb0RhdGFFcnJvcih7IGZ1bmN0aW9uTmFtZSB9KTtcbiAgICAgICAgaWYgKFtFWEVDVVRJT05fUkVWRVJURURfRVJST1JfQ09ERSwgSW50ZXJuYWxScGNFcnJvci5jb2RlXS5pbmNsdWRlcyhjb2RlKSAmJlxuICAgICAgICAgICAgKGRhdGEgfHwgZGV0YWlscyB8fCBtZXNzYWdlIHx8IHNob3J0TWVzc2FnZSkpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgQ29udHJhY3RGdW5jdGlvblJldmVydGVkRXJyb3Ioe1xuICAgICAgICAgICAgICAgIGFiaSxcbiAgICAgICAgICAgICAgICBkYXRhOiB0eXBlb2YgZGF0YSA9PT0gJ29iamVjdCcgPyBkYXRhLmRhdGEgOiBkYXRhLFxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uTmFtZSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBlcnJvciBpbnN0YW5jZW9mIFJwY1JlcXVlc3RFcnJvclxuICAgICAgICAgICAgICAgICAgICA/IGRldGFpbHNcbiAgICAgICAgICAgICAgICAgICAgOiAoc2hvcnRNZXNzYWdlID8/IG1lc3NhZ2UpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGVycjtcbiAgICB9KSgpO1xuICAgIHJldHVybiBuZXcgQ29udHJhY3RGdW5jdGlvbkV4ZWN1dGlvbkVycm9yKGNhdXNlLCB7XG4gICAgICAgIGFiaSxcbiAgICAgICAgYXJncyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiBhZGRyZXNzLFxuICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgZnVuY3Rpb25OYW1lLFxuICAgICAgICBzZW5kZXIsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRDb250cmFjdEVycm9yLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getContractError.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getEstimateGasError.js": /*!********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/errors/getEstimateGasError.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEstimateGasError: () => (/* binding */ getEstimateGasError)\n/* harmony export */ });\n/* harmony import */ var _errors_estimateGas_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/estimateGas.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/estimateGas.js\");\n/* harmony import */ var _errors_node_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/node.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/node.js\");\n/* harmony import */ var _getNodeError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getNodeError.js\");\n\n\n\nfunction getEstimateGasError(err, { docsPath, ...args }) {\n const cause = (() => {\n const cause = (0,_getNodeError_js__WEBPACK_IMPORTED_MODULE_0__.getNodeError)(err, args);\n if (cause instanceof _errors_node_js__WEBPACK_IMPORTED_MODULE_1__.UnknownNodeError)\n return err;\n return cause;\n })();\n return new _errors_estimateGas_js__WEBPACK_IMPORTED_MODULE_2__.EstimateGasExecutionError(cause, {\n docsPath,\n ...args,\n });\n}\n//# sourceMappingURL=getEstimateGasError.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZXJyb3JzL2dldEVzdGltYXRlR2FzRXJyb3IuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF5RTtBQUNqQjtBQUNOO0FBQzNDLG9DQUFvQyxtQkFBbUI7QUFDOUQ7QUFDQSxzQkFBc0IsOERBQVk7QUFDbEMsNkJBQTZCLDZEQUFnQjtBQUM3QztBQUNBO0FBQ0EsS0FBSztBQUNMLGVBQWUsNkVBQXlCO0FBQ3hDO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZXJyb3JzL2dldEVzdGltYXRlR2FzRXJyb3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXN0aW1hdGVHYXNFeGVjdXRpb25FcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvZXN0aW1hdGVHYXMuanMnO1xuaW1wb3J0IHsgVW5rbm93bk5vZGVFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9ub2RlLmpzJztcbmltcG9ydCB7IGdldE5vZGVFcnJvciwgfSBmcm9tICcuL2dldE5vZGVFcnJvci5qcyc7XG5leHBvcnQgZnVuY3Rpb24gZ2V0RXN0aW1hdGVHYXNFcnJvcihlcnIsIHsgZG9jc1BhdGgsIC4uLmFyZ3MgfSkge1xuICAgIGNvbnN0IGNhdXNlID0gKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2F1c2UgPSBnZXROb2RlRXJyb3IoZXJyLCBhcmdzKTtcbiAgICAgICAgaWYgKGNhdXNlIGluc3RhbmNlb2YgVW5rbm93bk5vZGVFcnJvcilcbiAgICAgICAgICAgIHJldHVybiBlcnI7XG4gICAgICAgIHJldHVybiBjYXVzZTtcbiAgICB9KSgpO1xuICAgIHJldHVybiBuZXcgRXN0aW1hdGVHYXNFeGVjdXRpb25FcnJvcihjYXVzZSwge1xuICAgICAgICBkb2NzUGF0aCxcbiAgICAgICAgLi4uYXJncyxcbiAgICB9KTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldEVzdGltYXRlR2FzRXJyb3IuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getEstimateGasError.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getNodeError.js": /*!*************************************************************!*\ !*** ./node_modules/viem/_esm/utils/errors/getNodeError.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ containsNodeError: () => (/* binding */ containsNodeError),\n/* harmony export */ getNodeError: () => (/* binding */ getNodeError)\n/* harmony export */ });\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n/* harmony import */ var _errors_node_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/node.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/node.js\");\n/* harmony import */ var _errors_request_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/request.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/request.js\");\n/* harmony import */ var _errors_rpc_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/rpc.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/rpc.js\");\n\n\n\n\nfunction containsNodeError(err) {\n return (err instanceof _errors_rpc_js__WEBPACK_IMPORTED_MODULE_0__.TransactionRejectedRpcError ||\n err instanceof _errors_rpc_js__WEBPACK_IMPORTED_MODULE_0__.InvalidInputRpcError ||\n (err instanceof _errors_request_js__WEBPACK_IMPORTED_MODULE_1__.RpcRequestError && err.code === _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.ExecutionRevertedError.code));\n}\nfunction getNodeError(err, args) {\n const message = (err.details || '').toLowerCase();\n const executionRevertedError = err instanceof _errors_base_js__WEBPACK_IMPORTED_MODULE_3__.BaseError\n ? err.walk((e) => e?.code ===\n _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.ExecutionRevertedError.code)\n : err;\n if (executionRevertedError instanceof _errors_base_js__WEBPACK_IMPORTED_MODULE_3__.BaseError)\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.ExecutionRevertedError({\n cause: err,\n message: executionRevertedError.details,\n });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.ExecutionRevertedError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.ExecutionRevertedError({\n cause: err,\n message: err.details,\n });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.FeeCapTooHighError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.FeeCapTooHighError({\n cause: err,\n maxFeePerGas: args?.maxFeePerGas,\n });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.FeeCapTooLowError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.FeeCapTooLowError({\n cause: err,\n maxFeePerGas: args?.maxFeePerGas,\n });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.NonceTooHighError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.NonceTooHighError({ cause: err, nonce: args?.nonce });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.NonceTooLowError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.NonceTooLowError({ cause: err, nonce: args?.nonce });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.NonceMaxValueError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.NonceMaxValueError({ cause: err, nonce: args?.nonce });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFundsError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFundsError({ cause: err });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.IntrinsicGasTooHighError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.IntrinsicGasTooHighError({ cause: err, gas: args?.gas });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.IntrinsicGasTooLowError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.IntrinsicGasTooLowError({ cause: err, gas: args?.gas });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.TransactionTypeNotSupportedError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.TransactionTypeNotSupportedError({ cause: err });\n if (_errors_node_js__WEBPACK_IMPORTED_MODULE_2__.TipAboveFeeCapError.nodeMessage.test(message))\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.TipAboveFeeCapError({\n cause: err,\n maxFeePerGas: args?.maxFeePerGas,\n maxPriorityFeePerGas: args?.maxPriorityFeePerGas,\n });\n return new _errors_node_js__WEBPACK_IMPORTED_MODULE_2__.UnknownNodeError({\n cause: err,\n });\n}\n//# sourceMappingURL=getNodeError.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZXJyb3JzL2dldE5vZGVFcnJvci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBaUQ7QUFDa1E7QUFDelA7QUFDK0I7QUFDbEY7QUFDUCwyQkFBMkIsdUVBQTJCO0FBQ3RELHVCQUF1QixnRUFBb0I7QUFDM0Msd0JBQXdCLCtEQUFlLGlCQUFpQixtRUFBc0I7QUFDOUU7QUFDTztBQUNQO0FBQ0Esa0RBQWtELHNEQUFTO0FBQzNEO0FBQ0EsWUFBWSxtRUFBc0I7QUFDbEM7QUFDQSwwQ0FBMEMsc0RBQVM7QUFDbkQsbUJBQW1CLG1FQUFzQjtBQUN6QztBQUNBO0FBQ0EsU0FBUztBQUNULFFBQVEsbUVBQXNCO0FBQzlCLG1CQUFtQixtRUFBc0I7QUFDekM7QUFDQTtBQUNBLFNBQVM7QUFDVCxRQUFRLCtEQUFrQjtBQUMxQixtQkFBbUIsK0RBQWtCO0FBQ3JDO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsUUFBUSw4REFBaUI7QUFDekIsbUJBQW1CLDhEQUFpQjtBQUNwQztBQUNBO0FBQ0EsU0FBUztBQUNULFFBQVEsOERBQWlCO0FBQ3pCLG1CQUFtQiw4REFBaUIsR0FBRyxnQ0FBZ0M7QUFDdkUsUUFBUSw2REFBZ0I7QUFDeEIsbUJBQW1CLDZEQUFnQixHQUFHLGdDQUFnQztBQUN0RSxRQUFRLCtEQUFrQjtBQUMxQixtQkFBbUIsK0RBQWtCLEdBQUcsZ0NBQWdDO0FBQ3hFLFFBQVEsbUVBQXNCO0FBQzlCLG1CQUFtQixtRUFBc0IsR0FBRyxZQUFZO0FBQ3hELFFBQVEscUVBQXdCO0FBQ2hDLG1CQUFtQixxRUFBd0IsR0FBRyw0QkFBNEI7QUFDMUUsUUFBUSxvRUFBdUI7QUFDL0IsbUJBQW1CLG9FQUF1QixHQUFHLDRCQUE0QjtBQUN6RSxRQUFRLDZFQUFnQztBQUN4QyxtQkFBbUIsNkVBQWdDLEdBQUcsWUFBWTtBQUNsRSxRQUFRLGdFQUFtQjtBQUMzQixtQkFBbUIsZ0VBQW1CO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxlQUFlLDZEQUFnQjtBQUMvQjtBQUNBLEtBQUs7QUFDTDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9lcnJvcnMvZ2V0Tm9kZUVycm9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9iYXNlLmpzJztcbmltcG9ydCB7IEV4ZWN1dGlvblJldmVydGVkRXJyb3IsIEZlZUNhcFRvb0hpZ2hFcnJvciwgRmVlQ2FwVG9vTG93RXJyb3IsIEluc3VmZmljaWVudEZ1bmRzRXJyb3IsIEludHJpbnNpY0dhc1Rvb0hpZ2hFcnJvciwgSW50cmluc2ljR2FzVG9vTG93RXJyb3IsIE5vbmNlTWF4VmFsdWVFcnJvciwgTm9uY2VUb29IaWdoRXJyb3IsIE5vbmNlVG9vTG93RXJyb3IsIFRpcEFib3ZlRmVlQ2FwRXJyb3IsIFRyYW5zYWN0aW9uVHlwZU5vdFN1cHBvcnRlZEVycm9yLCBVbmtub3duTm9kZUVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy9ub2RlLmpzJztcbmltcG9ydCB7IFJwY1JlcXVlc3RFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy9yZXF1ZXN0LmpzJztcbmltcG9ydCB7IEludmFsaWRJbnB1dFJwY0Vycm9yLCBUcmFuc2FjdGlvblJlamVjdGVkUnBjRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL3JwYy5qcyc7XG5leHBvcnQgZnVuY3Rpb24gY29udGFpbnNOb2RlRXJyb3IoZXJyKSB7XG4gICAgcmV0dXJuIChlcnIgaW5zdGFuY2VvZiBUcmFuc2FjdGlvblJlamVjdGVkUnBjRXJyb3IgfHxcbiAgICAgICAgZXJyIGluc3RhbmNlb2YgSW52YWxpZElucHV0UnBjRXJyb3IgfHxcbiAgICAgICAgKGVyciBpbnN0YW5jZW9mIFJwY1JlcXVlc3RFcnJvciAmJiBlcnIuY29kZSA9PT0gRXhlY3V0aW9uUmV2ZXJ0ZWRFcnJvci5jb2RlKSk7XG59XG5leHBvcnQgZnVuY3Rpb24gZ2V0Tm9kZUVycm9yKGVyciwgYXJncykge1xuICAgIGNvbnN0IG1lc3NhZ2UgPSAoZXJyLmRldGFpbHMgfHwgJycpLnRvTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgZXhlY3V0aW9uUmV2ZXJ0ZWRFcnJvciA9IGVyciBpbnN0YW5jZW9mIEJhc2VFcnJvclxuICAgICAgICA/IGVyci53YWxrKChlKSA9PiBlPy5jb2RlID09PVxuICAgICAgICAgICAgRXhlY3V0aW9uUmV2ZXJ0ZWRFcnJvci5jb2RlKVxuICAgICAgICA6IGVycjtcbiAgICBpZiAoZXhlY3V0aW9uUmV2ZXJ0ZWRFcnJvciBpbnN0YW5jZW9mIEJhc2VFcnJvcilcbiAgICAgICAgcmV0dXJuIG5ldyBFeGVjdXRpb25SZXZlcnRlZEVycm9yKHtcbiAgICAgICAgICAgIGNhdXNlOiBlcnIsXG4gICAgICAgICAgICBtZXNzYWdlOiBleGVjdXRpb25SZXZlcnRlZEVycm9yLmRldGFpbHMsXG4gICAgICAgIH0pO1xuICAgIGlmIChFeGVjdXRpb25SZXZlcnRlZEVycm9yLm5vZGVNZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgRXhlY3V0aW9uUmV2ZXJ0ZWRFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgbWVzc2FnZTogZXJyLmRldGFpbHMsXG4gICAgICAgIH0pO1xuICAgIGlmIChGZWVDYXBUb29IaWdoRXJyb3Iubm9kZU1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBGZWVDYXBUb29IaWdoRXJyb3Ioe1xuICAgICAgICAgICAgY2F1c2U6IGVycixcbiAgICAgICAgICAgIG1heEZlZVBlckdhczogYXJncz8ubWF4RmVlUGVyR2FzLFxuICAgICAgICB9KTtcbiAgICBpZiAoRmVlQ2FwVG9vTG93RXJyb3Iubm9kZU1lc3NhZ2UudGVzdChtZXNzYWdlKSlcbiAgICAgICAgcmV0dXJuIG5ldyBGZWVDYXBUb29Mb3dFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgbWF4RmVlUGVyR2FzOiBhcmdzPy5tYXhGZWVQZXJHYXMsXG4gICAgICAgIH0pO1xuICAgIGlmIChOb25jZVRvb0hpZ2hFcnJvci5ub2RlTWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IE5vbmNlVG9vSGlnaEVycm9yKHsgY2F1c2U6IGVyciwgbm9uY2U6IGFyZ3M/Lm5vbmNlIH0pO1xuICAgIGlmIChOb25jZVRvb0xvd0Vycm9yLm5vZGVNZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgTm9uY2VUb29Mb3dFcnJvcih7IGNhdXNlOiBlcnIsIG5vbmNlOiBhcmdzPy5ub25jZSB9KTtcbiAgICBpZiAoTm9uY2VNYXhWYWx1ZUVycm9yLm5vZGVNZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgTm9uY2VNYXhWYWx1ZUVycm9yKHsgY2F1c2U6IGVyciwgbm9uY2U6IGFyZ3M/Lm5vbmNlIH0pO1xuICAgIGlmIChJbnN1ZmZpY2llbnRGdW5kc0Vycm9yLm5vZGVNZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgSW5zdWZmaWNpZW50RnVuZHNFcnJvcih7IGNhdXNlOiBlcnIgfSk7XG4gICAgaWYgKEludHJpbnNpY0dhc1Rvb0hpZ2hFcnJvci5ub2RlTWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IEludHJpbnNpY0dhc1Rvb0hpZ2hFcnJvcih7IGNhdXNlOiBlcnIsIGdhczogYXJncz8uZ2FzIH0pO1xuICAgIGlmIChJbnRyaW5zaWNHYXNUb29Mb3dFcnJvci5ub2RlTWVzc2FnZS50ZXN0KG1lc3NhZ2UpKVxuICAgICAgICByZXR1cm4gbmV3IEludHJpbnNpY0dhc1Rvb0xvd0Vycm9yKHsgY2F1c2U6IGVyciwgZ2FzOiBhcmdzPy5nYXMgfSk7XG4gICAgaWYgKFRyYW5zYWN0aW9uVHlwZU5vdFN1cHBvcnRlZEVycm9yLm5vZGVNZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25UeXBlTm90U3VwcG9ydGVkRXJyb3IoeyBjYXVzZTogZXJyIH0pO1xuICAgIGlmIChUaXBBYm92ZUZlZUNhcEVycm9yLm5vZGVNZXNzYWdlLnRlc3QobWVzc2FnZSkpXG4gICAgICAgIHJldHVybiBuZXcgVGlwQWJvdmVGZWVDYXBFcnJvcih7XG4gICAgICAgICAgICBjYXVzZTogZXJyLFxuICAgICAgICAgICAgbWF4RmVlUGVyR2FzOiBhcmdzPy5tYXhGZWVQZXJHYXMsXG4gICAgICAgICAgICBtYXhQcmlvcml0eUZlZVBlckdhczogYXJncz8ubWF4UHJpb3JpdHlGZWVQZXJHYXMsXG4gICAgICAgIH0pO1xuICAgIHJldHVybiBuZXcgVW5rbm93bk5vZGVFcnJvcih7XG4gICAgICAgIGNhdXNlOiBlcnIsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXROb2RlRXJyb3IuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getNodeError.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getTransactionError.js": /*!********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/errors/getTransactionError.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getTransactionError: () => (/* binding */ getTransactionError)\n/* harmony export */ });\n/* harmony import */ var _errors_node_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../errors/node.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/node.js\");\n/* harmony import */ var _errors_transaction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n/* harmony import */ var _getNodeError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeError.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getNodeError.js\");\n\n\n\nfunction getTransactionError(err, { docsPath, ...args }) {\n const cause = (() => {\n const cause = (0,_getNodeError_js__WEBPACK_IMPORTED_MODULE_0__.getNodeError)(err, args);\n if (cause instanceof _errors_node_js__WEBPACK_IMPORTED_MODULE_1__.UnknownNodeError)\n return err;\n return cause;\n })();\n return new _errors_transaction_js__WEBPACK_IMPORTED_MODULE_2__.TransactionExecutionError(cause, {\n docsPath,\n ...args,\n });\n}\n//# sourceMappingURL=getTransactionError.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZXJyb3JzL2dldFRyYW5zYWN0aW9uRXJyb3IuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF3RDtBQUNpQjtBQUN2QjtBQUMzQyxvQ0FBb0MsbUJBQW1CO0FBQzlEO0FBQ0Esc0JBQXNCLDhEQUFZO0FBQ2xDLDZCQUE2Qiw2REFBZ0I7QUFDN0M7QUFDQTtBQUNBLEtBQUs7QUFDTCxlQUFlLDZFQUF5QjtBQUN4QztBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2Vycm9ycy9nZXRUcmFuc2FjdGlvbkVycm9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVua25vd25Ob2RlRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvbm9kZS5qcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkV4ZWN1dGlvbkVycm9yLCB9IGZyb20gJy4uLy4uL2Vycm9ycy90cmFuc2FjdGlvbi5qcyc7XG5pbXBvcnQgeyBnZXROb2RlRXJyb3IsIH0gZnJvbSAnLi9nZXROb2RlRXJyb3IuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGdldFRyYW5zYWN0aW9uRXJyb3IoZXJyLCB7IGRvY3NQYXRoLCAuLi5hcmdzIH0pIHtcbiAgICBjb25zdCBjYXVzZSA9ICgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNhdXNlID0gZ2V0Tm9kZUVycm9yKGVyciwgYXJncyk7XG4gICAgICAgIGlmIChjYXVzZSBpbnN0YW5jZW9mIFVua25vd25Ob2RlRXJyb3IpXG4gICAgICAgICAgICByZXR1cm4gZXJyO1xuICAgICAgICByZXR1cm4gY2F1c2U7XG4gICAgfSkoKTtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uRXhlY3V0aW9uRXJyb3IoY2F1c2UsIHtcbiAgICAgICAgZG9jc1BhdGgsXG4gICAgICAgIC4uLmFyZ3MsXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1nZXRUcmFuc2FjdGlvbkVycm9yLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/errors/getTransactionError.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/filters/createFilterRequestScope.js": /*!**************************************************************************!*\ !*** ./node_modules/viem/_esm/utils/filters/createFilterRequestScope.js ***! \**************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createFilterRequestScope: () => (/* binding */ createFilterRequestScope)\n/* harmony export */ });\n/**\n * Scopes `request` to the filter ID. If the client is a fallback, it will\n * listen for responses and scope the child transport `request` function\n * to the successful filter ID.\n */\nfunction createFilterRequestScope(client, { method }) {\n const requestMap = {};\n if (client.transport.type === 'fallback')\n client.transport.onResponse?.(({ method: method_, response: id, status, transport, }) => {\n if (status === 'success' && method === method_)\n requestMap[id] = transport.request;\n });\n return ((id) => requestMap[id] || client.request);\n}\n//# sourceMappingURL=createFilterRequestScope.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZmlsdGVycy9jcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyw0Q0FBNEMsUUFBUTtBQUMzRDtBQUNBO0FBQ0EseUNBQXlDLG1EQUFtRDtBQUM1RjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZmlsdGVycy9jcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTY29wZXMgYHJlcXVlc3RgIHRvIHRoZSBmaWx0ZXIgSUQuIElmIHRoZSBjbGllbnQgaXMgYSBmYWxsYmFjaywgaXQgd2lsbFxuICogbGlzdGVuIGZvciByZXNwb25zZXMgYW5kIHNjb3BlIHRoZSBjaGlsZCB0cmFuc3BvcnQgYHJlcXVlc3RgIGZ1bmN0aW9uXG4gKiB0byB0aGUgc3VjY2Vzc2Z1bCBmaWx0ZXIgSUQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGaWx0ZXJSZXF1ZXN0U2NvcGUoY2xpZW50LCB7IG1ldGhvZCB9KSB7XG4gICAgY29uc3QgcmVxdWVzdE1hcCA9IHt9O1xuICAgIGlmIChjbGllbnQudHJhbnNwb3J0LnR5cGUgPT09ICdmYWxsYmFjaycpXG4gICAgICAgIGNsaWVudC50cmFuc3BvcnQub25SZXNwb25zZT8uKCh7IG1ldGhvZDogbWV0aG9kXywgcmVzcG9uc2U6IGlkLCBzdGF0dXMsIHRyYW5zcG9ydCwgfSkgPT4ge1xuICAgICAgICAgICAgaWYgKHN0YXR1cyA9PT0gJ3N1Y2Nlc3MnICYmIG1ldGhvZCA9PT0gbWV0aG9kXylcbiAgICAgICAgICAgICAgICByZXF1ZXN0TWFwW2lkXSA9IHRyYW5zcG9ydC5yZXF1ZXN0O1xuICAgICAgICB9KTtcbiAgICByZXR1cm4gKChpZCkgPT4gcmVxdWVzdE1hcFtpZF0gfHwgY2xpZW50LnJlcXVlc3QpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y3JlYXRlRmlsdGVyUmVxdWVzdFNjb3BlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/filters/createFilterRequestScope.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/extract.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/utils/formatters/extract.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ extract: () => (/* binding */ extract)\n/* harmony export */ });\n/**\n * @description Picks out the keys from `value` that exist in the formatter..\n */\nfunction extract(value_, { format }) {\n if (!format)\n return {};\n const value = {};\n function extract_(formatted) {\n const keys = Object.keys(formatted);\n for (const key of keys) {\n if (key in value_)\n value[key] = value_[key];\n if (formatted[key] &&\n typeof formatted[key] === 'object' &&\n !Array.isArray(formatted[key]))\n extract_(formatted[key]);\n }\n }\n const formatted = format(value_ || {});\n extract_(formatted);\n return value;\n}\n//# sourceMappingURL=extract.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZm9ybWF0dGVycy9leHRyYWN0LmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDTywyQkFBMkIsUUFBUTtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9mb3JtYXR0ZXJzL2V4dHJhY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZGVzY3JpcHRpb24gUGlja3Mgb3V0IHRoZSBrZXlzIGZyb20gYHZhbHVlYCB0aGF0IGV4aXN0IGluIHRoZSBmb3JtYXR0ZXIuLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdCh2YWx1ZV8sIHsgZm9ybWF0IH0pIHtcbiAgICBpZiAoIWZvcm1hdClcbiAgICAgICAgcmV0dXJuIHt9O1xuICAgIGNvbnN0IHZhbHVlID0ge307XG4gICAgZnVuY3Rpb24gZXh0cmFjdF8oZm9ybWF0dGVkKSB7XG4gICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhmb3JtYXR0ZWQpO1xuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzKSB7XG4gICAgICAgICAgICBpZiAoa2V5IGluIHZhbHVlXylcbiAgICAgICAgICAgICAgICB2YWx1ZVtrZXldID0gdmFsdWVfW2tleV07XG4gICAgICAgICAgICBpZiAoZm9ybWF0dGVkW2tleV0gJiZcbiAgICAgICAgICAgICAgICB0eXBlb2YgZm9ybWF0dGVkW2tleV0gPT09ICdvYmplY3QnICYmXG4gICAgICAgICAgICAgICAgIUFycmF5LmlzQXJyYXkoZm9ybWF0dGVkW2tleV0pKVxuICAgICAgICAgICAgICAgIGV4dHJhY3RfKGZvcm1hdHRlZFtrZXldKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBmb3JtYXR0ZWQgPSBmb3JtYXQodmFsdWVfIHx8IHt9KTtcbiAgICBleHRyYWN0Xyhmb3JtYXR0ZWQpO1xuICAgIHJldHVybiB2YWx1ZTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWV4dHJhY3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/extract.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/feeHistory.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/utils/formatters/feeHistory.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatFeeHistory: () => (/* binding */ formatFeeHistory)\n/* harmony export */ });\nfunction formatFeeHistory(feeHistory) {\n return {\n baseFeePerGas: feeHistory.baseFeePerGas.map((value) => BigInt(value)),\n gasUsedRatio: feeHistory.gasUsedRatio,\n oldestBlock: BigInt(feeHistory.oldestBlock),\n reward: feeHistory.reward?.map((reward) => reward.map((value) => BigInt(value))),\n };\n}\n//# sourceMappingURL=feeHistory.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZm9ybWF0dGVycy9mZWVIaXN0b3J5LmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2Zvcm1hdHRlcnMvZmVlSGlzdG9yeS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZm9ybWF0RmVlSGlzdG9yeShmZWVIaXN0b3J5KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYmFzZUZlZVBlckdhczogZmVlSGlzdG9yeS5iYXNlRmVlUGVyR2FzLm1hcCgodmFsdWUpID0+IEJpZ0ludCh2YWx1ZSkpLFxuICAgICAgICBnYXNVc2VkUmF0aW86IGZlZUhpc3RvcnkuZ2FzVXNlZFJhdGlvLFxuICAgICAgICBvbGRlc3RCbG9jazogQmlnSW50KGZlZUhpc3Rvcnkub2xkZXN0QmxvY2spLFxuICAgICAgICByZXdhcmQ6IGZlZUhpc3RvcnkucmV3YXJkPy5tYXAoKHJld2FyZCkgPT4gcmV3YXJkLm1hcCgodmFsdWUpID0+IEJpZ0ludCh2YWx1ZSkpKSxcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZmVlSGlzdG9yeS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/feeHistory.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/proof.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/utils/formatters/proof.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatProof: () => (/* binding */ formatProof)\n/* harmony export */ });\n/* harmony import */ var _index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../index.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n\nfunction formatStorageProof(storageProof) {\n return storageProof.map((proof) => ({\n ...proof,\n value: BigInt(proof.value),\n }));\n}\nfunction formatProof(proof) {\n return {\n ...proof,\n balance: proof.balance ? BigInt(proof.balance) : undefined,\n nonce: proof.nonce ? (0,_index_js__WEBPACK_IMPORTED_MODULE_0__.hexToNumber)(proof.nonce) : undefined,\n storageProof: proof.storageProof\n ? formatStorageProof(proof.storageProof)\n : undefined,\n };\n}\n//# sourceMappingURL=proof.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZm9ybWF0dGVycy9wcm9vZi5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUEwQztBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLHNEQUFXO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZm9ybWF0dGVycy9wcm9vZi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBoZXhUb051bWJlciB9IGZyb20gJy4uL2luZGV4LmpzJztcbmZ1bmN0aW9uIGZvcm1hdFN0b3JhZ2VQcm9vZihzdG9yYWdlUHJvb2YpIHtcbiAgICByZXR1cm4gc3RvcmFnZVByb29mLm1hcCgocHJvb2YpID0+ICh7XG4gICAgICAgIC4uLnByb29mLFxuICAgICAgICB2YWx1ZTogQmlnSW50KHByb29mLnZhbHVlKSxcbiAgICB9KSk7XG59XG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0UHJvb2YocHJvb2YpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICAuLi5wcm9vZixcbiAgICAgICAgYmFsYW5jZTogcHJvb2YuYmFsYW5jZSA/IEJpZ0ludChwcm9vZi5iYWxhbmNlKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgbm9uY2U6IHByb29mLm5vbmNlID8gaGV4VG9OdW1iZXIocHJvb2Yubm9uY2UpIDogdW5kZWZpbmVkLFxuICAgICAgICBzdG9yYWdlUHJvb2Y6IHByb29mLnN0b3JhZ2VQcm9vZlxuICAgICAgICAgICAgPyBmb3JtYXRTdG9yYWdlUHJvb2YocHJvb2Yuc3RvcmFnZVByb29mKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXByb29mLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/formatters/proof.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js": /*!***************************************************!*\ !*** ./node_modules/viem/_esm/utils/getAction.js ***! \***************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getAction: () => (/* binding */ getAction)\n/* harmony export */ });\n/**\n * Retrieves and returns an action from the client (if exists), and falls\n * back to the tree-shakable action.\n *\n * Useful for extracting overridden actions from a client (ie. if a consumer\n * wants to override the `sendTransaction` implementation).\n */\nfunction getAction(client, actionFn, \n// Some minifiers drop `Function.prototype.name`, or replace it with short letters,\n// meaning that `actionFn.name` will not always work. For that case, the consumer\n// needs to pass the name explicitly.\nname) {\n const action_implicit = client[actionFn.name];\n if (typeof action_implicit === 'function')\n return action_implicit;\n const action_explicit = client[name];\n if (typeof action_explicit === 'function')\n return action_explicit;\n return (params) => actionFn(client, params);\n}\n//# sourceMappingURL=getAction.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvZ2V0QWN0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2dldEFjdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJldHJpZXZlcyBhbmQgcmV0dXJucyBhbiBhY3Rpb24gZnJvbSB0aGUgY2xpZW50IChpZiBleGlzdHMpLCBhbmQgZmFsbHNcbiAqIGJhY2sgdG8gdGhlIHRyZWUtc2hha2FibGUgYWN0aW9uLlxuICpcbiAqIFVzZWZ1bCBmb3IgZXh0cmFjdGluZyBvdmVycmlkZGVuIGFjdGlvbnMgZnJvbSBhIGNsaWVudCAoaWUuIGlmIGEgY29uc3VtZXJcbiAqIHdhbnRzIHRvIG92ZXJyaWRlIHRoZSBgc2VuZFRyYW5zYWN0aW9uYCBpbXBsZW1lbnRhdGlvbikuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBY3Rpb24oY2xpZW50LCBhY3Rpb25GbiwgXG4vLyBTb21lIG1pbmlmaWVycyBkcm9wIGBGdW5jdGlvbi5wcm90b3R5cGUubmFtZWAsIG9yIHJlcGxhY2UgaXQgd2l0aCBzaG9ydCBsZXR0ZXJzLFxuLy8gbWVhbmluZyB0aGF0IGBhY3Rpb25Gbi5uYW1lYCB3aWxsIG5vdCBhbHdheXMgd29yay4gRm9yIHRoYXQgY2FzZSwgdGhlIGNvbnN1bWVyXG4vLyBuZWVkcyB0byBwYXNzIHRoZSBuYW1lIGV4cGxpY2l0bHkuXG5uYW1lKSB7XG4gICAgY29uc3QgYWN0aW9uX2ltcGxpY2l0ID0gY2xpZW50W2FjdGlvbkZuLm5hbWVdO1xuICAgIGlmICh0eXBlb2YgYWN0aW9uX2ltcGxpY2l0ID09PSAnZnVuY3Rpb24nKVxuICAgICAgICByZXR1cm4gYWN0aW9uX2ltcGxpY2l0O1xuICAgIGNvbnN0IGFjdGlvbl9leHBsaWNpdCA9IGNsaWVudFtuYW1lXTtcbiAgICBpZiAodHlwZW9mIGFjdGlvbl9leHBsaWNpdCA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgcmV0dXJuIGFjdGlvbl9leHBsaWNpdDtcbiAgICByZXR1cm4gKHBhcmFtcykgPT4gYWN0aW9uRm4oY2xpZW50LCBwYXJhbXMpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z2V0QWN0aW9uLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/getAction.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/hash/hashSignature.js": /*!************************************************************!*\ !*** ./node_modules/viem/_esm/utils/hash/hashSignature.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hashSignature: () => (/* binding */ hashSignature)\n/* harmony export */ });\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n/* harmony import */ var _keccak256_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n\n\nconst hash = (value) => (0,_keccak256_js__WEBPACK_IMPORTED_MODULE_0__.keccak256)((0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_1__.toBytes)(value));\nfunction hashSignature(sig) {\n return hash(sig);\n}\n//# sourceMappingURL=hashSignature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC9oYXNoU2lnbmF0dXJlLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFpRDtBQUNOO0FBQzNDLHdCQUF3Qix3REFBUyxDQUFDLDZEQUFPO0FBQ2xDO0FBQ1A7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9oYXNoL2hhc2hTaWduYXR1cmUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdG9CeXRlcyB9IGZyb20gJy4uL2VuY29kaW5nL3RvQnl0ZXMuanMnO1xuaW1wb3J0IHsga2VjY2FrMjU2IH0gZnJvbSAnLi9rZWNjYWsyNTYuanMnO1xuY29uc3QgaGFzaCA9ICh2YWx1ZSkgPT4ga2VjY2FrMjU2KHRvQnl0ZXModmFsdWUpKTtcbmV4cG9ydCBmdW5jdGlvbiBoYXNoU2lnbmF0dXJlKHNpZykge1xuICAgIHJldHVybiBoYXNoKHNpZyk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1oYXNoU2lnbmF0dXJlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/hash/hashSignature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/hash/normalizeSignature.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/hash/normalizeSignature.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ normalizeSignature: () => (/* binding */ normalizeSignature)\n/* harmony export */ });\n/* harmony import */ var _errors_base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors/base.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/base.js\");\n\nfunction normalizeSignature(signature) {\n let active = true;\n let current = '';\n let level = 0;\n let result = '';\n let valid = false;\n for (let i = 0; i < signature.length; i++) {\n const char = signature[i];\n // If the character is a separator, we want to reactivate.\n if (['(', ')', ','].includes(char))\n active = true;\n // If the character is a \"level\" token, we want to increment/decrement.\n if (char === '(')\n level++;\n if (char === ')')\n level--;\n // If we aren't active, we don't want to mutate the result.\n if (!active)\n continue;\n // If level === 0, we are at the definition level.\n if (level === 0) {\n if (char === ' ' && ['event', 'function', ''].includes(result))\n result = '';\n else {\n result += char;\n // If we are at the end of the definition, we must be finished.\n if (char === ')') {\n valid = true;\n break;\n }\n }\n continue;\n }\n // Ignore spaces\n if (char === ' ') {\n // If the previous character is a separator, and the current section isn't empty, we want to deactivate.\n if (signature[i - 1] !== ',' && current !== ',' && current !== ',(') {\n current = '';\n active = false;\n }\n continue;\n }\n result += char;\n current += char;\n }\n if (!valid)\n throw new _errors_base_js__WEBPACK_IMPORTED_MODULE_0__.BaseError('Unable to normalize signature.');\n return result;\n}\n//# sourceMappingURL=normalizeSignature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC9ub3JtYWxpemVTaWduYXR1cmUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBaUQ7QUFDMUM7QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHNCQUFzQjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0Isc0RBQVM7QUFDM0I7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9oYXNoL25vcm1hbGl6ZVNpZ25hdHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMvYmFzZS5qcyc7XG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplU2lnbmF0dXJlKHNpZ25hdHVyZSkge1xuICAgIGxldCBhY3RpdmUgPSB0cnVlO1xuICAgIGxldCBjdXJyZW50ID0gJyc7XG4gICAgbGV0IGxldmVsID0gMDtcbiAgICBsZXQgcmVzdWx0ID0gJyc7XG4gICAgbGV0IHZhbGlkID0gZmFsc2U7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaWduYXR1cmUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgY2hhciA9IHNpZ25hdHVyZVtpXTtcbiAgICAgICAgLy8gSWYgdGhlIGNoYXJhY3RlciBpcyBhIHNlcGFyYXRvciwgd2Ugd2FudCB0byByZWFjdGl2YXRlLlxuICAgICAgICBpZiAoWycoJywgJyknLCAnLCddLmluY2x1ZGVzKGNoYXIpKVxuICAgICAgICAgICAgYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgLy8gSWYgdGhlIGNoYXJhY3RlciBpcyBhIFwibGV2ZWxcIiB0b2tlbiwgd2Ugd2FudCB0byBpbmNyZW1lbnQvZGVjcmVtZW50LlxuICAgICAgICBpZiAoY2hhciA9PT0gJygnKVxuICAgICAgICAgICAgbGV2ZWwrKztcbiAgICAgICAgaWYgKGNoYXIgPT09ICcpJylcbiAgICAgICAgICAgIGxldmVsLS07XG4gICAgICAgIC8vIElmIHdlIGFyZW4ndCBhY3RpdmUsIHdlIGRvbid0IHdhbnQgdG8gbXV0YXRlIHRoZSByZXN1bHQuXG4gICAgICAgIGlmICghYWN0aXZlKVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIC8vIElmIGxldmVsID09PSAwLCB3ZSBhcmUgYXQgdGhlIGRlZmluaXRpb24gbGV2ZWwuXG4gICAgICAgIGlmIChsZXZlbCA9PT0gMCkge1xuICAgICAgICAgICAgaWYgKGNoYXIgPT09ICcgJyAmJiBbJ2V2ZW50JywgJ2Z1bmN0aW9uJywgJyddLmluY2x1ZGVzKHJlc3VsdCkpXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gJyc7XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgKz0gY2hhcjtcbiAgICAgICAgICAgICAgICAvLyBJZiB3ZSBhcmUgYXQgdGhlIGVuZCBvZiB0aGUgZGVmaW5pdGlvbiwgd2UgbXVzdCBiZSBmaW5pc2hlZC5cbiAgICAgICAgICAgICAgICBpZiAoY2hhciA9PT0gJyknKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbGlkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgLy8gSWdub3JlIHNwYWNlc1xuICAgICAgICBpZiAoY2hhciA9PT0gJyAnKSB7XG4gICAgICAgICAgICAvLyBJZiB0aGUgcHJldmlvdXMgY2hhcmFjdGVyIGlzIGEgc2VwYXJhdG9yLCBhbmQgdGhlIGN1cnJlbnQgc2VjdGlvbiBpc24ndCBlbXB0eSwgd2Ugd2FudCB0byBkZWFjdGl2YXRlLlxuICAgICAgICAgICAgaWYgKHNpZ25hdHVyZVtpIC0gMV0gIT09ICcsJyAmJiBjdXJyZW50ICE9PSAnLCcgJiYgY3VycmVudCAhPT0gJywoJykge1xuICAgICAgICAgICAgICAgIGN1cnJlbnQgPSAnJztcbiAgICAgICAgICAgICAgICBhY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdCArPSBjaGFyO1xuICAgICAgICBjdXJyZW50ICs9IGNoYXI7XG4gICAgfVxuICAgIGlmICghdmFsaWQpXG4gICAgICAgIHRocm93IG5ldyBCYXNlRXJyb3IoJ1VuYWJsZSB0byBub3JtYWxpemUgc2lnbmF0dXJlLicpO1xuICAgIHJldHVybiByZXN1bHQ7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1ub3JtYWxpemVTaWduYXR1cmUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/hash/normalizeSignature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toEventSelector.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/utils/hash/toEventSelector.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toEventSelector: () => (/* binding */ toEventSelector)\n/* harmony export */ });\n/* harmony import */ var _toSignatureHash_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toSignatureHash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toSignatureHash.js\");\n\n/**\n * Returns the event selector for a given event definition.\n *\n * @example\n * const selector = toEventSelector('Transfer(address indexed from, address indexed to, uint256 amount)')\n * // 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef\n */\nconst toEventSelector = _toSignatureHash_js__WEBPACK_IMPORTED_MODULE_0__.toSignatureHash;\n//# sourceMappingURL=toEventSelector.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC90b0V2ZW50U2VsZWN0b3IuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBd0Q7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyx3QkFBd0IsZ0VBQWU7QUFDOUMiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL2hhc2gvdG9FdmVudFNlbGVjdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRvU2lnbmF0dXJlSGFzaCwgfSBmcm9tICcuL3RvU2lnbmF0dXJlSGFzaC5qcyc7XG4vKipcbiAqIFJldHVybnMgdGhlIGV2ZW50IHNlbGVjdG9yIGZvciBhIGdpdmVuIGV2ZW50IGRlZmluaXRpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IHNlbGVjdG9yID0gdG9FdmVudFNlbGVjdG9yKCdUcmFuc2ZlcihhZGRyZXNzIGluZGV4ZWQgZnJvbSwgYWRkcmVzcyBpbmRleGVkIHRvLCB1aW50MjU2IGFtb3VudCknKVxuICogLy8gMHhkZGYyNTJhZDFiZTJjODliNjljMmIwNjhmYzM3OGRhYTk1MmJhN2YxNjNjNGExMTYyOGY1NWE0ZGY1MjNiM2VmXG4gKi9cbmV4cG9ydCBjb25zdCB0b0V2ZW50U2VsZWN0b3IgPSB0b1NpZ25hdHVyZUhhc2g7XG4vLyMgc291cmNlTWFwcGluZ1VSTD10b0V2ZW50U2VsZWN0b3IuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toEventSelector.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toFunctionSelector.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/hash/toFunctionSelector.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toFunctionSelector: () => (/* binding */ toFunctionSelector)\n/* harmony export */ });\n/* harmony import */ var _data_slice_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../data/slice.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/slice.js\");\n/* harmony import */ var _toSignatureHash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toSignatureHash.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toSignatureHash.js\");\n\n\n/**\n * Returns the function selector for a given function definition.\n *\n * @example\n * const selector = toFunctionSelector('function ownerOf(uint256 tokenId)')\n * // 0x6352211e\n */\nconst toFunctionSelector = (fn) => (0,_data_slice_js__WEBPACK_IMPORTED_MODULE_0__.slice)((0,_toSignatureHash_js__WEBPACK_IMPORTED_MODULE_1__.toSignatureHash)(fn), 0, 4);\n//# sourceMappingURL=toFunctionSelector.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC90b0Z1bmN0aW9uU2VsZWN0b3IuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXlDO0FBQ2U7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxtQ0FBbUMscURBQUssQ0FBQyxvRUFBZTtBQUMvRCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC90b0Z1bmN0aW9uU2VsZWN0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2xpY2UgfSBmcm9tICcuLi9kYXRhL3NsaWNlLmpzJztcbmltcG9ydCB7IHRvU2lnbmF0dXJlSGFzaCwgfSBmcm9tICcuL3RvU2lnbmF0dXJlSGFzaC5qcyc7XG4vKipcbiAqIFJldHVybnMgdGhlIGZ1bmN0aW9uIHNlbGVjdG9yIGZvciBhIGdpdmVuIGZ1bmN0aW9uIGRlZmluaXRpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IHNlbGVjdG9yID0gdG9GdW5jdGlvblNlbGVjdG9yKCdmdW5jdGlvbiBvd25lck9mKHVpbnQyNTYgdG9rZW5JZCknKVxuICogLy8gMHg2MzUyMjExZVxuICovXG5leHBvcnQgY29uc3QgdG9GdW5jdGlvblNlbGVjdG9yID0gKGZuKSA9PiBzbGljZSh0b1NpZ25hdHVyZUhhc2goZm4pLCAwLCA0KTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXRvRnVuY3Rpb25TZWxlY3Rvci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toFunctionSelector.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toSignature.js": /*!**********************************************************!*\ !*** ./node_modules/viem/_esm/utils/hash/toSignature.js ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toSignature: () => (/* binding */ toSignature)\n/* harmony export */ });\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiItem.js\");\n/* harmony import */ var _normalizeSignature_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./normalizeSignature.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/normalizeSignature.js\");\n\n\n/**\n * Returns the signature for a given function or event definition.\n *\n * @example\n * const signature = toSignature('function ownerOf(uint256 tokenId)')\n * // 'ownerOf(uint256)'\n *\n * @example\n * const signature_3 = toSignature({\n * name: 'ownerOf',\n * type: 'function',\n * inputs: [{ name: 'tokenId', type: 'uint256' }],\n * outputs: [],\n * stateMutability: 'view',\n * })\n * // 'ownerOf(uint256)'\n */\nconst toSignature = (def) => {\n const def_ = (() => {\n if (typeof def === 'string')\n return def;\n return (0,abitype__WEBPACK_IMPORTED_MODULE_0__.formatAbiItem)(def);\n })();\n return (0,_normalizeSignature_js__WEBPACK_IMPORTED_MODULE_1__.normalizeSignature)(def_);\n};\n//# sourceMappingURL=toSignature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC90b1NpZ25hdHVyZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBd0M7QUFDc0I7QUFDOUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixrQ0FBa0M7QUFDbEQ7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSxlQUFlLHNEQUFhO0FBQzVCLEtBQUs7QUFDTCxXQUFXLDBFQUFrQjtBQUM3QjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9oYXNoL3RvU2lnbmF0dXJlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdEFiaUl0ZW0gfSBmcm9tICdhYml0eXBlJztcbmltcG9ydCB7IG5vcm1hbGl6ZVNpZ25hdHVyZSwgfSBmcm9tICcuL25vcm1hbGl6ZVNpZ25hdHVyZS5qcyc7XG4vKipcbiAqIFJldHVybnMgdGhlIHNpZ25hdHVyZSBmb3IgYSBnaXZlbiBmdW5jdGlvbiBvciBldmVudCBkZWZpbml0aW9uLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBzaWduYXR1cmUgPSB0b1NpZ25hdHVyZSgnZnVuY3Rpb24gb3duZXJPZih1aW50MjU2IHRva2VuSWQpJylcbiAqIC8vICdvd25lck9mKHVpbnQyNTYpJ1xuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBzaWduYXR1cmVfMyA9IHRvU2lnbmF0dXJlKHtcbiAqICAgbmFtZTogJ293bmVyT2YnLFxuICogICB0eXBlOiAnZnVuY3Rpb24nLFxuICogICBpbnB1dHM6IFt7IG5hbWU6ICd0b2tlbklkJywgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICogICBvdXRwdXRzOiBbXSxcbiAqICAgc3RhdGVNdXRhYmlsaXR5OiAndmlldycsXG4gKiB9KVxuICogLy8gJ293bmVyT2YodWludDI1NiknXG4gKi9cbmV4cG9ydCBjb25zdCB0b1NpZ25hdHVyZSA9IChkZWYpID0+IHtcbiAgICBjb25zdCBkZWZfID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBkZWYgPT09ICdzdHJpbmcnKVxuICAgICAgICAgICAgcmV0dXJuIGRlZjtcbiAgICAgICAgcmV0dXJuIGZvcm1hdEFiaUl0ZW0oZGVmKTtcbiAgICB9KSgpO1xuICAgIHJldHVybiBub3JtYWxpemVTaWduYXR1cmUoZGVmXyk7XG59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dG9TaWduYXR1cmUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toSignature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toSignatureHash.js": /*!**************************************************************!*\ !*** ./node_modules/viem/_esm/utils/hash/toSignatureHash.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toSignatureHash: () => (/* binding */ toSignatureHash)\n/* harmony export */ });\n/* harmony import */ var _hashSignature_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./hashSignature.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/hashSignature.js\");\n/* harmony import */ var _toSignature_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toSignature.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toSignature.js\");\n\n\n/**\n * Returns the hash (of the function/event signature) for a given event or function definition.\n */\nfunction toSignatureHash(fn) {\n return (0,_hashSignature_js__WEBPACK_IMPORTED_MODULE_0__.hashSignature)((0,_toSignature_js__WEBPACK_IMPORTED_MODULE_1__.toSignature)(fn));\n}\n//# sourceMappingURL=toSignatureHash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC90b1NpZ25hdHVyZUhhc2guanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQW1EO0FBQ0o7QUFDL0M7QUFDQTtBQUNBO0FBQ087QUFDUCxXQUFXLGdFQUFhLENBQUMsNERBQVc7QUFDcEM7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvaGFzaC90b1NpZ25hdHVyZUhhc2guanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFzaFNpZ25hdHVyZSB9IGZyb20gJy4vaGFzaFNpZ25hdHVyZS5qcyc7XG5pbXBvcnQgeyB0b1NpZ25hdHVyZSB9IGZyb20gJy4vdG9TaWduYXR1cmUuanMnO1xuLyoqXG4gKiBSZXR1cm5zIHRoZSBoYXNoIChvZiB0aGUgZnVuY3Rpb24vZXZlbnQgc2lnbmF0dXJlKSBmb3IgYSBnaXZlbiBldmVudCBvciBmdW5jdGlvbiBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9TaWduYXR1cmVIYXNoKGZuKSB7XG4gICAgcmV0dXJuIGhhc2hTaWduYXR1cmUodG9TaWduYXR1cmUoZm4pKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXRvU2lnbmF0dXJlSGFzaC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/hash/toSignatureHash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/nonceManager.js": /*!******************************************************!*\ !*** ./node_modules/viem/_esm/utils/nonceManager.js ***! \******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createNonceManager: () => (/* binding */ createNonceManager),\n/* harmony export */ jsonRpc: () => (/* binding */ jsonRpc),\n/* harmony export */ nonceManager: () => (/* binding */ nonceManager)\n/* harmony export */ });\n/* harmony import */ var _actions_public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../actions/public/getTransactionCount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/actions/public/getTransactionCount.js\");\n/* harmony import */ var _lru_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lru.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/lru.js\");\n\n\n/**\n * Creates a nonce manager for auto-incrementing transaction nonces.\n *\n * - Docs: https://viem.sh/docs/accounts/createNonceManager\n *\n * @example\n * ```ts\n * const nonceManager = createNonceManager({\n * source: jsonRpc(),\n * })\n * ```\n */\nfunction createNonceManager(parameters) {\n const { source } = parameters;\n const deltaMap = new Map();\n const nonceMap = new _lru_js__WEBPACK_IMPORTED_MODULE_0__.LruMap(8192);\n const promiseMap = new Map();\n const getKey = ({ address, chainId }) => `${address}.${chainId}`;\n return {\n async consume({ address, chainId, client }) {\n const key = getKey({ address, chainId });\n const promise = this.get({ address, chainId, client });\n this.increment({ address, chainId });\n const nonce = await promise;\n await source.set({ address, chainId }, nonce);\n nonceMap.set(key, nonce);\n return nonce;\n },\n async increment({ address, chainId }) {\n const key = getKey({ address, chainId });\n const delta = deltaMap.get(key) ?? 0;\n deltaMap.set(key, delta + 1);\n },\n async get({ address, chainId, client }) {\n const key = getKey({ address, chainId });\n let promise = promiseMap.get(key);\n if (!promise) {\n promise = (async () => {\n try {\n const nonce = await source.get({ address, chainId, client });\n const previousNonce = nonceMap.get(key) ?? 0;\n if (previousNonce > 0 && nonce <= previousNonce)\n return previousNonce + 1;\n nonceMap.delete(key);\n return nonce;\n }\n finally {\n this.reset({ address, chainId });\n }\n })();\n promiseMap.set(key, promise);\n }\n const delta = deltaMap.get(key) ?? 0;\n return delta + (await promise);\n },\n reset({ address, chainId }) {\n const key = getKey({ address, chainId });\n deltaMap.delete(key);\n promiseMap.delete(key);\n },\n };\n}\n/** JSON-RPC source for a nonce manager. */\nfunction jsonRpc() {\n return {\n async get(parameters) {\n const { address, client } = parameters;\n return (0,_actions_public_getTransactionCount_js__WEBPACK_IMPORTED_MODULE_1__.getTransactionCount)(client, {\n address,\n blockTag: 'pending',\n });\n },\n set() { },\n };\n}\n////////////////////////////////////////////////////////////////////////////////////////////\n// Default\n/** Default Nonce Manager with a JSON-RPC source. */\nconst nonceManager = /*#__PURE__*/ createNonceManager({\n source: jsonRpc(),\n});\n//# sourceMappingURL=nonceManager.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvbm9uY2VNYW5hZ2VyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQStFO0FBQzdDO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ087QUFDUCxZQUFZLFNBQVM7QUFDckI7QUFDQSx5QkFBeUIsMkNBQU07QUFDL0I7QUFDQSxzQkFBc0Isa0JBQWtCLFFBQVEsUUFBUSxHQUFHLFFBQVE7QUFDbkU7QUFDQSx3QkFBd0IsMEJBQTBCO0FBQ2xELGlDQUFpQyxrQkFBa0I7QUFDbkQsdUNBQXVDLDBCQUEwQjtBQUNqRSw2QkFBNkIsa0JBQWtCO0FBQy9DO0FBQ0EsK0JBQStCLGtCQUFrQjtBQUNqRDtBQUNBO0FBQ0EsU0FBUztBQUNULDBCQUEwQixrQkFBa0I7QUFDNUMsaUNBQWlDLGtCQUFrQjtBQUNuRDtBQUNBO0FBQ0EsU0FBUztBQUNULG9CQUFvQiwwQkFBMEI7QUFDOUMsaUNBQWlDLGtCQUFrQjtBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlEQUF5RCwwQkFBMEI7QUFDbkY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsa0JBQWtCO0FBQ3ZEO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULGdCQUFnQixrQkFBa0I7QUFDbEMsaUNBQWlDLGtCQUFrQjtBQUNuRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLG9CQUFvQixrQkFBa0I7QUFDdEMsbUJBQW1CLDJGQUFtQjtBQUN0QztBQUNBO0FBQ0EsYUFBYTtBQUNiLFNBQVM7QUFDVCxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQSxDQUFDO0FBQ0QiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL25vbmNlTWFuYWdlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRUcmFuc2FjdGlvbkNvdW50IH0gZnJvbSAnLi4vYWN0aW9ucy9wdWJsaWMvZ2V0VHJhbnNhY3Rpb25Db3VudC5qcyc7XG5pbXBvcnQgeyBMcnVNYXAgfSBmcm9tICcuL2xydS5qcyc7XG4vKipcbiAqIENyZWF0ZXMgYSBub25jZSBtYW5hZ2VyIGZvciBhdXRvLWluY3JlbWVudGluZyB0cmFuc2FjdGlvbiBub25jZXMuXG4gKlxuICogLSBEb2NzOiBodHRwczovL3ZpZW0uc2gvZG9jcy9hY2NvdW50cy9jcmVhdGVOb25jZU1hbmFnZXJcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGNvbnN0IG5vbmNlTWFuYWdlciA9IGNyZWF0ZU5vbmNlTWFuYWdlcih7XG4gKiAgIHNvdXJjZToganNvblJwYygpLFxuICogfSlcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTm9uY2VNYW5hZ2VyKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IHNvdXJjZSB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBkZWx0YU1hcCA9IG5ldyBNYXAoKTtcbiAgICBjb25zdCBub25jZU1hcCA9IG5ldyBMcnVNYXAoODE5Mik7XG4gICAgY29uc3QgcHJvbWlzZU1hcCA9IG5ldyBNYXAoKTtcbiAgICBjb25zdCBnZXRLZXkgPSAoeyBhZGRyZXNzLCBjaGFpbklkIH0pID0+IGAke2FkZHJlc3N9LiR7Y2hhaW5JZH1gO1xuICAgIHJldHVybiB7XG4gICAgICAgIGFzeW5jIGNvbnN1bWUoeyBhZGRyZXNzLCBjaGFpbklkLCBjbGllbnQgfSkge1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gZ2V0S2V5KHsgYWRkcmVzcywgY2hhaW5JZCB9KTtcbiAgICAgICAgICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLmdldCh7IGFkZHJlc3MsIGNoYWluSWQsIGNsaWVudCB9KTtcbiAgICAgICAgICAgIHRoaXMuaW5jcmVtZW50KHsgYWRkcmVzcywgY2hhaW5JZCB9KTtcbiAgICAgICAgICAgIGNvbnN0IG5vbmNlID0gYXdhaXQgcHJvbWlzZTtcbiAgICAgICAgICAgIGF3YWl0IHNvdXJjZS5zZXQoeyBhZGRyZXNzLCBjaGFpbklkIH0sIG5vbmNlKTtcbiAgICAgICAgICAgIG5vbmNlTWFwLnNldChrZXksIG5vbmNlKTtcbiAgICAgICAgICAgIHJldHVybiBub25jZTtcbiAgICAgICAgfSxcbiAgICAgICAgYXN5bmMgaW5jcmVtZW50KHsgYWRkcmVzcywgY2hhaW5JZCB9KSB7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBnZXRLZXkoeyBhZGRyZXNzLCBjaGFpbklkIH0pO1xuICAgICAgICAgICAgY29uc3QgZGVsdGEgPSBkZWx0YU1hcC5nZXQoa2V5KSA/PyAwO1xuICAgICAgICAgICAgZGVsdGFNYXAuc2V0KGtleSwgZGVsdGEgKyAxKTtcbiAgICAgICAgfSxcbiAgICAgICAgYXN5bmMgZ2V0KHsgYWRkcmVzcywgY2hhaW5JZCwgY2xpZW50IH0pIHtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IGdldEtleSh7IGFkZHJlc3MsIGNoYWluSWQgfSk7XG4gICAgICAgICAgICBsZXQgcHJvbWlzZSA9IHByb21pc2VNYXAuZ2V0KGtleSk7XG4gICAgICAgICAgICBpZiAoIXByb21pc2UpIHtcbiAgICAgICAgICAgICAgICBwcm9taXNlID0gKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG5vbmNlID0gYXdhaXQgc291cmNlLmdldCh7IGFkZHJlc3MsIGNoYWluSWQsIGNsaWVudCB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzTm9uY2UgPSBub25jZU1hcC5nZXQoa2V5KSA/PyAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3VzTm9uY2UgPiAwICYmIG5vbmNlIDw9IHByZXZpb3VzTm9uY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHByZXZpb3VzTm9uY2UgKyAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgbm9uY2VNYXAuZGVsZXRlKGtleSk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbm9uY2U7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc2V0KHsgYWRkcmVzcywgY2hhaW5JZCB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pKCk7XG4gICAgICAgICAgICAgICAgcHJvbWlzZU1hcC5zZXQoa2V5LCBwcm9taXNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGRlbHRhID0gZGVsdGFNYXAuZ2V0KGtleSkgPz8gMDtcbiAgICAgICAgICAgIHJldHVybiBkZWx0YSArIChhd2FpdCBwcm9taXNlKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVzZXQoeyBhZGRyZXNzLCBjaGFpbklkIH0pIHtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IGdldEtleSh7IGFkZHJlc3MsIGNoYWluSWQgfSk7XG4gICAgICAgICAgICBkZWx0YU1hcC5kZWxldGUoa2V5KTtcbiAgICAgICAgICAgIHByb21pc2VNYXAuZGVsZXRlKGtleSk7XG4gICAgICAgIH0sXG4gICAgfTtcbn1cbi8qKiBKU09OLVJQQyBzb3VyY2UgZm9yIGEgbm9uY2UgbWFuYWdlci4gKi9cbmV4cG9ydCBmdW5jdGlvbiBqc29uUnBjKCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGFzeW5jIGdldChwYXJhbWV0ZXJzKSB7XG4gICAgICAgICAgICBjb25zdCB7IGFkZHJlc3MsIGNsaWVudCB9ID0gcGFyYW1ldGVycztcbiAgICAgICAgICAgIHJldHVybiBnZXRUcmFuc2FjdGlvbkNvdW50KGNsaWVudCwge1xuICAgICAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICAgICAgYmxvY2tUYWc6ICdwZW5kaW5nJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBzZXQoKSB7IH0sXG4gICAgfTtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0XG4vKiogRGVmYXVsdCBOb25jZSBNYW5hZ2VyIHdpdGggYSBKU09OLVJQQyBzb3VyY2UuICovXG5leHBvcnQgY29uc3Qgbm9uY2VNYW5hZ2VyID0gLyojX19QVVJFX18qLyBjcmVhdGVOb25jZU1hbmFnZXIoe1xuICAgIHNvdXJjZToganNvblJwYygpLFxufSk7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1ub25jZU1hbmFnZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/nonceManager.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js": /*!*************************************************!*\ !*** ./node_modules/viem/_esm/utils/observe.js ***! \*************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cleanupCache: () => (/* binding */ cleanupCache),\n/* harmony export */ listenersCache: () => (/* binding */ listenersCache),\n/* harmony export */ observe: () => (/* binding */ observe)\n/* harmony export */ });\n/** @internal */\nconst listenersCache = /*#__PURE__*/ new Map();\n/** @internal */\nconst cleanupCache = /*#__PURE__*/ new Map();\nlet callbackCount = 0;\n/**\n * @description Sets up an observer for a given function. If another function\n * is set up under the same observer id, the function will only be called once\n * for both instances of the observer.\n */\nfunction observe(observerId, callbacks, fn) {\n const callbackId = ++callbackCount;\n const getListeners = () => listenersCache.get(observerId) || [];\n const unsubscribe = () => {\n const listeners = getListeners();\n listenersCache.set(observerId, listeners.filter((cb) => cb.id !== callbackId));\n };\n const unwatch = () => {\n const listeners = getListeners();\n if (!listeners.some((cb) => cb.id === callbackId))\n return;\n const cleanup = cleanupCache.get(observerId);\n if (listeners.length === 1 && cleanup) {\n const p = cleanup();\n if (p instanceof Promise)\n p.catch(() => { });\n }\n unsubscribe();\n };\n const listeners = getListeners();\n listenersCache.set(observerId, [\n ...listeners,\n { id: callbackId, fns: callbacks },\n ]);\n if (listeners && listeners.length > 0)\n return unwatch;\n const emit = {};\n for (const key in callbacks) {\n emit[key] = ((...args) => {\n const listeners = getListeners();\n if (listeners.length === 0)\n return;\n for (const listener of listeners)\n listener.fns[key]?.(...args);\n });\n }\n const cleanup = fn(emit);\n if (typeof cleanup === 'function')\n cleanupCache.set(observerId, cleanup);\n return unwatch;\n}\n//# sourceMappingURL=observe.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvb2JzZXJ2ZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNPO0FBQ1A7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVLGdDQUFnQztBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9vYnNlcnZlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjb25zdCBsaXN0ZW5lcnNDYWNoZSA9IC8qI19fUFVSRV9fKi8gbmV3IE1hcCgpO1xuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGNvbnN0IGNsZWFudXBDYWNoZSA9IC8qI19fUFVSRV9fKi8gbmV3IE1hcCgpO1xubGV0IGNhbGxiYWNrQ291bnQgPSAwO1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gU2V0cyB1cCBhbiBvYnNlcnZlciBmb3IgYSBnaXZlbiBmdW5jdGlvbi4gSWYgYW5vdGhlciBmdW5jdGlvblxuICogaXMgc2V0IHVwIHVuZGVyIHRoZSBzYW1lIG9ic2VydmVyIGlkLCB0aGUgZnVuY3Rpb24gd2lsbCBvbmx5IGJlIGNhbGxlZCBvbmNlXG4gKiBmb3IgYm90aCBpbnN0YW5jZXMgb2YgdGhlIG9ic2VydmVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gb2JzZXJ2ZShvYnNlcnZlcklkLCBjYWxsYmFja3MsIGZuKSB7XG4gICAgY29uc3QgY2FsbGJhY2tJZCA9ICsrY2FsbGJhY2tDb3VudDtcbiAgICBjb25zdCBnZXRMaXN0ZW5lcnMgPSAoKSA9PiBsaXN0ZW5lcnNDYWNoZS5nZXQob2JzZXJ2ZXJJZCkgfHwgW107XG4gICAgY29uc3QgdW5zdWJzY3JpYmUgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGxpc3RlbmVycyA9IGdldExpc3RlbmVycygpO1xuICAgICAgICBsaXN0ZW5lcnNDYWNoZS5zZXQob2JzZXJ2ZXJJZCwgbGlzdGVuZXJzLmZpbHRlcigoY2IpID0+IGNiLmlkICE9PSBjYWxsYmFja0lkKSk7XG4gICAgfTtcbiAgICBjb25zdCB1bndhdGNoID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBsaXN0ZW5lcnMgPSBnZXRMaXN0ZW5lcnMoKTtcbiAgICAgICAgaWYgKCFsaXN0ZW5lcnMuc29tZSgoY2IpID0+IGNiLmlkID09PSBjYWxsYmFja0lkKSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgY2xlYW51cCA9IGNsZWFudXBDYWNoZS5nZXQob2JzZXJ2ZXJJZCk7XG4gICAgICAgIGlmIChsaXN0ZW5lcnMubGVuZ3RoID09PSAxICYmIGNsZWFudXApIHtcbiAgICAgICAgICAgIGNvbnN0IHAgPSBjbGVhbnVwKCk7XG4gICAgICAgICAgICBpZiAocCBpbnN0YW5jZW9mIFByb21pc2UpXG4gICAgICAgICAgICAgICAgcC5jYXRjaCgoKSA9PiB7IH0pO1xuICAgICAgICB9XG4gICAgICAgIHVuc3Vic2NyaWJlKCk7XG4gICAgfTtcbiAgICBjb25zdCBsaXN0ZW5lcnMgPSBnZXRMaXN0ZW5lcnMoKTtcbiAgICBsaXN0ZW5lcnNDYWNoZS5zZXQob2JzZXJ2ZXJJZCwgW1xuICAgICAgICAuLi5saXN0ZW5lcnMsXG4gICAgICAgIHsgaWQ6IGNhbGxiYWNrSWQsIGZuczogY2FsbGJhY2tzIH0sXG4gICAgXSk7XG4gICAgaWYgKGxpc3RlbmVycyAmJiBsaXN0ZW5lcnMubGVuZ3RoID4gMClcbiAgICAgICAgcmV0dXJuIHVud2F0Y2g7XG4gICAgY29uc3QgZW1pdCA9IHt9O1xuICAgIGZvciAoY29uc3Qga2V5IGluIGNhbGxiYWNrcykge1xuICAgICAgICBlbWl0W2tleV0gPSAoKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxpc3RlbmVycyA9IGdldExpc3RlbmVycygpO1xuICAgICAgICAgICAgaWYgKGxpc3RlbmVycy5sZW5ndGggPT09IDApXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgZm9yIChjb25zdCBsaXN0ZW5lciBvZiBsaXN0ZW5lcnMpXG4gICAgICAgICAgICAgICAgbGlzdGVuZXIuZm5zW2tleV0/LiguLi5hcmdzKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IGNsZWFudXAgPSBmbihlbWl0KTtcbiAgICBpZiAodHlwZW9mIGNsZWFudXAgPT09ICdmdW5jdGlvbicpXG4gICAgICAgIGNsZWFudXBDYWNoZS5zZXQob2JzZXJ2ZXJJZCwgY2xlYW51cCk7XG4gICAgcmV0dXJuIHVud2F0Y2g7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1vYnNlcnZlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/observe.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js": /*!**********************************************!*\ !*** ./node_modules/viem/_esm/utils/poll.js ***! \**********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ poll: () => (/* binding */ poll)\n/* harmony export */ });\n/* harmony import */ var _wait_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wait.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/wait.js\");\n\n/**\n * @description Polls a function at a specified interval.\n */\nfunction poll(fn, { emitOnBegin, initialWaitTime, interval }) {\n let active = true;\n const unwatch = () => (active = false);\n const watch = async () => {\n let data;\n if (emitOnBegin)\n data = await fn({ unpoll: unwatch });\n const initialWait = (await initialWaitTime?.(data)) ?? interval;\n await (0,_wait_js__WEBPACK_IMPORTED_MODULE_0__.wait)(initialWait);\n const poll = async () => {\n if (!active)\n return;\n await fn({ unpoll: unwatch });\n await (0,_wait_js__WEBPACK_IMPORTED_MODULE_0__.wait)(interval);\n poll();\n };\n poll();\n };\n watch();\n return unwatch;\n}\n//# sourceMappingURL=poll.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvcG9sbC5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFpQztBQUNqQztBQUNBO0FBQ0E7QUFDTyxvQkFBb0Isd0NBQXdDO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsaUJBQWlCO0FBQy9DO0FBQ0EsY0FBYyw4Q0FBSTtBQUNsQjtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsaUJBQWlCO0FBQ3hDLGtCQUFrQiw4Q0FBSTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9wb2xsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHdhaXQgfSBmcm9tICcuL3dhaXQuanMnO1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gUG9sbHMgYSBmdW5jdGlvbiBhdCBhIHNwZWNpZmllZCBpbnRlcnZhbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBvbGwoZm4sIHsgZW1pdE9uQmVnaW4sIGluaXRpYWxXYWl0VGltZSwgaW50ZXJ2YWwgfSkge1xuICAgIGxldCBhY3RpdmUgPSB0cnVlO1xuICAgIGNvbnN0IHVud2F0Y2ggPSAoKSA9PiAoYWN0aXZlID0gZmFsc2UpO1xuICAgIGNvbnN0IHdhdGNoID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICBsZXQgZGF0YTtcbiAgICAgICAgaWYgKGVtaXRPbkJlZ2luKVxuICAgICAgICAgICAgZGF0YSA9IGF3YWl0IGZuKHsgdW5wb2xsOiB1bndhdGNoIH0pO1xuICAgICAgICBjb25zdCBpbml0aWFsV2FpdCA9IChhd2FpdCBpbml0aWFsV2FpdFRpbWU/LihkYXRhKSkgPz8gaW50ZXJ2YWw7XG4gICAgICAgIGF3YWl0IHdhaXQoaW5pdGlhbFdhaXQpO1xuICAgICAgICBjb25zdCBwb2xsID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFhY3RpdmUpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgYXdhaXQgZm4oeyB1bnBvbGw6IHVud2F0Y2ggfSk7XG4gICAgICAgICAgICBhd2FpdCB3YWl0KGludGVydmFsKTtcbiAgICAgICAgICAgIHBvbGwoKTtcbiAgICAgICAgfTtcbiAgICAgICAgcG9sbCgpO1xuICAgIH07XG4gICAgd2F0Y2goKTtcbiAgICByZXR1cm4gdW53YXRjaDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXBvbGwuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/poll.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/promise/withCache.js": /*!***********************************************************!*\ !*** ./node_modules/viem/_esm/utils/promise/withCache.js ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getCache: () => (/* binding */ getCache),\n/* harmony export */ promiseCache: () => (/* binding */ promiseCache),\n/* harmony export */ responseCache: () => (/* binding */ responseCache),\n/* harmony export */ withCache: () => (/* binding */ withCache)\n/* harmony export */ });\n/** @internal */\nconst promiseCache = /*#__PURE__*/ new Map();\n/** @internal */\nconst responseCache = /*#__PURE__*/ new Map();\nfunction getCache(cacheKey) {\n const buildCache = (cacheKey, cache) => ({\n clear: () => cache.delete(cacheKey),\n get: () => cache.get(cacheKey),\n set: (data) => cache.set(cacheKey, data),\n });\n const promise = buildCache(cacheKey, promiseCache);\n const response = buildCache(cacheKey, responseCache);\n return {\n clear: () => {\n promise.clear();\n response.clear();\n },\n promise,\n response,\n };\n}\n/**\n * @description Returns the result of a given promise, and caches the result for\n * subsequent invocations against a provided cache key.\n */\nasync function withCache(fn, { cacheKey, cacheTime = Number.POSITIVE_INFINITY }) {\n const cache = getCache(cacheKey);\n // If a response exists in the cache, and it's not expired, return it\n // and do not invoke the promise.\n // If the max age is 0, the cache is disabled.\n const response = cache.response.get();\n if (response && cacheTime > 0) {\n const age = Date.now() - response.created.getTime();\n if (age < cacheTime)\n return response.data;\n }\n let promise = cache.promise.get();\n if (!promise) {\n promise = fn();\n // Store the promise in the cache so that subsequent invocations\n // will wait for the same promise to resolve (deduping).\n cache.promise.set(promise);\n }\n try {\n const data = await promise;\n // Store the response in the cache so that subsequent invocations\n // will return the same response.\n cache.response.set({ created: new Date(), data });\n return data;\n }\n finally {\n // Clear the promise cache so that subsequent invocations will\n // invoke the promise again.\n cache.promise.clear();\n }\n}\n//# sourceMappingURL=withCache.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvcHJvbWlzZS93aXRoQ2FjaGUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ087QUFDUDtBQUNPO0FBQ0E7QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLCtCQUErQixnREFBZ0Q7QUFDdEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLDJCQUEyQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL3Byb21pc2Uvd2l0aENhY2hlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjb25zdCBwcm9taXNlQ2FjaGUgPSAvKiNfX1BVUkVfXyovIG5ldyBNYXAoKTtcbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjb25zdCByZXNwb25zZUNhY2hlID0gLyojX19QVVJFX18qLyBuZXcgTWFwKCk7XG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FjaGUoY2FjaGVLZXkpIHtcbiAgICBjb25zdCBidWlsZENhY2hlID0gKGNhY2hlS2V5LCBjYWNoZSkgPT4gKHtcbiAgICAgICAgY2xlYXI6ICgpID0+IGNhY2hlLmRlbGV0ZShjYWNoZUtleSksXG4gICAgICAgIGdldDogKCkgPT4gY2FjaGUuZ2V0KGNhY2hlS2V5KSxcbiAgICAgICAgc2V0OiAoZGF0YSkgPT4gY2FjaGUuc2V0KGNhY2hlS2V5LCBkYXRhKSxcbiAgICB9KTtcbiAgICBjb25zdCBwcm9taXNlID0gYnVpbGRDYWNoZShjYWNoZUtleSwgcHJvbWlzZUNhY2hlKTtcbiAgICBjb25zdCByZXNwb25zZSA9IGJ1aWxkQ2FjaGUoY2FjaGVLZXksIHJlc3BvbnNlQ2FjaGUpO1xuICAgIHJldHVybiB7XG4gICAgICAgIGNsZWFyOiAoKSA9PiB7XG4gICAgICAgICAgICBwcm9taXNlLmNsZWFyKCk7XG4gICAgICAgICAgICByZXNwb25zZS5jbGVhcigpO1xuICAgICAgICB9LFxuICAgICAgICBwcm9taXNlLFxuICAgICAgICByZXNwb25zZSxcbiAgICB9O1xufVxuLyoqXG4gKiBAZGVzY3JpcHRpb24gUmV0dXJucyB0aGUgcmVzdWx0IG9mIGEgZ2l2ZW4gcHJvbWlzZSwgYW5kIGNhY2hlcyB0aGUgcmVzdWx0IGZvclxuICogc3Vic2VxdWVudCBpbnZvY2F0aW9ucyBhZ2FpbnN0IGEgcHJvdmlkZWQgY2FjaGUga2V5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gd2l0aENhY2hlKGZuLCB7IGNhY2hlS2V5LCBjYWNoZVRpbWUgPSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkgfSkge1xuICAgIGNvbnN0IGNhY2hlID0gZ2V0Q2FjaGUoY2FjaGVLZXkpO1xuICAgIC8vIElmIGEgcmVzcG9uc2UgZXhpc3RzIGluIHRoZSBjYWNoZSwgYW5kIGl0J3Mgbm90IGV4cGlyZWQsIHJldHVybiBpdFxuICAgIC8vIGFuZCBkbyBub3QgaW52b2tlIHRoZSBwcm9taXNlLlxuICAgIC8vIElmIHRoZSBtYXggYWdlIGlzIDAsIHRoZSBjYWNoZSBpcyBkaXNhYmxlZC5cbiAgICBjb25zdCByZXNwb25zZSA9IGNhY2hlLnJlc3BvbnNlLmdldCgpO1xuICAgIGlmIChyZXNwb25zZSAmJiBjYWNoZVRpbWUgPiAwKSB7XG4gICAgICAgIGNvbnN0IGFnZSA9IERhdGUubm93KCkgLSByZXNwb25zZS5jcmVhdGVkLmdldFRpbWUoKTtcbiAgICAgICAgaWYgKGFnZSA8IGNhY2hlVGltZSlcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH1cbiAgICBsZXQgcHJvbWlzZSA9IGNhY2hlLnByb21pc2UuZ2V0KCk7XG4gICAgaWYgKCFwcm9taXNlKSB7XG4gICAgICAgIHByb21pc2UgPSBmbigpO1xuICAgICAgICAvLyBTdG9yZSB0aGUgcHJvbWlzZSBpbiB0aGUgY2FjaGUgc28gdGhhdCBzdWJzZXF1ZW50IGludm9jYXRpb25zXG4gICAgICAgIC8vIHdpbGwgd2FpdCBmb3IgdGhlIHNhbWUgcHJvbWlzZSB0byByZXNvbHZlIChkZWR1cGluZykuXG4gICAgICAgIGNhY2hlLnByb21pc2Uuc2V0KHByb21pc2UpO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgcHJvbWlzZTtcbiAgICAgICAgLy8gU3RvcmUgdGhlIHJlc3BvbnNlIGluIHRoZSBjYWNoZSBzbyB0aGF0IHN1YnNlcXVlbnQgaW52b2NhdGlvbnNcbiAgICAgICAgLy8gd2lsbCByZXR1cm4gdGhlIHNhbWUgcmVzcG9uc2UuXG4gICAgICAgIGNhY2hlLnJlc3BvbnNlLnNldCh7IGNyZWF0ZWQ6IG5ldyBEYXRlKCksIGRhdGEgfSk7XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBmaW5hbGx5IHtcbiAgICAgICAgLy8gQ2xlYXIgdGhlIHByb21pc2UgY2FjaGUgc28gdGhhdCBzdWJzZXF1ZW50IGludm9jYXRpb25zIHdpbGxcbiAgICAgICAgLy8gaW52b2tlIHRoZSBwcm9taXNlIGFnYWluLlxuICAgICAgICBjYWNoZS5wcm9taXNlLmNsZWFyKCk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9d2l0aENhY2hlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/promise/withCache.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/regex.js": /*!***********************************************!*\ !*** ./node_modules/viem/_esm/utils/regex.js ***! \***********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ arrayRegex: () => (/* binding */ arrayRegex),\n/* harmony export */ bytesRegex: () => (/* binding */ bytesRegex),\n/* harmony export */ integerRegex: () => (/* binding */ integerRegex)\n/* harmony export */ });\nconst arrayRegex = /^(.*)\\[([0-9]*)\\]$/;\n// `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n// https://regexr.com/6va55\nconst bytesRegex = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/;\n// `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n// https://regexr.com/6v8hp\nconst integerRegex = /^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;\n//# sourceMappingURL=regex.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvcmVnZXguanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQU87QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDUCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvcmVnZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGFycmF5UmVnZXggPSAvXiguKilcXFsoWzAtOV0qKVxcXSQvO1xuLy8gYGJ5dGVzPE0+YDogYmluYXJ5IHR5cGUgb2YgYE1gIGJ5dGVzLCBgMCA8IE0gPD0gMzJgXG4vLyBodHRwczovL3JlZ2V4ci5jb20vNnZhNTVcbmV4cG9ydCBjb25zdCBieXRlc1JlZ2V4ID0gL15ieXRlcyhbMS05XXwxWzAtOV18MlswLTldfDNbMC0yXSk/JC87XG4vLyBgKHUpaW50PE0+YDogKHVuKXNpZ25lZCBpbnRlZ2VyIHR5cGUgb2YgYE1gIGJpdHMsIGAwIDwgTSA8PSAyNTZgLCBgTSAlIDggPT0gMGBcbi8vIGh0dHBzOi8vcmVnZXhyLmNvbS82djhocFxuZXhwb3J0IGNvbnN0IGludGVnZXJSZWdleCA9IC9eKHU/aW50KSg4fDE2fDI0fDMyfDQwfDQ4fDU2fDY0fDcyfDgwfDg4fDk2fDEwNHwxMTJ8MTIwfDEyOHwxMzZ8MTQ0fDE1MnwxNjB8MTY4fDE3NnwxODR8MTkyfDIwMHwyMDh8MjE2fDIyNHwyMzJ8MjQwfDI0OHwyNTYpPyQvO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cmVnZXguanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/regex.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashMessage.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/hashMessage.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hashMessage: () => (/* binding */ hashMessage)\n/* harmony export */ });\n/* harmony import */ var _hash_keccak256_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _toPrefixedMessage_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrefixedMessage.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/toPrefixedMessage.js\");\n\n\nfunction hashMessage(message, to_) {\n return (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_0__.keccak256)((0,_toPrefixedMessage_js__WEBPACK_IMPORTED_MODULE_1__.toPrefixedMessage)(message), to_);\n}\n//# sourceMappingURL=hashMessage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL2hhc2hNZXNzYWdlLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFpRDtBQUNVO0FBQ3BEO0FBQ1AsV0FBVyw2REFBUyxDQUFDLHdFQUFpQjtBQUN0QztBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9zaWduYXR1cmUvaGFzaE1lc3NhZ2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsga2VjY2FrMjU2IH0gZnJvbSAnLi4vaGFzaC9rZWNjYWsyNTYuanMnO1xuaW1wb3J0IHsgdG9QcmVmaXhlZE1lc3NhZ2UgfSBmcm9tICcuL3RvUHJlZml4ZWRNZXNzYWdlLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBoYXNoTWVzc2FnZShtZXNzYWdlLCB0b18pIHtcbiAgICByZXR1cm4ga2VjY2FrMjU2KHRvUHJlZml4ZWRNZXNzYWdlKG1lc3NhZ2UpLCB0b18pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aGFzaE1lc3NhZ2UuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashMessage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashTypedData.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/hashTypedData.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeType: () => (/* binding */ encodeType),\n/* harmony export */ hashDomain: () => (/* binding */ hashDomain),\n/* harmony export */ hashStruct: () => (/* binding */ hashStruct),\n/* harmony export */ hashTypedData: () => (/* binding */ hashTypedData)\n/* harmony export */ });\n/* harmony import */ var _abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../abi/encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../hash/keccak256.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/hash/keccak256.js\");\n/* harmony import */ var _typedData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../typedData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/typedData.js\");\n// Implementation forked and adapted from https://github.com/MetaMask/eth-sig-util/blob/main/src/sign-typed-data.ts\n\n\n\n\n\nfunction hashTypedData(parameters) {\n const { domain = {}, message, primaryType, } = parameters;\n const types = {\n EIP712Domain: (0,_typedData_js__WEBPACK_IMPORTED_MODULE_0__.getTypesForEIP712Domain)({ domain }),\n ...parameters.types,\n };\n // Need to do a runtime validation check on addresses, byte ranges, integer ranges, etc\n // as we can't statically check this with TypeScript.\n (0,_typedData_js__WEBPACK_IMPORTED_MODULE_0__.validateTypedData)({\n domain,\n message,\n primaryType,\n types,\n });\n const parts = ['0x1901'];\n if (domain)\n parts.push(hashDomain({\n domain,\n types: types,\n }));\n if (primaryType !== 'EIP712Domain')\n parts.push(hashStruct({\n data: message,\n primaryType,\n types: types,\n }));\n return (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__.keccak256)((0,_data_concat_js__WEBPACK_IMPORTED_MODULE_2__.concat)(parts));\n}\nfunction hashDomain({ domain, types, }) {\n return hashStruct({\n data: domain,\n primaryType: 'EIP712Domain',\n types,\n });\n}\nfunction hashStruct({ data, primaryType, types, }) {\n const encoded = encodeData({\n data,\n primaryType,\n types,\n });\n return (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__.keccak256)(encoded);\n}\nfunction encodeData({ data, primaryType, types, }) {\n const encodedTypes = [{ type: 'bytes32' }];\n const encodedValues = [hashType({ primaryType, types })];\n for (const field of types[primaryType]) {\n const [type, value] = encodeField({\n types,\n name: field.name,\n type: field.type,\n value: data[field.name],\n });\n encodedTypes.push(type);\n encodedValues.push(value);\n }\n return (0,_abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__.encodeAbiParameters)(encodedTypes, encodedValues);\n}\nfunction hashType({ primaryType, types, }) {\n const encodedHashType = (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__.toHex)(encodeType({ primaryType, types }));\n return (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__.keccak256)(encodedHashType);\n}\nfunction encodeType({ primaryType, types, }) {\n let result = '';\n const unsortedDeps = findTypeDependencies({ primaryType, types });\n unsortedDeps.delete(primaryType);\n const deps = [primaryType, ...Array.from(unsortedDeps).sort()];\n for (const type of deps) {\n result += `${type}(${types[type]\n .map(({ name, type: t }) => `${t} ${name}`)\n .join(',')})`;\n }\n return result;\n}\nfunction findTypeDependencies({ primaryType: primaryType_, types, }, results = new Set()) {\n const match = primaryType_.match(/^\\w*/u);\n const primaryType = match?.[0];\n if (results.has(primaryType) || types[primaryType] === undefined) {\n return results;\n }\n results.add(primaryType);\n for (const field of types[primaryType]) {\n findTypeDependencies({ primaryType: field.type, types }, results);\n }\n return results;\n}\nfunction encodeField({ types, name, type, value, }) {\n if (types[type] !== undefined) {\n return [\n { type: 'bytes32' },\n (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__.keccak256)(encodeData({ data: value, primaryType: type, types })),\n ];\n }\n if (type === 'bytes') {\n const prepend = value.length % 2 ? '0' : '';\n value = `0x${prepend + value.slice(2)}`;\n return [{ type: 'bytes32' }, (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__.keccak256)(value)];\n }\n if (type === 'string')\n return [{ type: 'bytes32' }, (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__.keccak256)((0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_4__.toHex)(value))];\n if (type.lastIndexOf(']') === type.length - 1) {\n const parsedType = type.slice(0, type.lastIndexOf('['));\n const typeValuePairs = value.map((item) => encodeField({\n name,\n type: parsedType,\n types,\n value: item,\n }));\n return [\n { type: 'bytes32' },\n (0,_hash_keccak256_js__WEBPACK_IMPORTED_MODULE_1__.keccak256)((0,_abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_3__.encodeAbiParameters)(typeValuePairs.map(([t]) => t), typeValuePairs.map(([, v]) => v))),\n ];\n }\n return [{ type }, value];\n}\n//# sourceMappingURL=hashTypedData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL2hhc2hUeXBlZERhdGEuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUE7QUFDcUU7QUFDMUI7QUFDRTtBQUNJO0FBQzZCO0FBQ3ZFO0FBQ1AsWUFBWSxXQUFXLDBCQUEwQjtBQUNqRDtBQUNBLHNCQUFzQixzRUFBdUIsR0FBRyxRQUFRO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSSxnRUFBaUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULFdBQVcsNkRBQVMsQ0FBQyx1REFBTTtBQUMzQjtBQUNPLHNCQUFzQixnQkFBZ0I7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDTyxzQkFBc0IsMkJBQTJCO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLFdBQVcsNkRBQVM7QUFDcEI7QUFDQSxzQkFBc0IsMkJBQTJCO0FBQ2pELDRCQUE0QixpQkFBaUI7QUFDN0Msc0NBQXNDLG9CQUFvQjtBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsV0FBVyxnRkFBbUI7QUFDOUI7QUFDQSxvQkFBb0IscUJBQXFCO0FBQ3pDLDRCQUE0Qix5REFBSyxjQUFjLG9CQUFvQjtBQUNuRSxXQUFXLDZEQUFTO0FBQ3BCO0FBQ08sc0JBQXNCLHFCQUFxQjtBQUNsRDtBQUNBLGdEQUFnRCxvQkFBb0I7QUFDcEU7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLEtBQUssR0FBRztBQUM3QixvQkFBb0IsZUFBZSxRQUFRLEdBQUcsRUFBRSxLQUFLO0FBQ3JELHVCQUF1QjtBQUN2QjtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsbUNBQW1DO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLGdDQUFnQztBQUMvRDtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsMkJBQTJCO0FBQ2xEO0FBQ0E7QUFDQSxjQUFjLGlCQUFpQjtBQUMvQixZQUFZLDZEQUFTLGNBQWMsdUNBQXVDO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHlCQUF5QjtBQUM5QyxrQkFBa0IsaUJBQWlCLEVBQUUsNkRBQVM7QUFDOUM7QUFDQTtBQUNBLGtCQUFrQixpQkFBaUIsRUFBRSw2REFBUyxDQUFDLHlEQUFLO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsY0FBYyxpQkFBaUI7QUFDL0IsWUFBWSw2REFBUyxDQUFDLGdGQUFtQjtBQUN6QztBQUNBO0FBQ0EsY0FBYyxNQUFNO0FBQ3BCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL3NpZ25hdHVyZS9oYXNoVHlwZWREYXRhLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcGxlbWVudGF0aW9uIGZvcmtlZCBhbmQgYWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9NZXRhTWFzay9ldGgtc2lnLXV0aWwvYmxvYi9tYWluL3NyYy9zaWduLXR5cGVkLWRhdGEudHNcbmltcG9ydCB7IGVuY29kZUFiaVBhcmFtZXRlcnMsIH0gZnJvbSAnLi4vYWJpL2VuY29kZUFiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0IHsgY29uY2F0IH0gZnJvbSAnLi4vZGF0YS9jb25jYXQuanMnO1xuaW1wb3J0IHsgdG9IZXggfSBmcm9tICcuLi9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBrZWNjYWsyNTYgfSBmcm9tICcuLi9oYXNoL2tlY2NhazI1Ni5qcyc7XG5pbXBvcnQgeyBnZXRUeXBlc0ZvckVJUDcxMkRvbWFpbiwgdmFsaWRhdGVUeXBlZERhdGEsIH0gZnJvbSAnLi4vdHlwZWREYXRhLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBoYXNoVHlwZWREYXRhKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGRvbWFpbiA9IHt9LCBtZXNzYWdlLCBwcmltYXJ5VHlwZSwgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgdHlwZXMgPSB7XG4gICAgICAgIEVJUDcxMkRvbWFpbjogZ2V0VHlwZXNGb3JFSVA3MTJEb21haW4oeyBkb21haW4gfSksXG4gICAgICAgIC4uLnBhcmFtZXRlcnMudHlwZXMsXG4gICAgfTtcbiAgICAvLyBOZWVkIHRvIGRvIGEgcnVudGltZSB2YWxpZGF0aW9uIGNoZWNrIG9uIGFkZHJlc3NlcywgYnl0ZSByYW5nZXMsIGludGVnZXIgcmFuZ2VzLCBldGNcbiAgICAvLyBhcyB3ZSBjYW4ndCBzdGF0aWNhbGx5IGNoZWNrIHRoaXMgd2l0aCBUeXBlU2NyaXB0LlxuICAgIHZhbGlkYXRlVHlwZWREYXRhKHtcbiAgICAgICAgZG9tYWluLFxuICAgICAgICBtZXNzYWdlLFxuICAgICAgICBwcmltYXJ5VHlwZSxcbiAgICAgICAgdHlwZXMsXG4gICAgfSk7XG4gICAgY29uc3QgcGFydHMgPSBbJzB4MTkwMSddO1xuICAgIGlmIChkb21haW4pXG4gICAgICAgIHBhcnRzLnB1c2goaGFzaERvbWFpbih7XG4gICAgICAgICAgICBkb21haW4sXG4gICAgICAgICAgICB0eXBlczogdHlwZXMsXG4gICAgICAgIH0pKTtcbiAgICBpZiAocHJpbWFyeVR5cGUgIT09ICdFSVA3MTJEb21haW4nKVxuICAgICAgICBwYXJ0cy5wdXNoKGhhc2hTdHJ1Y3Qoe1xuICAgICAgICAgICAgZGF0YTogbWVzc2FnZSxcbiAgICAgICAgICAgIHByaW1hcnlUeXBlLFxuICAgICAgICAgICAgdHlwZXM6IHR5cGVzLFxuICAgICAgICB9KSk7XG4gICAgcmV0dXJuIGtlY2NhazI1Nihjb25jYXQocGFydHMpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBoYXNoRG9tYWluKHsgZG9tYWluLCB0eXBlcywgfSkge1xuICAgIHJldHVybiBoYXNoU3RydWN0KHtcbiAgICAgICAgZGF0YTogZG9tYWluLFxuICAgICAgICBwcmltYXJ5VHlwZTogJ0VJUDcxMkRvbWFpbicsXG4gICAgICAgIHR5cGVzLFxuICAgIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGhhc2hTdHJ1Y3QoeyBkYXRhLCBwcmltYXJ5VHlwZSwgdHlwZXMsIH0pIHtcbiAgICBjb25zdCBlbmNvZGVkID0gZW5jb2RlRGF0YSh7XG4gICAgICAgIGRhdGEsXG4gICAgICAgIHByaW1hcnlUeXBlLFxuICAgICAgICB0eXBlcyxcbiAgICB9KTtcbiAgICByZXR1cm4ga2VjY2FrMjU2KGVuY29kZWQpO1xufVxuZnVuY3Rpb24gZW5jb2RlRGF0YSh7IGRhdGEsIHByaW1hcnlUeXBlLCB0eXBlcywgfSkge1xuICAgIGNvbnN0IGVuY29kZWRUeXBlcyA9IFt7IHR5cGU6ICdieXRlczMyJyB9XTtcbiAgICBjb25zdCBlbmNvZGVkVmFsdWVzID0gW2hhc2hUeXBlKHsgcHJpbWFyeVR5cGUsIHR5cGVzIH0pXTtcbiAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIHR5cGVzW3ByaW1hcnlUeXBlXSkge1xuICAgICAgICBjb25zdCBbdHlwZSwgdmFsdWVdID0gZW5jb2RlRmllbGQoe1xuICAgICAgICAgICAgdHlwZXMsXG4gICAgICAgICAgICBuYW1lOiBmaWVsZC5uYW1lLFxuICAgICAgICAgICAgdHlwZTogZmllbGQudHlwZSxcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhW2ZpZWxkLm5hbWVdLFxuICAgICAgICB9KTtcbiAgICAgICAgZW5jb2RlZFR5cGVzLnB1c2godHlwZSk7XG4gICAgICAgIGVuY29kZWRWYWx1ZXMucHVzaCh2YWx1ZSk7XG4gICAgfVxuICAgIHJldHVybiBlbmNvZGVBYmlQYXJhbWV0ZXJzKGVuY29kZWRUeXBlcywgZW5jb2RlZFZhbHVlcyk7XG59XG5mdW5jdGlvbiBoYXNoVHlwZSh7IHByaW1hcnlUeXBlLCB0eXBlcywgfSkge1xuICAgIGNvbnN0IGVuY29kZWRIYXNoVHlwZSA9IHRvSGV4KGVuY29kZVR5cGUoeyBwcmltYXJ5VHlwZSwgdHlwZXMgfSkpO1xuICAgIHJldHVybiBrZWNjYWsyNTYoZW5jb2RlZEhhc2hUeXBlKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVUeXBlKHsgcHJpbWFyeVR5cGUsIHR5cGVzLCB9KSB7XG4gICAgbGV0IHJlc3VsdCA9ICcnO1xuICAgIGNvbnN0IHVuc29ydGVkRGVwcyA9IGZpbmRUeXBlRGVwZW5kZW5jaWVzKHsgcHJpbWFyeVR5cGUsIHR5cGVzIH0pO1xuICAgIHVuc29ydGVkRGVwcy5kZWxldGUocHJpbWFyeVR5cGUpO1xuICAgIGNvbnN0IGRlcHMgPSBbcHJpbWFyeVR5cGUsIC4uLkFycmF5LmZyb20odW5zb3J0ZWREZXBzKS5zb3J0KCldO1xuICAgIGZvciAoY29uc3QgdHlwZSBvZiBkZXBzKSB7XG4gICAgICAgIHJlc3VsdCArPSBgJHt0eXBlfSgke3R5cGVzW3R5cGVdXG4gICAgICAgICAgICAubWFwKCh7IG5hbWUsIHR5cGU6IHQgfSkgPT4gYCR7dH0gJHtuYW1lfWApXG4gICAgICAgICAgICAuam9pbignLCcpfSlgO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuZnVuY3Rpb24gZmluZFR5cGVEZXBlbmRlbmNpZXMoeyBwcmltYXJ5VHlwZTogcHJpbWFyeVR5cGVfLCB0eXBlcywgfSwgcmVzdWx0cyA9IG5ldyBTZXQoKSkge1xuICAgIGNvbnN0IG1hdGNoID0gcHJpbWFyeVR5cGVfLm1hdGNoKC9eXFx3Ki91KTtcbiAgICBjb25zdCBwcmltYXJ5VHlwZSA9IG1hdGNoPy5bMF07XG4gICAgaWYgKHJlc3VsdHMuaGFzKHByaW1hcnlUeXBlKSB8fCB0eXBlc1twcmltYXJ5VHlwZV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gcmVzdWx0cztcbiAgICB9XG4gICAgcmVzdWx0cy5hZGQocHJpbWFyeVR5cGUpO1xuICAgIGZvciAoY29uc3QgZmllbGQgb2YgdHlwZXNbcHJpbWFyeVR5cGVdKSB7XG4gICAgICAgIGZpbmRUeXBlRGVwZW5kZW5jaWVzKHsgcHJpbWFyeVR5cGU6IGZpZWxkLnR5cGUsIHR5cGVzIH0sIHJlc3VsdHMpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0cztcbn1cbmZ1bmN0aW9uIGVuY29kZUZpZWxkKHsgdHlwZXMsIG5hbWUsIHR5cGUsIHZhbHVlLCB9KSB7XG4gICAgaWYgKHR5cGVzW3R5cGVdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHsgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICBrZWNjYWsyNTYoZW5jb2RlRGF0YSh7IGRhdGE6IHZhbHVlLCBwcmltYXJ5VHlwZTogdHlwZSwgdHlwZXMgfSkpLFxuICAgICAgICBdO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gJ2J5dGVzJykge1xuICAgICAgICBjb25zdCBwcmVwZW5kID0gdmFsdWUubGVuZ3RoICUgMiA/ICcwJyA6ICcnO1xuICAgICAgICB2YWx1ZSA9IGAweCR7cHJlcGVuZCArIHZhbHVlLnNsaWNlKDIpfWA7XG4gICAgICAgIHJldHVybiBbeyB0eXBlOiAnYnl0ZXMzMicgfSwga2VjY2FrMjU2KHZhbHVlKV07XG4gICAgfVxuICAgIGlmICh0eXBlID09PSAnc3RyaW5nJylcbiAgICAgICAgcmV0dXJuIFt7IHR5cGU6ICdieXRlczMyJyB9LCBrZWNjYWsyNTYodG9IZXgodmFsdWUpKV07XG4gICAgaWYgKHR5cGUubGFzdEluZGV4T2YoJ10nKSA9PT0gdHlwZS5sZW5ndGggLSAxKSB7XG4gICAgICAgIGNvbnN0IHBhcnNlZFR5cGUgPSB0eXBlLnNsaWNlKDAsIHR5cGUubGFzdEluZGV4T2YoJ1snKSk7XG4gICAgICAgIGNvbnN0IHR5cGVWYWx1ZVBhaXJzID0gdmFsdWUubWFwKChpdGVtKSA9PiBlbmNvZGVGaWVsZCh7XG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgdHlwZTogcGFyc2VkVHlwZSxcbiAgICAgICAgICAgIHR5cGVzLFxuICAgICAgICAgICAgdmFsdWU6IGl0ZW0sXG4gICAgICAgIH0pKTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHsgdHlwZTogJ2J5dGVzMzInIH0sXG4gICAgICAgICAgICBrZWNjYWsyNTYoZW5jb2RlQWJpUGFyYW1ldGVycyh0eXBlVmFsdWVQYWlycy5tYXAoKFt0XSkgPT4gdCksIHR5cGVWYWx1ZVBhaXJzLm1hcCgoWywgdl0pID0+IHYpKSksXG4gICAgICAgIF07XG4gICAgfVxuICAgIHJldHVybiBbeyB0eXBlIH0sIHZhbHVlXTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWhhc2hUeXBlZERhdGEuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashTypedData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/parseSignature.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/parseSignature.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseSignature: () => (/* binding */ parseSignature)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/curves/secp256k1 */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js\");\n/* harmony import */ var _utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n/**\n * @description Parses a hex formatted signature into a structured signature.\n *\n * @param signatureHex Signature in hex format.\n * @returns The structured signature.\n *\n * @example\n * parseSignature('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')\n * // { r: '0x...', s: '0x...', v: 28n }\n */\nfunction parseSignature(signatureHex) {\n const { r, s } = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.Signature.fromCompact(signatureHex.slice(2, 130));\n const yParityOrV = Number(`0x${signatureHex.slice(130)}`);\n const [v, yParity] = (() => {\n if (yParityOrV === 0 || yParityOrV === 1)\n return [undefined, yParityOrV];\n if (yParityOrV === 27)\n return [BigInt(yParityOrV), 0];\n if (yParityOrV === 28)\n return [BigInt(yParityOrV), 1];\n throw new Error('Invalid yParityOrV value');\n })();\n if (typeof v !== 'undefined')\n return {\n r: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(r, { size: 32 }),\n s: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(s, { size: 32 }),\n v,\n yParity,\n };\n return {\n r: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(r, { size: 32 }),\n s: (0,_utils_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(s, { size: 32 }),\n yParity,\n };\n}\n//# sourceMappingURL=parseSignature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL3BhcnNlU2lnbmF0dXJlLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFvRDtBQUNTO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDTztBQUNQLFlBQVksT0FBTyxFQUFFLDhEQUFTO0FBQzlCLG1DQUFtQyx3QkFBd0I7QUFDM0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsZUFBZSxxRUFBVyxNQUFNLFVBQVU7QUFDMUMsZUFBZSxxRUFBVyxNQUFNLFVBQVU7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLHFFQUFXLE1BQU0sVUFBVTtBQUN0QyxXQUFXLHFFQUFXLE1BQU0sVUFBVTtBQUN0QztBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL3BhcnNlU2lnbmF0dXJlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNlY3AyNTZrMSB9IGZyb20gJ0Bub2JsZS9jdXJ2ZXMvc2VjcDI1NmsxJztcbmltcG9ydCB7IG51bWJlclRvSGV4LCB9IGZyb20gJy4uLy4uL3V0aWxzL2VuY29kaW5nL3RvSGV4LmpzJztcbi8qKlxuICogQGRlc2NyaXB0aW9uIFBhcnNlcyBhIGhleCBmb3JtYXR0ZWQgc2lnbmF0dXJlIGludG8gYSBzdHJ1Y3R1cmVkIHNpZ25hdHVyZS5cbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlSGV4IFNpZ25hdHVyZSBpbiBoZXggZm9ybWF0LlxuICogQHJldHVybnMgVGhlIHN0cnVjdHVyZWQgc2lnbmF0dXJlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBwYXJzZVNpZ25hdHVyZSgnMHg2ZTEwMGEzNTJlYzZhZDFiNzA4MDIyOTBlMThhZWVkMTkwNzA0OTczNTcwZjNiOGVkNDJjYjk4MDhlMmVhNmJmNGE5MGEyMjlhMjQ0NDk1YjQxODkwOTg3ODA2ZmNiZDJkNWQyM2ZjMGRiZTVmNTI1NmMyNjEzYzAzOWQ3NmRiODFjJylcbiAqIC8vIHsgcjogJzB4Li4uJywgczogJzB4Li4uJywgdjogMjhuIH1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlU2lnbmF0dXJlKHNpZ25hdHVyZUhleCkge1xuICAgIGNvbnN0IHsgciwgcyB9ID0gc2VjcDI1NmsxLlNpZ25hdHVyZS5mcm9tQ29tcGFjdChzaWduYXR1cmVIZXguc2xpY2UoMiwgMTMwKSk7XG4gICAgY29uc3QgeVBhcml0eU9yViA9IE51bWJlcihgMHgke3NpZ25hdHVyZUhleC5zbGljZSgxMzApfWApO1xuICAgIGNvbnN0IFt2LCB5UGFyaXR5XSA9ICgoKSA9PiB7XG4gICAgICAgIGlmICh5UGFyaXR5T3JWID09PSAwIHx8IHlQYXJpdHlPclYgPT09IDEpXG4gICAgICAgICAgICByZXR1cm4gW3VuZGVmaW5lZCwgeVBhcml0eU9yVl07XG4gICAgICAgIGlmICh5UGFyaXR5T3JWID09PSAyNylcbiAgICAgICAgICAgIHJldHVybiBbQmlnSW50KHlQYXJpdHlPclYpLCAwXTtcbiAgICAgICAgaWYgKHlQYXJpdHlPclYgPT09IDI4KVxuICAgICAgICAgICAgcmV0dXJuIFtCaWdJbnQoeVBhcml0eU9yViksIDFdO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgeVBhcml0eU9yViB2YWx1ZScpO1xuICAgIH0pKCk7XG4gICAgaWYgKHR5cGVvZiB2ICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHI6IG51bWJlclRvSGV4KHIsIHsgc2l6ZTogMzIgfSksXG4gICAgICAgICAgICBzOiBudW1iZXJUb0hleChzLCB7IHNpemU6IDMyIH0pLFxuICAgICAgICAgICAgdixcbiAgICAgICAgICAgIHlQYXJpdHksXG4gICAgICAgIH07XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcjogbnVtYmVyVG9IZXgociwgeyBzaXplOiAzMiB9KSxcbiAgICAgICAgczogbnVtYmVyVG9IZXgocywgeyBzaXplOiAzMiB9KSxcbiAgICAgICAgeVBhcml0eSxcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cGFyc2VTaWduYXR1cmUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/parseSignature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/recoverAddress.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/recoverAddress.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ recoverAddress: () => (/* binding */ recoverAddress)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_publicKeyToAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/publicKeyToAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/publicKeyToAddress.js\");\n/* harmony import */ var _recoverPublicKey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./recoverPublicKey.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/recoverPublicKey.js\");\n\n\nasync function recoverAddress({ hash, signature, }) {\n return (0,_accounts_utils_publicKeyToAddress_js__WEBPACK_IMPORTED_MODULE_0__.publicKeyToAddress)(await (0,_recoverPublicKey_js__WEBPACK_IMPORTED_MODULE_1__.recoverPublicKey)({ hash, signature }));\n}\n//# sourceMappingURL=recoverAddress.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL3JlY292ZXJBZGRyZXNzLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFnRjtBQUN2QjtBQUNsRCxnQ0FBZ0Msa0JBQWtCO0FBQ3pELFdBQVcseUZBQWtCLE9BQU8sc0VBQWdCLEdBQUcsaUJBQWlCO0FBQ3hFO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL3NpZ25hdHVyZS9yZWNvdmVyQWRkcmVzcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwdWJsaWNLZXlUb0FkZHJlc3MgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wdWJsaWNLZXlUb0FkZHJlc3MuanMnO1xuaW1wb3J0IHsgcmVjb3ZlclB1YmxpY0tleSB9IGZyb20gJy4vcmVjb3ZlclB1YmxpY0tleS5qcyc7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVjb3ZlckFkZHJlc3MoeyBoYXNoLCBzaWduYXR1cmUsIH0pIHtcbiAgICByZXR1cm4gcHVibGljS2V5VG9BZGRyZXNzKGF3YWl0IHJlY292ZXJQdWJsaWNLZXkoeyBoYXNoLCBzaWduYXR1cmUgfSkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cmVjb3ZlckFkZHJlc3MuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/recoverAddress.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/recoverPublicKey.js": /*!********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/recoverPublicKey.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ recoverPublicKey: () => (/* binding */ recoverPublicKey)\n/* harmony export */ });\n/* harmony import */ var _data_isHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../data/isHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/isHex.js\");\n/* harmony import */ var _data_size_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../data/size.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var _encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n\n\nasync function recoverPublicKey({ hash, signature, }) {\n const hashHex = (0,_data_isHex_js__WEBPACK_IMPORTED_MODULE_0__.isHex)(hash) ? hash : (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.toHex)(hash);\n const { secp256k1 } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @noble/curves/secp256k1 */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js\"));\n const signature_ = (() => {\n // typeof signature: `Signature`\n if (typeof signature === 'object' && 'r' in signature && 's' in signature) {\n const { r, s, v, yParity } = signature;\n const yParityOrV = Number(yParity ?? v);\n const recoveryBit = toRecoveryBit(yParityOrV);\n return new secp256k1.Signature((0,_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToBigInt)(r), (0,_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToBigInt)(s)).addRecoveryBit(recoveryBit);\n }\n // typeof signature: `Hex | ByteArray`\n const signatureHex = (0,_data_isHex_js__WEBPACK_IMPORTED_MODULE_0__.isHex)(signature) ? signature : (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.toHex)(signature);\n if ((0,_data_size_js__WEBPACK_IMPORTED_MODULE_3__.size)(signatureHex) !== 65)\n throw new Error('invalid signature length');\n const yParityOrV = (0,_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_2__.hexToNumber)(`0x${signatureHex.slice(130)}`);\n const recoveryBit = toRecoveryBit(yParityOrV);\n return secp256k1.Signature.fromCompact(signatureHex.substring(2, 130)).addRecoveryBit(recoveryBit);\n })();\n const publicKey = signature_\n .recoverPublicKey(hashHex.substring(2))\n .toHex(false);\n return `0x${publicKey}`;\n}\nfunction toRecoveryBit(yParityOrV) {\n if (yParityOrV === 0 || yParityOrV === 1)\n return yParityOrV;\n if (yParityOrV === 27)\n return 0;\n if (yParityOrV === 28)\n return 1;\n throw new Error('Invalid yParityOrV value');\n}\n//# sourceMappingURL=recoverPublicKey.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL3JlY292ZXJQdWJsaWNLZXkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBeUM7QUFDRjtBQUM0QjtBQUN0QjtBQUN0QyxrQ0FBa0Msa0JBQWtCO0FBQzNELG9CQUFvQixxREFBSyxnQkFBZ0IseURBQUs7QUFDOUMsWUFBWSxZQUFZLFFBQVEsME1BQWlDO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixtQkFBbUI7QUFDdkM7QUFDQTtBQUNBLDJDQUEyQyxpRUFBVyxLQUFLLGlFQUFXO0FBQ3RFO0FBQ0E7QUFDQSw2QkFBNkIscURBQUssMEJBQTBCLHlEQUFLO0FBQ2pFLFlBQVksbURBQUk7QUFDaEI7QUFDQSwyQkFBMkIsaUVBQVcsTUFBTSx3QkFBd0I7QUFDcEU7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsVUFBVTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9zaWduYXR1cmUvcmVjb3ZlclB1YmxpY0tleS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0hleCB9IGZyb20gJy4uL2RhdGEvaXNIZXguanMnO1xuaW1wb3J0IHsgc2l6ZSB9IGZyb20gJy4uL2RhdGEvc2l6ZS5qcyc7XG5pbXBvcnQgeyBoZXhUb0JpZ0ludCwgaGV4VG9OdW1iZXIsIH0gZnJvbSAnLi4vZW5jb2RpbmcvZnJvbUhleC5qcyc7XG5pbXBvcnQgeyB0b0hleCB9IGZyb20gJy4uL2VuY29kaW5nL3RvSGV4LmpzJztcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWNvdmVyUHVibGljS2V5KHsgaGFzaCwgc2lnbmF0dXJlLCB9KSB7XG4gICAgY29uc3QgaGFzaEhleCA9IGlzSGV4KGhhc2gpID8gaGFzaCA6IHRvSGV4KGhhc2gpO1xuICAgIGNvbnN0IHsgc2VjcDI1NmsxIH0gPSBhd2FpdCBpbXBvcnQoJ0Bub2JsZS9jdXJ2ZXMvc2VjcDI1NmsxJyk7XG4gICAgY29uc3Qgc2lnbmF0dXJlXyA9ICgoKSA9PiB7XG4gICAgICAgIC8vIHR5cGVvZiBzaWduYXR1cmU6IGBTaWduYXR1cmVgXG4gICAgICAgIGlmICh0eXBlb2Ygc2lnbmF0dXJlID09PSAnb2JqZWN0JyAmJiAncicgaW4gc2lnbmF0dXJlICYmICdzJyBpbiBzaWduYXR1cmUpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgciwgcywgdiwgeVBhcml0eSB9ID0gc2lnbmF0dXJlO1xuICAgICAgICAgICAgY29uc3QgeVBhcml0eU9yViA9IE51bWJlcih5UGFyaXR5ID8/IHYpO1xuICAgICAgICAgICAgY29uc3QgcmVjb3ZlcnlCaXQgPSB0b1JlY292ZXJ5Qml0KHlQYXJpdHlPclYpO1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBzZWNwMjU2azEuU2lnbmF0dXJlKGhleFRvQmlnSW50KHIpLCBoZXhUb0JpZ0ludChzKSkuYWRkUmVjb3ZlcnlCaXQocmVjb3ZlcnlCaXQpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHR5cGVvZiBzaWduYXR1cmU6IGBIZXggfCBCeXRlQXJyYXlgXG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZUhleCA9IGlzSGV4KHNpZ25hdHVyZSkgPyBzaWduYXR1cmUgOiB0b0hleChzaWduYXR1cmUpO1xuICAgICAgICBpZiAoc2l6ZShzaWduYXR1cmVIZXgpICE9PSA2NSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBzaWduYXR1cmUgbGVuZ3RoJyk7XG4gICAgICAgIGNvbnN0IHlQYXJpdHlPclYgPSBoZXhUb051bWJlcihgMHgke3NpZ25hdHVyZUhleC5zbGljZSgxMzApfWApO1xuICAgICAgICBjb25zdCByZWNvdmVyeUJpdCA9IHRvUmVjb3ZlcnlCaXQoeVBhcml0eU9yVik7XG4gICAgICAgIHJldHVybiBzZWNwMjU2azEuU2lnbmF0dXJlLmZyb21Db21wYWN0KHNpZ25hdHVyZUhleC5zdWJzdHJpbmcoMiwgMTMwKSkuYWRkUmVjb3ZlcnlCaXQocmVjb3ZlcnlCaXQpO1xuICAgIH0pKCk7XG4gICAgY29uc3QgcHVibGljS2V5ID0gc2lnbmF0dXJlX1xuICAgICAgICAucmVjb3ZlclB1YmxpY0tleShoYXNoSGV4LnN1YnN0cmluZygyKSlcbiAgICAgICAgLnRvSGV4KGZhbHNlKTtcbiAgICByZXR1cm4gYDB4JHtwdWJsaWNLZXl9YDtcbn1cbmZ1bmN0aW9uIHRvUmVjb3ZlcnlCaXQoeVBhcml0eU9yVikge1xuICAgIGlmICh5UGFyaXR5T3JWID09PSAwIHx8IHlQYXJpdHlPclYgPT09IDEpXG4gICAgICAgIHJldHVybiB5UGFyaXR5T3JWO1xuICAgIGlmICh5UGFyaXR5T3JWID09PSAyNylcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgaWYgKHlQYXJpdHlPclYgPT09IDI4KVxuICAgICAgICByZXR1cm4gMTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgeVBhcml0eU9yViB2YWx1ZScpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cmVjb3ZlclB1YmxpY0tleS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/recoverPublicKey.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/serializeErc6492Signature.js": /*!*****************************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/serializeErc6492Signature.js ***! \*****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ serializeErc6492Signature: () => (/* binding */ serializeErc6492Signature)\n/* harmony export */ });\n/* harmony import */ var _constants_bytes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../constants/bytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/bytes.js\");\n/* harmony import */ var _abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../abi/encodeAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/abi/encodeAbiParameters.js\");\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n\n\n\n\n/**\n * @description Serializes a ERC-6492 flavoured signature into hex format.\n *\n * @param signature ERC-6492 signature in object format.\n * @returns ERC-6492 signature in hex format.\n *\n * @example\n * serializeSignature({ address: '0x...', data: '0x...', signature: '0x...' })\n * // '0x000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004deadbeef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041a461f509887bd19e312c0c58467ce8ff8e300d3c1a90b608a760c5b80318eaf15fe57c96f9175d6cd4daad4663763baa7e78836e067d0163e9a2ccf2ff753f5b1b000000000000000000000000000000000000000000000000000000000000006492649264926492649264926492649264926492649264926492649264926492'\n */\nfunction serializeErc6492Signature(parameters) {\n const { address, data, signature, to = 'hex' } = parameters;\n const signature_ = (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_0__.concatHex)([\n (0,_abi_encodeAbiParameters_js__WEBPACK_IMPORTED_MODULE_1__.encodeAbiParameters)([{ type: 'address' }, { type: 'bytes' }, { type: 'bytes' }], [address, data, signature]),\n _constants_bytes_js__WEBPACK_IMPORTED_MODULE_2__.erc6492MagicBytes,\n ]);\n if (to === 'hex')\n return signature_;\n return (0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_3__.hexToBytes)(signature_);\n}\n//# sourceMappingURL=serializeErc6492Signature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL3NlcmlhbGl6ZUVyYzY0OTJTaWduYXR1cmUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBNkQ7QUFDTztBQUN0QjtBQUNNO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHFEQUFxRDtBQUM3RTtBQUNBO0FBQ087QUFDUCxZQUFZLHVDQUF1QztBQUNuRCx1QkFBdUIsMERBQVM7QUFDaEMsUUFBUSxnRkFBbUIsSUFBSSxpQkFBaUIsSUFBSSxlQUFlLElBQUksZUFBZTtBQUN0RixRQUFRLGtFQUFpQjtBQUN6QjtBQUNBO0FBQ0E7QUFDQSxXQUFXLGdFQUFVO0FBQ3JCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL3NpZ25hdHVyZS9zZXJpYWxpemVFcmM2NDkyU2lnbmF0dXJlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVyYzY0OTJNYWdpY0J5dGVzIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2J5dGVzLmpzJztcbmltcG9ydCB7IGVuY29kZUFiaVBhcmFtZXRlcnMgfSBmcm9tICcuLi9hYmkvZW5jb2RlQWJpUGFyYW1ldGVycy5qcyc7XG5pbXBvcnQgeyBjb25jYXRIZXggfSBmcm9tICcuLi9kYXRhL2NvbmNhdC5qcyc7XG5pbXBvcnQgeyBoZXhUb0J5dGVzIH0gZnJvbSAnLi4vZW5jb2RpbmcvdG9CeXRlcy5qcyc7XG4vKipcbiAqIEBkZXNjcmlwdGlvbiBTZXJpYWxpemVzIGEgRVJDLTY0OTIgZmxhdm91cmVkIHNpZ25hdHVyZSBpbnRvIGhleCBmb3JtYXQuXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSBFUkMtNjQ5MiBzaWduYXR1cmUgaW4gb2JqZWN0IGZvcm1hdC5cbiAqIEByZXR1cm5zIEVSQy02NDkyIHNpZ25hdHVyZSBpbiBoZXggZm9ybWF0LlxuICpcbiAqIEBleGFtcGxlXG4gKiBzZXJpYWxpemVTaWduYXR1cmUoeyBhZGRyZXNzOiAnMHguLi4nLCBkYXRhOiAnMHguLi4nLCBzaWduYXR1cmU6ICcweC4uLicgfSlcbiAqIC8vICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGNhZmViYWJlY2FmZWJhYmVjYWZlYmFiZWNhZmViYWJlY2FmZWJhYmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBhMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDRkZWFkYmVlZjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0MWE0NjFmNTA5ODg3YmQxOWUzMTJjMGM1ODQ2N2NlOGZmOGUzMDBkM2MxYTkwYjYwOGE3NjBjNWI4MDMxOGVhZjE1ZmU1N2M5NmY5MTc1ZDZjZDRkYWFkNDY2Mzc2M2JhYTdlNzg4MzZlMDY3ZDAxNjNlOWEyY2NmMmZmNzUzZjViMWIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTInXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXJpYWxpemVFcmM2NDkyU2lnbmF0dXJlKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGRhdGEsIHNpZ25hdHVyZSwgdG8gPSAnaGV4JyB9ID0gcGFyYW1ldGVycztcbiAgICBjb25zdCBzaWduYXR1cmVfID0gY29uY2F0SGV4KFtcbiAgICAgICAgZW5jb2RlQWJpUGFyYW1ldGVycyhbeyB0eXBlOiAnYWRkcmVzcycgfSwgeyB0eXBlOiAnYnl0ZXMnIH0sIHsgdHlwZTogJ2J5dGVzJyB9XSwgW2FkZHJlc3MsIGRhdGEsIHNpZ25hdHVyZV0pLFxuICAgICAgICBlcmM2NDkyTWFnaWNCeXRlcyxcbiAgICBdKTtcbiAgICBpZiAodG8gPT09ICdoZXgnKVxuICAgICAgICByZXR1cm4gc2lnbmF0dXJlXztcbiAgICByZXR1cm4gaGV4VG9CeXRlcyhzaWduYXR1cmVfKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNlcmlhbGl6ZUVyYzY0OTJTaWduYXR1cmUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/serializeErc6492Signature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/serializeSignature.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/serializeSignature.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ serializeSignature: () => (/* binding */ serializeSignature)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/curves/secp256k1 */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js\");\n/* harmony import */ var _encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../encoding/fromHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/fromHex.js\");\n/* harmony import */ var _encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../encoding/toBytes.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toBytes.js\");\n\n\n\n/**\n * @description Converts a signature into hex format.\n *\n * @param signature The signature to convert.\n * @returns The signature in hex format.\n *\n * @example\n * serializeSignature({\n * r: '0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf',\n * s: '0x4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8',\n * yParity: 1\n * })\n * // \"0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c\"\n */\nfunction serializeSignature({ r, s, to = 'hex', v, yParity, }) {\n const yParity_ = (() => {\n if (yParity === 0 || yParity === 1)\n return yParity;\n if (v && (v === 27n || v === 28n || v >= 35n))\n return v % 2n === 0n ? 1 : 0;\n throw new Error('Invalid `v` or `yParity` value');\n })();\n const signature = `0x${new _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.Signature((0,_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.hexToBigInt)(r), (0,_encoding_fromHex_js__WEBPACK_IMPORTED_MODULE_1__.hexToBigInt)(s)).toCompactHex()}${yParity_ === 0 ? '1b' : '1c'}`;\n if (to === 'hex')\n return signature;\n return (0,_encoding_toBytes_js__WEBPACK_IMPORTED_MODULE_2__.hexToBytes)(signature);\n}\n//# sourceMappingURL=serializeSignature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL3NlcmlhbGl6ZVNpZ25hdHVyZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQW9EO0FBQ0M7QUFDRDtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDTyw4QkFBOEIsK0JBQStCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCwyQkFBMkIsSUFBSSw4REFBUyxXQUFXLGlFQUFXLEtBQUssaUVBQVcsb0JBQW9CLEVBQUUsNkJBQTZCO0FBQ2pJO0FBQ0E7QUFDQSxXQUFXLGdFQUFVO0FBQ3JCO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL3NpZ25hdHVyZS9zZXJpYWxpemVTaWduYXR1cmUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2VjcDI1NmsxIH0gZnJvbSAnQG5vYmxlL2N1cnZlcy9zZWNwMjU2azEnO1xuaW1wb3J0IHsgaGV4VG9CaWdJbnQgfSBmcm9tICcuLi9lbmNvZGluZy9mcm9tSGV4LmpzJztcbmltcG9ydCB7IGhleFRvQnl0ZXMgfSBmcm9tICcuLi9lbmNvZGluZy90b0J5dGVzLmpzJztcbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbnZlcnRzIGEgc2lnbmF0dXJlIGludG8gaGV4IGZvcm1hdC5cbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBzaWduYXR1cmUgaW4gaGV4IGZvcm1hdC5cbiAqXG4gKiBAZXhhbXBsZVxuICogc2VyaWFsaXplU2lnbmF0dXJlKHtcbiAqICAgcjogJzB4NmUxMDBhMzUyZWM2YWQxYjcwODAyMjkwZTE4YWVlZDE5MDcwNDk3MzU3MGYzYjhlZDQyY2I5ODA4ZTJlYTZiZicsXG4gKiAgIHM6ICcweDRhOTBhMjI5YTI0NDQ5NWI0MTg5MDk4NzgwNmZjYmQyZDVkMjNmYzBkYmU1ZjUyNTZjMjYxM2MwMzlkNzZkYjgnLFxuICogICB5UGFyaXR5OiAxXG4gKiB9KVxuICogLy8gXCIweDZlMTAwYTM1MmVjNmFkMWI3MDgwMjI5MGUxOGFlZWQxOTA3MDQ5NzM1NzBmM2I4ZWQ0MmNiOTgwOGUyZWE2YmY0YTkwYTIyOWEyNDQ0OTViNDE4OTA5ODc4MDZmY2JkMmQ1ZDIzZmMwZGJlNWY1MjU2YzI2MTNjMDM5ZDc2ZGI4MWNcIlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplU2lnbmF0dXJlKHsgciwgcywgdG8gPSAnaGV4JywgdiwgeVBhcml0eSwgfSkge1xuICAgIGNvbnN0IHlQYXJpdHlfID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHlQYXJpdHkgPT09IDAgfHwgeVBhcml0eSA9PT0gMSlcbiAgICAgICAgICAgIHJldHVybiB5UGFyaXR5O1xuICAgICAgICBpZiAodiAmJiAodiA9PT0gMjduIHx8IHYgPT09IDI4biB8fCB2ID49IDM1bikpXG4gICAgICAgICAgICByZXR1cm4gdiAlIDJuID09PSAwbiA/IDEgOiAwO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYHZgIG9yIGB5UGFyaXR5YCB2YWx1ZScpO1xuICAgIH0pKCk7XG4gICAgY29uc3Qgc2lnbmF0dXJlID0gYDB4JHtuZXcgc2VjcDI1NmsxLlNpZ25hdHVyZShoZXhUb0JpZ0ludChyKSwgaGV4VG9CaWdJbnQocykpLnRvQ29tcGFjdEhleCgpfSR7eVBhcml0eV8gPT09IDAgPyAnMWInIDogJzFjJ31gO1xuICAgIGlmICh0byA9PT0gJ2hleCcpXG4gICAgICAgIHJldHVybiBzaWduYXR1cmU7XG4gICAgcmV0dXJuIGhleFRvQnl0ZXMoc2lnbmF0dXJlKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNlcmlhbGl6ZVNpZ25hdHVyZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/serializeSignature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/signature/toPrefixedMessage.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/_esm/utils/signature/toPrefixedMessage.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ toPrefixedMessage: () => (/* binding */ toPrefixedMessage)\n/* harmony export */ });\n/* harmony import */ var _constants_strings_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../constants/strings.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/strings.js\");\n/* harmony import */ var _data_concat_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../data/concat.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/concat.js\");\n/* harmony import */ var _data_size_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../data/size.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n\n\nfunction toPrefixedMessage(message_) {\n const message = (() => {\n if (typeof message_ === 'string')\n return (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.stringToHex)(message_);\n if (typeof message_.raw === 'string')\n return message_.raw;\n return (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(message_.raw);\n })();\n const prefix = (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_0__.stringToHex)(`${_constants_strings_js__WEBPACK_IMPORTED_MODULE_1__.presignMessagePrefix}${(0,_data_size_js__WEBPACK_IMPORTED_MODULE_2__.size)(message)}`);\n return (0,_data_concat_js__WEBPACK_IMPORTED_MODULE_3__.concat)([prefix, message]);\n}\n//# sourceMappingURL=toPrefixedMessage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2lnbmF0dXJlL3RvUHJlZml4ZWRNZXNzYWdlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQWtFO0FBQ3ZCO0FBQ0o7QUFDeUI7QUFDekQ7QUFDUDtBQUNBO0FBQ0EsbUJBQW1CLCtEQUFXO0FBQzlCO0FBQ0E7QUFDQSxlQUFlLDhEQUFVO0FBQ3pCLEtBQUs7QUFDTCxtQkFBbUIsK0RBQVcsSUFBSSx1RUFBb0IsQ0FBQyxFQUFFLG1EQUFJLFVBQVU7QUFDdkUsV0FBVyx1REFBTTtBQUNqQjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9zaWduYXR1cmUvdG9QcmVmaXhlZE1lc3NhZ2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcHJlc2lnbk1lc3NhZ2VQcmVmaXggfSBmcm9tICcuLi8uLi9jb25zdGFudHMvc3RyaW5ncy5qcyc7XG5pbXBvcnQgeyBjb25jYXQgfSBmcm9tICcuLi9kYXRhL2NvbmNhdC5qcyc7XG5pbXBvcnQgeyBzaXplIH0gZnJvbSAnLi4vZGF0YS9zaXplLmpzJztcbmltcG9ydCB7IGJ5dGVzVG9IZXgsIHN0cmluZ1RvSGV4LCB9IGZyb20gJy4uL2VuY29kaW5nL3RvSGV4LmpzJztcbmV4cG9ydCBmdW5jdGlvbiB0b1ByZWZpeGVkTWVzc2FnZShtZXNzYWdlXykge1xuICAgIGNvbnN0IG1lc3NhZ2UgPSAoKCkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIG1lc3NhZ2VfID09PSAnc3RyaW5nJylcbiAgICAgICAgICAgIHJldHVybiBzdHJpbmdUb0hleChtZXNzYWdlXyk7XG4gICAgICAgIGlmICh0eXBlb2YgbWVzc2FnZV8ucmF3ID09PSAnc3RyaW5nJylcbiAgICAgICAgICAgIHJldHVybiBtZXNzYWdlXy5yYXc7XG4gICAgICAgIHJldHVybiBieXRlc1RvSGV4KG1lc3NhZ2VfLnJhdyk7XG4gICAgfSkoKTtcbiAgICBjb25zdCBwcmVmaXggPSBzdHJpbmdUb0hleChgJHtwcmVzaWduTWVzc2FnZVByZWZpeH0ke3NpemUobWVzc2FnZSl9YCk7XG4gICAgcmV0dXJuIGNvbmNhdChbcHJlZml4LCBtZXNzYWdlXSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD10b1ByZWZpeGVkTWVzc2FnZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/signature/toPrefixedMessage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/siwe/parseSiweMessage.js": /*!***************************************************************!*\ !*** ./node_modules/viem/_esm/utils/siwe/parseSiweMessage.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseSiweMessage: () => (/* binding */ parseSiweMessage)\n/* harmony export */ });\n/**\n * @description Parses EIP-4361 formatted message into message fields object.\n *\n * @see https://eips.ethereum.org/EIPS/eip-4361\n *\n * @returns EIP-4361 fields object\n */\nfunction parseSiweMessage(message) {\n const { scheme, statement, ...prefix } = (message.match(prefixRegex)\n ?.groups ?? {});\n const { chainId, expirationTime, issuedAt, notBefore, requestId, ...suffix } = (message.match(suffixRegex)?.groups ?? {});\n const resources = message.split('Resources:')[1]?.split('\\n- ').slice(1);\n return {\n ...prefix,\n ...suffix,\n ...(chainId ? { chainId: Number(chainId) } : {}),\n ...(expirationTime ? { expirationTime: new Date(expirationTime) } : {}),\n ...(issuedAt ? { issuedAt: new Date(issuedAt) } : {}),\n ...(notBefore ? { notBefore: new Date(notBefore) } : {}),\n ...(requestId ? { requestId } : {}),\n ...(resources ? { resources } : {}),\n ...(scheme ? { scheme } : {}),\n ...(statement ? { statement } : {}),\n };\n}\n// https://regexr.com/80gdj\nconst prefixRegex = /^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\\/\\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\\n)(?<address>0x[a-fA-F0-9]{40})\\n\\n(?:(?<statement>.*)\\n\\n)?/;\n// https://regexr.com/80gf9\nconst suffixRegex = /(?:URI: (?<uri>.+))\\n(?:Version: (?<version>.+))\\n(?:Chain ID: (?<chainId>\\d+))\\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\\n(?:Issued At: (?<issuedAt>.+))(?:\\nExpiration Time: (?<expirationTime>.+))?(?:\\nNot Before: (?<notBefore>.+))?(?:\\nRequest ID: (?<requestId>.+))?/;\n//# sourceMappingURL=parseSiweMessage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2l3ZS9wYXJzZVNpd2VNZXNzYWdlLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSwrQkFBK0I7QUFDM0Msc0JBQXNCO0FBQ3RCLFlBQVkscUVBQXFFLDJDQUEyQztBQUM1SDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwyQkFBMkIsSUFBSTtBQUN2RCwrQkFBK0IsMkNBQTJDLElBQUk7QUFDOUUseUJBQXlCLCtCQUErQixJQUFJO0FBQzVELDBCQUEwQixpQ0FBaUMsSUFBSTtBQUMvRCwwQkFBMEIsWUFBWSxJQUFJO0FBQzFDLDBCQUEwQixZQUFZLElBQUk7QUFDMUMsdUJBQXVCLFNBQVMsSUFBSTtBQUNwQywwQkFBMEIsWUFBWSxJQUFJO0FBQzFDO0FBQ0E7QUFDQTtBQUNBLHFHQUFxRyxJQUFJLG1GQUFtRixHQUFHO0FBQy9MO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2l3ZS9wYXJzZVNpd2VNZXNzYWdlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGRlc2NyaXB0aW9uIFBhcnNlcyBFSVAtNDM2MSBmb3JtYXR0ZWQgbWVzc2FnZSBpbnRvIG1lc3NhZ2UgZmllbGRzIG9iamVjdC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNDM2MVxuICpcbiAqIEByZXR1cm5zIEVJUC00MzYxIGZpZWxkcyBvYmplY3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlU2l3ZU1lc3NhZ2UobWVzc2FnZSkge1xuICAgIGNvbnN0IHsgc2NoZW1lLCBzdGF0ZW1lbnQsIC4uLnByZWZpeCB9ID0gKG1lc3NhZ2UubWF0Y2gocHJlZml4UmVnZXgpXG4gICAgICAgID8uZ3JvdXBzID8/IHt9KTtcbiAgICBjb25zdCB7IGNoYWluSWQsIGV4cGlyYXRpb25UaW1lLCBpc3N1ZWRBdCwgbm90QmVmb3JlLCByZXF1ZXN0SWQsIC4uLnN1ZmZpeCB9ID0gKG1lc3NhZ2UubWF0Y2goc3VmZml4UmVnZXgpPy5ncm91cHMgPz8ge30pO1xuICAgIGNvbnN0IHJlc291cmNlcyA9IG1lc3NhZ2Uuc3BsaXQoJ1Jlc291cmNlczonKVsxXT8uc3BsaXQoJ1xcbi0gJykuc2xpY2UoMSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLi4ucHJlZml4LFxuICAgICAgICAuLi5zdWZmaXgsXG4gICAgICAgIC4uLihjaGFpbklkID8geyBjaGFpbklkOiBOdW1iZXIoY2hhaW5JZCkgfSA6IHt9KSxcbiAgICAgICAgLi4uKGV4cGlyYXRpb25UaW1lID8geyBleHBpcmF0aW9uVGltZTogbmV3IERhdGUoZXhwaXJhdGlvblRpbWUpIH0gOiB7fSksXG4gICAgICAgIC4uLihpc3N1ZWRBdCA/IHsgaXNzdWVkQXQ6IG5ldyBEYXRlKGlzc3VlZEF0KSB9IDoge30pLFxuICAgICAgICAuLi4obm90QmVmb3JlID8geyBub3RCZWZvcmU6IG5ldyBEYXRlKG5vdEJlZm9yZSkgfSA6IHt9KSxcbiAgICAgICAgLi4uKHJlcXVlc3RJZCA/IHsgcmVxdWVzdElkIH0gOiB7fSksXG4gICAgICAgIC4uLihyZXNvdXJjZXMgPyB7IHJlc291cmNlcyB9IDoge30pLFxuICAgICAgICAuLi4oc2NoZW1lID8geyBzY2hlbWUgfSA6IHt9KSxcbiAgICAgICAgLi4uKHN0YXRlbWVudCA/IHsgc3RhdGVtZW50IH0gOiB7fSksXG4gICAgfTtcbn1cbi8vIGh0dHBzOi8vcmVnZXhyLmNvbS84MGdkalxuY29uc3QgcHJlZml4UmVnZXggPSAvXig/Oig/PHNjaGVtZT5bYS16QS1aXVthLXpBLVowLTkrLS5dKik6XFwvXFwvKT8oPzxkb21haW4+W2EtekEtWjAtOSstLl0qKD86OlswLTldezEsNX0pPykgKD86d2FudHMgeW91IHRvIHNpZ24gaW4gd2l0aCB5b3VyIEV0aGVyZXVtIGFjY291bnQ6XFxuKSg/PGFkZHJlc3M+MHhbYS1mQS1GMC05XXs0MH0pXFxuXFxuKD86KD88c3RhdGVtZW50Pi4qKVxcblxcbik/Lztcbi8vIGh0dHBzOi8vcmVnZXhyLmNvbS84MGdmOVxuY29uc3Qgc3VmZml4UmVnZXggPSAvKD86VVJJOiAoPzx1cmk+LispKVxcbig/OlZlcnNpb246ICg/PHZlcnNpb24+LispKVxcbig/OkNoYWluIElEOiAoPzxjaGFpbklkPlxcZCspKVxcbig/Ok5vbmNlOiAoPzxub25jZT5bYS16QS1aMC05XSspKVxcbig/Oklzc3VlZCBBdDogKD88aXNzdWVkQXQ+LispKSg/OlxcbkV4cGlyYXRpb24gVGltZTogKD88ZXhwaXJhdGlvblRpbWU+LispKT8oPzpcXG5Ob3QgQmVmb3JlOiAoPzxub3RCZWZvcmU+LispKT8oPzpcXG5SZXF1ZXN0IElEOiAoPzxyZXF1ZXN0SWQ+LispKT8vO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cGFyc2VTaXdlTWVzc2FnZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/siwe/parseSiweMessage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/siwe/validateSiweMessage.js": /*!******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/siwe/validateSiweMessage.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ validateSiweMessage: () => (/* binding */ validateSiweMessage)\n/* harmony export */ });\n/* harmony import */ var _address_isAddress_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../address/isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var _address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../address/isAddressEqual.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddressEqual.js\");\n\n\n/**\n * @description Validates EIP-4361 message.\n *\n * @see https://eips.ethereum.org/EIPS/eip-4361\n */\nfunction validateSiweMessage(parameters) {\n const { address, domain, message, nonce, scheme, time = new Date(), } = parameters;\n if (domain && message.domain !== domain)\n return false;\n if (nonce && message.nonce !== nonce)\n return false;\n if (scheme && message.scheme !== scheme)\n return false;\n if (message.expirationTime && time >= message.expirationTime)\n return false;\n if (message.notBefore && time < message.notBefore)\n return false;\n try {\n if (!message.address)\n return false;\n if (!(0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_0__.isAddress)(message.address, { strict: false }))\n return false;\n if (address && !(0,_address_isAddressEqual_js__WEBPACK_IMPORTED_MODULE_1__.isAddressEqual)(message.address, address))\n return false;\n }\n catch {\n return false;\n }\n return true;\n}\n//# sourceMappingURL=validateSiweMessage.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc2l3ZS92YWxpZGF0ZVNpd2VNZXNzYWdlLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFvRDtBQUNVO0FBQzlEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksOERBQThEO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSxnRUFBUyxvQkFBb0IsZUFBZTtBQUN6RDtBQUNBLHdCQUF3QiwwRUFBYztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9zaXdlL3ZhbGlkYXRlU2l3ZU1lc3NhZ2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNBZGRyZXNzIH0gZnJvbSAnLi4vYWRkcmVzcy9pc0FkZHJlc3MuanMnO1xuaW1wb3J0IHsgaXNBZGRyZXNzRXF1YWwgfSBmcm9tICcuLi9hZGRyZXNzL2lzQWRkcmVzc0VxdWFsLmpzJztcbi8qKlxuICogQGRlc2NyaXB0aW9uIFZhbGlkYXRlcyBFSVAtNDM2MSBtZXNzYWdlLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC00MzYxXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNpd2VNZXNzYWdlKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGRvbWFpbiwgbWVzc2FnZSwgbm9uY2UsIHNjaGVtZSwgdGltZSA9IG5ldyBEYXRlKCksIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGlmIChkb21haW4gJiYgbWVzc2FnZS5kb21haW4gIT09IGRvbWFpbilcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChub25jZSAmJiBtZXNzYWdlLm5vbmNlICE9PSBub25jZSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChzY2hlbWUgJiYgbWVzc2FnZS5zY2hlbWUgIT09IHNjaGVtZSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChtZXNzYWdlLmV4cGlyYXRpb25UaW1lICYmIHRpbWUgPj0gbWVzc2FnZS5leHBpcmF0aW9uVGltZSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChtZXNzYWdlLm5vdEJlZm9yZSAmJiB0aW1lIDwgbWVzc2FnZS5ub3RCZWZvcmUpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB0cnkge1xuICAgICAgICBpZiAoIW1lc3NhZ2UuYWRkcmVzcylcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKCFpc0FkZHJlc3MobWVzc2FnZS5hZGRyZXNzLCB7IHN0cmljdDogZmFsc2UgfSkpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmIChhZGRyZXNzICYmICFpc0FkZHJlc3NFcXVhbChtZXNzYWdlLmFkZHJlc3MsIGFkZHJlc3MpKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBjYXRjaCB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD12YWxpZGF0ZVNpd2VNZXNzYWdlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/siwe/validateSiweMessage.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/stateOverride.js": /*!*******************************************************!*\ !*** ./node_modules/viem/_esm/utils/stateOverride.js ***! \*******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ serializeAccountStateOverride: () => (/* binding */ serializeAccountStateOverride),\n/* harmony export */ serializeStateMapping: () => (/* binding */ serializeStateMapping),\n/* harmony export */ serializeStateOverride: () => (/* binding */ serializeStateOverride)\n/* harmony export */ });\n/* harmony import */ var _errors_address_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../errors/address.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/address.js\");\n/* harmony import */ var _errors_data_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../errors/data.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/data.js\");\n/* harmony import */ var _errors_stateOverride_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../errors/stateOverride.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/stateOverride.js\");\n/* harmony import */ var _address_isAddress_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./address/isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n\n\n\n\n\n/** @internal */\nfunction serializeStateMapping(stateMapping) {\n if (!stateMapping || stateMapping.length === 0)\n return undefined;\n return stateMapping.reduce((acc, { slot, value }) => {\n if (slot.length !== 66)\n throw new _errors_data_js__WEBPACK_IMPORTED_MODULE_0__.InvalidBytesLengthError({\n size: slot.length,\n targetSize: 66,\n type: 'hex',\n });\n if (value.length !== 66)\n throw new _errors_data_js__WEBPACK_IMPORTED_MODULE_0__.InvalidBytesLengthError({\n size: value.length,\n targetSize: 66,\n type: 'hex',\n });\n acc[slot] = value;\n return acc;\n }, {});\n}\n/** @internal */\nfunction serializeAccountStateOverride(parameters) {\n const { balance, nonce, state, stateDiff, code } = parameters;\n const rpcAccountStateOverride = {};\n if (code !== undefined)\n rpcAccountStateOverride.code = code;\n if (balance !== undefined)\n rpcAccountStateOverride.balance = (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(balance);\n if (nonce !== undefined)\n rpcAccountStateOverride.nonce = (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_1__.numberToHex)(nonce);\n if (state !== undefined)\n rpcAccountStateOverride.state = serializeStateMapping(state);\n if (stateDiff !== undefined) {\n if (rpcAccountStateOverride.state)\n throw new _errors_stateOverride_js__WEBPACK_IMPORTED_MODULE_2__.StateAssignmentConflictError();\n rpcAccountStateOverride.stateDiff = serializeStateMapping(stateDiff);\n }\n return rpcAccountStateOverride;\n}\n/** @internal */\nfunction serializeStateOverride(parameters) {\n if (!parameters)\n return undefined;\n const rpcStateOverride = {};\n for (const { address, ...accountState } of parameters) {\n if (!(0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_3__.isAddress)(address, { strict: false }))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_4__.InvalidAddressError({ address });\n if (rpcStateOverride[address])\n throw new _errors_stateOverride_js__WEBPACK_IMPORTED_MODULE_2__.AccountStateConflictError({ address: address });\n rpcStateOverride[address] = serializeAccountStateOverride(accountState);\n }\n return rpcStateOverride;\n}\n//# sourceMappingURL=stateOverride.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvc3RhdGVPdmVycmlkZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUE0RDtBQUNDO0FBQ3lDO0FBQ25EO0FBQ0Q7QUFDbEQ7QUFDTztBQUNQO0FBQ0E7QUFDQSx1Q0FBdUMsYUFBYTtBQUNwRDtBQUNBLHNCQUFzQixvRUFBdUI7QUFDN0M7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0Esc0JBQXNCLG9FQUF1QjtBQUM3QztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLEtBQUssSUFBSTtBQUNUO0FBQ0E7QUFDTztBQUNQLFlBQVkseUNBQXlDO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLCtEQUFXO0FBQ3JEO0FBQ0Esd0NBQXdDLCtEQUFXO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLGtGQUE0QjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsMkJBQTJCO0FBQzVDLGFBQWEsZ0VBQVMsWUFBWSxlQUFlO0FBQ2pELHNCQUFzQixtRUFBbUIsR0FBRyxTQUFTO0FBQ3JEO0FBQ0Esc0JBQXNCLCtFQUF5QixHQUFHLGtCQUFrQjtBQUNwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy9zdGF0ZU92ZXJyaWRlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludmFsaWRBZGRyZXNzRXJyb3IsIH0gZnJvbSAnLi4vZXJyb3JzL2FkZHJlc3MuanMnO1xuaW1wb3J0IHsgSW52YWxpZEJ5dGVzTGVuZ3RoRXJyb3IsIH0gZnJvbSAnLi4vZXJyb3JzL2RhdGEuanMnO1xuaW1wb3J0IHsgQWNjb3VudFN0YXRlQ29uZmxpY3RFcnJvciwgU3RhdGVBc3NpZ25tZW50Q29uZmxpY3RFcnJvciwgfSBmcm9tICcuLi9lcnJvcnMvc3RhdGVPdmVycmlkZS5qcyc7XG5pbXBvcnQgeyBpc0FkZHJlc3MgfSBmcm9tICcuL2FkZHJlc3MvaXNBZGRyZXNzLmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4IH0gZnJvbSAnLi9lbmNvZGluZy90b0hleC5qcyc7XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplU3RhdGVNYXBwaW5nKHN0YXRlTWFwcGluZykge1xuICAgIGlmICghc3RhdGVNYXBwaW5nIHx8IHN0YXRlTWFwcGluZy5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIHN0YXRlTWFwcGluZy5yZWR1Y2UoKGFjYywgeyBzbG90LCB2YWx1ZSB9KSA9PiB7XG4gICAgICAgIGlmIChzbG90Lmxlbmd0aCAhPT0gNjYpXG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEJ5dGVzTGVuZ3RoRXJyb3Ioe1xuICAgICAgICAgICAgICAgIHNpemU6IHNsb3QubGVuZ3RoLFxuICAgICAgICAgICAgICAgIHRhcmdldFNpemU6IDY2LFxuICAgICAgICAgICAgICAgIHR5cGU6ICdoZXgnLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIGlmICh2YWx1ZS5sZW5ndGggIT09IDY2KVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRCeXRlc0xlbmd0aEVycm9yKHtcbiAgICAgICAgICAgICAgICBzaXplOiB2YWx1ZS5sZW5ndGgsXG4gICAgICAgICAgICAgICAgdGFyZ2V0U2l6ZTogNjYsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2hleCcsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgYWNjW3Nsb3RdID0gdmFsdWU7XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNlcmlhbGl6ZUFjY291bnRTdGF0ZU92ZXJyaWRlKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGJhbGFuY2UsIG5vbmNlLCBzdGF0ZSwgc3RhdGVEaWZmLCBjb2RlIH0gPSBwYXJhbWV0ZXJzO1xuICAgIGNvbnN0IHJwY0FjY291bnRTdGF0ZU92ZXJyaWRlID0ge307XG4gICAgaWYgKGNvZGUgIT09IHVuZGVmaW5lZClcbiAgICAgICAgcnBjQWNjb3VudFN0YXRlT3ZlcnJpZGUuY29kZSA9IGNvZGU7XG4gICAgaWYgKGJhbGFuY2UgIT09IHVuZGVmaW5lZClcbiAgICAgICAgcnBjQWNjb3VudFN0YXRlT3ZlcnJpZGUuYmFsYW5jZSA9IG51bWJlclRvSGV4KGJhbGFuY2UpO1xuICAgIGlmIChub25jZSAhPT0gdW5kZWZpbmVkKVxuICAgICAgICBycGNBY2NvdW50U3RhdGVPdmVycmlkZS5ub25jZSA9IG51bWJlclRvSGV4KG5vbmNlKTtcbiAgICBpZiAoc3RhdGUgIT09IHVuZGVmaW5lZClcbiAgICAgICAgcnBjQWNjb3VudFN0YXRlT3ZlcnJpZGUuc3RhdGUgPSBzZXJpYWxpemVTdGF0ZU1hcHBpbmcoc3RhdGUpO1xuICAgIGlmIChzdGF0ZURpZmYgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAocnBjQWNjb3VudFN0YXRlT3ZlcnJpZGUuc3RhdGUpXG4gICAgICAgICAgICB0aHJvdyBuZXcgU3RhdGVBc3NpZ25tZW50Q29uZmxpY3RFcnJvcigpO1xuICAgICAgICBycGNBY2NvdW50U3RhdGVPdmVycmlkZS5zdGF0ZURpZmYgPSBzZXJpYWxpemVTdGF0ZU1hcHBpbmcoc3RhdGVEaWZmKTtcbiAgICB9XG4gICAgcmV0dXJuIHJwY0FjY291bnRTdGF0ZU92ZXJyaWRlO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNlcmlhbGl6ZVN0YXRlT3ZlcnJpZGUocGFyYW1ldGVycykge1xuICAgIGlmICghcGFyYW1ldGVycylcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBjb25zdCBycGNTdGF0ZU92ZXJyaWRlID0ge307XG4gICAgZm9yIChjb25zdCB7IGFkZHJlc3MsIC4uLmFjY291bnRTdGF0ZSB9IG9mIHBhcmFtZXRlcnMpIHtcbiAgICAgICAgaWYgKCFpc0FkZHJlc3MoYWRkcmVzcywgeyBzdHJpY3Q6IGZhbHNlIH0pKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBZGRyZXNzRXJyb3IoeyBhZGRyZXNzIH0pO1xuICAgICAgICBpZiAocnBjU3RhdGVPdmVycmlkZVthZGRyZXNzXSlcbiAgICAgICAgICAgIHRocm93IG5ldyBBY2NvdW50U3RhdGVDb25mbGljdEVycm9yKHsgYWRkcmVzczogYWRkcmVzcyB9KTtcbiAgICAgICAgcnBjU3RhdGVPdmVycmlkZVthZGRyZXNzXSA9IHNlcmlhbGl6ZUFjY291bnRTdGF0ZU92ZXJyaWRlKGFjY291bnRTdGF0ZSk7XG4gICAgfVxuICAgIHJldHVybiBycGNTdGF0ZU92ZXJyaWRlO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3RhdGVPdmVycmlkZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/stateOverride.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/_esm/utils/transaction/assertRequest.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertRequest: () => (/* binding */ assertRequest)\n/* harmony export */ });\n/* harmony import */ var _accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../accounts/utils/parseAccount.js */ \"(app-pages-browser)/./node_modules/viem/_esm/accounts/utils/parseAccount.js\");\n/* harmony import */ var _constants_number_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../constants/number.js */ \"(app-pages-browser)/./node_modules/viem/_esm/constants/number.js\");\n/* harmony import */ var _errors_address_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../errors/address.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/address.js\");\n/* harmony import */ var _errors_node_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../errors/node.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/node.js\");\n/* harmony import */ var _errors_transaction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../errors/transaction.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/transaction.js\");\n/* harmony import */ var _address_isAddress_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../address/isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n\n\n\n\n\n\nfunction assertRequest(args) {\n const { account: account_, gasPrice, maxFeePerGas, maxPriorityFeePerGas, to, } = args;\n const account = account_ ? (0,_accounts_utils_parseAccount_js__WEBPACK_IMPORTED_MODULE_0__.parseAccount)(account_) : undefined;\n if (account && !(0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_1__.isAddress)(account.address))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_2__.InvalidAddressError({ address: account.address });\n if (to && !(0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_1__.isAddress)(to))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_2__.InvalidAddressError({ address: to });\n if (typeof gasPrice !== 'undefined' &&\n (typeof maxFeePerGas !== 'undefined' ||\n typeof maxPriorityFeePerGas !== 'undefined'))\n throw new _errors_transaction_js__WEBPACK_IMPORTED_MODULE_3__.FeeConflictError();\n if (maxFeePerGas && maxFeePerGas > _constants_number_js__WEBPACK_IMPORTED_MODULE_4__.maxUint256)\n throw new _errors_node_js__WEBPACK_IMPORTED_MODULE_5__.FeeCapTooHighError({ maxFeePerGas });\n if (maxPriorityFeePerGas &&\n maxFeePerGas &&\n maxPriorityFeePerGas > maxFeePerGas)\n throw new _errors_node_js__WEBPACK_IMPORTED_MODULE_5__.TipAboveFeeCapError({ maxFeePerGas, maxPriorityFeePerGas });\n}\n//# sourceMappingURL=assertRequest.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvdHJhbnNhY3Rpb24vYXNzZXJ0UmVxdWVzdC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQXFFO0FBQ2Q7QUFDUTtBQUNpQjtBQUNoQjtBQUNaO0FBQzdDO0FBQ1AsWUFBWSx1RUFBdUU7QUFDbkYsK0JBQStCLDZFQUFZO0FBQzNDLG9CQUFvQixnRUFBUztBQUM3QixrQkFBa0IsbUVBQW1CLEdBQUcsMEJBQTBCO0FBQ2xFLGVBQWUsZ0VBQVM7QUFDeEIsa0JBQWtCLG1FQUFtQixHQUFHLGFBQWE7QUFDckQ7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9FQUFnQjtBQUNsQyx1Q0FBdUMsNERBQVU7QUFDakQsa0JBQWtCLCtEQUFrQixHQUFHLGNBQWM7QUFDckQ7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGdFQUFtQixHQUFHLG9DQUFvQztBQUM1RTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vX2VzbS91dGlscy90cmFuc2FjdGlvbi9hc3NlcnRSZXF1ZXN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQWNjb3VudCwgfSBmcm9tICcuLi8uLi9hY2NvdW50cy91dGlscy9wYXJzZUFjY291bnQuanMnO1xuaW1wb3J0IHsgbWF4VWludDI1NiB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9udW1iZXIuanMnO1xuaW1wb3J0IHsgSW52YWxpZEFkZHJlc3NFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvYWRkcmVzcy5qcyc7XG5pbXBvcnQgeyBGZWVDYXBUb29IaWdoRXJyb3IsIFRpcEFib3ZlRmVlQ2FwRXJyb3IsIH0gZnJvbSAnLi4vLi4vZXJyb3JzL25vZGUuanMnO1xuaW1wb3J0IHsgRmVlQ29uZmxpY3RFcnJvciwgfSBmcm9tICcuLi8uLi9lcnJvcnMvdHJhbnNhY3Rpb24uanMnO1xuaW1wb3J0IHsgaXNBZGRyZXNzIH0gZnJvbSAnLi4vYWRkcmVzcy9pc0FkZHJlc3MuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFJlcXVlc3QoYXJncykge1xuICAgIGNvbnN0IHsgYWNjb3VudDogYWNjb3VudF8sIGdhc1ByaWNlLCBtYXhGZWVQZXJHYXMsIG1heFByaW9yaXR5RmVlUGVyR2FzLCB0bywgfSA9IGFyZ3M7XG4gICAgY29uc3QgYWNjb3VudCA9IGFjY291bnRfID8gcGFyc2VBY2NvdW50KGFjY291bnRfKSA6IHVuZGVmaW5lZDtcbiAgICBpZiAoYWNjb3VudCAmJiAhaXNBZGRyZXNzKGFjY291bnQuYWRkcmVzcykpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQWRkcmVzc0Vycm9yKHsgYWRkcmVzczogYWNjb3VudC5hZGRyZXNzIH0pO1xuICAgIGlmICh0byAmJiAhaXNBZGRyZXNzKHRvKSlcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBZGRyZXNzRXJyb3IoeyBhZGRyZXNzOiB0byB9KTtcbiAgICBpZiAodHlwZW9mIGdhc1ByaWNlICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAodHlwZW9mIG1heEZlZVBlckdhcyAhPT0gJ3VuZGVmaW5lZCcgfHxcbiAgICAgICAgICAgIHR5cGVvZiBtYXhQcmlvcml0eUZlZVBlckdhcyAhPT0gJ3VuZGVmaW5lZCcpKVxuICAgICAgICB0aHJvdyBuZXcgRmVlQ29uZmxpY3RFcnJvcigpO1xuICAgIGlmIChtYXhGZWVQZXJHYXMgJiYgbWF4RmVlUGVyR2FzID4gbWF4VWludDI1NilcbiAgICAgICAgdGhyb3cgbmV3IEZlZUNhcFRvb0hpZ2hFcnJvcih7IG1heEZlZVBlckdhcyB9KTtcbiAgICBpZiAobWF4UHJpb3JpdHlGZWVQZXJHYXMgJiZcbiAgICAgICAgbWF4RmVlUGVyR2FzICYmXG4gICAgICAgIG1heFByaW9yaXR5RmVlUGVyR2FzID4gbWF4RmVlUGVyR2FzKVxuICAgICAgICB0aHJvdyBuZXcgVGlwQWJvdmVGZWVDYXBFcnJvcih7IG1heEZlZVBlckdhcywgbWF4UHJpb3JpdHlGZWVQZXJHYXMgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hc3NlcnRSZXF1ZXN0LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/transaction/assertRequest.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/_esm/utils/typedData.js": /*!***************************************************!*\ !*** ./node_modules/viem/_esm/utils/typedData.js ***! \***************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ domainSeparator: () => (/* binding */ domainSeparator),\n/* harmony export */ getTypesForEIP712Domain: () => (/* binding */ getTypesForEIP712Domain),\n/* harmony export */ serializeTypedData: () => (/* binding */ serializeTypedData),\n/* harmony export */ validateTypedData: () => (/* binding */ validateTypedData)\n/* harmony export */ });\n/* harmony import */ var _errors_abi_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../errors/abi.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/abi.js\");\n/* harmony import */ var _errors_address_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../errors/address.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/address.js\");\n/* harmony import */ var _errors_typedData_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../errors/typedData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/errors/typedData.js\");\n/* harmony import */ var _address_isAddress_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./address/isAddress.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/address/isAddress.js\");\n/* harmony import */ var _data_size_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./data/size.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/data/size.js\");\n/* harmony import */ var _encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./encoding/toHex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/encoding/toHex.js\");\n/* harmony import */ var _regex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./regex.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/regex.js\");\n/* harmony import */ var _signature_hashTypedData_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./signature/hashTypedData.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/signature/hashTypedData.js\");\n/* harmony import */ var _stringify_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./stringify.js */ \"(app-pages-browser)/./node_modules/viem/_esm/utils/stringify.js\");\n\n\n\n\n\n\n\n\n\nfunction serializeTypedData(parameters) {\n const { domain: domain_, message: message_, primaryType, types, } = parameters;\n const normalizeData = (struct, data_) => {\n const data = { ...data_ };\n for (const param of struct) {\n const { name, type } = param;\n if (type === 'address')\n data[name] = data[name].toLowerCase();\n }\n return data;\n };\n const domain = (() => {\n if (!types.EIP712Domain)\n return {};\n if (!domain_)\n return {};\n return normalizeData(types.EIP712Domain, domain_);\n })();\n const message = (() => {\n if (primaryType === 'EIP712Domain')\n return undefined;\n return normalizeData(types[primaryType], message_);\n })();\n return (0,_stringify_js__WEBPACK_IMPORTED_MODULE_0__.stringify)({ domain, message, primaryType, types });\n}\nfunction validateTypedData(parameters) {\n const { domain, message, primaryType, types } = parameters;\n const validateData = (struct, data) => {\n for (const param of struct) {\n const { name, type } = param;\n const value = data[name];\n const integerMatch = type.match(_regex_js__WEBPACK_IMPORTED_MODULE_1__.integerRegex);\n if (integerMatch &&\n (typeof value === 'number' || typeof value === 'bigint')) {\n const [_type, base, size_] = integerMatch;\n // If number cannot be cast to a sized hex value, it is out of range\n // and will throw.\n (0,_encoding_toHex_js__WEBPACK_IMPORTED_MODULE_2__.numberToHex)(value, {\n signed: base === 'int',\n size: Number.parseInt(size_, 10) / 8,\n });\n }\n if (type === 'address' && typeof value === 'string' && !(0,_address_isAddress_js__WEBPACK_IMPORTED_MODULE_3__.isAddress)(value))\n throw new _errors_address_js__WEBPACK_IMPORTED_MODULE_4__.InvalidAddressError({ address: value });\n const bytesMatch = type.match(_regex_js__WEBPACK_IMPORTED_MODULE_1__.bytesRegex);\n if (bytesMatch) {\n const [_type, size_] = bytesMatch;\n if (size_ && (0,_data_size_js__WEBPACK_IMPORTED_MODULE_5__.size)(value) !== Number.parseInt(size_, 10))\n throw new _errors_abi_js__WEBPACK_IMPORTED_MODULE_6__.BytesSizeMismatchError({\n expectedSize: Number.parseInt(size_, 10),\n givenSize: (0,_data_size_js__WEBPACK_IMPORTED_MODULE_5__.size)(value),\n });\n }\n const struct = types[type];\n if (struct) {\n validateReference(type);\n validateData(struct, value);\n }\n }\n };\n // Validate domain types.\n if (types.EIP712Domain && domain) {\n if (typeof domain !== 'object')\n throw new _errors_typedData_js__WEBPACK_IMPORTED_MODULE_7__.InvalidDomainError({ domain });\n validateData(types.EIP712Domain, domain);\n }\n // Validate message types.\n if (primaryType !== 'EIP712Domain') {\n if (types[primaryType])\n validateData(types[primaryType], message);\n else\n throw new _errors_typedData_js__WEBPACK_IMPORTED_MODULE_7__.InvalidPrimaryTypeError({ primaryType, types });\n }\n}\nfunction getTypesForEIP712Domain({ domain, }) {\n return [\n typeof domain?.name === 'string' && { name: 'name', type: 'string' },\n domain?.version && { name: 'version', type: 'string' },\n (typeof domain?.chainId === 'number' ||\n typeof domain?.chainId === 'bigint') && {\n name: 'chainId',\n type: 'uint256',\n },\n domain?.verifyingContract && {\n name: 'verifyingContract',\n type: 'address',\n },\n domain?.salt && { name: 'salt', type: 'bytes32' },\n ].filter(Boolean);\n}\nfunction domainSeparator({ domain }) {\n return (0,_signature_hashTypedData_js__WEBPACK_IMPORTED_MODULE_8__.hashDomain)({\n domain,\n types: {\n EIP712Domain: getTypesForEIP712Domain({ domain }),\n },\n });\n}\n/** @internal */\nfunction validateReference(type) {\n // Struct type must not be a Solidity type.\n if (type === 'address' ||\n type === 'bool' ||\n type === 'string' ||\n type.startsWith('bytes') ||\n type.startsWith('uint') ||\n type.startsWith('int'))\n throw new _errors_typedData_js__WEBPACK_IMPORTED_MODULE_7__.InvalidStructTypeError({ type });\n}\n//# sourceMappingURL=typedData.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL19lc20vdXRpbHMvdHlwZWREYXRhLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBMEQ7QUFDQztBQUNtRDtBQUMzRDtBQUNiO0FBQ1k7QUFDSTtBQUNLO0FBQ2hCO0FBQ3BDO0FBQ1AsWUFBWSwwREFBMEQ7QUFDdEU7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQSxvQkFBb0IsYUFBYTtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLFdBQVcsd0RBQVMsR0FBRyxxQ0FBcUM7QUFDNUQ7QUFDTztBQUNQLFlBQVksc0NBQXNDO0FBQ2xEO0FBQ0E7QUFDQSxvQkFBb0IsYUFBYTtBQUNqQztBQUNBLDRDQUE0QyxtREFBWTtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLCtEQUFXO0FBQzNCO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxvRUFBb0UsZ0VBQVM7QUFDN0UsMEJBQTBCLG1FQUFtQixHQUFHLGdCQUFnQjtBQUNoRSwwQ0FBMEMsaURBQVU7QUFDcEQ7QUFDQTtBQUNBLDZCQUE2QixtREFBSTtBQUNqQyw4QkFBOEIsa0VBQXNCO0FBQ3BEO0FBQ0EsbUNBQW1DLG1EQUFJO0FBQ3ZDLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLG9FQUFrQixHQUFHLFFBQVE7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IseUVBQXVCLEdBQUcsb0JBQW9CO0FBQ3BFO0FBQ0E7QUFDTyxtQ0FBbUMsU0FBUztBQUNuRDtBQUNBLDhDQUE4Qyw4QkFBOEI7QUFDNUUsNkJBQTZCLGlDQUFpQztBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsMEJBQTBCLCtCQUErQjtBQUN6RDtBQUNBO0FBQ08sMkJBQTJCLFFBQVE7QUFDMUMsV0FBVyx1RUFBVTtBQUNyQjtBQUNBO0FBQ0Esb0RBQW9ELFFBQVE7QUFDNUQsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQix3RUFBc0IsR0FBRyxNQUFNO0FBQ2pEO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9fZXNtL3V0aWxzL3R5cGVkRGF0YS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCeXRlc1NpemVNaXNtYXRjaEVycm9yIH0gZnJvbSAnLi4vZXJyb3JzL2FiaS5qcyc7XG5pbXBvcnQgeyBJbnZhbGlkQWRkcmVzc0Vycm9yIH0gZnJvbSAnLi4vZXJyb3JzL2FkZHJlc3MuanMnO1xuaW1wb3J0IHsgSW52YWxpZERvbWFpbkVycm9yLCBJbnZhbGlkUHJpbWFyeVR5cGVFcnJvciwgSW52YWxpZFN0cnVjdFR5cGVFcnJvciwgfSBmcm9tICcuLi9lcnJvcnMvdHlwZWREYXRhLmpzJztcbmltcG9ydCB7IGlzQWRkcmVzcyB9IGZyb20gJy4vYWRkcmVzcy9pc0FkZHJlc3MuanMnO1xuaW1wb3J0IHsgc2l6ZSB9IGZyb20gJy4vZGF0YS9zaXplLmpzJztcbmltcG9ydCB7IG51bWJlclRvSGV4IH0gZnJvbSAnLi9lbmNvZGluZy90b0hleC5qcyc7XG5pbXBvcnQgeyBieXRlc1JlZ2V4LCBpbnRlZ2VyUmVnZXggfSBmcm9tICcuL3JlZ2V4LmpzJztcbmltcG9ydCB7IGhhc2hEb21haW4sIH0gZnJvbSAnLi9zaWduYXR1cmUvaGFzaFR5cGVkRGF0YS5qcyc7XG5pbXBvcnQgeyBzdHJpbmdpZnkgfSBmcm9tICcuL3N0cmluZ2lmeS5qcyc7XG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplVHlwZWREYXRhKHBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCB7IGRvbWFpbjogZG9tYWluXywgbWVzc2FnZTogbWVzc2FnZV8sIHByaW1hcnlUeXBlLCB0eXBlcywgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3Qgbm9ybWFsaXplRGF0YSA9IChzdHJ1Y3QsIGRhdGFfKSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB7IC4uLmRhdGFfIH07XG4gICAgICAgIGZvciAoY29uc3QgcGFyYW0gb2Ygc3RydWN0KSB7XG4gICAgICAgICAgICBjb25zdCB7IG5hbWUsIHR5cGUgfSA9IHBhcmFtO1xuICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdhZGRyZXNzJylcbiAgICAgICAgICAgICAgICBkYXRhW25hbWVdID0gZGF0YVtuYW1lXS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgIH07XG4gICAgY29uc3QgZG9tYWluID0gKCgpID0+IHtcbiAgICAgICAgaWYgKCF0eXBlcy5FSVA3MTJEb21haW4pXG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIGlmICghZG9tYWluXylcbiAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZURhdGEodHlwZXMuRUlQNzEyRG9tYWluLCBkb21haW5fKTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IG1lc3NhZ2UgPSAoKCkgPT4ge1xuICAgICAgICBpZiAocHJpbWFyeVR5cGUgPT09ICdFSVA3MTJEb21haW4nKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZURhdGEodHlwZXNbcHJpbWFyeVR5cGVdLCBtZXNzYWdlXyk7XG4gICAgfSkoKTtcbiAgICByZXR1cm4gc3RyaW5naWZ5KHsgZG9tYWluLCBtZXNzYWdlLCBwcmltYXJ5VHlwZSwgdHlwZXMgfSk7XG59XG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUeXBlZERhdGEocGFyYW1ldGVycykge1xuICAgIGNvbnN0IHsgZG9tYWluLCBtZXNzYWdlLCBwcmltYXJ5VHlwZSwgdHlwZXMgfSA9IHBhcmFtZXRlcnM7XG4gICAgY29uc3QgdmFsaWRhdGVEYXRhID0gKHN0cnVjdCwgZGF0YSkgPT4ge1xuICAgICAgICBmb3IgKGNvbnN0IHBhcmFtIG9mIHN0cnVjdCkge1xuICAgICAgICAgICAgY29uc3QgeyBuYW1lLCB0eXBlIH0gPSBwYXJhbTtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gZGF0YVtuYW1lXTtcbiAgICAgICAgICAgIGNvbnN0IGludGVnZXJNYXRjaCA9IHR5cGUubWF0Y2goaW50ZWdlclJlZ2V4KTtcbiAgICAgICAgICAgIGlmIChpbnRlZ2VyTWF0Y2ggJiZcbiAgICAgICAgICAgICAgICAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyB8fCB0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IFtfdHlwZSwgYmFzZSwgc2l6ZV9dID0gaW50ZWdlck1hdGNoO1xuICAgICAgICAgICAgICAgIC8vIElmIG51bWJlciBjYW5ub3QgYmUgY2FzdCB0byBhIHNpemVkIGhleCB2YWx1ZSwgaXQgaXMgb3V0IG9mIHJhbmdlXG4gICAgICAgICAgICAgICAgLy8gYW5kIHdpbGwgdGhyb3cuXG4gICAgICAgICAgICAgICAgbnVtYmVyVG9IZXgodmFsdWUsIHtcbiAgICAgICAgICAgICAgICAgICAgc2lnbmVkOiBiYXNlID09PSAnaW50JyxcbiAgICAgICAgICAgICAgICAgICAgc2l6ZTogTnVtYmVyLnBhcnNlSW50KHNpemVfLCAxMCkgLyA4LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdhZGRyZXNzJyAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmICFpc0FkZHJlc3ModmFsdWUpKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkQWRkcmVzc0Vycm9yKHsgYWRkcmVzczogdmFsdWUgfSk7XG4gICAgICAgICAgICBjb25zdCBieXRlc01hdGNoID0gdHlwZS5tYXRjaChieXRlc1JlZ2V4KTtcbiAgICAgICAgICAgIGlmIChieXRlc01hdGNoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgW190eXBlLCBzaXplX10gPSBieXRlc01hdGNoO1xuICAgICAgICAgICAgICAgIGlmIChzaXplXyAmJiBzaXplKHZhbHVlKSAhPT0gTnVtYmVyLnBhcnNlSW50KHNpemVfLCAxMCkpXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBCeXRlc1NpemVNaXNtYXRjaEVycm9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkU2l6ZTogTnVtYmVyLnBhcnNlSW50KHNpemVfLCAxMCksXG4gICAgICAgICAgICAgICAgICAgICAgICBnaXZlblNpemU6IHNpemUodmFsdWUpLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHN0cnVjdCA9IHR5cGVzW3R5cGVdO1xuICAgICAgICAgICAgaWYgKHN0cnVjdCkge1xuICAgICAgICAgICAgICAgIHZhbGlkYXRlUmVmZXJlbmNlKHR5cGUpO1xuICAgICAgICAgICAgICAgIHZhbGlkYXRlRGF0YShzdHJ1Y3QsIHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG4gICAgLy8gVmFsaWRhdGUgZG9tYWluIHR5cGVzLlxuICAgIGlmICh0eXBlcy5FSVA3MTJEb21haW4gJiYgZG9tYWluKSB7XG4gICAgICAgIGlmICh0eXBlb2YgZG9tYWluICE9PSAnb2JqZWN0JylcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkRG9tYWluRXJyb3IoeyBkb21haW4gfSk7XG4gICAgICAgIHZhbGlkYXRlRGF0YSh0eXBlcy5FSVA3MTJEb21haW4sIGRvbWFpbik7XG4gICAgfVxuICAgIC8vIFZhbGlkYXRlIG1lc3NhZ2UgdHlwZXMuXG4gICAgaWYgKHByaW1hcnlUeXBlICE9PSAnRUlQNzEyRG9tYWluJykge1xuICAgICAgICBpZiAodHlwZXNbcHJpbWFyeVR5cGVdKVxuICAgICAgICAgICAgdmFsaWRhdGVEYXRhKHR5cGVzW3ByaW1hcnlUeXBlXSwgbWVzc2FnZSk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUHJpbWFyeVR5cGVFcnJvcih7IHByaW1hcnlUeXBlLCB0eXBlcyB9KTtcbiAgICB9XG59XG5leHBvcnQgZnVuY3Rpb24gZ2V0VHlwZXNGb3JFSVA3MTJEb21haW4oeyBkb21haW4sIH0pIHtcbiAgICByZXR1cm4gW1xuICAgICAgICB0eXBlb2YgZG9tYWluPy5uYW1lID09PSAnc3RyaW5nJyAmJiB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgZG9tYWluPy52ZXJzaW9uICYmIHsgbmFtZTogJ3ZlcnNpb24nLCB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAodHlwZW9mIGRvbWFpbj8uY2hhaW5JZCA9PT0gJ251bWJlcicgfHxcbiAgICAgICAgICAgIHR5cGVvZiBkb21haW4/LmNoYWluSWQgPT09ICdiaWdpbnQnKSAmJiB7XG4gICAgICAgICAgICBuYW1lOiAnY2hhaW5JZCcsXG4gICAgICAgICAgICB0eXBlOiAndWludDI1NicsXG4gICAgICAgIH0sXG4gICAgICAgIGRvbWFpbj8udmVyaWZ5aW5nQ29udHJhY3QgJiYge1xuICAgICAgICAgICAgbmFtZTogJ3ZlcmlmeWluZ0NvbnRyYWN0JyxcbiAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgfSxcbiAgICAgICAgZG9tYWluPy5zYWx0ICYmIHsgbmFtZTogJ3NhbHQnLCB0eXBlOiAnYnl0ZXMzMicgfSxcbiAgICBdLmZpbHRlcihCb29sZWFuKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBkb21haW5TZXBhcmF0b3IoeyBkb21haW4gfSkge1xuICAgIHJldHVybiBoYXNoRG9tYWluKHtcbiAgICAgICAgZG9tYWluLFxuICAgICAgICB0eXBlczoge1xuICAgICAgICAgICAgRUlQNzEyRG9tYWluOiBnZXRUeXBlc0ZvckVJUDcxMkRvbWFpbih7IGRvbWFpbiB9KSxcbiAgICAgICAgfSxcbiAgICB9KTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmZ1bmN0aW9uIHZhbGlkYXRlUmVmZXJlbmNlKHR5cGUpIHtcbiAgICAvLyBTdHJ1Y3QgdHlwZSBtdXN0IG5vdCBiZSBhIFNvbGlkaXR5IHR5cGUuXG4gICAgaWYgKHR5cGUgPT09ICdhZGRyZXNzJyB8fFxuICAgICAgICB0eXBlID09PSAnYm9vbCcgfHxcbiAgICAgICAgdHlwZSA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgdHlwZS5zdGFydHNXaXRoKCdieXRlcycpIHx8XG4gICAgICAgIHR5cGUuc3RhcnRzV2l0aCgndWludCcpIHx8XG4gICAgICAgIHR5cGUuc3RhcnRzV2l0aCgnaW50JykpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkU3RydWN0VHlwZUVycm9yKHsgdHlwZSB9KTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXR5cGVkRGF0YS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/_esm/utils/typedData.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/_shortw_utils.js": /*!***************************************************************************!*\ !*** ./node_modules/viem/node_modules/@noble/curves/esm/_shortw_utils.js ***! \***************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createCurve: () => (/* binding */ createCurve),\n/* harmony export */ getHash: () => (/* binding */ getHash)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_hmac__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/hashes/hmac */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/hmac.js\");\n/* harmony import */ var _noble_hashes_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @noble/hashes/utils */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/utils.js\");\n/* harmony import */ var _abstract_weierstrass_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./abstract/weierstrass.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/weierstrass.js\");\n/**\n * Utilities for short weierstrass curves, combined with noble-hashes.\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n\n\n/** connects noble-curves to noble-hashes */\nfunction getHash(hash) {\n return {\n hash,\n hmac: (key, ...msgs) => (0,_noble_hashes_hmac__WEBPACK_IMPORTED_MODULE_0__.hmac)(hash, key, (0,_noble_hashes_utils__WEBPACK_IMPORTED_MODULE_1__.concatBytes)(...msgs)),\n randomBytes: _noble_hashes_utils__WEBPACK_IMPORTED_MODULE_1__.randomBytes,\n };\n}\nfunction createCurve(curveDef, defHash) {\n const create = (hash) => (0,_abstract_weierstrass_js__WEBPACK_IMPORTED_MODULE_2__.weierstrass)({ ...curveDef, ...getHash(hash) });\n return { ...create(defHash), create };\n}\n//# sourceMappingURL=_shortw_utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9fc2hvcnR3X3V0aWxzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUMwQztBQUNxQjtBQUNQO0FBQ3hEO0FBQ087QUFDUDtBQUNBO0FBQ0EsZ0NBQWdDLHdEQUFJLFlBQVksZ0VBQVc7QUFDM0QsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDTztBQUNQLDZCQUE2QixxRUFBVyxHQUFHLCtCQUErQjtBQUMxRSxhQUFhO0FBQ2I7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9fc2hvcnR3X3V0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXRpbGl0aWVzIGZvciBzaG9ydCB3ZWllcnN0cmFzcyBjdXJ2ZXMsIGNvbWJpbmVkIHdpdGggbm9ibGUtaGFzaGVzLlxuICogQG1vZHVsZVxuICovXG4vKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG5pbXBvcnQgeyBobWFjIH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9obWFjJztcbmltcG9ydCB7IGNvbmNhdEJ5dGVzLCByYW5kb21CeXRlcyB9IGZyb20gJ0Bub2JsZS9oYXNoZXMvdXRpbHMnO1xuaW1wb3J0IHsgd2VpZXJzdHJhc3MgfSBmcm9tIFwiLi9hYnN0cmFjdC93ZWllcnN0cmFzcy5qc1wiO1xuLyoqIGNvbm5lY3RzIG5vYmxlLWN1cnZlcyB0byBub2JsZS1oYXNoZXMgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRIYXNoKGhhc2gpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBoYXNoLFxuICAgICAgICBobWFjOiAoa2V5LCAuLi5tc2dzKSA9PiBobWFjKGhhc2gsIGtleSwgY29uY2F0Qnl0ZXMoLi4ubXNncykpLFxuICAgICAgICByYW5kb21CeXRlcyxcbiAgICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUN1cnZlKGN1cnZlRGVmLCBkZWZIYXNoKSB7XG4gICAgY29uc3QgY3JlYXRlID0gKGhhc2gpID0+IHdlaWVyc3RyYXNzKHsgLi4uY3VydmVEZWYsIC4uLmdldEhhc2goaGFzaCkgfSk7XG4gICAgcmV0dXJuIHsgLi4uY3JlYXRlKGRlZkhhc2gpLCBjcmVhdGUgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPV9zaG9ydHdfdXRpbHMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/_shortw_utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/curve.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/node_modules/@noble/curves/esm/abstract/curve.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ pippenger: () => (/* binding */ pippenger),\n/* harmony export */ precomputeMSMUnsafe: () => (/* binding */ precomputeMSMUnsafe),\n/* harmony export */ validateBasic: () => (/* binding */ validateBasic),\n/* harmony export */ wNAF: () => (/* binding */ wNAF)\n/* harmony export */ });\n/* harmony import */ var _modular_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modular.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/modular.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\");\n/**\n * Methods for elliptic curve multiplication by scalars.\n * Contains wNAF, pippenger\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nfunction constTimeNegate(condition, item) {\n const neg = item.negate();\n return condition ? neg : item;\n}\nfunction validateW(W, bits) {\n if (!Number.isSafeInteger(W) || W <= 0 || W > bits)\n throw new Error('invalid window size, expected [1..' + bits + '], got W=' + W);\n}\nfunction calcWOpts(W, scalarBits) {\n validateW(W, scalarBits);\n const windows = Math.ceil(scalarBits / W) + 1; // W=8 33. Not 32, because we skip zero\n const windowSize = 2 ** (W - 1); // W=8 128. Not 256, because we skip zero\n const maxNumber = 2 ** W; // W=8 256\n const mask = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bitMask)(W); // W=8 255 == mask 0b11111111\n const shiftBy = BigInt(W); // W=8 8\n return { windows, windowSize, mask, maxNumber, shiftBy };\n}\nfunction calcOffsets(n, window, wOpts) {\n const { windowSize, mask, maxNumber, shiftBy } = wOpts;\n let wbits = Number(n & mask); // extract W bits.\n let nextN = n >> shiftBy; // shift number by W bits.\n // What actually happens here:\n // const highestBit = Number(mask ^ (mask >> 1n));\n // let wbits2 = wbits - 1; // skip zero\n // if (wbits2 & highestBit) { wbits2 ^= Number(mask); // (~);\n // split if bits > max: +224 => 256-32\n if (wbits > windowSize) {\n // we skip zero, which means instead of `>= size-1`, we do `> size`\n wbits -= maxNumber; // -32, can be maxNumber - wbits, but then we need to set isNeg here.\n nextN += _1n; // +256 (carry)\n }\n const offsetStart = window * windowSize;\n const offset = offsetStart + Math.abs(wbits) - 1; // -1 because we skip zero\n const isZero = wbits === 0; // is current window slice a 0?\n const isNeg = wbits < 0; // is current window slice negative?\n const isNegF = window % 2 !== 0; // fake random statement for noise\n const offsetF = offsetStart; // fake offset for noise\n return { nextN, offset, isZero, isNeg, isNegF, offsetF };\n}\nfunction validateMSMPoints(points, c) {\n if (!Array.isArray(points))\n throw new Error('array expected');\n points.forEach((p, i) => {\n if (!(p instanceof c))\n throw new Error('invalid point at index ' + i);\n });\n}\nfunction validateMSMScalars(scalars, field) {\n if (!Array.isArray(scalars))\n throw new Error('array of scalars expected');\n scalars.forEach((s, i) => {\n if (!field.isValid(s))\n throw new Error('invalid scalar at index ' + i);\n });\n}\n// Since points in different groups cannot be equal (different object constructor),\n// we can have single place to store precomputes.\n// Allows to make points frozen / immutable.\nconst pointPrecomputes = new WeakMap();\nconst pointWindowSizes = new WeakMap();\nfunction getW(P) {\n return pointWindowSizes.get(P) || 1;\n}\n/**\n * Elliptic curve multiplication of Point by scalar. Fragile.\n * Scalars should always be less than curve order: this should be checked inside of a curve itself.\n * Creates precomputation tables for fast multiplication:\n * - private scalar is split by fixed size windows of W bits\n * - every window point is collected from window's table & added to accumulator\n * - since windows are different, same point inside tables won't be accessed more than once per calc\n * - each multiplication is 'Math.ceil(CURVE_ORDER / 𝑊) + 1' point additions (fixed for any scalar)\n * - +1 window is neccessary for wNAF\n * - wNAF reduces table size: 2x less memory + 2x faster generation, but 10% slower multiplication\n *\n * @todo Research returning 2d JS array of windows, instead of a single window.\n * This would allow windows to be in different memory locations\n */\nfunction wNAF(c, bits) {\n return {\n constTimeNegate,\n hasPrecomputes(elm) {\n return getW(elm) !== 1;\n },\n // non-const time multiplication ladder\n unsafeLadder(elm, n, p = c.ZERO) {\n let d = elm;\n while (n > _0n) {\n if (n & _1n)\n p = p.add(d);\n d = d.double();\n n >>= _1n;\n }\n return p;\n },\n /**\n * Creates a wNAF precomputation window. Used for caching.\n * Default window size is set by `utils.precompute()` and is equal to 8.\n * Number of precomputed points depends on the curve size:\n * 2^(𝑊−1) * (Math.ceil(𝑛 / 𝑊) + 1), where:\n * - 𝑊 is the window size\n * - 𝑛 is the bitlength of the curve order.\n * For a 256-bit curve and window size 8, the number of precomputed points is 128 * 33 = 4224.\n * @param elm Point instance\n * @param W window size\n * @returns precomputed point tables flattened to a single array\n */\n precomputeWindow(elm, W) {\n const { windows, windowSize } = calcWOpts(W, bits);\n const points = [];\n let p = elm;\n let base = p;\n for (let window = 0; window < windows; window++) {\n base = p;\n points.push(base);\n // i=1, bc we skip 0\n for (let i = 1; i < windowSize; i++) {\n base = base.add(p);\n points.push(base);\n }\n p = base.double();\n }\n return points;\n },\n /**\n * Implements ec multiplication using precomputed tables and w-ary non-adjacent form.\n * @param W window size\n * @param precomputes precomputed tables\n * @param n scalar (we don't check here, but should be less than curve order)\n * @returns real and fake (for const-time) points\n */\n wNAF(W, precomputes, n) {\n // Smaller version:\n // https://github.com/paulmillr/noble-secp256k1/blob/47cb1669b6e506ad66b35fe7d76132ae97465da2/index.ts#L502-L541\n // TODO: check the scalar is less than group order?\n // wNAF behavior is undefined otherwise. But have to carefully remove\n // other checks before wNAF. ORDER == bits here.\n // Accumulators\n let p = c.ZERO;\n let f = c.BASE;\n // This code was first written with assumption that 'f' and 'p' will never be infinity point:\n // since each addition is multiplied by 2 ** W, it cannot cancel each other. However,\n // there is negate now: it is possible that negated element from low value\n // would be the same as high element, which will create carry into next window.\n // It's not obvious how this can fail, but still worth investigating later.\n const wo = calcWOpts(W, bits);\n for (let window = 0; window < wo.windows; window++) {\n // (n === _0n) is handled and not early-exited. isEven and offsetF are used for noise\n const { nextN, offset, isZero, isNeg, isNegF, offsetF } = calcOffsets(n, window, wo);\n n = nextN;\n if (isZero) {\n // bits are 0: add garbage to fake point\n // Important part for const-time getPublicKey: add random \"noise\" point to f.\n f = f.add(constTimeNegate(isNegF, precomputes[offsetF]));\n }\n else {\n // bits are 1: add to result point\n p = p.add(constTimeNegate(isNeg, precomputes[offset]));\n }\n }\n // Return both real and fake points: JIT won't eliminate f.\n // At this point there is a way to F be infinity-point even if p is not,\n // which makes it less const-time: around 1 bigint multiply.\n return { p, f };\n },\n /**\n * Implements ec unsafe (non const-time) multiplication using precomputed tables and w-ary non-adjacent form.\n * @param W window size\n * @param precomputes precomputed tables\n * @param n scalar (we don't check here, but should be less than curve order)\n * @param acc accumulator point to add result of multiplication\n * @returns point\n */\n wNAFUnsafe(W, precomputes, n, acc = c.ZERO) {\n const wo = calcWOpts(W, bits);\n for (let window = 0; window < wo.windows; window++) {\n if (n === _0n)\n break; // Early-exit, skip 0 value\n const { nextN, offset, isZero, isNeg } = calcOffsets(n, window, wo);\n n = nextN;\n if (isZero) {\n // Window bits are 0: skip processing.\n // Move to next window.\n continue;\n }\n else {\n const item = precomputes[offset];\n acc = acc.add(isNeg ? item.negate() : item); // Re-using acc allows to save adds in MSM\n }\n }\n return acc;\n },\n getPrecomputes(W, P, transform) {\n // Calculate precomputes on a first run, reuse them after\n let comp = pointPrecomputes.get(P);\n if (!comp) {\n comp = this.precomputeWindow(P, W);\n if (W !== 1)\n pointPrecomputes.set(P, transform(comp));\n }\n return comp;\n },\n wNAFCached(P, n, transform) {\n const W = getW(P);\n return this.wNAF(W, this.getPrecomputes(W, P, transform), n);\n },\n wNAFCachedUnsafe(P, n, transform, prev) {\n const W = getW(P);\n if (W === 1)\n return this.unsafeLadder(P, n, prev); // For W=1 ladder is ~x2 faster\n return this.wNAFUnsafe(W, this.getPrecomputes(W, P, transform), n, prev);\n },\n // We calculate precomputes for elliptic curve point multiplication\n // using windowed method. This specifies window size and\n // stores precomputed values. Usually only base point would be precomputed.\n setWindowSize(P, W) {\n validateW(W, bits);\n pointWindowSizes.set(P, W);\n pointPrecomputes.delete(P);\n },\n };\n}\n/**\n * Pippenger algorithm for multi-scalar multiplication (MSM, Pa + Qb + Rc + ...).\n * 30x faster vs naive addition on L=4096, 10x faster than precomputes.\n * For N=254bit, L=1, it does: 1024 ADD + 254 DBL. For L=5: 1536 ADD + 254 DBL.\n * Algorithmically constant-time (for same L), even when 1 point + scalar, or when scalar = 0.\n * @param c Curve Point constructor\n * @param fieldN field over CURVE.N - important that it's not over CURVE.P\n * @param points array of L curve points\n * @param scalars array of L scalars (aka private keys / bigints)\n */\nfunction pippenger(c, fieldN, points, scalars) {\n // If we split scalars by some window (let's say 8 bits), every chunk will only\n // take 256 buckets even if there are 4096 scalars, also re-uses double.\n // TODO:\n // - https://eprint.iacr.org/2024/750.pdf\n // - https://tches.iacr.org/index.php/TCHES/article/view/10287\n // 0 is accepted in scalars\n validateMSMPoints(points, c);\n validateMSMScalars(scalars, fieldN);\n const plength = points.length;\n const slength = scalars.length;\n if (plength !== slength)\n throw new Error('arrays of points and scalars must have equal length');\n // if (plength === 0) throw new Error('array must be of length >= 2');\n const zero = c.ZERO;\n const wbits = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bitLen)(BigInt(plength));\n let windowSize = 1; // bits\n if (wbits > 12)\n windowSize = wbits - 3;\n else if (wbits > 4)\n windowSize = wbits - 2;\n else if (wbits > 0)\n windowSize = 2;\n const MASK = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bitMask)(windowSize);\n const buckets = new Array(Number(MASK) + 1).fill(zero); // +1 for zero array\n const lastBits = Math.floor((fieldN.BITS - 1) / windowSize) * windowSize;\n let sum = zero;\n for (let i = lastBits; i >= 0; i -= windowSize) {\n buckets.fill(zero);\n for (let j = 0; j < slength; j++) {\n const scalar = scalars[j];\n const wbits = Number((scalar >> BigInt(i)) & MASK);\n buckets[wbits] = buckets[wbits].add(points[j]);\n }\n let resI = zero; // not using this will do small speed-up, but will lose ct\n // Skip first bucket, because it is zero\n for (let j = buckets.length - 1, sumI = zero; j > 0; j--) {\n sumI = sumI.add(buckets[j]);\n resI = resI.add(sumI);\n }\n sum = sum.add(resI);\n if (i !== 0)\n for (let j = 0; j < windowSize; j++)\n sum = sum.double();\n }\n return sum;\n}\n/**\n * Precomputed multi-scalar multiplication (MSM, Pa + Qb + Rc + ...).\n * @param c Curve Point constructor\n * @param fieldN field over CURVE.N - important that it's not over CURVE.P\n * @param points array of L curve points\n * @returns function which multiplies points with scaars\n */\nfunction precomputeMSMUnsafe(c, fieldN, points, windowSize) {\n /**\n * Performance Analysis of Window-based Precomputation\n *\n * Base Case (256-bit scalar, 8-bit window):\n * - Standard precomputation requires:\n * - 31 additions per scalar × 256 scalars = 7,936 ops\n * - Plus 255 summary additions = 8,191 total ops\n * Note: Summary additions can be optimized via accumulator\n *\n * Chunked Precomputation Analysis:\n * - Using 32 chunks requires:\n * - 255 additions per chunk\n * - 256 doublings\n * - Total: (255 × 32) + 256 = 8,416 ops\n *\n * Memory Usage Comparison:\n * Window Size | Standard Points | Chunked Points\n * ------------|-----------------|---------------\n * 4-bit | 520 | 15\n * 8-bit | 4,224 | 255\n * 10-bit | 13,824 | 1,023\n * 16-bit | 557,056 | 65,535\n *\n * Key Advantages:\n * 1. Enables larger window sizes due to reduced memory overhead\n * 2. More efficient for smaller scalar counts:\n * - 16 chunks: (16 × 255) + 256 = 4,336 ops\n * - ~2x faster than standard 8,191 ops\n *\n * Limitations:\n * - Not suitable for plain precomputes (requires 256 constant doublings)\n * - Performance degrades with larger scalar counts:\n * - Optimal for ~256 scalars\n * - Less efficient for 4096+ scalars (Pippenger preferred)\n */\n validateW(windowSize, fieldN.BITS);\n validateMSMPoints(points, c);\n const zero = c.ZERO;\n const tableSize = 2 ** windowSize - 1; // table size (without zero)\n const chunks = Math.ceil(fieldN.BITS / windowSize); // chunks of item\n const MASK = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bitMask)(windowSize);\n const tables = points.map((p) => {\n const res = [];\n for (let i = 0, acc = p; i < tableSize; i++) {\n res.push(acc);\n acc = acc.add(p);\n }\n return res;\n });\n return (scalars) => {\n validateMSMScalars(scalars, fieldN);\n if (scalars.length > points.length)\n throw new Error('array of scalars must be smaller than array of points');\n let res = zero;\n for (let i = 0; i < chunks; i++) {\n // No need to double if accumulator is still zero.\n if (res !== zero)\n for (let j = 0; j < windowSize; j++)\n res = res.double();\n const shiftBy = BigInt(chunks * windowSize - (i + 1) * windowSize);\n for (let j = 0; j < scalars.length; j++) {\n const n = scalars[j];\n const curr = Number((n >> shiftBy) & MASK);\n if (!curr)\n continue; // skip zero scalars chunks\n res = res.add(tables[j][curr - 1]);\n }\n }\n return res;\n };\n}\nfunction validateBasic(curve) {\n (0,_modular_js__WEBPACK_IMPORTED_MODULE_1__.validateField)(curve.Fp);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.validateObject)(curve, {\n n: 'bigint',\n h: 'bigint',\n Gx: 'field',\n Gy: 'field',\n }, {\n nBitLength: 'isSafeInteger',\n nByteLength: 'isSafeInteger',\n });\n // Set defaults\n return Object.freeze({\n ...(0,_modular_js__WEBPACK_IMPORTED_MODULE_1__.nLength)(curve.n, curve.nBitLength),\n ...curve,\n ...{ p: curve.Fp.ORDER },\n });\n}\n//# sourceMappingURL=curve.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9hYnN0cmFjdC9jdXJ2ZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDc0Q7QUFDTztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtREFBbUQ7QUFDbkQscUNBQXFDO0FBQ3JDLDhCQUE4QjtBQUM5QixpQkFBaUIsa0RBQU8sS0FBSztBQUM3QiwrQkFBK0I7QUFDL0IsYUFBYTtBQUNiO0FBQ0E7QUFDQSxZQUFZLHVDQUF1QztBQUNuRCxrQ0FBa0M7QUFDbEMsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQSwrQkFBK0I7QUFDL0Isa0NBQWtDLHdCQUF3QjtBQUMxRDtBQUNBO0FBQ0E7QUFDQSw0QkFBNEI7QUFDNUIsc0JBQXNCO0FBQ3RCO0FBQ0E7QUFDQSxzREFBc0Q7QUFDdEQsZ0NBQWdDO0FBQ2hDLDZCQUE2QjtBQUM3QixxQ0FBcUM7QUFDckMsaUNBQWlDO0FBQ2pDLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLGtCQUFrQjtBQUNuRDtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsZ0JBQWdCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxxQkFBcUI7QUFDdEQ7QUFDQSx3QkFBd0IsZ0RBQWdEO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckIsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLHFCQUFxQjtBQUN0RDtBQUNBLDJCQUEyQjtBQUMzQix3QkFBd0IsK0JBQStCO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpRUFBaUU7QUFDakU7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0Esc0RBQXNEO0FBQ3REO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixpREFBTTtBQUN4Qix3QkFBd0I7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLGtEQUFPO0FBQ3hCLDREQUE0RDtBQUM1RDtBQUNBO0FBQ0EsMkJBQTJCLFFBQVE7QUFDbkM7QUFDQSx3QkFBd0IsYUFBYTtBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBLHNEQUFzRCxPQUFPO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsZ0JBQWdCO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkM7QUFDM0Msd0RBQXdEO0FBQ3hELGlCQUFpQixrREFBTztBQUN4QjtBQUNBO0FBQ0EsaUNBQWlDLGVBQWU7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixZQUFZO0FBQ3BDO0FBQ0E7QUFDQSxnQ0FBZ0MsZ0JBQWdCO0FBQ2hEO0FBQ0E7QUFDQSw0QkFBNEIsb0JBQW9CO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLElBQUksMERBQWE7QUFDakIsSUFBSSx5REFBYztBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxXQUFXLG9EQUFPO0FBQ2xCO0FBQ0EsYUFBYSxtQkFBbUI7QUFDaEMsS0FBSztBQUNMO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9lc20vYWJzdHJhY3QvY3VydmUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBNZXRob2RzIGZvciBlbGxpcHRpYyBjdXJ2ZSBtdWx0aXBsaWNhdGlvbiBieSBzY2FsYXJzLlxuICogQ29udGFpbnMgd05BRiwgcGlwcGVuZ2VyXG4gKiBAbW9kdWxlXG4gKi9cbi8qISBub2JsZS1jdXJ2ZXMgLSBNSVQgTGljZW5zZSAoYykgMjAyMiBQYXVsIE1pbGxlciAocGF1bG1pbGxyLmNvbSkgKi9cbmltcG9ydCB7IG5MZW5ndGgsIHZhbGlkYXRlRmllbGQgfSBmcm9tIFwiLi9tb2R1bGFyLmpzXCI7XG5pbXBvcnQgeyBiaXRMZW4sIGJpdE1hc2ssIHZhbGlkYXRlT2JqZWN0IH0gZnJvbSBcIi4vdXRpbHMuanNcIjtcbmNvbnN0IF8wbiA9IEJpZ0ludCgwKTtcbmNvbnN0IF8xbiA9IEJpZ0ludCgxKTtcbmZ1bmN0aW9uIGNvbnN0VGltZU5lZ2F0ZShjb25kaXRpb24sIGl0ZW0pIHtcbiAgICBjb25zdCBuZWcgPSBpdGVtLm5lZ2F0ZSgpO1xuICAgIHJldHVybiBjb25kaXRpb24gPyBuZWcgOiBpdGVtO1xufVxuZnVuY3Rpb24gdmFsaWRhdGVXKFcsIGJpdHMpIHtcbiAgICBpZiAoIU51bWJlci5pc1NhZmVJbnRlZ2VyKFcpIHx8IFcgPD0gMCB8fCBXID4gYml0cylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHdpbmRvdyBzaXplLCBleHBlY3RlZCBbMS4uJyArIGJpdHMgKyAnXSwgZ290IFc9JyArIFcpO1xufVxuZnVuY3Rpb24gY2FsY1dPcHRzKFcsIHNjYWxhckJpdHMpIHtcbiAgICB2YWxpZGF0ZVcoVywgc2NhbGFyQml0cyk7XG4gICAgY29uc3Qgd2luZG93cyA9IE1hdGguY2VpbChzY2FsYXJCaXRzIC8gVykgKyAxOyAvLyBXPTggMzMuIE5vdCAzMiwgYmVjYXVzZSB3ZSBza2lwIHplcm9cbiAgICBjb25zdCB3aW5kb3dTaXplID0gMiAqKiAoVyAtIDEpOyAvLyBXPTggMTI4LiBOb3QgMjU2LCBiZWNhdXNlIHdlIHNraXAgemVyb1xuICAgIGNvbnN0IG1heE51bWJlciA9IDIgKiogVzsgLy8gVz04IDI1NlxuICAgIGNvbnN0IG1hc2sgPSBiaXRNYXNrKFcpOyAvLyBXPTggMjU1ID09IG1hc2sgMGIxMTExMTExMVxuICAgIGNvbnN0IHNoaWZ0QnkgPSBCaWdJbnQoVyk7IC8vIFc9OCA4XG4gICAgcmV0dXJuIHsgd2luZG93cywgd2luZG93U2l6ZSwgbWFzaywgbWF4TnVtYmVyLCBzaGlmdEJ5IH07XG59XG5mdW5jdGlvbiBjYWxjT2Zmc2V0cyhuLCB3aW5kb3csIHdPcHRzKSB7XG4gICAgY29uc3QgeyB3aW5kb3dTaXplLCBtYXNrLCBtYXhOdW1iZXIsIHNoaWZ0QnkgfSA9IHdPcHRzO1xuICAgIGxldCB3Yml0cyA9IE51bWJlcihuICYgbWFzayk7IC8vIGV4dHJhY3QgVyBiaXRzLlxuICAgIGxldCBuZXh0TiA9IG4gPj4gc2hpZnRCeTsgLy8gc2hpZnQgbnVtYmVyIGJ5IFcgYml0cy5cbiAgICAvLyBXaGF0IGFjdHVhbGx5IGhhcHBlbnMgaGVyZTpcbiAgICAvLyBjb25zdCBoaWdoZXN0Qml0ID0gTnVtYmVyKG1hc2sgXiAobWFzayA+PiAxbikpO1xuICAgIC8vIGxldCB3Yml0czIgPSB3Yml0cyAtIDE7IC8vIHNraXAgemVyb1xuICAgIC8vIGlmICh3Yml0czIgJiBoaWdoZXN0Qml0KSB7IHdiaXRzMiBePSBOdW1iZXIobWFzayk7IC8vICh+KTtcbiAgICAvLyBzcGxpdCBpZiBiaXRzID4gbWF4OiArMjI0ID0+IDI1Ni0zMlxuICAgIGlmICh3Yml0cyA+IHdpbmRvd1NpemUpIHtcbiAgICAgICAgLy8gd2Ugc2tpcCB6ZXJvLCB3aGljaCBtZWFucyBpbnN0ZWFkIG9mIGA+PSBzaXplLTFgLCB3ZSBkbyBgPiBzaXplYFxuICAgICAgICB3Yml0cyAtPSBtYXhOdW1iZXI7IC8vIC0zMiwgY2FuIGJlIG1heE51bWJlciAtIHdiaXRzLCBidXQgdGhlbiB3ZSBuZWVkIHRvIHNldCBpc05lZyBoZXJlLlxuICAgICAgICBuZXh0TiArPSBfMW47IC8vICsyNTYgKGNhcnJ5KVxuICAgIH1cbiAgICBjb25zdCBvZmZzZXRTdGFydCA9IHdpbmRvdyAqIHdpbmRvd1NpemU7XG4gICAgY29uc3Qgb2Zmc2V0ID0gb2Zmc2V0U3RhcnQgKyBNYXRoLmFicyh3Yml0cykgLSAxOyAvLyAtMSBiZWNhdXNlIHdlIHNraXAgemVyb1xuICAgIGNvbnN0IGlzWmVybyA9IHdiaXRzID09PSAwOyAvLyBpcyBjdXJyZW50IHdpbmRvdyBzbGljZSBhIDA/XG4gICAgY29uc3QgaXNOZWcgPSB3Yml0cyA8IDA7IC8vIGlzIGN1cnJlbnQgd2luZG93IHNsaWNlIG5lZ2F0aXZlP1xuICAgIGNvbnN0IGlzTmVnRiA9IHdpbmRvdyAlIDIgIT09IDA7IC8vIGZha2UgcmFuZG9tIHN0YXRlbWVudCBmb3Igbm9pc2VcbiAgICBjb25zdCBvZmZzZXRGID0gb2Zmc2V0U3RhcnQ7IC8vIGZha2Ugb2Zmc2V0IGZvciBub2lzZVxuICAgIHJldHVybiB7IG5leHROLCBvZmZzZXQsIGlzWmVybywgaXNOZWcsIGlzTmVnRiwgb2Zmc2V0RiB9O1xufVxuZnVuY3Rpb24gdmFsaWRhdGVNU01Qb2ludHMocG9pbnRzLCBjKSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHBvaW50cykpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignYXJyYXkgZXhwZWN0ZWQnKTtcbiAgICBwb2ludHMuZm9yRWFjaCgocCwgaSkgPT4ge1xuICAgICAgICBpZiAoIShwIGluc3RhbmNlb2YgYykpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgcG9pbnQgYXQgaW5kZXggJyArIGkpO1xuICAgIH0pO1xufVxuZnVuY3Rpb24gdmFsaWRhdGVNU01TY2FsYXJzKHNjYWxhcnMsIGZpZWxkKSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHNjYWxhcnMpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FycmF5IG9mIHNjYWxhcnMgZXhwZWN0ZWQnKTtcbiAgICBzY2FsYXJzLmZvckVhY2goKHMsIGkpID0+IHtcbiAgICAgICAgaWYgKCFmaWVsZC5pc1ZhbGlkKHMpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHNjYWxhciBhdCBpbmRleCAnICsgaSk7XG4gICAgfSk7XG59XG4vLyBTaW5jZSBwb2ludHMgaW4gZGlmZmVyZW50IGdyb3VwcyBjYW5ub3QgYmUgZXF1YWwgKGRpZmZlcmVudCBvYmplY3QgY29uc3RydWN0b3IpLFxuLy8gd2UgY2FuIGhhdmUgc2luZ2xlIHBsYWNlIHRvIHN0b3JlIHByZWNvbXB1dGVzLlxuLy8gQWxsb3dzIHRvIG1ha2UgcG9pbnRzIGZyb3plbiAvIGltbXV0YWJsZS5cbmNvbnN0IHBvaW50UHJlY29tcHV0ZXMgPSBuZXcgV2Vha01hcCgpO1xuY29uc3QgcG9pbnRXaW5kb3dTaXplcyA9IG5ldyBXZWFrTWFwKCk7XG5mdW5jdGlvbiBnZXRXKFApIHtcbiAgICByZXR1cm4gcG9pbnRXaW5kb3dTaXplcy5nZXQoUCkgfHwgMTtcbn1cbi8qKlxuICogRWxsaXB0aWMgY3VydmUgbXVsdGlwbGljYXRpb24gb2YgUG9pbnQgYnkgc2NhbGFyLiBGcmFnaWxlLlxuICogU2NhbGFycyBzaG91bGQgYWx3YXlzIGJlIGxlc3MgdGhhbiBjdXJ2ZSBvcmRlcjogdGhpcyBzaG91bGQgYmUgY2hlY2tlZCBpbnNpZGUgb2YgYSBjdXJ2ZSBpdHNlbGYuXG4gKiBDcmVhdGVzIHByZWNvbXB1dGF0aW9uIHRhYmxlcyBmb3IgZmFzdCBtdWx0aXBsaWNhdGlvbjpcbiAqIC0gcHJpdmF0ZSBzY2FsYXIgaXMgc3BsaXQgYnkgZml4ZWQgc2l6ZSB3aW5kb3dzIG9mIFcgYml0c1xuICogLSBldmVyeSB3aW5kb3cgcG9pbnQgaXMgY29sbGVjdGVkIGZyb20gd2luZG93J3MgdGFibGUgJiBhZGRlZCB0byBhY2N1bXVsYXRvclxuICogLSBzaW5jZSB3aW5kb3dzIGFyZSBkaWZmZXJlbnQsIHNhbWUgcG9pbnQgaW5zaWRlIHRhYmxlcyB3b24ndCBiZSBhY2Nlc3NlZCBtb3JlIHRoYW4gb25jZSBwZXIgY2FsY1xuICogLSBlYWNoIG11bHRpcGxpY2F0aW9uIGlzICdNYXRoLmNlaWwoQ1VSVkVfT1JERVIgLyDwnZGKKSArIDEnIHBvaW50IGFkZGl0aW9ucyAoZml4ZWQgZm9yIGFueSBzY2FsYXIpXG4gKiAtICsxIHdpbmRvdyBpcyBuZWNjZXNzYXJ5IGZvciB3TkFGXG4gKiAtIHdOQUYgcmVkdWNlcyB0YWJsZSBzaXplOiAyeCBsZXNzIG1lbW9yeSArIDJ4IGZhc3RlciBnZW5lcmF0aW9uLCBidXQgMTAlIHNsb3dlciBtdWx0aXBsaWNhdGlvblxuICpcbiAqIEB0b2RvIFJlc2VhcmNoIHJldHVybmluZyAyZCBKUyBhcnJheSBvZiB3aW5kb3dzLCBpbnN0ZWFkIG9mIGEgc2luZ2xlIHdpbmRvdy5cbiAqIFRoaXMgd291bGQgYWxsb3cgd2luZG93cyB0byBiZSBpbiBkaWZmZXJlbnQgbWVtb3J5IGxvY2F0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gd05BRihjLCBiaXRzKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgY29uc3RUaW1lTmVnYXRlLFxuICAgICAgICBoYXNQcmVjb21wdXRlcyhlbG0pIHtcbiAgICAgICAgICAgIHJldHVybiBnZXRXKGVsbSkgIT09IDE7XG4gICAgICAgIH0sXG4gICAgICAgIC8vIG5vbi1jb25zdCB0aW1lIG11bHRpcGxpY2F0aW9uIGxhZGRlclxuICAgICAgICB1bnNhZmVMYWRkZXIoZWxtLCBuLCBwID0gYy5aRVJPKSB7XG4gICAgICAgICAgICBsZXQgZCA9IGVsbTtcbiAgICAgICAgICAgIHdoaWxlIChuID4gXzBuKSB7XG4gICAgICAgICAgICAgICAgaWYgKG4gJiBfMW4pXG4gICAgICAgICAgICAgICAgICAgIHAgPSBwLmFkZChkKTtcbiAgICAgICAgICAgICAgICBkID0gZC5kb3VibGUoKTtcbiAgICAgICAgICAgICAgICBuID4+PSBfMW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcDtcbiAgICAgICAgfSxcbiAgICAgICAgLyoqXG4gICAgICAgICAqIENyZWF0ZXMgYSB3TkFGIHByZWNvbXB1dGF0aW9uIHdpbmRvdy4gVXNlZCBmb3IgY2FjaGluZy5cbiAgICAgICAgICogRGVmYXVsdCB3aW5kb3cgc2l6ZSBpcyBzZXQgYnkgYHV0aWxzLnByZWNvbXB1dGUoKWAgYW5kIGlzIGVxdWFsIHRvIDguXG4gICAgICAgICAqIE51bWJlciBvZiBwcmVjb21wdXRlZCBwb2ludHMgZGVwZW5kcyBvbiB0aGUgY3VydmUgc2l6ZTpcbiAgICAgICAgICogMl4o8J2RiuKIkjEpICogKE1hdGguY2VpbCjwnZGbIC8g8J2RiikgKyAxKSwgd2hlcmU6XG4gICAgICAgICAqIC0g8J2RiiBpcyB0aGUgd2luZG93IHNpemVcbiAgICAgICAgICogLSDwnZGbIGlzIHRoZSBiaXRsZW5ndGggb2YgdGhlIGN1cnZlIG9yZGVyLlxuICAgICAgICAgKiBGb3IgYSAyNTYtYml0IGN1cnZlIGFuZCB3aW5kb3cgc2l6ZSA4LCB0aGUgbnVtYmVyIG9mIHByZWNvbXB1dGVkIHBvaW50cyBpcyAxMjggKiAzMyA9IDQyMjQuXG4gICAgICAgICAqIEBwYXJhbSBlbG0gUG9pbnQgaW5zdGFuY2VcbiAgICAgICAgICogQHBhcmFtIFcgd2luZG93IHNpemVcbiAgICAgICAgICogQHJldHVybnMgcHJlY29tcHV0ZWQgcG9pbnQgdGFibGVzIGZsYXR0ZW5lZCB0byBhIHNpbmdsZSBhcnJheVxuICAgICAgICAgKi9cbiAgICAgICAgcHJlY29tcHV0ZVdpbmRvdyhlbG0sIFcpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgd2luZG93cywgd2luZG93U2l6ZSB9ID0gY2FsY1dPcHRzKFcsIGJpdHMpO1xuICAgICAgICAgICAgY29uc3QgcG9pbnRzID0gW107XG4gICAgICAgICAgICBsZXQgcCA9IGVsbTtcbiAgICAgICAgICAgIGxldCBiYXNlID0gcDtcbiAgICAgICAgICAgIGZvciAobGV0IHdpbmRvdyA9IDA7IHdpbmRvdyA8IHdpbmRvd3M7IHdpbmRvdysrKSB7XG4gICAgICAgICAgICAgICAgYmFzZSA9IHA7XG4gICAgICAgICAgICAgICAgcG9pbnRzLnB1c2goYmFzZSk7XG4gICAgICAgICAgICAgICAgLy8gaT0xLCBiYyB3ZSBza2lwIDBcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMTsgaSA8IHdpbmRvd1NpemU7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICBiYXNlID0gYmFzZS5hZGQocCk7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50cy5wdXNoKGJhc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwID0gYmFzZS5kb3VibGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBwb2ludHM7XG4gICAgICAgIH0sXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJbXBsZW1lbnRzIGVjIG11bHRpcGxpY2F0aW9uIHVzaW5nIHByZWNvbXB1dGVkIHRhYmxlcyBhbmQgdy1hcnkgbm9uLWFkamFjZW50IGZvcm0uXG4gICAgICAgICAqIEBwYXJhbSBXIHdpbmRvdyBzaXplXG4gICAgICAgICAqIEBwYXJhbSBwcmVjb21wdXRlcyBwcmVjb21wdXRlZCB0YWJsZXNcbiAgICAgICAgICogQHBhcmFtIG4gc2NhbGFyICh3ZSBkb24ndCBjaGVjayBoZXJlLCBidXQgc2hvdWxkIGJlIGxlc3MgdGhhbiBjdXJ2ZSBvcmRlcilcbiAgICAgICAgICogQHJldHVybnMgcmVhbCBhbmQgZmFrZSAoZm9yIGNvbnN0LXRpbWUpIHBvaW50c1xuICAgICAgICAgKi9cbiAgICAgICAgd05BRihXLCBwcmVjb21wdXRlcywgbikge1xuICAgICAgICAgICAgLy8gU21hbGxlciB2ZXJzaW9uOlxuICAgICAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3BhdWxtaWxsci9ub2JsZS1zZWNwMjU2azEvYmxvYi80N2NiMTY2OWI2ZTUwNmFkNjZiMzVmZTdkNzYxMzJhZTk3NDY1ZGEyL2luZGV4LnRzI0w1MDItTDU0MVxuICAgICAgICAgICAgLy8gVE9ETzogY2hlY2sgdGhlIHNjYWxhciBpcyBsZXNzIHRoYW4gZ3JvdXAgb3JkZXI/XG4gICAgICAgICAgICAvLyB3TkFGIGJlaGF2aW9yIGlzIHVuZGVmaW5lZCBvdGhlcndpc2UuIEJ1dCBoYXZlIHRvIGNhcmVmdWxseSByZW1vdmVcbiAgICAgICAgICAgIC8vIG90aGVyIGNoZWNrcyBiZWZvcmUgd05BRi4gT1JERVIgPT0gYml0cyBoZXJlLlxuICAgICAgICAgICAgLy8gQWNjdW11bGF0b3JzXG4gICAgICAgICAgICBsZXQgcCA9IGMuWkVSTztcbiAgICAgICAgICAgIGxldCBmID0gYy5CQVNFO1xuICAgICAgICAgICAgLy8gVGhpcyBjb2RlIHdhcyBmaXJzdCB3cml0dGVuIHdpdGggYXNzdW1wdGlvbiB0aGF0ICdmJyBhbmQgJ3AnIHdpbGwgbmV2ZXIgYmUgaW5maW5pdHkgcG9pbnQ6XG4gICAgICAgICAgICAvLyBzaW5jZSBlYWNoIGFkZGl0aW9uIGlzIG11bHRpcGxpZWQgYnkgMiAqKiBXLCBpdCBjYW5ub3QgY2FuY2VsIGVhY2ggb3RoZXIuIEhvd2V2ZXIsXG4gICAgICAgICAgICAvLyB0aGVyZSBpcyBuZWdhdGUgbm93OiBpdCBpcyBwb3NzaWJsZSB0aGF0IG5lZ2F0ZWQgZWxlbWVudCBmcm9tIGxvdyB2YWx1ZVxuICAgICAgICAgICAgLy8gd291bGQgYmUgdGhlIHNhbWUgYXMgaGlnaCBlbGVtZW50LCB3aGljaCB3aWxsIGNyZWF0ZSBjYXJyeSBpbnRvIG5leHQgd2luZG93LlxuICAgICAgICAgICAgLy8gSXQncyBub3Qgb2J2aW91cyBob3cgdGhpcyBjYW4gZmFpbCwgYnV0IHN0aWxsIHdvcnRoIGludmVzdGlnYXRpbmcgbGF0ZXIuXG4gICAgICAgICAgICBjb25zdCB3byA9IGNhbGNXT3B0cyhXLCBiaXRzKTtcbiAgICAgICAgICAgIGZvciAobGV0IHdpbmRvdyA9IDA7IHdpbmRvdyA8IHdvLndpbmRvd3M7IHdpbmRvdysrKSB7XG4gICAgICAgICAgICAgICAgLy8gKG4gPT09IF8wbikgaXMgaGFuZGxlZCBhbmQgbm90IGVhcmx5LWV4aXRlZC4gaXNFdmVuIGFuZCBvZmZzZXRGIGFyZSB1c2VkIGZvciBub2lzZVxuICAgICAgICAgICAgICAgIGNvbnN0IHsgbmV4dE4sIG9mZnNldCwgaXNaZXJvLCBpc05lZywgaXNOZWdGLCBvZmZzZXRGIH0gPSBjYWxjT2Zmc2V0cyhuLCB3aW5kb3csIHdvKTtcbiAgICAgICAgICAgICAgICBuID0gbmV4dE47XG4gICAgICAgICAgICAgICAgaWYgKGlzWmVybykge1xuICAgICAgICAgICAgICAgICAgICAvLyBiaXRzIGFyZSAwOiBhZGQgZ2FyYmFnZSB0byBmYWtlIHBvaW50XG4gICAgICAgICAgICAgICAgICAgIC8vIEltcG9ydGFudCBwYXJ0IGZvciBjb25zdC10aW1lIGdldFB1YmxpY0tleTogYWRkIHJhbmRvbSBcIm5vaXNlXCIgcG9pbnQgdG8gZi5cbiAgICAgICAgICAgICAgICAgICAgZiA9IGYuYWRkKGNvbnN0VGltZU5lZ2F0ZShpc05lZ0YsIHByZWNvbXB1dGVzW29mZnNldEZdKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvLyBiaXRzIGFyZSAxOiBhZGQgdG8gcmVzdWx0IHBvaW50XG4gICAgICAgICAgICAgICAgICAgIHAgPSBwLmFkZChjb25zdFRpbWVOZWdhdGUoaXNOZWcsIHByZWNvbXB1dGVzW29mZnNldF0pKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBSZXR1cm4gYm90aCByZWFsIGFuZCBmYWtlIHBvaW50czogSklUIHdvbid0IGVsaW1pbmF0ZSBmLlxuICAgICAgICAgICAgLy8gQXQgdGhpcyBwb2ludCB0aGVyZSBpcyBhIHdheSB0byBGIGJlIGluZmluaXR5LXBvaW50IGV2ZW4gaWYgcCBpcyBub3QsXG4gICAgICAgICAgICAvLyB3aGljaCBtYWtlcyBpdCBsZXNzIGNvbnN0LXRpbWU6IGFyb3VuZCAxIGJpZ2ludCBtdWx0aXBseS5cbiAgICAgICAgICAgIHJldHVybiB7IHAsIGYgfTtcbiAgICAgICAgfSxcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEltcGxlbWVudHMgZWMgdW5zYWZlIChub24gY29uc3QtdGltZSkgbXVsdGlwbGljYXRpb24gdXNpbmcgcHJlY29tcHV0ZWQgdGFibGVzIGFuZCB3LWFyeSBub24tYWRqYWNlbnQgZm9ybS5cbiAgICAgICAgICogQHBhcmFtIFcgd2luZG93IHNpemVcbiAgICAgICAgICogQHBhcmFtIHByZWNvbXB1dGVzIHByZWNvbXB1dGVkIHRhYmxlc1xuICAgICAgICAgKiBAcGFyYW0gbiBzY2FsYXIgKHdlIGRvbid0IGNoZWNrIGhlcmUsIGJ1dCBzaG91bGQgYmUgbGVzcyB0aGFuIGN1cnZlIG9yZGVyKVxuICAgICAgICAgKiBAcGFyYW0gYWNjIGFjY3VtdWxhdG9yIHBvaW50IHRvIGFkZCByZXN1bHQgb2YgbXVsdGlwbGljYXRpb25cbiAgICAgICAgICogQHJldHVybnMgcG9pbnRcbiAgICAgICAgICovXG4gICAgICAgIHdOQUZVbnNhZmUoVywgcHJlY29tcHV0ZXMsIG4sIGFjYyA9IGMuWkVSTykge1xuICAgICAgICAgICAgY29uc3Qgd28gPSBjYWxjV09wdHMoVywgYml0cyk7XG4gICAgICAgICAgICBmb3IgKGxldCB3aW5kb3cgPSAwOyB3aW5kb3cgPCB3by53aW5kb3dzOyB3aW5kb3crKykge1xuICAgICAgICAgICAgICAgIGlmIChuID09PSBfMG4pXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrOyAvLyBFYXJseS1leGl0LCBza2lwIDAgdmFsdWVcbiAgICAgICAgICAgICAgICBjb25zdCB7IG5leHROLCBvZmZzZXQsIGlzWmVybywgaXNOZWcgfSA9IGNhbGNPZmZzZXRzKG4sIHdpbmRvdywgd28pO1xuICAgICAgICAgICAgICAgIG4gPSBuZXh0TjtcbiAgICAgICAgICAgICAgICBpZiAoaXNaZXJvKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFdpbmRvdyBiaXRzIGFyZSAwOiBza2lwIHByb2Nlc3NpbmcuXG4gICAgICAgICAgICAgICAgICAgIC8vIE1vdmUgdG8gbmV4dCB3aW5kb3cuXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IHByZWNvbXB1dGVzW29mZnNldF07XG4gICAgICAgICAgICAgICAgICAgIGFjYyA9IGFjYy5hZGQoaXNOZWcgPyBpdGVtLm5lZ2F0ZSgpIDogaXRlbSk7IC8vIFJlLXVzaW5nIGFjYyBhbGxvd3MgdG8gc2F2ZSBhZGRzIGluIE1TTVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIH0sXG4gICAgICAgIGdldFByZWNvbXB1dGVzKFcsIFAsIHRyYW5zZm9ybSkge1xuICAgICAgICAgICAgLy8gQ2FsY3VsYXRlIHByZWNvbXB1dGVzIG9uIGEgZmlyc3QgcnVuLCByZXVzZSB0aGVtIGFmdGVyXG4gICAgICAgICAgICBsZXQgY29tcCA9IHBvaW50UHJlY29tcHV0ZXMuZ2V0KFApO1xuICAgICAgICAgICAgaWYgKCFjb21wKSB7XG4gICAgICAgICAgICAgICAgY29tcCA9IHRoaXMucHJlY29tcHV0ZVdpbmRvdyhQLCBXKTtcbiAgICAgICAgICAgICAgICBpZiAoVyAhPT0gMSlcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRQcmVjb21wdXRlcy5zZXQoUCwgdHJhbnNmb3JtKGNvbXApKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBjb21wO1xuICAgICAgICB9LFxuICAgICAgICB3TkFGQ2FjaGVkKFAsIG4sIHRyYW5zZm9ybSkge1xuICAgICAgICAgICAgY29uc3QgVyA9IGdldFcoUCk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy53TkFGKFcsIHRoaXMuZ2V0UHJlY29tcHV0ZXMoVywgUCwgdHJhbnNmb3JtKSwgbik7XG4gICAgICAgIH0sXG4gICAgICAgIHdOQUZDYWNoZWRVbnNhZmUoUCwgbiwgdHJhbnNmb3JtLCBwcmV2KSB7XG4gICAgICAgICAgICBjb25zdCBXID0gZ2V0VyhQKTtcbiAgICAgICAgICAgIGlmIChXID09PSAxKVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnVuc2FmZUxhZGRlcihQLCBuLCBwcmV2KTsgLy8gRm9yIFc9MSBsYWRkZXIgaXMgfngyIGZhc3RlclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMud05BRlVuc2FmZShXLCB0aGlzLmdldFByZWNvbXB1dGVzKFcsIFAsIHRyYW5zZm9ybSksIG4sIHByZXYpO1xuICAgICAgICB9LFxuICAgICAgICAvLyBXZSBjYWxjdWxhdGUgcHJlY29tcHV0ZXMgZm9yIGVsbGlwdGljIGN1cnZlIHBvaW50IG11bHRpcGxpY2F0aW9uXG4gICAgICAgIC8vIHVzaW5nIHdpbmRvd2VkIG1ldGhvZC4gVGhpcyBzcGVjaWZpZXMgd2luZG93IHNpemUgYW5kXG4gICAgICAgIC8vIHN0b3JlcyBwcmVjb21wdXRlZCB2YWx1ZXMuIFVzdWFsbHkgb25seSBiYXNlIHBvaW50IHdvdWxkIGJlIHByZWNvbXB1dGVkLlxuICAgICAgICBzZXRXaW5kb3dTaXplKFAsIFcpIHtcbiAgICAgICAgICAgIHZhbGlkYXRlVyhXLCBiaXRzKTtcbiAgICAgICAgICAgIHBvaW50V2luZG93U2l6ZXMuc2V0KFAsIFcpO1xuICAgICAgICAgICAgcG9pbnRQcmVjb21wdXRlcy5kZWxldGUoUCk7XG4gICAgICAgIH0sXG4gICAgfTtcbn1cbi8qKlxuICogUGlwcGVuZ2VyIGFsZ29yaXRobSBmb3IgbXVsdGktc2NhbGFyIG11bHRpcGxpY2F0aW9uIChNU00sIFBhICsgUWIgKyBSYyArIC4uLikuXG4gKiAzMHggZmFzdGVyIHZzIG5haXZlIGFkZGl0aW9uIG9uIEw9NDA5NiwgMTB4IGZhc3RlciB0aGFuIHByZWNvbXB1dGVzLlxuICogRm9yIE49MjU0Yml0LCBMPTEsIGl0IGRvZXM6IDEwMjQgQUREICsgMjU0IERCTC4gRm9yIEw9NTogMTUzNiBBREQgKyAyNTQgREJMLlxuICogQWxnb3JpdGhtaWNhbGx5IGNvbnN0YW50LXRpbWUgKGZvciBzYW1lIEwpLCBldmVuIHdoZW4gMSBwb2ludCArIHNjYWxhciwgb3Igd2hlbiBzY2FsYXIgPSAwLlxuICogQHBhcmFtIGMgQ3VydmUgUG9pbnQgY29uc3RydWN0b3JcbiAqIEBwYXJhbSBmaWVsZE4gZmllbGQgb3ZlciBDVVJWRS5OIC0gaW1wb3J0YW50IHRoYXQgaXQncyBub3Qgb3ZlciBDVVJWRS5QXG4gKiBAcGFyYW0gcG9pbnRzIGFycmF5IG9mIEwgY3VydmUgcG9pbnRzXG4gKiBAcGFyYW0gc2NhbGFycyBhcnJheSBvZiBMIHNjYWxhcnMgKGFrYSBwcml2YXRlIGtleXMgLyBiaWdpbnRzKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcGlwcGVuZ2VyKGMsIGZpZWxkTiwgcG9pbnRzLCBzY2FsYXJzKSB7XG4gICAgLy8gSWYgd2Ugc3BsaXQgc2NhbGFycyBieSBzb21lIHdpbmRvdyAobGV0J3Mgc2F5IDggYml0cyksIGV2ZXJ5IGNodW5rIHdpbGwgb25seVxuICAgIC8vIHRha2UgMjU2IGJ1Y2tldHMgZXZlbiBpZiB0aGVyZSBhcmUgNDA5NiBzY2FsYXJzLCBhbHNvIHJlLXVzZXMgZG91YmxlLlxuICAgIC8vIFRPRE86XG4gICAgLy8gLSBodHRwczovL2VwcmludC5pYWNyLm9yZy8yMDI0Lzc1MC5wZGZcbiAgICAvLyAtIGh0dHBzOi8vdGNoZXMuaWFjci5vcmcvaW5kZXgucGhwL1RDSEVTL2FydGljbGUvdmlldy8xMDI4N1xuICAgIC8vIDAgaXMgYWNjZXB0ZWQgaW4gc2NhbGFyc1xuICAgIHZhbGlkYXRlTVNNUG9pbnRzKHBvaW50cywgYyk7XG4gICAgdmFsaWRhdGVNU01TY2FsYXJzKHNjYWxhcnMsIGZpZWxkTik7XG4gICAgY29uc3QgcGxlbmd0aCA9IHBvaW50cy5sZW5ndGg7XG4gICAgY29uc3Qgc2xlbmd0aCA9IHNjYWxhcnMubGVuZ3RoO1xuICAgIGlmIChwbGVuZ3RoICE9PSBzbGVuZ3RoKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FycmF5cyBvZiBwb2ludHMgYW5kIHNjYWxhcnMgbXVzdCBoYXZlIGVxdWFsIGxlbmd0aCcpO1xuICAgIC8vIGlmIChwbGVuZ3RoID09PSAwKSB0aHJvdyBuZXcgRXJyb3IoJ2FycmF5IG11c3QgYmUgb2YgbGVuZ3RoID49IDInKTtcbiAgICBjb25zdCB6ZXJvID0gYy5aRVJPO1xuICAgIGNvbnN0IHdiaXRzID0gYml0TGVuKEJpZ0ludChwbGVuZ3RoKSk7XG4gICAgbGV0IHdpbmRvd1NpemUgPSAxOyAvLyBiaXRzXG4gICAgaWYgKHdiaXRzID4gMTIpXG4gICAgICAgIHdpbmRvd1NpemUgPSB3Yml0cyAtIDM7XG4gICAgZWxzZSBpZiAod2JpdHMgPiA0KVxuICAgICAgICB3aW5kb3dTaXplID0gd2JpdHMgLSAyO1xuICAgIGVsc2UgaWYgKHdiaXRzID4gMClcbiAgICAgICAgd2luZG93U2l6ZSA9IDI7XG4gICAgY29uc3QgTUFTSyA9IGJpdE1hc2sod2luZG93U2l6ZSk7XG4gICAgY29uc3QgYnVja2V0cyA9IG5ldyBBcnJheShOdW1iZXIoTUFTSykgKyAxKS5maWxsKHplcm8pOyAvLyArMSBmb3IgemVybyBhcnJheVxuICAgIGNvbnN0IGxhc3RCaXRzID0gTWF0aC5mbG9vcigoZmllbGROLkJJVFMgLSAxKSAvIHdpbmRvd1NpemUpICogd2luZG93U2l6ZTtcbiAgICBsZXQgc3VtID0gemVybztcbiAgICBmb3IgKGxldCBpID0gbGFzdEJpdHM7IGkgPj0gMDsgaSAtPSB3aW5kb3dTaXplKSB7XG4gICAgICAgIGJ1Y2tldHMuZmlsbCh6ZXJvKTtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBzbGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHNjYWxhciA9IHNjYWxhcnNbal07XG4gICAgICAgICAgICBjb25zdCB3Yml0cyA9IE51bWJlcigoc2NhbGFyID4+IEJpZ0ludChpKSkgJiBNQVNLKTtcbiAgICAgICAgICAgIGJ1Y2tldHNbd2JpdHNdID0gYnVja2V0c1t3Yml0c10uYWRkKHBvaW50c1tqXSk7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IHJlc0kgPSB6ZXJvOyAvLyBub3QgdXNpbmcgdGhpcyB3aWxsIGRvIHNtYWxsIHNwZWVkLXVwLCBidXQgd2lsbCBsb3NlIGN0XG4gICAgICAgIC8vIFNraXAgZmlyc3QgYnVja2V0LCBiZWNhdXNlIGl0IGlzIHplcm9cbiAgICAgICAgZm9yIChsZXQgaiA9IGJ1Y2tldHMubGVuZ3RoIC0gMSwgc3VtSSA9IHplcm87IGogPiAwOyBqLS0pIHtcbiAgICAgICAgICAgIHN1bUkgPSBzdW1JLmFkZChidWNrZXRzW2pdKTtcbiAgICAgICAgICAgIHJlc0kgPSByZXNJLmFkZChzdW1JKTtcbiAgICAgICAgfVxuICAgICAgICBzdW0gPSBzdW0uYWRkKHJlc0kpO1xuICAgICAgICBpZiAoaSAhPT0gMClcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgd2luZG93U2l6ZTsgaisrKVxuICAgICAgICAgICAgICAgIHN1bSA9IHN1bS5kb3VibGUoKTtcbiAgICB9XG4gICAgcmV0dXJuIHN1bTtcbn1cbi8qKlxuICogUHJlY29tcHV0ZWQgbXVsdGktc2NhbGFyIG11bHRpcGxpY2F0aW9uIChNU00sIFBhICsgUWIgKyBSYyArIC4uLikuXG4gKiBAcGFyYW0gYyBDdXJ2ZSBQb2ludCBjb25zdHJ1Y3RvclxuICogQHBhcmFtIGZpZWxkTiBmaWVsZCBvdmVyIENVUlZFLk4gLSBpbXBvcnRhbnQgdGhhdCBpdCdzIG5vdCBvdmVyIENVUlZFLlBcbiAqIEBwYXJhbSBwb2ludHMgYXJyYXkgb2YgTCBjdXJ2ZSBwb2ludHNcbiAqIEByZXR1cm5zIGZ1bmN0aW9uIHdoaWNoIG11bHRpcGxpZXMgcG9pbnRzIHdpdGggc2NhYXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmVjb21wdXRlTVNNVW5zYWZlKGMsIGZpZWxkTiwgcG9pbnRzLCB3aW5kb3dTaXplKSB7XG4gICAgLyoqXG4gICAgICogUGVyZm9ybWFuY2UgQW5hbHlzaXMgb2YgV2luZG93LWJhc2VkIFByZWNvbXB1dGF0aW9uXG4gICAgICpcbiAgICAgKiBCYXNlIENhc2UgKDI1Ni1iaXQgc2NhbGFyLCA4LWJpdCB3aW5kb3cpOlxuICAgICAqIC0gU3RhbmRhcmQgcHJlY29tcHV0YXRpb24gcmVxdWlyZXM6XG4gICAgICogICAtIDMxIGFkZGl0aW9ucyBwZXIgc2NhbGFyIMOXIDI1NiBzY2FsYXJzID0gNyw5MzYgb3BzXG4gICAgICogICAtIFBsdXMgMjU1IHN1bW1hcnkgYWRkaXRpb25zID0gOCwxOTEgdG90YWwgb3BzXG4gICAgICogICBOb3RlOiBTdW1tYXJ5IGFkZGl0aW9ucyBjYW4gYmUgb3B0aW1pemVkIHZpYSBhY2N1bXVsYXRvclxuICAgICAqXG4gICAgICogQ2h1bmtlZCBQcmVjb21wdXRhdGlvbiBBbmFseXNpczpcbiAgICAgKiAtIFVzaW5nIDMyIGNodW5rcyByZXF1aXJlczpcbiAgICAgKiAgIC0gMjU1IGFkZGl0aW9ucyBwZXIgY2h1bmtcbiAgICAgKiAgIC0gMjU2IGRvdWJsaW5nc1xuICAgICAqICAgLSBUb3RhbDogKDI1NSDDlyAzMikgKyAyNTYgPSA4LDQxNiBvcHNcbiAgICAgKlxuICAgICAqIE1lbW9yeSBVc2FnZSBDb21wYXJpc29uOlxuICAgICAqIFdpbmRvdyBTaXplIHwgU3RhbmRhcmQgUG9pbnRzIHwgQ2h1bmtlZCBQb2ludHNcbiAgICAgKiAtLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tXG4gICAgICogICAgIDQtYml0ICAgfCAgICAgNTIwICAgICAgICAgfCAgICAgIDE1XG4gICAgICogICAgIDgtYml0ICAgfCAgICA0LDIyNCAgICAgICAgfCAgICAgMjU1XG4gICAgICogICAgMTAtYml0ICAgfCAgIDEzLDgyNCAgICAgICAgfCAgIDEsMDIzXG4gICAgICogICAgMTYtYml0ICAgfCAgNTU3LDA1NiAgICAgICAgfCAgNjUsNTM1XG4gICAgICpcbiAgICAgKiBLZXkgQWR2YW50YWdlczpcbiAgICAgKiAxLiBFbmFibGVzIGxhcmdlciB3aW5kb3cgc2l6ZXMgZHVlIHRvIHJlZHVjZWQgbWVtb3J5IG92ZXJoZWFkXG4gICAgICogMi4gTW9yZSBlZmZpY2llbnQgZm9yIHNtYWxsZXIgc2NhbGFyIGNvdW50czpcbiAgICAgKiAgICAtIDE2IGNodW5rczogKDE2IMOXIDI1NSkgKyAyNTYgPSA0LDMzNiBvcHNcbiAgICAgKiAgICAtIH4yeCBmYXN0ZXIgdGhhbiBzdGFuZGFyZCA4LDE5MSBvcHNcbiAgICAgKlxuICAgICAqIExpbWl0YXRpb25zOlxuICAgICAqIC0gTm90IHN1aXRhYmxlIGZvciBwbGFpbiBwcmVjb21wdXRlcyAocmVxdWlyZXMgMjU2IGNvbnN0YW50IGRvdWJsaW5ncylcbiAgICAgKiAtIFBlcmZvcm1hbmNlIGRlZ3JhZGVzIHdpdGggbGFyZ2VyIHNjYWxhciBjb3VudHM6XG4gICAgICogICAtIE9wdGltYWwgZm9yIH4yNTYgc2NhbGFyc1xuICAgICAqICAgLSBMZXNzIGVmZmljaWVudCBmb3IgNDA5Nisgc2NhbGFycyAoUGlwcGVuZ2VyIHByZWZlcnJlZClcbiAgICAgKi9cbiAgICB2YWxpZGF0ZVcod2luZG93U2l6ZSwgZmllbGROLkJJVFMpO1xuICAgIHZhbGlkYXRlTVNNUG9pbnRzKHBvaW50cywgYyk7XG4gICAgY29uc3QgemVybyA9IGMuWkVSTztcbiAgICBjb25zdCB0YWJsZVNpemUgPSAyICoqIHdpbmRvd1NpemUgLSAxOyAvLyB0YWJsZSBzaXplICh3aXRob3V0IHplcm8pXG4gICAgY29uc3QgY2h1bmtzID0gTWF0aC5jZWlsKGZpZWxkTi5CSVRTIC8gd2luZG93U2l6ZSk7IC8vIGNodW5rcyBvZiBpdGVtXG4gICAgY29uc3QgTUFTSyA9IGJpdE1hc2sod2luZG93U2l6ZSk7XG4gICAgY29uc3QgdGFibGVzID0gcG9pbnRzLm1hcCgocCkgPT4ge1xuICAgICAgICBjb25zdCByZXMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGFjYyA9IHA7IGkgPCB0YWJsZVNpemU7IGkrKykge1xuICAgICAgICAgICAgcmVzLnB1c2goYWNjKTtcbiAgICAgICAgICAgIGFjYyA9IGFjYy5hZGQocCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9KTtcbiAgICByZXR1cm4gKHNjYWxhcnMpID0+IHtcbiAgICAgICAgdmFsaWRhdGVNU01TY2FsYXJzKHNjYWxhcnMsIGZpZWxkTik7XG4gICAgICAgIGlmIChzY2FsYXJzLmxlbmd0aCA+IHBvaW50cy5sZW5ndGgpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FycmF5IG9mIHNjYWxhcnMgbXVzdCBiZSBzbWFsbGVyIHRoYW4gYXJyYXkgb2YgcG9pbnRzJyk7XG4gICAgICAgIGxldCByZXMgPSB6ZXJvO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNodW5rczsgaSsrKSB7XG4gICAgICAgICAgICAvLyBObyBuZWVkIHRvIGRvdWJsZSBpZiBhY2N1bXVsYXRvciBpcyBzdGlsbCB6ZXJvLlxuICAgICAgICAgICAgaWYgKHJlcyAhPT0gemVybylcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHdpbmRvd1NpemU7IGorKylcbiAgICAgICAgICAgICAgICAgICAgcmVzID0gcmVzLmRvdWJsZSgpO1xuICAgICAgICAgICAgY29uc3Qgc2hpZnRCeSA9IEJpZ0ludChjaHVua3MgKiB3aW5kb3dTaXplIC0gKGkgKyAxKSAqIHdpbmRvd1NpemUpO1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBzY2FsYXJzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbiA9IHNjYWxhcnNbal07XG4gICAgICAgICAgICAgICAgY29uc3QgY3VyciA9IE51bWJlcigobiA+PiBzaGlmdEJ5KSAmIE1BU0spO1xuICAgICAgICAgICAgICAgIGlmICghY3VycilcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7IC8vIHNraXAgemVybyBzY2FsYXJzIGNodW5rc1xuICAgICAgICAgICAgICAgIHJlcyA9IHJlcy5hZGQodGFibGVzW2pdW2N1cnIgLSAxXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlQmFzaWMoY3VydmUpIHtcbiAgICB2YWxpZGF0ZUZpZWxkKGN1cnZlLkZwKTtcbiAgICB2YWxpZGF0ZU9iamVjdChjdXJ2ZSwge1xuICAgICAgICBuOiAnYmlnaW50JyxcbiAgICAgICAgaDogJ2JpZ2ludCcsXG4gICAgICAgIEd4OiAnZmllbGQnLFxuICAgICAgICBHeTogJ2ZpZWxkJyxcbiAgICB9LCB7XG4gICAgICAgIG5CaXRMZW5ndGg6ICdpc1NhZmVJbnRlZ2VyJyxcbiAgICAgICAgbkJ5dGVMZW5ndGg6ICdpc1NhZmVJbnRlZ2VyJyxcbiAgICB9KTtcbiAgICAvLyBTZXQgZGVmYXVsdHNcbiAgICByZXR1cm4gT2JqZWN0LmZyZWV6ZSh7XG4gICAgICAgIC4uLm5MZW5ndGgoY3VydmUubiwgY3VydmUubkJpdExlbmd0aCksXG4gICAgICAgIC4uLmN1cnZlLFxuICAgICAgICAuLi57IHA6IGN1cnZlLkZwLk9SREVSIH0sXG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jdXJ2ZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/curve.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/hash-to-curve.js": /*!************************************************************************************!*\ !*** ./node_modules/viem/node_modules/@noble/curves/esm/abstract/hash-to-curve.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createHasher: () => (/* binding */ createHasher),\n/* harmony export */ expand_message_xmd: () => (/* binding */ expand_message_xmd),\n/* harmony export */ expand_message_xof: () => (/* binding */ expand_message_xof),\n/* harmony export */ hash_to_field: () => (/* binding */ hash_to_field),\n/* harmony export */ isogenyMap: () => (/* binding */ isogenyMap)\n/* harmony export */ });\n/* harmony import */ var _modular_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modular.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/modular.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\");\n\n\n// Octet Stream to Integer. \"spec\" implementation of os2ip is 2.5x slower vs bytesToNumberBE.\nconst os2ip = _utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE;\n// Integer to Octet Stream (numberToBytesBE)\nfunction i2osp(value, length) {\n anum(value);\n anum(length);\n if (value < 0 || value >= 1 << (8 * length))\n throw new Error('invalid I2OSP input: ' + value);\n const res = Array.from({ length }).fill(0);\n for (let i = length - 1; i >= 0; i--) {\n res[i] = value & 0xff;\n value >>>= 8;\n }\n return new Uint8Array(res);\n}\nfunction strxor(a, b) {\n const arr = new Uint8Array(a.length);\n for (let i = 0; i < a.length; i++) {\n arr[i] = a[i] ^ b[i];\n }\n return arr;\n}\nfunction anum(item) {\n if (!Number.isSafeInteger(item))\n throw new Error('number expected');\n}\n/**\n * Produces a uniformly random byte string using a cryptographic hash function H that outputs b bits.\n * [RFC 9380 5.3.1](https://www.rfc-editor.org/rfc/rfc9380#section-5.3.1).\n */\nfunction expand_message_xmd(msg, DST, lenInBytes, H) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abytes)(msg);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abytes)(DST);\n anum(lenInBytes);\n // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3\n if (DST.length > 255)\n DST = H((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.utf8ToBytes)('H2C-OVERSIZE-DST-'), DST));\n const { outputLen: b_in_bytes, blockLen: r_in_bytes } = H;\n const ell = Math.ceil(lenInBytes / b_in_bytes);\n if (lenInBytes > 65535 || ell > 255)\n throw new Error('expand_message_xmd: invalid lenInBytes');\n const DST_prime = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)(DST, i2osp(DST.length, 1));\n const Z_pad = i2osp(0, r_in_bytes);\n const l_i_b_str = i2osp(lenInBytes, 2); // len_in_bytes_str\n const b = new Array(ell);\n const b_0 = H((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)(Z_pad, msg, l_i_b_str, i2osp(0, 1), DST_prime));\n b[0] = H((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)(b_0, i2osp(1, 1), DST_prime));\n for (let i = 1; i <= ell; i++) {\n const args = [strxor(b_0, b[i - 1]), i2osp(i + 1, 1), DST_prime];\n b[i] = H((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)(...args));\n }\n const pseudo_random_bytes = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)(...b);\n return pseudo_random_bytes.slice(0, lenInBytes);\n}\n/**\n * Produces a uniformly random byte string using an extendable-output function (XOF) H.\n * 1. The collision resistance of H MUST be at least k bits.\n * 2. H MUST be an XOF that has been proved indifferentiable from\n * a random oracle under a reasonable cryptographic assumption.\n * [RFC 9380 5.3.2](https://www.rfc-editor.org/rfc/rfc9380#section-5.3.2).\n */\nfunction expand_message_xof(msg, DST, lenInBytes, k, H) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abytes)(msg);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abytes)(DST);\n anum(lenInBytes);\n // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3\n // DST = H('H2C-OVERSIZE-DST-' || a_very_long_DST, Math.ceil((lenInBytes * k) / 8));\n if (DST.length > 255) {\n const dkLen = Math.ceil((2 * k) / 8);\n DST = H.create({ dkLen }).update((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.utf8ToBytes)('H2C-OVERSIZE-DST-')).update(DST).digest();\n }\n if (lenInBytes > 65535 || DST.length > 255)\n throw new Error('expand_message_xof: invalid lenInBytes');\n return (H.create({ dkLen: lenInBytes })\n .update(msg)\n .update(i2osp(lenInBytes, 2))\n // 2. DST_prime = DST || I2OSP(len(DST), 1)\n .update(DST)\n .update(i2osp(DST.length, 1))\n .digest());\n}\n/**\n * Hashes arbitrary-length byte strings to a list of one or more elements of a finite field F.\n * [RFC 9380 5.2](https://www.rfc-editor.org/rfc/rfc9380#section-5.2).\n * @param msg a byte string containing the message to hash\n * @param count the number of elements of F to output\n * @param options `{DST: string, p: bigint, m: number, k: number, expand: 'xmd' | 'xof', hash: H}`, see above\n * @returns [u_0, ..., u_(count - 1)], a list of field elements.\n */\nfunction hash_to_field(msg, count, options) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.validateObject)(options, {\n DST: 'stringOrUint8Array',\n p: 'bigint',\n m: 'isSafeInteger',\n k: 'isSafeInteger',\n hash: 'hash',\n });\n const { p, k, m, hash, expand, DST: _DST } = options;\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abytes)(msg);\n anum(count);\n const DST = typeof _DST === 'string' ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.utf8ToBytes)(_DST) : _DST;\n const log2p = p.toString(2).length;\n const L = Math.ceil((log2p + k) / 8); // section 5.1 of ietf draft link above\n const len_in_bytes = count * m * L;\n let prb; // pseudo_random_bytes\n if (expand === 'xmd') {\n prb = expand_message_xmd(msg, DST, len_in_bytes, hash);\n }\n else if (expand === 'xof') {\n prb = expand_message_xof(msg, DST, len_in_bytes, k, hash);\n }\n else if (expand === '_internal_pass') {\n // for internal tests only\n prb = msg;\n }\n else {\n throw new Error('expand must be \"xmd\" or \"xof\"');\n }\n const u = new Array(count);\n for (let i = 0; i < count; i++) {\n const e = new Array(m);\n for (let j = 0; j < m; j++) {\n const elm_offset = L * (j + i * m);\n const tv = prb.subarray(elm_offset, elm_offset + L);\n e[j] = (0,_modular_js__WEBPACK_IMPORTED_MODULE_1__.mod)(os2ip(tv), p);\n }\n u[i] = e;\n }\n return u;\n}\nfunction isogenyMap(field, map) {\n // Make same order as in spec\n const coeff = map.map((i) => Array.from(i).reverse());\n return (x, y) => {\n const [xn, xd, yn, yd] = coeff.map((val) => val.reduce((acc, i) => field.add(field.mul(acc, x), i)));\n // 6.6.3\n // Exceptional cases of iso_map are inputs that cause the denominator of\n // either rational function to evaluate to zero; such cases MUST return\n // the identity point on E.\n const [xd_inv, yd_inv] = (0,_modular_js__WEBPACK_IMPORTED_MODULE_1__.FpInvertBatch)(field, [xd, yd], true);\n x = field.mul(xn, xd_inv); // xNum / xDen\n y = field.mul(y, field.mul(yn, yd_inv)); // y * (yNum / yDev)\n return { x, y };\n };\n}\n/** Creates hash-to-curve methods from EC Point and mapToCurve function. */\nfunction createHasher(Point, mapToCurve, defaults) {\n if (typeof mapToCurve !== 'function')\n throw new Error('mapToCurve() must be defined');\n function map(num) {\n return Point.fromAffine(mapToCurve(num));\n }\n function clear(initial) {\n const P = initial.clearCofactor();\n if (P.equals(Point.ZERO))\n return Point.ZERO; // zero will throw in assert\n P.assertValidity();\n return P;\n }\n return {\n defaults,\n // Encodes byte string to elliptic curve.\n // hash_to_curve from https://www.rfc-editor.org/rfc/rfc9380#section-3\n hashToCurve(msg, options) {\n const u = hash_to_field(msg, 2, { ...defaults, DST: defaults.DST, ...options });\n const u0 = map(u[0]);\n const u1 = map(u[1]);\n return clear(u0.add(u1));\n },\n // Encodes byte string to elliptic curve.\n // encode_to_curve from https://www.rfc-editor.org/rfc/rfc9380#section-3\n encodeToCurve(msg, options) {\n const u = hash_to_field(msg, 1, { ...defaults, DST: defaults.encodeDST, ...options });\n return clear(map(u[0]));\n },\n // Same as encodeToCurve, but without hash\n mapToCurve(scalars) {\n if (!Array.isArray(scalars))\n throw new Error('expected array of bigints');\n for (const i of scalars)\n if (typeof i !== 'bigint')\n throw new Error('expected array of bigints');\n return clear(map(scalars));\n },\n };\n}\n//# sourceMappingURL=hash-to-curve.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9hYnN0cmFjdC9oYXNoLXRvLWN1cnZlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBa0Q7QUFDNkM7QUFDL0Y7QUFDQSxjQUFjLHNEQUFlO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixRQUFRO0FBQ3JDLDZCQUE2QixRQUFRO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGNBQWM7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxJQUFJLGlEQUFNO0FBQ1YsSUFBSSxpREFBTTtBQUNWO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixzREFBVyxDQUFDLHNEQUFXO0FBQ3ZDLFlBQVksOENBQThDO0FBQzFEO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixzREFBVztBQUNqQztBQUNBLDRDQUE0QztBQUM1QztBQUNBLGtCQUFrQixzREFBVztBQUM3QixhQUFhLHNEQUFXO0FBQ3hCLG9CQUFvQixVQUFVO0FBQzlCO0FBQ0EsaUJBQWlCLHNEQUFXO0FBQzVCO0FBQ0EsZ0NBQWdDLHNEQUFXO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsSUFBSSxpREFBTTtBQUNWLElBQUksaURBQU07QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLE9BQU8sU0FBUyxzREFBVztBQUNwRDtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsbUJBQW1CO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiw2RUFBNkU7QUFDakc7QUFDQTtBQUNPO0FBQ1AsSUFBSSx5REFBYztBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLFlBQVksbUNBQW1DO0FBQy9DLElBQUksaURBQU07QUFDVjtBQUNBLDJDQUEyQyxzREFBVztBQUN0RDtBQUNBLDBDQUEwQztBQUMxQztBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLFdBQVc7QUFDL0I7QUFDQSx3QkFBd0IsT0FBTztBQUMvQjtBQUNBO0FBQ0EsbUJBQW1CLGdEQUFHO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlEQUF5RDtBQUN6RDtBQUNBLGlDQUFpQywwREFBYTtBQUM5QyxtQ0FBbUM7QUFDbkMsaURBQWlEO0FBQ2pELGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0I7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhDQUE4Qyw0Q0FBNEM7QUFDMUY7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLDhDQUE4QyxrREFBa0Q7QUFDaEc7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9lc20vYWJzdHJhY3QvaGFzaC10by1jdXJ2ZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGcEludmVydEJhdGNoLCBtb2QgfSBmcm9tIFwiLi9tb2R1bGFyLmpzXCI7XG5pbXBvcnQgeyBhYnl0ZXMsIGJ5dGVzVG9OdW1iZXJCRSwgY29uY2F0Qnl0ZXMsIHV0ZjhUb0J5dGVzLCB2YWxpZGF0ZU9iamVjdCB9IGZyb20gXCIuL3V0aWxzLmpzXCI7XG4vLyBPY3RldCBTdHJlYW0gdG8gSW50ZWdlci4gXCJzcGVjXCIgaW1wbGVtZW50YXRpb24gb2Ygb3MyaXAgaXMgMi41eCBzbG93ZXIgdnMgYnl0ZXNUb051bWJlckJFLlxuY29uc3Qgb3MyaXAgPSBieXRlc1RvTnVtYmVyQkU7XG4vLyBJbnRlZ2VyIHRvIE9jdGV0IFN0cmVhbSAobnVtYmVyVG9CeXRlc0JFKVxuZnVuY3Rpb24gaTJvc3AodmFsdWUsIGxlbmd0aCkge1xuICAgIGFudW0odmFsdWUpO1xuICAgIGFudW0obGVuZ3RoKTtcbiAgICBpZiAodmFsdWUgPCAwIHx8IHZhbHVlID49IDEgPDwgKDggKiBsZW5ndGgpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgSTJPU1AgaW5wdXQ6ICcgKyB2YWx1ZSk7XG4gICAgY29uc3QgcmVzID0gQXJyYXkuZnJvbSh7IGxlbmd0aCB9KS5maWxsKDApO1xuICAgIGZvciAobGV0IGkgPSBsZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgICByZXNbaV0gPSB2YWx1ZSAmIDB4ZmY7XG4gICAgICAgIHZhbHVlID4+Pj0gODtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KHJlcyk7XG59XG5mdW5jdGlvbiBzdHJ4b3IoYSwgYikge1xuICAgIGNvbnN0IGFyciA9IG5ldyBVaW50OEFycmF5KGEubGVuZ3RoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgYXJyW2ldID0gYVtpXSBeIGJbaV07XG4gICAgfVxuICAgIHJldHVybiBhcnI7XG59XG5mdW5jdGlvbiBhbnVtKGl0ZW0pIHtcbiAgICBpZiAoIU51bWJlci5pc1NhZmVJbnRlZ2VyKGl0ZW0pKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ251bWJlciBleHBlY3RlZCcpO1xufVxuLyoqXG4gKiBQcm9kdWNlcyBhIHVuaWZvcm1seSByYW5kb20gYnl0ZSBzdHJpbmcgdXNpbmcgYSBjcnlwdG9ncmFwaGljIGhhc2ggZnVuY3Rpb24gSCB0aGF0IG91dHB1dHMgYiBiaXRzLlxuICogW1JGQyA5MzgwIDUuMy4xXShodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTUuMy4xKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGFuZF9tZXNzYWdlX3htZChtc2csIERTVCwgbGVuSW5CeXRlcywgSCkge1xuICAgIGFieXRlcyhtc2cpO1xuICAgIGFieXRlcyhEU1QpO1xuICAgIGFudW0obGVuSW5CeXRlcyk7XG4gICAgLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi01LjMuM1xuICAgIGlmIChEU1QubGVuZ3RoID4gMjU1KVxuICAgICAgICBEU1QgPSBIKGNvbmNhdEJ5dGVzKHV0ZjhUb0J5dGVzKCdIMkMtT1ZFUlNJWkUtRFNULScpLCBEU1QpKTtcbiAgICBjb25zdCB7IG91dHB1dExlbjogYl9pbl9ieXRlcywgYmxvY2tMZW46IHJfaW5fYnl0ZXMgfSA9IEg7XG4gICAgY29uc3QgZWxsID0gTWF0aC5jZWlsKGxlbkluQnl0ZXMgLyBiX2luX2J5dGVzKTtcbiAgICBpZiAobGVuSW5CeXRlcyA+IDY1NTM1IHx8IGVsbCA+IDI1NSlcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdleHBhbmRfbWVzc2FnZV94bWQ6IGludmFsaWQgbGVuSW5CeXRlcycpO1xuICAgIGNvbnN0IERTVF9wcmltZSA9IGNvbmNhdEJ5dGVzKERTVCwgaTJvc3AoRFNULmxlbmd0aCwgMSkpO1xuICAgIGNvbnN0IFpfcGFkID0gaTJvc3AoMCwgcl9pbl9ieXRlcyk7XG4gICAgY29uc3QgbF9pX2Jfc3RyID0gaTJvc3AobGVuSW5CeXRlcywgMik7IC8vIGxlbl9pbl9ieXRlc19zdHJcbiAgICBjb25zdCBiID0gbmV3IEFycmF5KGVsbCk7XG4gICAgY29uc3QgYl8wID0gSChjb25jYXRCeXRlcyhaX3BhZCwgbXNnLCBsX2lfYl9zdHIsIGkyb3NwKDAsIDEpLCBEU1RfcHJpbWUpKTtcbiAgICBiWzBdID0gSChjb25jYXRCeXRlcyhiXzAsIGkyb3NwKDEsIDEpLCBEU1RfcHJpbWUpKTtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8PSBlbGw7IGkrKykge1xuICAgICAgICBjb25zdCBhcmdzID0gW3N0cnhvcihiXzAsIGJbaSAtIDFdKSwgaTJvc3AoaSArIDEsIDEpLCBEU1RfcHJpbWVdO1xuICAgICAgICBiW2ldID0gSChjb25jYXRCeXRlcyguLi5hcmdzKSk7XG4gICAgfVxuICAgIGNvbnN0IHBzZXVkb19yYW5kb21fYnl0ZXMgPSBjb25jYXRCeXRlcyguLi5iKTtcbiAgICByZXR1cm4gcHNldWRvX3JhbmRvbV9ieXRlcy5zbGljZSgwLCBsZW5JbkJ5dGVzKTtcbn1cbi8qKlxuICogUHJvZHVjZXMgYSB1bmlmb3JtbHkgcmFuZG9tIGJ5dGUgc3RyaW5nIHVzaW5nIGFuIGV4dGVuZGFibGUtb3V0cHV0IGZ1bmN0aW9uIChYT0YpIEguXG4gKiAxLiBUaGUgY29sbGlzaW9uIHJlc2lzdGFuY2Ugb2YgSCBNVVNUIGJlIGF0IGxlYXN0IGsgYml0cy5cbiAqIDIuIEggTVVTVCBiZSBhbiBYT0YgdGhhdCBoYXMgYmVlbiBwcm92ZWQgaW5kaWZmZXJlbnRpYWJsZSBmcm9tXG4gKiAgICBhIHJhbmRvbSBvcmFjbGUgdW5kZXIgYSByZWFzb25hYmxlIGNyeXB0b2dyYXBoaWMgYXNzdW1wdGlvbi5cbiAqIFtSRkMgOTM4MCA1LjMuMl0oaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi01LjMuMikuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleHBhbmRfbWVzc2FnZV94b2YobXNnLCBEU1QsIGxlbkluQnl0ZXMsIGssIEgpIHtcbiAgICBhYnl0ZXMobXNnKTtcbiAgICBhYnl0ZXMoRFNUKTtcbiAgICBhbnVtKGxlbkluQnl0ZXMpO1xuICAgIC8vIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM5MzgwI3NlY3Rpb24tNS4zLjNcbiAgICAvLyBEU1QgPSBIKCdIMkMtT1ZFUlNJWkUtRFNULScgfHwgYV92ZXJ5X2xvbmdfRFNULCBNYXRoLmNlaWwoKGxlbkluQnl0ZXMgKiBrKSAvIDgpKTtcbiAgICBpZiAoRFNULmxlbmd0aCA+IDI1NSkge1xuICAgICAgICBjb25zdCBka0xlbiA9IE1hdGguY2VpbCgoMiAqIGspIC8gOCk7XG4gICAgICAgIERTVCA9IEguY3JlYXRlKHsgZGtMZW4gfSkudXBkYXRlKHV0ZjhUb0J5dGVzKCdIMkMtT1ZFUlNJWkUtRFNULScpKS51cGRhdGUoRFNUKS5kaWdlc3QoKTtcbiAgICB9XG4gICAgaWYgKGxlbkluQnl0ZXMgPiA2NTUzNSB8fCBEU1QubGVuZ3RoID4gMjU1KVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2V4cGFuZF9tZXNzYWdlX3hvZjogaW52YWxpZCBsZW5JbkJ5dGVzJyk7XG4gICAgcmV0dXJuIChILmNyZWF0ZSh7IGRrTGVuOiBsZW5JbkJ5dGVzIH0pXG4gICAgICAgIC51cGRhdGUobXNnKVxuICAgICAgICAudXBkYXRlKGkyb3NwKGxlbkluQnl0ZXMsIDIpKVxuICAgICAgICAvLyAyLiBEU1RfcHJpbWUgPSBEU1QgfHwgSTJPU1AobGVuKERTVCksIDEpXG4gICAgICAgIC51cGRhdGUoRFNUKVxuICAgICAgICAudXBkYXRlKGkyb3NwKERTVC5sZW5ndGgsIDEpKVxuICAgICAgICAuZGlnZXN0KCkpO1xufVxuLyoqXG4gKiBIYXNoZXMgYXJiaXRyYXJ5LWxlbmd0aCBieXRlIHN0cmluZ3MgdG8gYSBsaXN0IG9mIG9uZSBvciBtb3JlIGVsZW1lbnRzIG9mIGEgZmluaXRlIGZpZWxkIEYuXG4gKiBbUkZDIDkzODAgNS4yXShodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTUuMikuXG4gKiBAcGFyYW0gbXNnIGEgYnl0ZSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWVzc2FnZSB0byBoYXNoXG4gKiBAcGFyYW0gY291bnQgdGhlIG51bWJlciBvZiBlbGVtZW50cyBvZiBGIHRvIG91dHB1dFxuICogQHBhcmFtIG9wdGlvbnMgYHtEU1Q6IHN0cmluZywgcDogYmlnaW50LCBtOiBudW1iZXIsIGs6IG51bWJlciwgZXhwYW5kOiAneG1kJyB8ICd4b2YnLCBoYXNoOiBIfWAsIHNlZSBhYm92ZVxuICogQHJldHVybnMgW3VfMCwgLi4uLCB1Xyhjb3VudCAtIDEpXSwgYSBsaXN0IG9mIGZpZWxkIGVsZW1lbnRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGFzaF90b19maWVsZChtc2csIGNvdW50LCBvcHRpb25zKSB7XG4gICAgdmFsaWRhdGVPYmplY3Qob3B0aW9ucywge1xuICAgICAgICBEU1Q6ICdzdHJpbmdPclVpbnQ4QXJyYXknLFxuICAgICAgICBwOiAnYmlnaW50JyxcbiAgICAgICAgbTogJ2lzU2FmZUludGVnZXInLFxuICAgICAgICBrOiAnaXNTYWZlSW50ZWdlcicsXG4gICAgICAgIGhhc2g6ICdoYXNoJyxcbiAgICB9KTtcbiAgICBjb25zdCB7IHAsIGssIG0sIGhhc2gsIGV4cGFuZCwgRFNUOiBfRFNUIH0gPSBvcHRpb25zO1xuICAgIGFieXRlcyhtc2cpO1xuICAgIGFudW0oY291bnQpO1xuICAgIGNvbnN0IERTVCA9IHR5cGVvZiBfRFNUID09PSAnc3RyaW5nJyA/IHV0ZjhUb0J5dGVzKF9EU1QpIDogX0RTVDtcbiAgICBjb25zdCBsb2cycCA9IHAudG9TdHJpbmcoMikubGVuZ3RoO1xuICAgIGNvbnN0IEwgPSBNYXRoLmNlaWwoKGxvZzJwICsgaykgLyA4KTsgLy8gc2VjdGlvbiA1LjEgb2YgaWV0ZiBkcmFmdCBsaW5rIGFib3ZlXG4gICAgY29uc3QgbGVuX2luX2J5dGVzID0gY291bnQgKiBtICogTDtcbiAgICBsZXQgcHJiOyAvLyBwc2V1ZG9fcmFuZG9tX2J5dGVzXG4gICAgaWYgKGV4cGFuZCA9PT0gJ3htZCcpIHtcbiAgICAgICAgcHJiID0gZXhwYW5kX21lc3NhZ2VfeG1kKG1zZywgRFNULCBsZW5faW5fYnl0ZXMsIGhhc2gpO1xuICAgIH1cbiAgICBlbHNlIGlmIChleHBhbmQgPT09ICd4b2YnKSB7XG4gICAgICAgIHByYiA9IGV4cGFuZF9tZXNzYWdlX3hvZihtc2csIERTVCwgbGVuX2luX2J5dGVzLCBrLCBoYXNoKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoZXhwYW5kID09PSAnX2ludGVybmFsX3Bhc3MnKSB7XG4gICAgICAgIC8vIGZvciBpbnRlcm5hbCB0ZXN0cyBvbmx5XG4gICAgICAgIHByYiA9IG1zZztcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignZXhwYW5kIG11c3QgYmUgXCJ4bWRcIiBvciBcInhvZlwiJyk7XG4gICAgfVxuICAgIGNvbnN0IHUgPSBuZXcgQXJyYXkoY291bnQpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuICAgICAgICBjb25zdCBlID0gbmV3IEFycmF5KG0pO1xuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IG07IGorKykge1xuICAgICAgICAgICAgY29uc3QgZWxtX29mZnNldCA9IEwgKiAoaiArIGkgKiBtKTtcbiAgICAgICAgICAgIGNvbnN0IHR2ID0gcHJiLnN1YmFycmF5KGVsbV9vZmZzZXQsIGVsbV9vZmZzZXQgKyBMKTtcbiAgICAgICAgICAgIGVbal0gPSBtb2Qob3MyaXAodHYpLCBwKTtcbiAgICAgICAgfVxuICAgICAgICB1W2ldID0gZTtcbiAgICB9XG4gICAgcmV0dXJuIHU7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNvZ2VueU1hcChmaWVsZCwgbWFwKSB7XG4gICAgLy8gTWFrZSBzYW1lIG9yZGVyIGFzIGluIHNwZWNcbiAgICBjb25zdCBjb2VmZiA9IG1hcC5tYXAoKGkpID0+IEFycmF5LmZyb20oaSkucmV2ZXJzZSgpKTtcbiAgICByZXR1cm4gKHgsIHkpID0+IHtcbiAgICAgICAgY29uc3QgW3huLCB4ZCwgeW4sIHlkXSA9IGNvZWZmLm1hcCgodmFsKSA9PiB2YWwucmVkdWNlKChhY2MsIGkpID0+IGZpZWxkLmFkZChmaWVsZC5tdWwoYWNjLCB4KSwgaSkpKTtcbiAgICAgICAgLy8gNi42LjNcbiAgICAgICAgLy8gRXhjZXB0aW9uYWwgY2FzZXMgb2YgaXNvX21hcCBhcmUgaW5wdXRzIHRoYXQgY2F1c2UgdGhlIGRlbm9taW5hdG9yIG9mXG4gICAgICAgIC8vIGVpdGhlciByYXRpb25hbCBmdW5jdGlvbiB0byBldmFsdWF0ZSB0byB6ZXJvOyBzdWNoIGNhc2VzIE1VU1QgcmV0dXJuXG4gICAgICAgIC8vIHRoZSBpZGVudGl0eSBwb2ludCBvbiBFLlxuICAgICAgICBjb25zdCBbeGRfaW52LCB5ZF9pbnZdID0gRnBJbnZlcnRCYXRjaChmaWVsZCwgW3hkLCB5ZF0sIHRydWUpO1xuICAgICAgICB4ID0gZmllbGQubXVsKHhuLCB4ZF9pbnYpOyAvLyB4TnVtIC8geERlblxuICAgICAgICB5ID0gZmllbGQubXVsKHksIGZpZWxkLm11bCh5biwgeWRfaW52KSk7IC8vIHkgKiAoeU51bSAvIHlEZXYpXG4gICAgICAgIHJldHVybiB7IHgsIHkgfTtcbiAgICB9O1xufVxuLyoqIENyZWF0ZXMgaGFzaC10by1jdXJ2ZSBtZXRob2RzIGZyb20gRUMgUG9pbnQgYW5kIG1hcFRvQ3VydmUgZnVuY3Rpb24uICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSGFzaGVyKFBvaW50LCBtYXBUb0N1cnZlLCBkZWZhdWx0cykge1xuICAgIGlmICh0eXBlb2YgbWFwVG9DdXJ2ZSAhPT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdtYXBUb0N1cnZlKCkgbXVzdCBiZSBkZWZpbmVkJyk7XG4gICAgZnVuY3Rpb24gbWFwKG51bSkge1xuICAgICAgICByZXR1cm4gUG9pbnQuZnJvbUFmZmluZShtYXBUb0N1cnZlKG51bSkpO1xuICAgIH1cbiAgICBmdW5jdGlvbiBjbGVhcihpbml0aWFsKSB7XG4gICAgICAgIGNvbnN0IFAgPSBpbml0aWFsLmNsZWFyQ29mYWN0b3IoKTtcbiAgICAgICAgaWYgKFAuZXF1YWxzKFBvaW50LlpFUk8pKVxuICAgICAgICAgICAgcmV0dXJuIFBvaW50LlpFUk87IC8vIHplcm8gd2lsbCB0aHJvdyBpbiBhc3NlcnRcbiAgICAgICAgUC5hc3NlcnRWYWxpZGl0eSgpO1xuICAgICAgICByZXR1cm4gUDtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZGVmYXVsdHMsXG4gICAgICAgIC8vIEVuY29kZXMgYnl0ZSBzdHJpbmcgdG8gZWxsaXB0aWMgY3VydmUuXG4gICAgICAgIC8vIGhhc2hfdG9fY3VydmUgZnJvbSBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTNcbiAgICAgICAgaGFzaFRvQ3VydmUobXNnLCBvcHRpb25zKSB7XG4gICAgICAgICAgICBjb25zdCB1ID0gaGFzaF90b19maWVsZChtc2csIDIsIHsgLi4uZGVmYXVsdHMsIERTVDogZGVmYXVsdHMuRFNULCAuLi5vcHRpb25zIH0pO1xuICAgICAgICAgICAgY29uc3QgdTAgPSBtYXAodVswXSk7XG4gICAgICAgICAgICBjb25zdCB1MSA9IG1hcCh1WzFdKTtcbiAgICAgICAgICAgIHJldHVybiBjbGVhcih1MC5hZGQodTEpKTtcbiAgICAgICAgfSxcbiAgICAgICAgLy8gRW5jb2RlcyBieXRlIHN0cmluZyB0byBlbGxpcHRpYyBjdXJ2ZS5cbiAgICAgICAgLy8gZW5jb2RlX3RvX2N1cnZlIGZyb20gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi0zXG4gICAgICAgIGVuY29kZVRvQ3VydmUobXNnLCBvcHRpb25zKSB7XG4gICAgICAgICAgICBjb25zdCB1ID0gaGFzaF90b19maWVsZChtc2csIDEsIHsgLi4uZGVmYXVsdHMsIERTVDogZGVmYXVsdHMuZW5jb2RlRFNULCAuLi5vcHRpb25zIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGNsZWFyKG1hcCh1WzBdKSk7XG4gICAgICAgIH0sXG4gICAgICAgIC8vIFNhbWUgYXMgZW5jb2RlVG9DdXJ2ZSwgYnV0IHdpdGhvdXQgaGFzaFxuICAgICAgICBtYXBUb0N1cnZlKHNjYWxhcnMpIHtcbiAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShzY2FsYXJzKSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2V4cGVjdGVkIGFycmF5IG9mIGJpZ2ludHMnKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgaSBvZiBzY2FsYXJzKVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgaSAhPT0gJ2JpZ2ludCcpXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgYXJyYXkgb2YgYmlnaW50cycpO1xuICAgICAgICAgICAgcmV0dXJuIGNsZWFyKG1hcChzY2FsYXJzKSk7XG4gICAgICAgIH0sXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWhhc2gtdG8tY3VydmUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/hash-to-curve.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/modular.js": /*!******************************************************************************!*\ !*** ./node_modules/viem/node_modules/@noble/curves/esm/abstract/modular.js ***! \******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Field: () => (/* binding */ Field),\n/* harmony export */ FpDiv: () => (/* binding */ FpDiv),\n/* harmony export */ FpInvertBatch: () => (/* binding */ FpInvertBatch),\n/* harmony export */ FpIsSquare: () => (/* binding */ FpIsSquare),\n/* harmony export */ FpLegendre: () => (/* binding */ FpLegendre),\n/* harmony export */ FpPow: () => (/* binding */ FpPow),\n/* harmony export */ FpSqrt: () => (/* binding */ FpSqrt),\n/* harmony export */ FpSqrtEven: () => (/* binding */ FpSqrtEven),\n/* harmony export */ FpSqrtOdd: () => (/* binding */ FpSqrtOdd),\n/* harmony export */ getFieldBytesLength: () => (/* binding */ getFieldBytesLength),\n/* harmony export */ getMinHashLength: () => (/* binding */ getMinHashLength),\n/* harmony export */ hashToPrivateScalar: () => (/* binding */ hashToPrivateScalar),\n/* harmony export */ invert: () => (/* binding */ invert),\n/* harmony export */ isNegativeLE: () => (/* binding */ isNegativeLE),\n/* harmony export */ mapHashToField: () => (/* binding */ mapHashToField),\n/* harmony export */ mod: () => (/* binding */ mod),\n/* harmony export */ nLength: () => (/* binding */ nLength),\n/* harmony export */ pow: () => (/* binding */ pow),\n/* harmony export */ pow2: () => (/* binding */ pow2),\n/* harmony export */ tonelliShanks: () => (/* binding */ tonelliShanks),\n/* harmony export */ validateField: () => (/* binding */ validateField)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @noble/hashes/utils */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/utils.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\");\n/**\n * Utils for modular division and finite fields.\n * A finite field over 11 is integer number operations `mod 11`.\n * There is no division: it is replaced by modular multiplicative inverse.\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n\n// prettier-ignore\nconst _0n = BigInt(0), _1n = BigInt(1), _2n = /* @__PURE__ */ BigInt(2), _3n = /* @__PURE__ */ BigInt(3);\n// prettier-ignore\nconst _4n = /* @__PURE__ */ BigInt(4), _5n = /* @__PURE__ */ BigInt(5), _8n = /* @__PURE__ */ BigInt(8);\n// Calculates a modulo b\nfunction mod(a, b) {\n const result = a % b;\n return result >= _0n ? result : b + result;\n}\n/**\n * Efficiently raise num to power and do modular division.\n * Unsafe in some contexts: uses ladder, so can expose bigint bits.\n * TODO: remove.\n * @example\n * pow(2n, 6n, 11n) // 64n % 11n == 9n\n */\nfunction pow(num, power, modulo) {\n return FpPow(Field(modulo), num, power);\n}\n/** Does `x^(2^power)` mod p. `pow2(30, 4)` == `30^(2^4)` */\nfunction pow2(x, power, modulo) {\n let res = x;\n while (power-- > _0n) {\n res *= res;\n res %= modulo;\n }\n return res;\n}\n/**\n * Inverses number over modulo.\n * Implemented using [Euclidean GCD](https://brilliant.org/wiki/extended-euclidean-algorithm/).\n */\nfunction invert(number, modulo) {\n if (number === _0n)\n throw new Error('invert: expected non-zero number');\n if (modulo <= _0n)\n throw new Error('invert: expected positive modulus, got ' + modulo);\n // Fermat's little theorem \"CT-like\" version inv(n) = n^(m-2) mod m is 30x slower.\n let a = mod(number, modulo);\n let b = modulo;\n // prettier-ignore\n let x = _0n, y = _1n, u = _1n, v = _0n;\n while (a !== _0n) {\n // JIT applies optimization if those two lines follow each other\n const q = b / a;\n const r = b % a;\n const m = x - u * q;\n const n = y - v * q;\n // prettier-ignore\n b = a, a = r, x = u, y = v, u = m, v = n;\n }\n const gcd = b;\n if (gcd !== _1n)\n throw new Error('invert: does not exist');\n return mod(x, modulo);\n}\n// Not all roots are possible! Example which will throw:\n// const NUM =\n// n = 72057594037927816n;\n// Fp = Field(BigInt('0x1a0111ea397fe69a4b1ba7b6434bacd764774b84f38512bf6730d2a0f6b0f6241eabfffeb153ffffb9feffffffffaaab'));\nfunction sqrt3mod4(Fp, n) {\n const p1div4 = (Fp.ORDER + _1n) / _4n;\n const root = Fp.pow(n, p1div4);\n // Throw if root^2 != n\n if (!Fp.eql(Fp.sqr(root), n))\n throw new Error('Cannot find square root');\n return root;\n}\nfunction sqrt5mod8(Fp, n) {\n const p5div8 = (Fp.ORDER - _5n) / _8n;\n const n2 = Fp.mul(n, _2n);\n const v = Fp.pow(n2, p5div8);\n const nv = Fp.mul(n, v);\n const i = Fp.mul(Fp.mul(nv, _2n), v);\n const root = Fp.mul(nv, Fp.sub(i, Fp.ONE));\n if (!Fp.eql(Fp.sqr(root), n))\n throw new Error('Cannot find square root');\n return root;\n}\n// TODO: Commented-out for now. Provide test vectors.\n// Tonelli is too slow for extension fields Fp2.\n// That means we can't use sqrt (c1, c2...) even for initialization constants.\n// if (P % _16n === _9n) return sqrt9mod16;\n// // prettier-ignore\n// function sqrt9mod16<T>(Fp: IField<T>, n: T, p7div16?: bigint) {\n// if (p7div16 === undefined) p7div16 = (Fp.ORDER + BigInt(7)) / _16n;\n// const c1 = Fp.sqrt(Fp.neg(Fp.ONE)); // 1. c1 = sqrt(-1) in F, i.e., (c1^2) == -1 in F\n// const c2 = Fp.sqrt(c1); // 2. c2 = sqrt(c1) in F, i.e., (c2^2) == c1 in F\n// const c3 = Fp.sqrt(Fp.neg(c1)); // 3. c3 = sqrt(-c1) in F, i.e., (c3^2) == -c1 in F\n// const c4 = p7div16; // 4. c4 = (q + 7) / 16 # Integer arithmetic\n// let tv1 = Fp.pow(n, c4); // 1. tv1 = x^c4\n// let tv2 = Fp.mul(c1, tv1); // 2. tv2 = c1 * tv1\n// const tv3 = Fp.mul(c2, tv1); // 3. tv3 = c2 * tv1\n// let tv4 = Fp.mul(c3, tv1); // 4. tv4 = c3 * tv1\n// const e1 = Fp.eql(Fp.sqr(tv2), n); // 5. e1 = (tv2^2) == x\n// const e2 = Fp.eql(Fp.sqr(tv3), n); // 6. e2 = (tv3^2) == x\n// tv1 = Fp.cmov(tv1, tv2, e1); // 7. tv1 = CMOV(tv1, tv2, e1) # Select tv2 if (tv2^2) == x\n// tv2 = Fp.cmov(tv4, tv3, e2); // 8. tv2 = CMOV(tv4, tv3, e2) # Select tv3 if (tv3^2) == x\n// const e3 = Fp.eql(Fp.sqr(tv2), n); // 9. e3 = (tv2^2) == x\n// return Fp.cmov(tv1, tv2, e3); // 10. z = CMOV(tv1, tv2, e3) # Select the sqrt from tv1 and tv2\n// }\n/**\n * Tonelli-Shanks square root search algorithm.\n * 1. https://eprint.iacr.org/2012/685.pdf (page 12)\n * 2. Square Roots from 1; 24, 51, 10 to Dan Shanks\n * @param P field order\n * @returns function that takes field Fp (created from P) and number n\n */\nfunction tonelliShanks(P) {\n // Initialization (precomputation).\n if (P < BigInt(3))\n throw new Error('sqrt is not defined for small field');\n // Factor P - 1 = Q * 2^S, where Q is odd\n let Q = P - _1n;\n let S = 0;\n while (Q % _2n === _0n) {\n Q /= _2n;\n S++;\n }\n // Find the first quadratic non-residue Z >= 2\n let Z = _2n;\n const _Fp = Field(P);\n while (FpLegendre(_Fp, Z) === 1) {\n // Basic primality test for P. After x iterations, chance of\n // not finding quadratic non-residue is 2^x, so 2^1000.\n if (Z++ > 1000)\n throw new Error('Cannot find square root: probably non-prime P');\n }\n // Fast-path; usually done before Z, but we do \"primality test\".\n if (S === 1)\n return sqrt3mod4;\n // Slow-path\n // TODO: test on Fp2 and others\n let cc = _Fp.pow(Z, Q); // c = z^Q\n const Q1div2 = (Q + _1n) / _2n;\n return function tonelliSlow(Fp, n) {\n if (Fp.is0(n))\n return n;\n // Check if n is a quadratic residue using Legendre symbol\n if (FpLegendre(Fp, n) !== 1)\n throw new Error('Cannot find square root');\n // Initialize variables for the main loop\n let M = S;\n let c = Fp.mul(Fp.ONE, cc); // c = z^Q, move cc from field _Fp into field Fp\n let t = Fp.pow(n, Q); // t = n^Q, first guess at the fudge factor\n let R = Fp.pow(n, Q1div2); // R = n^((Q+1)/2), first guess at the square root\n // Main loop\n // while t != 1\n while (!Fp.eql(t, Fp.ONE)) {\n if (Fp.is0(t))\n return Fp.ZERO; // if t=0 return R=0\n let i = 1;\n // Find the smallest i >= 1 such that t^(2^i) ≡ 1 (mod P)\n let t_tmp = Fp.sqr(t); // t^(2^1)\n while (!Fp.eql(t_tmp, Fp.ONE)) {\n i++;\n t_tmp = Fp.sqr(t_tmp); // t^(2^2)...\n if (i === M)\n throw new Error('Cannot find square root');\n }\n // Calculate the exponent for b: 2^(M - i - 1)\n const exponent = _1n << BigInt(M - i - 1); // bigint is important\n const b = Fp.pow(c, exponent); // b = 2^(M - i - 1)\n // Update variables\n M = i;\n c = Fp.sqr(b); // c = b^2\n t = Fp.mul(t, c); // t = (t * b^2)\n R = Fp.mul(R, b); // R = R*b\n }\n return R;\n };\n}\n/**\n * Square root for a finite field. Will try optimized versions first:\n *\n * 1. P ≡ 3 (mod 4)\n * 2. P ≡ 5 (mod 8)\n * 3. Tonelli-Shanks algorithm\n *\n * Different algorithms can give different roots, it is up to user to decide which one they want.\n * For example there is FpSqrtOdd/FpSqrtEven to choice root based on oddness (used for hash-to-curve).\n */\nfunction FpSqrt(P) {\n // P ≡ 3 (mod 4) => √n = n^((P+1)/4)\n if (P % _4n === _3n)\n return sqrt3mod4;\n // P ≡ 5 (mod 8) => Atkin algorithm, page 10 of https://eprint.iacr.org/2012/685.pdf\n if (P % _8n === _5n)\n return sqrt5mod8;\n // P ≡ 9 (mod 16) not implemented, see above\n // Tonelli-Shanks algorithm\n return tonelliShanks(P);\n}\n// Little-endian check for first LE bit (last BE bit);\nconst isNegativeLE = (num, modulo) => (mod(num, modulo) & _1n) === _1n;\n// prettier-ignore\nconst FIELD_FIELDS = [\n 'create', 'isValid', 'is0', 'neg', 'inv', 'sqrt', 'sqr',\n 'eql', 'add', 'sub', 'mul', 'pow', 'div',\n 'addN', 'subN', 'mulN', 'sqrN'\n];\nfunction validateField(field) {\n const initial = {\n ORDER: 'bigint',\n MASK: 'bigint',\n BYTES: 'isSafeInteger',\n BITS: 'isSafeInteger',\n };\n const opts = FIELD_FIELDS.reduce((map, val) => {\n map[val] = 'function';\n return map;\n }, initial);\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.validateObject)(field, opts);\n}\n// Generic field functions\n/**\n * Same as `pow` but for Fp: non-constant-time.\n * Unsafe in some contexts: uses ladder, so can expose bigint bits.\n */\nfunction FpPow(Fp, num, power) {\n if (power < _0n)\n throw new Error('invalid exponent, negatives unsupported');\n if (power === _0n)\n return Fp.ONE;\n if (power === _1n)\n return num;\n let p = Fp.ONE;\n let d = num;\n while (power > _0n) {\n if (power & _1n)\n p = Fp.mul(p, d);\n d = Fp.sqr(d);\n power >>= _1n;\n }\n return p;\n}\n/**\n * Efficiently invert an array of Field elements.\n * Exception-free. Will return `undefined` for 0 elements.\n * @param passZero map 0 to 0 (instead of undefined)\n */\nfunction FpInvertBatch(Fp, nums, passZero = false) {\n const inverted = new Array(nums.length).fill(passZero ? Fp.ZERO : undefined);\n // Walk from first to last, multiply them by each other MOD p\n const multipliedAcc = nums.reduce((acc, num, i) => {\n if (Fp.is0(num))\n return acc;\n inverted[i] = acc;\n return Fp.mul(acc, num);\n }, Fp.ONE);\n // Invert last element\n const invertedAcc = Fp.inv(multipliedAcc);\n // Walk from last to first, multiply them by inverted each other MOD p\n nums.reduceRight((acc, num, i) => {\n if (Fp.is0(num))\n return acc;\n inverted[i] = Fp.mul(acc, inverted[i]);\n return Fp.mul(acc, num);\n }, invertedAcc);\n return inverted;\n}\n// TODO: remove\nfunction FpDiv(Fp, lhs, rhs) {\n return Fp.mul(lhs, typeof rhs === 'bigint' ? invert(rhs, Fp.ORDER) : Fp.inv(rhs));\n}\n/**\n * Legendre symbol.\n * Legendre constant is used to calculate Legendre symbol (a | p)\n * which denotes the value of a^((p-1)/2) (mod p).\n *\n * * (a | p) ≡ 1 if a is a square (mod p), quadratic residue\n * * (a | p) ≡ -1 if a is not a square (mod p), quadratic non residue\n * * (a | p) ≡ 0 if a ≡ 0 (mod p)\n */\nfunction FpLegendre(Fp, n) {\n // We can use 3rd argument as optional cache of this value\n // but seems unneeded for now. The operation is very fast.\n const p1mod2 = (Fp.ORDER - _1n) / _2n;\n const powered = Fp.pow(n, p1mod2);\n const yes = Fp.eql(powered, Fp.ONE);\n const zero = Fp.eql(powered, Fp.ZERO);\n const no = Fp.eql(powered, Fp.neg(Fp.ONE));\n if (!yes && !zero && !no)\n throw new Error('invalid Legendre symbol result');\n return yes ? 1 : zero ? 0 : -1;\n}\n// This function returns True whenever the value x is a square in the field F.\nfunction FpIsSquare(Fp, n) {\n const l = FpLegendre(Fp, n);\n return l === 1;\n}\n// CURVE.n lengths\nfunction nLength(n, nBitLength) {\n // Bit size, byte size of CURVE.n\n if (nBitLength !== undefined)\n (0,_noble_hashes_utils__WEBPACK_IMPORTED_MODULE_1__.anumber)(nBitLength);\n const _nBitLength = nBitLength !== undefined ? nBitLength : n.toString(2).length;\n const nByteLength = Math.ceil(_nBitLength / 8);\n return { nBitLength: _nBitLength, nByteLength };\n}\n/**\n * Initializes a finite field over prime.\n * Major performance optimizations:\n * * a) denormalized operations like mulN instead of mul\n * * b) same object shape: never add or remove keys\n * * c) Object.freeze\n * Fragile: always run a benchmark on a change.\n * Security note: operations don't check 'isValid' for all elements for performance reasons,\n * it is caller responsibility to check this.\n * This is low-level code, please make sure you know what you're doing.\n * @param ORDER prime positive bigint\n * @param bitLen how many bits the field consumes\n * @param isLE (def: false) if encoding / decoding should be in little-endian\n * @param redef optional faster redefinitions of sqrt and other methods\n */\nfunction Field(ORDER, bitLen, isLE = false, redef = {}) {\n if (ORDER <= _0n)\n throw new Error('invalid field: expected ORDER > 0, got ' + ORDER);\n const { nBitLength: BITS, nByteLength: BYTES } = nLength(ORDER, bitLen);\n if (BYTES > 2048)\n throw new Error('invalid field: expected ORDER of <= 2048 bytes');\n let sqrtP; // cached sqrtP\n const f = Object.freeze({\n ORDER,\n isLE,\n BITS,\n BYTES,\n MASK: (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bitMask)(BITS),\n ZERO: _0n,\n ONE: _1n,\n create: (num) => mod(num, ORDER),\n isValid: (num) => {\n if (typeof num !== 'bigint')\n throw new Error('invalid field element: expected bigint, got ' + typeof num);\n return _0n <= num && num < ORDER; // 0 is valid element, but it's not invertible\n },\n is0: (num) => num === _0n,\n isOdd: (num) => (num & _1n) === _1n,\n neg: (num) => mod(-num, ORDER),\n eql: (lhs, rhs) => lhs === rhs,\n sqr: (num) => mod(num * num, ORDER),\n add: (lhs, rhs) => mod(lhs + rhs, ORDER),\n sub: (lhs, rhs) => mod(lhs - rhs, ORDER),\n mul: (lhs, rhs) => mod(lhs * rhs, ORDER),\n pow: (num, power) => FpPow(f, num, power),\n div: (lhs, rhs) => mod(lhs * invert(rhs, ORDER), ORDER),\n // Same as above, but doesn't normalize\n sqrN: (num) => num * num,\n addN: (lhs, rhs) => lhs + rhs,\n subN: (lhs, rhs) => lhs - rhs,\n mulN: (lhs, rhs) => lhs * rhs,\n inv: (num) => invert(num, ORDER),\n sqrt: redef.sqrt ||\n ((n) => {\n if (!sqrtP)\n sqrtP = FpSqrt(ORDER);\n return sqrtP(f, n);\n }),\n toBytes: (num) => (isLE ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToBytesLE)(num, BYTES) : (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToBytesBE)(num, BYTES)),\n fromBytes: (bytes) => {\n if (bytes.length !== BYTES)\n throw new Error('Field.fromBytes: expected ' + BYTES + ' bytes, got ' + bytes.length);\n return isLE ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberLE)(bytes) : (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)(bytes);\n },\n // TODO: we don't need it here, move out to separate fn\n invertBatch: (lst) => FpInvertBatch(f, lst),\n // We can't move this out because Fp6, Fp12 implement it\n // and it's unclear what to return in there.\n cmov: (a, b, c) => (c ? b : a),\n });\n return Object.freeze(f);\n}\nfunction FpSqrtOdd(Fp, elm) {\n if (!Fp.isOdd)\n throw new Error(\"Field doesn't have isOdd\");\n const root = Fp.sqrt(elm);\n return Fp.isOdd(root) ? root : Fp.neg(root);\n}\nfunction FpSqrtEven(Fp, elm) {\n if (!Fp.isOdd)\n throw new Error(\"Field doesn't have isOdd\");\n const root = Fp.sqrt(elm);\n return Fp.isOdd(root) ? Fp.neg(root) : root;\n}\n/**\n * \"Constant-time\" private key generation utility.\n * Same as mapKeyToField, but accepts less bytes (40 instead of 48 for 32-byte field).\n * Which makes it slightly more biased, less secure.\n * @deprecated use `mapKeyToField` instead\n */\nfunction hashToPrivateScalar(hash, groupOrder, isLE = false) {\n hash = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('privateHash', hash);\n const hashLen = hash.length;\n const minLen = nLength(groupOrder).nByteLength + 8;\n if (minLen < 24 || hashLen < minLen || hashLen > 1024)\n throw new Error('hashToPrivateScalar: expected ' + minLen + '-1024 bytes of input, got ' + hashLen);\n const num = isLE ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberLE)(hash) : (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)(hash);\n return mod(num, groupOrder - _1n) + _1n;\n}\n/**\n * Returns total number of bytes consumed by the field element.\n * For example, 32 bytes for usual 256-bit weierstrass curve.\n * @param fieldOrder number of field elements, usually CURVE.n\n * @returns byte length of field\n */\nfunction getFieldBytesLength(fieldOrder) {\n if (typeof fieldOrder !== 'bigint')\n throw new Error('field order must be bigint');\n const bitLength = fieldOrder.toString(2).length;\n return Math.ceil(bitLength / 8);\n}\n/**\n * Returns minimal amount of bytes that can be safely reduced\n * by field order.\n * Should be 2^-128 for 128-bit curve such as P256.\n * @param fieldOrder number of field elements, usually CURVE.n\n * @returns byte length of target hash\n */\nfunction getMinHashLength(fieldOrder) {\n const length = getFieldBytesLength(fieldOrder);\n return length + Math.ceil(length / 2);\n}\n/**\n * \"Constant-time\" private key generation utility.\n * Can take (n + n/2) or more bytes of uniform input e.g. from CSPRNG or KDF\n * and convert them into private scalar, with the modulo bias being negligible.\n * Needs at least 48 bytes of input for 32-byte private key.\n * https://research.kudelskisecurity.com/2020/07/28/the-definitive-guide-to-modulo-bias-and-how-to-avoid-it/\n * FIPS 186-5, A.2 https://csrc.nist.gov/publications/detail/fips/186/5/final\n * RFC 9380, https://www.rfc-editor.org/rfc/rfc9380#section-5\n * @param hash hash output from SHA3 or a similar function\n * @param groupOrder size of subgroup - (e.g. secp256k1.CURVE.n)\n * @param isLE interpret hash bytes as LE num\n * @returns valid private scalar\n */\nfunction mapHashToField(key, fieldOrder, isLE = false) {\n const len = key.length;\n const fieldLen = getFieldBytesLength(fieldOrder);\n const minLen = getMinHashLength(fieldOrder);\n // No small numbers: need to understand bias story. No huge numbers: easier to detect JS timings.\n if (len < 16 || len < minLen || len > 1024)\n throw new Error('expected ' + minLen + '-1024 bytes of input, got ' + len);\n const num = isLE ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberLE)(key) : (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)(key);\n // `mod(x, 11)` can sometimes produce 0. `mod(x, 10) + 1` is the same, but no 0\n const reduced = mod(num, fieldOrder - _1n) + _1n;\n return isLE ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToBytesLE)(reduced, fieldLen) : (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToBytesBE)(reduced, fieldLen);\n}\n//# sourceMappingURL=modular.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9hYnN0cmFjdC9tb2R1bGFyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDOEM7QUFDeUY7QUFDdkk7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlDQUF5QztBQUN6Qyx5Q0FBeUM7QUFDekMseUNBQXlDO0FBQ3pDLHlDQUF5QztBQUN6Qyx5Q0FBeUM7QUFDekMseUNBQXlDO0FBQ3pDLHlDQUF5QztBQUN6Qyx5Q0FBeUM7QUFDekMseUNBQXlDO0FBQ3pDLHlDQUF5QztBQUN6QyxrQ0FBa0M7QUFDbEMsa0NBQWtDO0FBQ2xDLHlDQUF5QztBQUN6QyxtQ0FBbUM7QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQjtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0M7QUFDcEMsOEJBQThCO0FBQzlCLG1DQUFtQztBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQztBQUNoQztBQUNBO0FBQ0EsbUNBQW1DO0FBQ25DO0FBQ0E7QUFDQSx1Q0FBdUM7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1REFBdUQ7QUFDdkQsMkNBQTJDO0FBQzNDO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0IsOEJBQThCO0FBQzlCLDhCQUE4QjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxXQUFXLHlEQUFjO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLFFBQVEsNERBQU87QUFDZjtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sc0RBQXNEO0FBQzdEO0FBQ0E7QUFDQSxZQUFZLHVDQUF1QztBQUNuRDtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLGtEQUFPO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhDQUE4QztBQUM5QyxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGtDQUFrQywwREFBZSxlQUFlLDBEQUFlO0FBQy9FO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwwREFBZSxVQUFVLDBEQUFlO0FBQ2xFLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFdBQVcsc0RBQVc7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsMERBQWUsU0FBUywwREFBZTtBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsMERBQWUsUUFBUSwwREFBZTtBQUM3RDtBQUNBO0FBQ0Esa0JBQWtCLDBEQUFlLHNCQUFzQiwwREFBZTtBQUN0RTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvZXNtL2Fic3RyYWN0L21vZHVsYXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVdGlscyBmb3IgbW9kdWxhciBkaXZpc2lvbiBhbmQgZmluaXRlIGZpZWxkcy5cbiAqIEEgZmluaXRlIGZpZWxkIG92ZXIgMTEgaXMgaW50ZWdlciBudW1iZXIgb3BlcmF0aW9ucyBgbW9kIDExYC5cbiAqIFRoZXJlIGlzIG5vIGRpdmlzaW9uOiBpdCBpcyByZXBsYWNlZCBieSBtb2R1bGFyIG11bHRpcGxpY2F0aXZlIGludmVyc2UuXG4gKiBAbW9kdWxlXG4gKi9cbi8qISBub2JsZS1jdXJ2ZXMgLSBNSVQgTGljZW5zZSAoYykgMjAyMiBQYXVsIE1pbGxlciAocGF1bG1pbGxyLmNvbSkgKi9cbmltcG9ydCB7IGFudW1iZXIgfSBmcm9tICdAbm9ibGUvaGFzaGVzL3V0aWxzJztcbmltcG9ydCB7IGJpdE1hc2ssIGJ5dGVzVG9OdW1iZXJCRSwgYnl0ZXNUb051bWJlckxFLCBlbnN1cmVCeXRlcywgbnVtYmVyVG9CeXRlc0JFLCBudW1iZXJUb0J5dGVzTEUsIHZhbGlkYXRlT2JqZWN0LCB9IGZyb20gXCIuL3V0aWxzLmpzXCI7XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IF8wbiA9IEJpZ0ludCgwKSwgXzFuID0gQmlnSW50KDEpLCBfMm4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDIpLCBfM24gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDMpO1xuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBfNG4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDQpLCBfNW4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDUpLCBfOG4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDgpO1xuLy8gQ2FsY3VsYXRlcyBhIG1vZHVsbyBiXG5leHBvcnQgZnVuY3Rpb24gbW9kKGEsIGIpIHtcbiAgICBjb25zdCByZXN1bHQgPSBhICUgYjtcbiAgICByZXR1cm4gcmVzdWx0ID49IF8wbiA/IHJlc3VsdCA6IGIgKyByZXN1bHQ7XG59XG4vKipcbiAqIEVmZmljaWVudGx5IHJhaXNlIG51bSB0byBwb3dlciBhbmQgZG8gbW9kdWxhciBkaXZpc2lvbi5cbiAqIFVuc2FmZSBpbiBzb21lIGNvbnRleHRzOiB1c2VzIGxhZGRlciwgc28gY2FuIGV4cG9zZSBiaWdpbnQgYml0cy5cbiAqIFRPRE86IHJlbW92ZS5cbiAqIEBleGFtcGxlXG4gKiBwb3coMm4sIDZuLCAxMW4pIC8vIDY0biAlIDExbiA9PSA5blxuICovXG5leHBvcnQgZnVuY3Rpb24gcG93KG51bSwgcG93ZXIsIG1vZHVsbykge1xuICAgIHJldHVybiBGcFBvdyhGaWVsZChtb2R1bG8pLCBudW0sIHBvd2VyKTtcbn1cbi8qKiBEb2VzIGB4XigyXnBvd2VyKWAgbW9kIHAuIGBwb3cyKDMwLCA0KWAgPT0gYDMwXigyXjQpYCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBvdzIoeCwgcG93ZXIsIG1vZHVsbykge1xuICAgIGxldCByZXMgPSB4O1xuICAgIHdoaWxlIChwb3dlci0tID4gXzBuKSB7XG4gICAgICAgIHJlcyAqPSByZXM7XG4gICAgICAgIHJlcyAlPSBtb2R1bG87XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG4vKipcbiAqIEludmVyc2VzIG51bWJlciBvdmVyIG1vZHVsby5cbiAqIEltcGxlbWVudGVkIHVzaW5nIFtFdWNsaWRlYW4gR0NEXShodHRwczovL2JyaWxsaWFudC5vcmcvd2lraS9leHRlbmRlZC1ldWNsaWRlYW4tYWxnb3JpdGhtLykuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnZlcnQobnVtYmVyLCBtb2R1bG8pIHtcbiAgICBpZiAobnVtYmVyID09PSBfMG4pXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52ZXJ0OiBleHBlY3RlZCBub24temVybyBudW1iZXInKTtcbiAgICBpZiAobW9kdWxvIDw9IF8wbilcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZlcnQ6IGV4cGVjdGVkIHBvc2l0aXZlIG1vZHVsdXMsIGdvdCAnICsgbW9kdWxvKTtcbiAgICAvLyBGZXJtYXQncyBsaXR0bGUgdGhlb3JlbSBcIkNULWxpa2VcIiB2ZXJzaW9uIGludihuKSA9IG5eKG0tMikgbW9kIG0gaXMgMzB4IHNsb3dlci5cbiAgICBsZXQgYSA9IG1vZChudW1iZXIsIG1vZHVsbyk7XG4gICAgbGV0IGIgPSBtb2R1bG87XG4gICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgbGV0IHggPSBfMG4sIHkgPSBfMW4sIHUgPSBfMW4sIHYgPSBfMG47XG4gICAgd2hpbGUgKGEgIT09IF8wbikge1xuICAgICAgICAvLyBKSVQgYXBwbGllcyBvcHRpbWl6YXRpb24gaWYgdGhvc2UgdHdvIGxpbmVzIGZvbGxvdyBlYWNoIG90aGVyXG4gICAgICAgIGNvbnN0IHEgPSBiIC8gYTtcbiAgICAgICAgY29uc3QgciA9IGIgJSBhO1xuICAgICAgICBjb25zdCBtID0geCAtIHUgKiBxO1xuICAgICAgICBjb25zdCBuID0geSAtIHYgKiBxO1xuICAgICAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgICAgYiA9IGEsIGEgPSByLCB4ID0gdSwgeSA9IHYsIHUgPSBtLCB2ID0gbjtcbiAgICB9XG4gICAgY29uc3QgZ2NkID0gYjtcbiAgICBpZiAoZ2NkICE9PSBfMW4pXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52ZXJ0OiBkb2VzIG5vdCBleGlzdCcpO1xuICAgIHJldHVybiBtb2QoeCwgbW9kdWxvKTtcbn1cbi8vIE5vdCBhbGwgcm9vdHMgYXJlIHBvc3NpYmxlISBFeGFtcGxlIHdoaWNoIHdpbGwgdGhyb3c6XG4vLyBjb25zdCBOVU0gPVxuLy8gbiA9IDcyMDU3NTk0MDM3OTI3ODE2bjtcbi8vIEZwID0gRmllbGQoQmlnSW50KCcweDFhMDExMWVhMzk3ZmU2OWE0YjFiYTdiNjQzNGJhY2Q3NjQ3NzRiODRmMzg1MTJiZjY3MzBkMmEwZjZiMGY2MjQxZWFiZmZmZWIxNTNmZmZmYjlmZWZmZmZmZmZmYWFhYicpKTtcbmZ1bmN0aW9uIHNxcnQzbW9kNChGcCwgbikge1xuICAgIGNvbnN0IHAxZGl2NCA9IChGcC5PUkRFUiArIF8xbikgLyBfNG47XG4gICAgY29uc3Qgcm9vdCA9IEZwLnBvdyhuLCBwMWRpdjQpO1xuICAgIC8vIFRocm93IGlmIHJvb3ReMiAhPSBuXG4gICAgaWYgKCFGcC5lcWwoRnAuc3FyKHJvb3QpLCBuKSlcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZmluZCBzcXVhcmUgcm9vdCcpO1xuICAgIHJldHVybiByb290O1xufVxuZnVuY3Rpb24gc3FydDVtb2Q4KEZwLCBuKSB7XG4gICAgY29uc3QgcDVkaXY4ID0gKEZwLk9SREVSIC0gXzVuKSAvIF84bjtcbiAgICBjb25zdCBuMiA9IEZwLm11bChuLCBfMm4pO1xuICAgIGNvbnN0IHYgPSBGcC5wb3cobjIsIHA1ZGl2OCk7XG4gICAgY29uc3QgbnYgPSBGcC5tdWwobiwgdik7XG4gICAgY29uc3QgaSA9IEZwLm11bChGcC5tdWwobnYsIF8ybiksIHYpO1xuICAgIGNvbnN0IHJvb3QgPSBGcC5tdWwobnYsIEZwLnN1YihpLCBGcC5PTkUpKTtcbiAgICBpZiAoIUZwLmVxbChGcC5zcXIocm9vdCksIG4pKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBmaW5kIHNxdWFyZSByb290Jyk7XG4gICAgcmV0dXJuIHJvb3Q7XG59XG4vLyBUT0RPOiBDb21tZW50ZWQtb3V0IGZvciBub3cuIFByb3ZpZGUgdGVzdCB2ZWN0b3JzLlxuLy8gVG9uZWxsaSBpcyB0b28gc2xvdyBmb3IgZXh0ZW5zaW9uIGZpZWxkcyBGcDIuXG4vLyBUaGF0IG1lYW5zIHdlIGNhbid0IHVzZSBzcXJ0IChjMSwgYzIuLi4pIGV2ZW4gZm9yIGluaXRpYWxpemF0aW9uIGNvbnN0YW50cy5cbi8vIGlmIChQICUgXzE2biA9PT0gXzluKSByZXR1cm4gc3FydDltb2QxNjtcbi8vIC8vIHByZXR0aWVyLWlnbm9yZVxuLy8gZnVuY3Rpb24gc3FydDltb2QxNjxUPihGcDogSUZpZWxkPFQ+LCBuOiBULCBwN2RpdjE2PzogYmlnaW50KSB7XG4vLyAgIGlmIChwN2RpdjE2ID09PSB1bmRlZmluZWQpIHA3ZGl2MTYgPSAoRnAuT1JERVIgKyBCaWdJbnQoNykpIC8gXzE2bjtcbi8vICAgY29uc3QgYzEgPSBGcC5zcXJ0KEZwLm5lZyhGcC5PTkUpKTsgLy8gIDEuIGMxID0gc3FydCgtMSkgaW4gRiwgaS5lLiwgKGMxXjIpID09IC0xIGluIEZcbi8vICAgY29uc3QgYzIgPSBGcC5zcXJ0KGMxKTsgICAgICAgICAgICAgLy8gIDIuIGMyID0gc3FydChjMSkgaW4gRiwgaS5lLiwgKGMyXjIpID09IGMxIGluIEZcbi8vICAgY29uc3QgYzMgPSBGcC5zcXJ0KEZwLm5lZyhjMSkpOyAgICAgLy8gIDMuIGMzID0gc3FydCgtYzEpIGluIEYsIGkuZS4sIChjM14yKSA9PSAtYzEgaW4gRlxuLy8gICBjb25zdCBjNCA9IHA3ZGl2MTY7ICAgICAgICAgICAgICAgICAvLyAgNC4gYzQgPSAocSArIDcpIC8gMTYgICAgICAgICMgSW50ZWdlciBhcml0aG1ldGljXG4vLyAgIGxldCB0djEgPSBGcC5wb3cobiwgYzQpOyAgICAgICAgICAgIC8vICAxLiB0djEgPSB4XmM0XG4vLyAgIGxldCB0djIgPSBGcC5tdWwoYzEsIHR2MSk7ICAgICAgICAgIC8vICAyLiB0djIgPSBjMSAqIHR2MVxuLy8gICBjb25zdCB0djMgPSBGcC5tdWwoYzIsIHR2MSk7ICAgICAgICAvLyAgMy4gdHYzID0gYzIgKiB0djFcbi8vICAgbGV0IHR2NCA9IEZwLm11bChjMywgdHYxKTsgICAgICAgICAgLy8gIDQuIHR2NCA9IGMzICogdHYxXG4vLyAgIGNvbnN0IGUxID0gRnAuZXFsKEZwLnNxcih0djIpLCBuKTsgIC8vICA1LiAgZTEgPSAodHYyXjIpID09IHhcbi8vICAgY29uc3QgZTIgPSBGcC5lcWwoRnAuc3FyKHR2MyksIG4pOyAgLy8gIDYuICBlMiA9ICh0djNeMikgPT0geFxuLy8gICB0djEgPSBGcC5jbW92KHR2MSwgdHYyLCBlMSk7IC8vICA3LiB0djEgPSBDTU9WKHR2MSwgdHYyLCBlMSkgICMgU2VsZWN0IHR2MiBpZiAodHYyXjIpID09IHhcbi8vICAgdHYyID0gRnAuY21vdih0djQsIHR2MywgZTIpOyAvLyAgOC4gdHYyID0gQ01PVih0djQsIHR2MywgZTIpICAjIFNlbGVjdCB0djMgaWYgKHR2M14yKSA9PSB4XG4vLyAgIGNvbnN0IGUzID0gRnAuZXFsKEZwLnNxcih0djIpLCBuKTsgIC8vICA5LiAgZTMgPSAodHYyXjIpID09IHhcbi8vICAgcmV0dXJuIEZwLmNtb3YodHYxLCB0djIsIGUzKTsgLy8gMTAuICB6ID0gQ01PVih0djEsIHR2MiwgZTMpICMgU2VsZWN0IHRoZSBzcXJ0IGZyb20gdHYxIGFuZCB0djJcbi8vIH1cbi8qKlxuICogVG9uZWxsaS1TaGFua3Mgc3F1YXJlIHJvb3Qgc2VhcmNoIGFsZ29yaXRobS5cbiAqIDEuIGh0dHBzOi8vZXByaW50LmlhY3Iub3JnLzIwMTIvNjg1LnBkZiAocGFnZSAxMilcbiAqIDIuIFNxdWFyZSBSb290cyBmcm9tIDE7IDI0LCA1MSwgMTAgdG8gRGFuIFNoYW5rc1xuICogQHBhcmFtIFAgZmllbGQgb3JkZXJcbiAqIEByZXR1cm5zIGZ1bmN0aW9uIHRoYXQgdGFrZXMgZmllbGQgRnAgKGNyZWF0ZWQgZnJvbSBQKSBhbmQgbnVtYmVyIG5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvbmVsbGlTaGFua3MoUCkge1xuICAgIC8vIEluaXRpYWxpemF0aW9uIChwcmVjb21wdXRhdGlvbikuXG4gICAgaWYgKFAgPCBCaWdJbnQoMykpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignc3FydCBpcyBub3QgZGVmaW5lZCBmb3Igc21hbGwgZmllbGQnKTtcbiAgICAvLyBGYWN0b3IgUCAtIDEgPSBRICogMl5TLCB3aGVyZSBRIGlzIG9kZFxuICAgIGxldCBRID0gUCAtIF8xbjtcbiAgICBsZXQgUyA9IDA7XG4gICAgd2hpbGUgKFEgJSBfMm4gPT09IF8wbikge1xuICAgICAgICBRIC89IF8ybjtcbiAgICAgICAgUysrO1xuICAgIH1cbiAgICAvLyBGaW5kIHRoZSBmaXJzdCBxdWFkcmF0aWMgbm9uLXJlc2lkdWUgWiA+PSAyXG4gICAgbGV0IFogPSBfMm47XG4gICAgY29uc3QgX0ZwID0gRmllbGQoUCk7XG4gICAgd2hpbGUgKEZwTGVnZW5kcmUoX0ZwLCBaKSA9PT0gMSkge1xuICAgICAgICAvLyBCYXNpYyBwcmltYWxpdHkgdGVzdCBmb3IgUC4gQWZ0ZXIgeCBpdGVyYXRpb25zLCBjaGFuY2Ugb2ZcbiAgICAgICAgLy8gbm90IGZpbmRpbmcgcXVhZHJhdGljIG5vbi1yZXNpZHVlIGlzIDJeeCwgc28gMl4xMDAwLlxuICAgICAgICBpZiAoWisrID4gMTAwMClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGZpbmQgc3F1YXJlIHJvb3Q6IHByb2JhYmx5IG5vbi1wcmltZSBQJyk7XG4gICAgfVxuICAgIC8vIEZhc3QtcGF0aDsgdXN1YWxseSBkb25lIGJlZm9yZSBaLCBidXQgd2UgZG8gXCJwcmltYWxpdHkgdGVzdFwiLlxuICAgIGlmIChTID09PSAxKVxuICAgICAgICByZXR1cm4gc3FydDNtb2Q0O1xuICAgIC8vIFNsb3ctcGF0aFxuICAgIC8vIFRPRE86IHRlc3Qgb24gRnAyIGFuZCBvdGhlcnNcbiAgICBsZXQgY2MgPSBfRnAucG93KFosIFEpOyAvLyBjID0gel5RXG4gICAgY29uc3QgUTFkaXYyID0gKFEgKyBfMW4pIC8gXzJuO1xuICAgIHJldHVybiBmdW5jdGlvbiB0b25lbGxpU2xvdyhGcCwgbikge1xuICAgICAgICBpZiAoRnAuaXMwKG4pKVxuICAgICAgICAgICAgcmV0dXJuIG47XG4gICAgICAgIC8vIENoZWNrIGlmIG4gaXMgYSBxdWFkcmF0aWMgcmVzaWR1ZSB1c2luZyBMZWdlbmRyZSBzeW1ib2xcbiAgICAgICAgaWYgKEZwTGVnZW5kcmUoRnAsIG4pICE9PSAxKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZmluZCBzcXVhcmUgcm9vdCcpO1xuICAgICAgICAvLyBJbml0aWFsaXplIHZhcmlhYmxlcyBmb3IgdGhlIG1haW4gbG9vcFxuICAgICAgICBsZXQgTSA9IFM7XG4gICAgICAgIGxldCBjID0gRnAubXVsKEZwLk9ORSwgY2MpOyAvLyBjID0gel5RLCBtb3ZlIGNjIGZyb20gZmllbGQgX0ZwIGludG8gZmllbGQgRnBcbiAgICAgICAgbGV0IHQgPSBGcC5wb3cobiwgUSk7IC8vIHQgPSBuXlEsIGZpcnN0IGd1ZXNzIGF0IHRoZSBmdWRnZSBmYWN0b3JcbiAgICAgICAgbGV0IFIgPSBGcC5wb3cobiwgUTFkaXYyKTsgLy8gUiA9IG5eKChRKzEpLzIpLCBmaXJzdCBndWVzcyBhdCB0aGUgc3F1YXJlIHJvb3RcbiAgICAgICAgLy8gTWFpbiBsb29wXG4gICAgICAgIC8vIHdoaWxlIHQgIT0gMVxuICAgICAgICB3aGlsZSAoIUZwLmVxbCh0LCBGcC5PTkUpKSB7XG4gICAgICAgICAgICBpZiAoRnAuaXMwKHQpKVxuICAgICAgICAgICAgICAgIHJldHVybiBGcC5aRVJPOyAvLyBpZiB0PTAgcmV0dXJuIFI9MFxuICAgICAgICAgICAgbGV0IGkgPSAxO1xuICAgICAgICAgICAgLy8gRmluZCB0aGUgc21hbGxlc3QgaSA+PSAxIHN1Y2ggdGhhdCB0XigyXmkpIOKJoSAxIChtb2QgUClcbiAgICAgICAgICAgIGxldCB0X3RtcCA9IEZwLnNxcih0KTsgLy8gdF4oMl4xKVxuICAgICAgICAgICAgd2hpbGUgKCFGcC5lcWwodF90bXAsIEZwLk9ORSkpIHtcbiAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgdF90bXAgPSBGcC5zcXIodF90bXApOyAvLyB0XigyXjIpLi4uXG4gICAgICAgICAgICAgICAgaWYgKGkgPT09IE0pXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGZpbmQgc3F1YXJlIHJvb3QnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgZXhwb25lbnQgZm9yIGI6IDJeKE0gLSBpIC0gMSlcbiAgICAgICAgICAgIGNvbnN0IGV4cG9uZW50ID0gXzFuIDw8IEJpZ0ludChNIC0gaSAtIDEpOyAvLyBiaWdpbnQgaXMgaW1wb3J0YW50XG4gICAgICAgICAgICBjb25zdCBiID0gRnAucG93KGMsIGV4cG9uZW50KTsgLy8gYiA9IDJeKE0gLSBpIC0gMSlcbiAgICAgICAgICAgIC8vIFVwZGF0ZSB2YXJpYWJsZXNcbiAgICAgICAgICAgIE0gPSBpO1xuICAgICAgICAgICAgYyA9IEZwLnNxcihiKTsgLy8gYyA9IGJeMlxuICAgICAgICAgICAgdCA9IEZwLm11bCh0LCBjKTsgLy8gdCA9ICh0ICogYl4yKVxuICAgICAgICAgICAgUiA9IEZwLm11bChSLCBiKTsgLy8gUiA9IFIqYlxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBSO1xuICAgIH07XG59XG4vKipcbiAqIFNxdWFyZSByb290IGZvciBhIGZpbml0ZSBmaWVsZC4gV2lsbCB0cnkgb3B0aW1pemVkIHZlcnNpb25zIGZpcnN0OlxuICpcbiAqIDEuIFAg4omhIDMgKG1vZCA0KVxuICogMi4gUCDiiaEgNSAobW9kIDgpXG4gKiAzLiBUb25lbGxpLVNoYW5rcyBhbGdvcml0aG1cbiAqXG4gKiBEaWZmZXJlbnQgYWxnb3JpdGhtcyBjYW4gZ2l2ZSBkaWZmZXJlbnQgcm9vdHMsIGl0IGlzIHVwIHRvIHVzZXIgdG8gZGVjaWRlIHdoaWNoIG9uZSB0aGV5IHdhbnQuXG4gKiBGb3IgZXhhbXBsZSB0aGVyZSBpcyBGcFNxcnRPZGQvRnBTcXJ0RXZlbiB0byBjaG9pY2Ugcm9vdCBiYXNlZCBvbiBvZGRuZXNzICh1c2VkIGZvciBoYXNoLXRvLWN1cnZlKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEZwU3FydChQKSB7XG4gICAgLy8gUCDiiaEgMyAobW9kIDQpID0+IOKImm4gPSBuXigoUCsxKS80KVxuICAgIGlmIChQICUgXzRuID09PSBfM24pXG4gICAgICAgIHJldHVybiBzcXJ0M21vZDQ7XG4gICAgLy8gUCDiiaEgNSAobW9kIDgpID0+IEF0a2luIGFsZ29yaXRobSwgcGFnZSAxMCBvZiBodHRwczovL2VwcmludC5pYWNyLm9yZy8yMDEyLzY4NS5wZGZcbiAgICBpZiAoUCAlIF84biA9PT0gXzVuKVxuICAgICAgICByZXR1cm4gc3FydDVtb2Q4O1xuICAgIC8vIFAg4omhIDkgKG1vZCAxNikgbm90IGltcGxlbWVudGVkLCBzZWUgYWJvdmVcbiAgICAvLyBUb25lbGxpLVNoYW5rcyBhbGdvcml0aG1cbiAgICByZXR1cm4gdG9uZWxsaVNoYW5rcyhQKTtcbn1cbi8vIExpdHRsZS1lbmRpYW4gY2hlY2sgZm9yIGZpcnN0IExFIGJpdCAobGFzdCBCRSBiaXQpO1xuZXhwb3J0IGNvbnN0IGlzTmVnYXRpdmVMRSA9IChudW0sIG1vZHVsbykgPT4gKG1vZChudW0sIG1vZHVsbykgJiBfMW4pID09PSBfMW47XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IEZJRUxEX0ZJRUxEUyA9IFtcbiAgICAnY3JlYXRlJywgJ2lzVmFsaWQnLCAnaXMwJywgJ25lZycsICdpbnYnLCAnc3FydCcsICdzcXInLFxuICAgICdlcWwnLCAnYWRkJywgJ3N1YicsICdtdWwnLCAncG93JywgJ2RpdicsXG4gICAgJ2FkZE4nLCAnc3ViTicsICdtdWxOJywgJ3Nxck4nXG5dO1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRmllbGQoZmllbGQpIHtcbiAgICBjb25zdCBpbml0aWFsID0ge1xuICAgICAgICBPUkRFUjogJ2JpZ2ludCcsXG4gICAgICAgIE1BU0s6ICdiaWdpbnQnLFxuICAgICAgICBCWVRFUzogJ2lzU2FmZUludGVnZXInLFxuICAgICAgICBCSVRTOiAnaXNTYWZlSW50ZWdlcicsXG4gICAgfTtcbiAgICBjb25zdCBvcHRzID0gRklFTERfRklFTERTLnJlZHVjZSgobWFwLCB2YWwpID0+IHtcbiAgICAgICAgbWFwW3ZhbF0gPSAnZnVuY3Rpb24nO1xuICAgICAgICByZXR1cm4gbWFwO1xuICAgIH0sIGluaXRpYWwpO1xuICAgIHJldHVybiB2YWxpZGF0ZU9iamVjdChmaWVsZCwgb3B0cyk7XG59XG4vLyBHZW5lcmljIGZpZWxkIGZ1bmN0aW9uc1xuLyoqXG4gKiBTYW1lIGFzIGBwb3dgIGJ1dCBmb3IgRnA6IG5vbi1jb25zdGFudC10aW1lLlxuICogVW5zYWZlIGluIHNvbWUgY29udGV4dHM6IHVzZXMgbGFkZGVyLCBzbyBjYW4gZXhwb3NlIGJpZ2ludCBiaXRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gRnBQb3coRnAsIG51bSwgcG93ZXIpIHtcbiAgICBpZiAocG93ZXIgPCBfMG4pXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBleHBvbmVudCwgbmVnYXRpdmVzIHVuc3VwcG9ydGVkJyk7XG4gICAgaWYgKHBvd2VyID09PSBfMG4pXG4gICAgICAgIHJldHVybiBGcC5PTkU7XG4gICAgaWYgKHBvd2VyID09PSBfMW4pXG4gICAgICAgIHJldHVybiBudW07XG4gICAgbGV0IHAgPSBGcC5PTkU7XG4gICAgbGV0IGQgPSBudW07XG4gICAgd2hpbGUgKHBvd2VyID4gXzBuKSB7XG4gICAgICAgIGlmIChwb3dlciAmIF8xbilcbiAgICAgICAgICAgIHAgPSBGcC5tdWwocCwgZCk7XG4gICAgICAgIGQgPSBGcC5zcXIoZCk7XG4gICAgICAgIHBvd2VyID4+PSBfMW47XG4gICAgfVxuICAgIHJldHVybiBwO1xufVxuLyoqXG4gKiBFZmZpY2llbnRseSBpbnZlcnQgYW4gYXJyYXkgb2YgRmllbGQgZWxlbWVudHMuXG4gKiBFeGNlcHRpb24tZnJlZS4gV2lsbCByZXR1cm4gYHVuZGVmaW5lZGAgZm9yIDAgZWxlbWVudHMuXG4gKiBAcGFyYW0gcGFzc1plcm8gbWFwIDAgdG8gMCAoaW5zdGVhZCBvZiB1bmRlZmluZWQpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBGcEludmVydEJhdGNoKEZwLCBudW1zLCBwYXNzWmVybyA9IGZhbHNlKSB7XG4gICAgY29uc3QgaW52ZXJ0ZWQgPSBuZXcgQXJyYXkobnVtcy5sZW5ndGgpLmZpbGwocGFzc1plcm8gPyBGcC5aRVJPIDogdW5kZWZpbmVkKTtcbiAgICAvLyBXYWxrIGZyb20gZmlyc3QgdG8gbGFzdCwgbXVsdGlwbHkgdGhlbSBieSBlYWNoIG90aGVyIE1PRCBwXG4gICAgY29uc3QgbXVsdGlwbGllZEFjYyA9IG51bXMucmVkdWNlKChhY2MsIG51bSwgaSkgPT4ge1xuICAgICAgICBpZiAoRnAuaXMwKG51bSkpXG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICBpbnZlcnRlZFtpXSA9IGFjYztcbiAgICAgICAgcmV0dXJuIEZwLm11bChhY2MsIG51bSk7XG4gICAgfSwgRnAuT05FKTtcbiAgICAvLyBJbnZlcnQgbGFzdCBlbGVtZW50XG4gICAgY29uc3QgaW52ZXJ0ZWRBY2MgPSBGcC5pbnYobXVsdGlwbGllZEFjYyk7XG4gICAgLy8gV2FsayBmcm9tIGxhc3QgdG8gZmlyc3QsIG11bHRpcGx5IHRoZW0gYnkgaW52ZXJ0ZWQgZWFjaCBvdGhlciBNT0QgcFxuICAgIG51bXMucmVkdWNlUmlnaHQoKGFjYywgbnVtLCBpKSA9PiB7XG4gICAgICAgIGlmIChGcC5pczAobnVtKSlcbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIGludmVydGVkW2ldID0gRnAubXVsKGFjYywgaW52ZXJ0ZWRbaV0pO1xuICAgICAgICByZXR1cm4gRnAubXVsKGFjYywgbnVtKTtcbiAgICB9LCBpbnZlcnRlZEFjYyk7XG4gICAgcmV0dXJuIGludmVydGVkO1xufVxuLy8gVE9ETzogcmVtb3ZlXG5leHBvcnQgZnVuY3Rpb24gRnBEaXYoRnAsIGxocywgcmhzKSB7XG4gICAgcmV0dXJuIEZwLm11bChsaHMsIHR5cGVvZiByaHMgPT09ICdiaWdpbnQnID8gaW52ZXJ0KHJocywgRnAuT1JERVIpIDogRnAuaW52KHJocykpO1xufVxuLyoqXG4gKiBMZWdlbmRyZSBzeW1ib2wuXG4gKiBMZWdlbmRyZSBjb25zdGFudCBpcyB1c2VkIHRvIGNhbGN1bGF0ZSBMZWdlbmRyZSBzeW1ib2wgKGEgfCBwKVxuICogd2hpY2ggZGVub3RlcyB0aGUgdmFsdWUgb2YgYV4oKHAtMSkvMikgKG1vZCBwKS5cbiAqXG4gKiAqIChhIHwgcCkg4omhIDEgICAgaWYgYSBpcyBhIHNxdWFyZSAobW9kIHApLCBxdWFkcmF0aWMgcmVzaWR1ZVxuICogKiAoYSB8IHApIOKJoSAtMSAgIGlmIGEgaXMgbm90IGEgc3F1YXJlIChtb2QgcCksIHF1YWRyYXRpYyBub24gcmVzaWR1ZVxuICogKiAoYSB8IHApIOKJoSAwICAgIGlmIGEg4omhIDAgKG1vZCBwKVxuICovXG5leHBvcnQgZnVuY3Rpb24gRnBMZWdlbmRyZShGcCwgbikge1xuICAgIC8vIFdlIGNhbiB1c2UgM3JkIGFyZ3VtZW50IGFzIG9wdGlvbmFsIGNhY2hlIG9mIHRoaXMgdmFsdWVcbiAgICAvLyBidXQgc2VlbXMgdW5uZWVkZWQgZm9yIG5vdy4gVGhlIG9wZXJhdGlvbiBpcyB2ZXJ5IGZhc3QuXG4gICAgY29uc3QgcDFtb2QyID0gKEZwLk9SREVSIC0gXzFuKSAvIF8ybjtcbiAgICBjb25zdCBwb3dlcmVkID0gRnAucG93KG4sIHAxbW9kMik7XG4gICAgY29uc3QgeWVzID0gRnAuZXFsKHBvd2VyZWQsIEZwLk9ORSk7XG4gICAgY29uc3QgemVybyA9IEZwLmVxbChwb3dlcmVkLCBGcC5aRVJPKTtcbiAgICBjb25zdCBubyA9IEZwLmVxbChwb3dlcmVkLCBGcC5uZWcoRnAuT05FKSk7XG4gICAgaWYgKCF5ZXMgJiYgIXplcm8gJiYgIW5vKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgTGVnZW5kcmUgc3ltYm9sIHJlc3VsdCcpO1xuICAgIHJldHVybiB5ZXMgPyAxIDogemVybyA/IDAgOiAtMTtcbn1cbi8vIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBUcnVlIHdoZW5ldmVyIHRoZSB2YWx1ZSB4IGlzIGEgc3F1YXJlIGluIHRoZSBmaWVsZCBGLlxuZXhwb3J0IGZ1bmN0aW9uIEZwSXNTcXVhcmUoRnAsIG4pIHtcbiAgICBjb25zdCBsID0gRnBMZWdlbmRyZShGcCwgbik7XG4gICAgcmV0dXJuIGwgPT09IDE7XG59XG4vLyBDVVJWRS5uIGxlbmd0aHNcbmV4cG9ydCBmdW5jdGlvbiBuTGVuZ3RoKG4sIG5CaXRMZW5ndGgpIHtcbiAgICAvLyBCaXQgc2l6ZSwgYnl0ZSBzaXplIG9mIENVUlZFLm5cbiAgICBpZiAobkJpdExlbmd0aCAhPT0gdW5kZWZpbmVkKVxuICAgICAgICBhbnVtYmVyKG5CaXRMZW5ndGgpO1xuICAgIGNvbnN0IF9uQml0TGVuZ3RoID0gbkJpdExlbmd0aCAhPT0gdW5kZWZpbmVkID8gbkJpdExlbmd0aCA6IG4udG9TdHJpbmcoMikubGVuZ3RoO1xuICAgIGNvbnN0IG5CeXRlTGVuZ3RoID0gTWF0aC5jZWlsKF9uQml0TGVuZ3RoIC8gOCk7XG4gICAgcmV0dXJuIHsgbkJpdExlbmd0aDogX25CaXRMZW5ndGgsIG5CeXRlTGVuZ3RoIH07XG59XG4vKipcbiAqIEluaXRpYWxpemVzIGEgZmluaXRlIGZpZWxkIG92ZXIgcHJpbWUuXG4gKiBNYWpvciBwZXJmb3JtYW5jZSBvcHRpbWl6YXRpb25zOlxuICogKiBhKSBkZW5vcm1hbGl6ZWQgb3BlcmF0aW9ucyBsaWtlIG11bE4gaW5zdGVhZCBvZiBtdWxcbiAqICogYikgc2FtZSBvYmplY3Qgc2hhcGU6IG5ldmVyIGFkZCBvciByZW1vdmUga2V5c1xuICogKiBjKSBPYmplY3QuZnJlZXplXG4gKiBGcmFnaWxlOiBhbHdheXMgcnVuIGEgYmVuY2htYXJrIG9uIGEgY2hhbmdlLlxuICogU2VjdXJpdHkgbm90ZTogb3BlcmF0aW9ucyBkb24ndCBjaGVjayAnaXNWYWxpZCcgZm9yIGFsbCBlbGVtZW50cyBmb3IgcGVyZm9ybWFuY2UgcmVhc29ucyxcbiAqIGl0IGlzIGNhbGxlciByZXNwb25zaWJpbGl0eSB0byBjaGVjayB0aGlzLlxuICogVGhpcyBpcyBsb3ctbGV2ZWwgY29kZSwgcGxlYXNlIG1ha2Ugc3VyZSB5b3Uga25vdyB3aGF0IHlvdSdyZSBkb2luZy5cbiAqIEBwYXJhbSBPUkRFUiBwcmltZSBwb3NpdGl2ZSBiaWdpbnRcbiAqIEBwYXJhbSBiaXRMZW4gaG93IG1hbnkgYml0cyB0aGUgZmllbGQgY29uc3VtZXNcbiAqIEBwYXJhbSBpc0xFIChkZWY6IGZhbHNlKSBpZiBlbmNvZGluZyAvIGRlY29kaW5nIHNob3VsZCBiZSBpbiBsaXR0bGUtZW5kaWFuXG4gKiBAcGFyYW0gcmVkZWYgb3B0aW9uYWwgZmFzdGVyIHJlZGVmaW5pdGlvbnMgb2Ygc3FydCBhbmQgb3RoZXIgbWV0aG9kc1xuICovXG5leHBvcnQgZnVuY3Rpb24gRmllbGQoT1JERVIsIGJpdExlbiwgaXNMRSA9IGZhbHNlLCByZWRlZiA9IHt9KSB7XG4gICAgaWYgKE9SREVSIDw9IF8wbilcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGZpZWxkOiBleHBlY3RlZCBPUkRFUiA+IDAsIGdvdCAnICsgT1JERVIpO1xuICAgIGNvbnN0IHsgbkJpdExlbmd0aDogQklUUywgbkJ5dGVMZW5ndGg6IEJZVEVTIH0gPSBuTGVuZ3RoKE9SREVSLCBiaXRMZW4pO1xuICAgIGlmIChCWVRFUyA+IDIwNDgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBmaWVsZDogZXhwZWN0ZWQgT1JERVIgb2YgPD0gMjA0OCBieXRlcycpO1xuICAgIGxldCBzcXJ0UDsgLy8gY2FjaGVkIHNxcnRQXG4gICAgY29uc3QgZiA9IE9iamVjdC5mcmVlemUoe1xuICAgICAgICBPUkRFUixcbiAgICAgICAgaXNMRSxcbiAgICAgICAgQklUUyxcbiAgICAgICAgQllURVMsXG4gICAgICAgIE1BU0s6IGJpdE1hc2soQklUUyksXG4gICAgICAgIFpFUk86IF8wbixcbiAgICAgICAgT05FOiBfMW4sXG4gICAgICAgIGNyZWF0ZTogKG51bSkgPT4gbW9kKG51bSwgT1JERVIpLFxuICAgICAgICBpc1ZhbGlkOiAobnVtKSA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG51bSAhPT0gJ2JpZ2ludCcpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGZpZWxkIGVsZW1lbnQ6IGV4cGVjdGVkIGJpZ2ludCwgZ290ICcgKyB0eXBlb2YgbnVtKTtcbiAgICAgICAgICAgIHJldHVybiBfMG4gPD0gbnVtICYmIG51bSA8IE9SREVSOyAvLyAwIGlzIHZhbGlkIGVsZW1lbnQsIGJ1dCBpdCdzIG5vdCBpbnZlcnRpYmxlXG4gICAgICAgIH0sXG4gICAgICAgIGlzMDogKG51bSkgPT4gbnVtID09PSBfMG4sXG4gICAgICAgIGlzT2RkOiAobnVtKSA9PiAobnVtICYgXzFuKSA9PT0gXzFuLFxuICAgICAgICBuZWc6IChudW0pID0+IG1vZCgtbnVtLCBPUkRFUiksXG4gICAgICAgIGVxbDogKGxocywgcmhzKSA9PiBsaHMgPT09IHJocyxcbiAgICAgICAgc3FyOiAobnVtKSA9PiBtb2QobnVtICogbnVtLCBPUkRFUiksXG4gICAgICAgIGFkZDogKGxocywgcmhzKSA9PiBtb2QobGhzICsgcmhzLCBPUkRFUiksXG4gICAgICAgIHN1YjogKGxocywgcmhzKSA9PiBtb2QobGhzIC0gcmhzLCBPUkRFUiksXG4gICAgICAgIG11bDogKGxocywgcmhzKSA9PiBtb2QobGhzICogcmhzLCBPUkRFUiksXG4gICAgICAgIHBvdzogKG51bSwgcG93ZXIpID0+IEZwUG93KGYsIG51bSwgcG93ZXIpLFxuICAgICAgICBkaXY6IChsaHMsIHJocykgPT4gbW9kKGxocyAqIGludmVydChyaHMsIE9SREVSKSwgT1JERVIpLFxuICAgICAgICAvLyBTYW1lIGFzIGFib3ZlLCBidXQgZG9lc24ndCBub3JtYWxpemVcbiAgICAgICAgc3FyTjogKG51bSkgPT4gbnVtICogbnVtLFxuICAgICAgICBhZGROOiAobGhzLCByaHMpID0+IGxocyArIHJocyxcbiAgICAgICAgc3ViTjogKGxocywgcmhzKSA9PiBsaHMgLSByaHMsXG4gICAgICAgIG11bE46IChsaHMsIHJocykgPT4gbGhzICogcmhzLFxuICAgICAgICBpbnY6IChudW0pID0+IGludmVydChudW0sIE9SREVSKSxcbiAgICAgICAgc3FydDogcmVkZWYuc3FydCB8fFxuICAgICAgICAgICAgKChuKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFzcXJ0UClcbiAgICAgICAgICAgICAgICAgICAgc3FydFAgPSBGcFNxcnQoT1JERVIpO1xuICAgICAgICAgICAgICAgIHJldHVybiBzcXJ0UChmLCBuKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICB0b0J5dGVzOiAobnVtKSA9PiAoaXNMRSA/IG51bWJlclRvQnl0ZXNMRShudW0sIEJZVEVTKSA6IG51bWJlclRvQnl0ZXNCRShudW0sIEJZVEVTKSksXG4gICAgICAgIGZyb21CeXRlczogKGJ5dGVzKSA9PiB7XG4gICAgICAgICAgICBpZiAoYnl0ZXMubGVuZ3RoICE9PSBCWVRFUylcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZpZWxkLmZyb21CeXRlczogZXhwZWN0ZWQgJyArIEJZVEVTICsgJyBieXRlcywgZ290ICcgKyBieXRlcy5sZW5ndGgpO1xuICAgICAgICAgICAgcmV0dXJuIGlzTEUgPyBieXRlc1RvTnVtYmVyTEUoYnl0ZXMpIDogYnl0ZXNUb051bWJlckJFKGJ5dGVzKTtcbiAgICAgICAgfSxcbiAgICAgICAgLy8gVE9ETzogd2UgZG9uJ3QgbmVlZCBpdCBoZXJlLCBtb3ZlIG91dCB0byBzZXBhcmF0ZSBmblxuICAgICAgICBpbnZlcnRCYXRjaDogKGxzdCkgPT4gRnBJbnZlcnRCYXRjaChmLCBsc3QpLFxuICAgICAgICAvLyBXZSBjYW4ndCBtb3ZlIHRoaXMgb3V0IGJlY2F1c2UgRnA2LCBGcDEyIGltcGxlbWVudCBpdFxuICAgICAgICAvLyBhbmQgaXQncyB1bmNsZWFyIHdoYXQgdG8gcmV0dXJuIGluIHRoZXJlLlxuICAgICAgICBjbW92OiAoYSwgYiwgYykgPT4gKGMgPyBiIDogYSksXG4gICAgfSk7XG4gICAgcmV0dXJuIE9iamVjdC5mcmVlemUoZik7XG59XG5leHBvcnQgZnVuY3Rpb24gRnBTcXJ0T2RkKEZwLCBlbG0pIHtcbiAgICBpZiAoIUZwLmlzT2RkKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJGaWVsZCBkb2Vzbid0IGhhdmUgaXNPZGRcIik7XG4gICAgY29uc3Qgcm9vdCA9IEZwLnNxcnQoZWxtKTtcbiAgICByZXR1cm4gRnAuaXNPZGQocm9vdCkgPyByb290IDogRnAubmVnKHJvb3QpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIEZwU3FydEV2ZW4oRnAsIGVsbSkge1xuICAgIGlmICghRnAuaXNPZGQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkZpZWxkIGRvZXNuJ3QgaGF2ZSBpc09kZFwiKTtcbiAgICBjb25zdCByb290ID0gRnAuc3FydChlbG0pO1xuICAgIHJldHVybiBGcC5pc09kZChyb290KSA/IEZwLm5lZyhyb290KSA6IHJvb3Q7XG59XG4vKipcbiAqIFwiQ29uc3RhbnQtdGltZVwiIHByaXZhdGUga2V5IGdlbmVyYXRpb24gdXRpbGl0eS5cbiAqIFNhbWUgYXMgbWFwS2V5VG9GaWVsZCwgYnV0IGFjY2VwdHMgbGVzcyBieXRlcyAoNDAgaW5zdGVhZCBvZiA0OCBmb3IgMzItYnl0ZSBmaWVsZCkuXG4gKiBXaGljaCBtYWtlcyBpdCBzbGlnaHRseSBtb3JlIGJpYXNlZCwgbGVzcyBzZWN1cmUuXG4gKiBAZGVwcmVjYXRlZCB1c2UgYG1hcEtleVRvRmllbGRgIGluc3RlYWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc2hUb1ByaXZhdGVTY2FsYXIoaGFzaCwgZ3JvdXBPcmRlciwgaXNMRSA9IGZhbHNlKSB7XG4gICAgaGFzaCA9IGVuc3VyZUJ5dGVzKCdwcml2YXRlSGFzaCcsIGhhc2gpO1xuICAgIGNvbnN0IGhhc2hMZW4gPSBoYXNoLmxlbmd0aDtcbiAgICBjb25zdCBtaW5MZW4gPSBuTGVuZ3RoKGdyb3VwT3JkZXIpLm5CeXRlTGVuZ3RoICsgODtcbiAgICBpZiAobWluTGVuIDwgMjQgfHwgaGFzaExlbiA8IG1pbkxlbiB8fCBoYXNoTGVuID4gMTAyNClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdoYXNoVG9Qcml2YXRlU2NhbGFyOiBleHBlY3RlZCAnICsgbWluTGVuICsgJy0xMDI0IGJ5dGVzIG9mIGlucHV0LCBnb3QgJyArIGhhc2hMZW4pO1xuICAgIGNvbnN0IG51bSA9IGlzTEUgPyBieXRlc1RvTnVtYmVyTEUoaGFzaCkgOiBieXRlc1RvTnVtYmVyQkUoaGFzaCk7XG4gICAgcmV0dXJuIG1vZChudW0sIGdyb3VwT3JkZXIgLSBfMW4pICsgXzFuO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRvdGFsIG51bWJlciBvZiBieXRlcyBjb25zdW1lZCBieSB0aGUgZmllbGQgZWxlbWVudC5cbiAqIEZvciBleGFtcGxlLCAzMiBieXRlcyBmb3IgdXN1YWwgMjU2LWJpdCB3ZWllcnN0cmFzcyBjdXJ2ZS5cbiAqIEBwYXJhbSBmaWVsZE9yZGVyIG51bWJlciBvZiBmaWVsZCBlbGVtZW50cywgdXN1YWxseSBDVVJWRS5uXG4gKiBAcmV0dXJucyBieXRlIGxlbmd0aCBvZiBmaWVsZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmllbGRCeXRlc0xlbmd0aChmaWVsZE9yZGVyKSB7XG4gICAgaWYgKHR5cGVvZiBmaWVsZE9yZGVyICE9PSAnYmlnaW50JylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdmaWVsZCBvcmRlciBtdXN0IGJlIGJpZ2ludCcpO1xuICAgIGNvbnN0IGJpdExlbmd0aCA9IGZpZWxkT3JkZXIudG9TdHJpbmcoMikubGVuZ3RoO1xuICAgIHJldHVybiBNYXRoLmNlaWwoYml0TGVuZ3RoIC8gOCk7XG59XG4vKipcbiAqIFJldHVybnMgbWluaW1hbCBhbW91bnQgb2YgYnl0ZXMgdGhhdCBjYW4gYmUgc2FmZWx5IHJlZHVjZWRcbiAqIGJ5IGZpZWxkIG9yZGVyLlxuICogU2hvdWxkIGJlIDJeLTEyOCBmb3IgMTI4LWJpdCBjdXJ2ZSBzdWNoIGFzIFAyNTYuXG4gKiBAcGFyYW0gZmllbGRPcmRlciBudW1iZXIgb2YgZmllbGQgZWxlbWVudHMsIHVzdWFsbHkgQ1VSVkUublxuICogQHJldHVybnMgYnl0ZSBsZW5ndGggb2YgdGFyZ2V0IGhhc2hcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE1pbkhhc2hMZW5ndGgoZmllbGRPcmRlcikge1xuICAgIGNvbnN0IGxlbmd0aCA9IGdldEZpZWxkQnl0ZXNMZW5ndGgoZmllbGRPcmRlcik7XG4gICAgcmV0dXJuIGxlbmd0aCArIE1hdGguY2VpbChsZW5ndGggLyAyKTtcbn1cbi8qKlxuICogXCJDb25zdGFudC10aW1lXCIgcHJpdmF0ZSBrZXkgZ2VuZXJhdGlvbiB1dGlsaXR5LlxuICogQ2FuIHRha2UgKG4gKyBuLzIpIG9yIG1vcmUgYnl0ZXMgb2YgdW5pZm9ybSBpbnB1dCBlLmcuIGZyb20gQ1NQUk5HIG9yIEtERlxuICogYW5kIGNvbnZlcnQgdGhlbSBpbnRvIHByaXZhdGUgc2NhbGFyLCB3aXRoIHRoZSBtb2R1bG8gYmlhcyBiZWluZyBuZWdsaWdpYmxlLlxuICogTmVlZHMgYXQgbGVhc3QgNDggYnl0ZXMgb2YgaW5wdXQgZm9yIDMyLWJ5dGUgcHJpdmF0ZSBrZXkuXG4gKiBodHRwczovL3Jlc2VhcmNoLmt1ZGVsc2tpc2VjdXJpdHkuY29tLzIwMjAvMDcvMjgvdGhlLWRlZmluaXRpdmUtZ3VpZGUtdG8tbW9kdWxvLWJpYXMtYW5kLWhvdy10by1hdm9pZC1pdC9cbiAqIEZJUFMgMTg2LTUsIEEuMiBodHRwczovL2NzcmMubmlzdC5nb3YvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE4Ni81L2ZpbmFsXG4gKiBSRkMgOTM4MCwgaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi01XG4gKiBAcGFyYW0gaGFzaCBoYXNoIG91dHB1dCBmcm9tIFNIQTMgb3IgYSBzaW1pbGFyIGZ1bmN0aW9uXG4gKiBAcGFyYW0gZ3JvdXBPcmRlciBzaXplIG9mIHN1Ymdyb3VwIC0gKGUuZy4gc2VjcDI1NmsxLkNVUlZFLm4pXG4gKiBAcGFyYW0gaXNMRSBpbnRlcnByZXQgaGFzaCBieXRlcyBhcyBMRSBudW1cbiAqIEByZXR1cm5zIHZhbGlkIHByaXZhdGUgc2NhbGFyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXBIYXNoVG9GaWVsZChrZXksIGZpZWxkT3JkZXIsIGlzTEUgPSBmYWxzZSkge1xuICAgIGNvbnN0IGxlbiA9IGtleS5sZW5ndGg7XG4gICAgY29uc3QgZmllbGRMZW4gPSBnZXRGaWVsZEJ5dGVzTGVuZ3RoKGZpZWxkT3JkZXIpO1xuICAgIGNvbnN0IG1pbkxlbiA9IGdldE1pbkhhc2hMZW5ndGgoZmllbGRPcmRlcik7XG4gICAgLy8gTm8gc21hbGwgbnVtYmVyczogbmVlZCB0byB1bmRlcnN0YW5kIGJpYXMgc3RvcnkuIE5vIGh1Z2UgbnVtYmVyczogZWFzaWVyIHRvIGRldGVjdCBKUyB0aW1pbmdzLlxuICAgIGlmIChsZW4gPCAxNiB8fCBsZW4gPCBtaW5MZW4gfHwgbGVuID4gMTAyNClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdleHBlY3RlZCAnICsgbWluTGVuICsgJy0xMDI0IGJ5dGVzIG9mIGlucHV0LCBnb3QgJyArIGxlbik7XG4gICAgY29uc3QgbnVtID0gaXNMRSA/IGJ5dGVzVG9OdW1iZXJMRShrZXkpIDogYnl0ZXNUb051bWJlckJFKGtleSk7XG4gICAgLy8gYG1vZCh4LCAxMSlgIGNhbiBzb21ldGltZXMgcHJvZHVjZSAwLiBgbW9kKHgsIDEwKSArIDFgIGlzIHRoZSBzYW1lLCBidXQgbm8gMFxuICAgIGNvbnN0IHJlZHVjZWQgPSBtb2QobnVtLCBmaWVsZE9yZGVyIC0gXzFuKSArIF8xbjtcbiAgICByZXR1cm4gaXNMRSA/IG51bWJlclRvQnl0ZXNMRShyZWR1Y2VkLCBmaWVsZExlbikgOiBudW1iZXJUb0J5dGVzQkUocmVkdWNlZCwgZmllbGRMZW4pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bW9kdWxhci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/modular.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ aInRange: () => (/* binding */ aInRange),\n/* harmony export */ abool: () => (/* binding */ abool),\n/* harmony export */ abytes: () => (/* binding */ abytes),\n/* harmony export */ bitGet: () => (/* binding */ bitGet),\n/* harmony export */ bitLen: () => (/* binding */ bitLen),\n/* harmony export */ bitMask: () => (/* binding */ bitMask),\n/* harmony export */ bitSet: () => (/* binding */ bitSet),\n/* harmony export */ bytesToHex: () => (/* binding */ bytesToHex),\n/* harmony export */ bytesToNumberBE: () => (/* binding */ bytesToNumberBE),\n/* harmony export */ bytesToNumberLE: () => (/* binding */ bytesToNumberLE),\n/* harmony export */ concatBytes: () => (/* binding */ concatBytes),\n/* harmony export */ createHmacDrbg: () => (/* binding */ createHmacDrbg),\n/* harmony export */ ensureBytes: () => (/* binding */ ensureBytes),\n/* harmony export */ equalBytes: () => (/* binding */ equalBytes),\n/* harmony export */ hexToBytes: () => (/* binding */ hexToBytes),\n/* harmony export */ hexToNumber: () => (/* binding */ hexToNumber),\n/* harmony export */ inRange: () => (/* binding */ inRange),\n/* harmony export */ isBytes: () => (/* binding */ isBytes),\n/* harmony export */ memoized: () => (/* binding */ memoized),\n/* harmony export */ notImplemented: () => (/* binding */ notImplemented),\n/* harmony export */ numberToBytesBE: () => (/* binding */ numberToBytesBE),\n/* harmony export */ numberToBytesLE: () => (/* binding */ numberToBytesLE),\n/* harmony export */ numberToHexUnpadded: () => (/* binding */ numberToHexUnpadded),\n/* harmony export */ numberToVarBytesBE: () => (/* binding */ numberToVarBytesBE),\n/* harmony export */ utf8ToBytes: () => (/* binding */ utf8ToBytes),\n/* harmony export */ validateObject: () => (/* binding */ validateObject)\n/* harmony export */ });\n/**\n * Hex, bytes and number utilities.\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// 100 lines of code in the file are duplicated from noble-hashes (utils).\n// This is OK: `abstract` directory does not use noble-hashes.\n// User may opt-in into using different hashing library. This way, noble-hashes\n// won't be included into their bundle.\nconst _0n = /* @__PURE__ */ BigInt(0);\nconst _1n = /* @__PURE__ */ BigInt(1);\nfunction isBytes(a) {\n return a instanceof Uint8Array || (ArrayBuffer.isView(a) && a.constructor.name === 'Uint8Array');\n}\nfunction abytes(item) {\n if (!isBytes(item))\n throw new Error('Uint8Array expected');\n}\nfunction abool(title, value) {\n if (typeof value !== 'boolean')\n throw new Error(title + ' boolean expected, got ' + value);\n}\n// Used in weierstrass, der\nfunction numberToHexUnpadded(num) {\n const hex = num.toString(16);\n return hex.length & 1 ? '0' + hex : hex;\n}\nfunction hexToNumber(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n return hex === '' ? _0n : BigInt('0x' + hex); // Big Endian\n}\n// Built-in hex conversion https://caniuse.com/mdn-javascript_builtins_uint8array_fromhex\nconst hasHexBuiltin = \n// @ts-ignore\ntypeof Uint8Array.from([]).toHex === 'function' && typeof Uint8Array.fromHex === 'function';\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * Convert byte array to hex string. Uses built-in function, when available.\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n abytes(bytes);\n // @ts-ignore\n if (hasHexBuiltin)\n return bytes.toHex();\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, A: 65, F: 70, a: 97, f: 102 };\nfunction asciiToBase16(ch) {\n if (ch >= asciis._0 && ch <= asciis._9)\n return ch - asciis._0; // '2' => 50-48\n if (ch >= asciis.A && ch <= asciis.F)\n return ch - (asciis.A - 10); // 'B' => 66-(65-10)\n if (ch >= asciis.a && ch <= asciis.f)\n return ch - (asciis.a - 10); // 'b' => 98-(97-10)\n return;\n}\n/**\n * Convert hex string to byte array. Uses built-in function, when available.\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // @ts-ignore\n if (hasHexBuiltin)\n return Uint8Array.fromHex(hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2; // multiply first octet, e.g. 'a3' => 10*16+3 => 160 + 3 => 163\n }\n return array;\n}\n// BE: Big Endian, LE: Little Endian\nfunction bytesToNumberBE(bytes) {\n return hexToNumber(bytesToHex(bytes));\n}\nfunction bytesToNumberLE(bytes) {\n abytes(bytes);\n return hexToNumber(bytesToHex(Uint8Array.from(bytes).reverse()));\n}\nfunction numberToBytesBE(n, len) {\n return hexToBytes(n.toString(16).padStart(len * 2, '0'));\n}\nfunction numberToBytesLE(n, len) {\n return numberToBytesBE(n, len).reverse();\n}\n// Unpadded, rarely used\nfunction numberToVarBytesBE(n) {\n return hexToBytes(numberToHexUnpadded(n));\n}\n/**\n * Takes hex string or Uint8Array, converts to Uint8Array.\n * Validates output length.\n * Will throw error for other types.\n * @param title descriptive title for an error e.g. 'private key'\n * @param hex hex string or Uint8Array\n * @param expectedLength optional, will compare to result array's length\n * @returns\n */\nfunction ensureBytes(title, hex, expectedLength) {\n let res;\n if (typeof hex === 'string') {\n try {\n res = hexToBytes(hex);\n }\n catch (e) {\n throw new Error(title + ' must be hex string or Uint8Array, cause: ' + e);\n }\n }\n else if (isBytes(hex)) {\n // Uint8Array.from() instead of hash.slice() because node.js Buffer\n // is instance of Uint8Array, and its slice() creates **mutable** copy\n res = Uint8Array.from(hex);\n }\n else {\n throw new Error(title + ' must be hex string or Uint8Array');\n }\n const len = res.length;\n if (typeof expectedLength === 'number' && len !== expectedLength)\n throw new Error(title + ' of length ' + expectedLength + ' expected, got ' + len);\n return res;\n}\n/**\n * Copies several Uint8Arrays into one.\n */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n abytes(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n// Compares 2 u8a-s in kinda constant time\nfunction equalBytes(a, b) {\n if (a.length !== b.length)\n return false;\n let diff = 0;\n for (let i = 0; i < a.length; i++)\n diff |= a[i] ^ b[i];\n return diff === 0;\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error('string expected');\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n// Is positive bigint\nconst isPosBig = (n) => typeof n === 'bigint' && _0n <= n;\nfunction inRange(n, min, max) {\n return isPosBig(n) && isPosBig(min) && isPosBig(max) && min <= n && n < max;\n}\n/**\n * Asserts min <= n < max. NOTE: It's < max and not <= max.\n * @example\n * aInRange('x', x, 1n, 256n); // would assume x is in (1n..255n)\n */\nfunction aInRange(title, n, min, max) {\n // Why min <= n < max and not a (min < n < max) OR b (min <= n <= max)?\n // consider P=256n, min=0n, max=P\n // - a for min=0 would require -1: `inRange('x', x, -1n, P)`\n // - b would commonly require subtraction: `inRange('x', x, 0n, P - 1n)`\n // - our way is the cleanest: `inRange('x', x, 0n, P)\n if (!inRange(n, min, max))\n throw new Error('expected valid ' + title + ': ' + min + ' <= n < ' + max + ', got ' + n);\n}\n// Bit operations\n/**\n * Calculates amount of bits in a bigint.\n * Same as `n.toString(2).length`\n * TODO: merge with nLength in modular\n */\nfunction bitLen(n) {\n let len;\n for (len = 0; n > _0n; n >>= _1n, len += 1)\n ;\n return len;\n}\n/**\n * Gets single bit at position.\n * NOTE: first bit position is 0 (same as arrays)\n * Same as `!!+Array.from(n.toString(2)).reverse()[pos]`\n */\nfunction bitGet(n, pos) {\n return (n >> BigInt(pos)) & _1n;\n}\n/**\n * Sets single bit at position.\n */\nfunction bitSet(n, pos, value) {\n return n | ((value ? _1n : _0n) << BigInt(pos));\n}\n/**\n * Calculate mask for N bits. Not using ** operator with bigints because of old engines.\n * Same as BigInt(`0b${Array(i).fill('1').join('')}`)\n */\nconst bitMask = (n) => (_1n << BigInt(n)) - _1n;\n// DRBG\nconst u8n = (len) => new Uint8Array(len); // creates Uint8Array\nconst u8fr = (arr) => Uint8Array.from(arr); // another shortcut\n/**\n * Minimal HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n * @returns function that will call DRBG until 2nd arg returns something meaningful\n * @example\n * const drbg = createHmacDRBG<Key>(32, 32, hmac);\n * drbg(seed, bytesToKey); // bytesToKey must return Key or undefined\n */\nfunction createHmacDrbg(hashLen, qByteLen, hmacFn) {\n if (typeof hashLen !== 'number' || hashLen < 2)\n throw new Error('hashLen must be a number');\n if (typeof qByteLen !== 'number' || qByteLen < 2)\n throw new Error('qByteLen must be a number');\n if (typeof hmacFn !== 'function')\n throw new Error('hmacFn must be a function');\n // Step B, Step C: set hashLen to 8*ceil(hlen/8)\n let v = u8n(hashLen); // Minimal non-full-spec HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n let k = u8n(hashLen); // Steps B and C of RFC6979 3.2: set hashLen, in our case always same\n let i = 0; // Iterations counter, will throw when over 1000\n const reset = () => {\n v.fill(1);\n k.fill(0);\n i = 0;\n };\n const h = (...b) => hmacFn(k, v, ...b); // hmac(k)(v, ...values)\n const reseed = (seed = u8n(0)) => {\n // HMAC-DRBG reseed() function. Steps D-G\n k = h(u8fr([0x00]), seed); // k = hmac(k || v || 0x00 || seed)\n v = h(); // v = hmac(k || v)\n if (seed.length === 0)\n return;\n k = h(u8fr([0x01]), seed); // k = hmac(k || v || 0x01 || seed)\n v = h(); // v = hmac(k || v)\n };\n const gen = () => {\n // HMAC-DRBG generate() function\n if (i++ >= 1000)\n throw new Error('drbg: tried 1000 values');\n let len = 0;\n const out = [];\n while (len < qByteLen) {\n v = h();\n const sl = v.slice();\n out.push(sl);\n len += v.length;\n }\n return concatBytes(...out);\n };\n const genUntil = (seed, pred) => {\n reset();\n reseed(seed); // Steps D-G\n let res = undefined; // Step H: grind until k is in [1..n-1]\n while (!(res = pred(gen())))\n reseed();\n reset();\n return res;\n };\n return genUntil;\n}\n// Validating curves and fields\nconst validatorFns = {\n bigint: (val) => typeof val === 'bigint',\n function: (val) => typeof val === 'function',\n boolean: (val) => typeof val === 'boolean',\n string: (val) => typeof val === 'string',\n stringOrUint8Array: (val) => typeof val === 'string' || isBytes(val),\n isSafeInteger: (val) => Number.isSafeInteger(val),\n array: (val) => Array.isArray(val),\n field: (val, object) => object.Fp.isValid(val),\n hash: (val) => typeof val === 'function' && Number.isSafeInteger(val.outputLen),\n};\n// type Record<K extends string | number | symbol, T> = { [P in K]: T; }\nfunction validateObject(object, validators, optValidators = {}) {\n const checkField = (fieldName, type, isOptional) => {\n const checkVal = validatorFns[type];\n if (typeof checkVal !== 'function')\n throw new Error('invalid validator function');\n const val = object[fieldName];\n if (isOptional && val === undefined)\n return;\n if (!checkVal(val, object)) {\n throw new Error('param ' + String(fieldName) + ' is invalid. Expected ' + type + ', got ' + val);\n }\n };\n for (const [fieldName, type] of Object.entries(validators))\n checkField(fieldName, type, false);\n for (const [fieldName, type] of Object.entries(optValidators))\n checkField(fieldName, type, true);\n return object;\n}\n// validate type tests\n// const o: { a: number; b: number; c: number } = { a: 1, b: 5, c: 6 };\n// const z0 = validateObject(o, { a: 'isSafeInteger' }, { c: 'bigint' }); // Ok!\n// // Should fail type-check\n// const z1 = validateObject(o, { a: 'tmp' }, { c: 'zz' });\n// const z2 = validateObject(o, { a: 'isSafeInteger' }, { c: 'zz' });\n// const z3 = validateObject(o, { test: 'boolean', z: 'bug' });\n// const z4 = validateObject(o, { a: 'boolean', z: 'bug' });\n/**\n * throws not implemented error\n */\nconst notImplemented = () => {\n throw new Error('not implemented');\n};\n/**\n * Memoizes (caches) computation result.\n * Uses WeakMap: the value is going auto-cleaned by GC after last reference is removed.\n */\nfunction memoized(fn) {\n const map = new WeakMap();\n return (arg, ...args) => {\n const val = map.get(arg);\n if (val !== undefined)\n return val;\n const computed = fn(arg, ...args);\n map.set(arg, computed);\n return computed;\n };\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9hYnN0cmFjdC91dGlscy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLGtEQUFrRDtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsYUFBYTtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGtCQUFrQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSwrQkFBK0I7QUFDL0I7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixTQUFTO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLG9CQUFvQixtQkFBbUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixtQkFBbUI7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixjQUFjO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLDBEQUEwRDtBQUMxRDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0I7QUFDL0I7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0Esa0JBQWtCLFNBQVM7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsNEJBQTRCO0FBQ25EO0FBQ087QUFDUDtBQUNBLDBDQUEwQztBQUMxQyw0Q0FBNEM7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QjtBQUM3QjtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEI7QUFDMUIsMEJBQTBCO0FBQzFCLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDO0FBQzVDO0FBQ0E7QUFDQSxtQ0FBbUM7QUFDbkMsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSxtQ0FBbUM7QUFDbkMsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0I7QUFDdEIsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMERBQTBEO0FBQ25ELDhEQUE4RDtBQUNyRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLFdBQVcsV0FBVyxZQUFZLElBQUk7QUFDcEQsa0NBQWtDLG9CQUFvQixJQUFJLGFBQWEsR0FBRztBQUMxRTtBQUNBLGtDQUFrQyxVQUFVLElBQUksU0FBUztBQUN6RCxrQ0FBa0Msb0JBQW9CLElBQUksU0FBUztBQUNuRSxrQ0FBa0MsMkJBQTJCO0FBQzdELGtDQUFrQyx3QkFBd0I7QUFDMUQ7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9lc20vYWJzdHJhY3QvdXRpbHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBIZXgsIGJ5dGVzIGFuZCBudW1iZXIgdXRpbGl0aWVzLlxuICogQG1vZHVsZVxuICovXG4vKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG4vLyAxMDAgbGluZXMgb2YgY29kZSBpbiB0aGUgZmlsZSBhcmUgZHVwbGljYXRlZCBmcm9tIG5vYmxlLWhhc2hlcyAodXRpbHMpLlxuLy8gVGhpcyBpcyBPSzogYGFic3RyYWN0YCBkaXJlY3RvcnkgZG9lcyBub3QgdXNlIG5vYmxlLWhhc2hlcy5cbi8vIFVzZXIgbWF5IG9wdC1pbiBpbnRvIHVzaW5nIGRpZmZlcmVudCBoYXNoaW5nIGxpYnJhcnkuIFRoaXMgd2F5LCBub2JsZS1oYXNoZXNcbi8vIHdvbid0IGJlIGluY2x1ZGVkIGludG8gdGhlaXIgYnVuZGxlLlxuY29uc3QgXzBuID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCgwKTtcbmNvbnN0IF8xbiA9IC8qIEBfX1BVUkVfXyAqLyBCaWdJbnQoMSk7XG5leHBvcnQgZnVuY3Rpb24gaXNCeXRlcyhhKSB7XG4gICAgcmV0dXJuIGEgaW5zdGFuY2VvZiBVaW50OEFycmF5IHx8IChBcnJheUJ1ZmZlci5pc1ZpZXcoYSkgJiYgYS5jb25zdHJ1Y3Rvci5uYW1lID09PSAnVWludDhBcnJheScpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGFieXRlcyhpdGVtKSB7XG4gICAgaWYgKCFpc0J5dGVzKGl0ZW0pKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VpbnQ4QXJyYXkgZXhwZWN0ZWQnKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBhYm9vbCh0aXRsZSwgdmFsdWUpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnYm9vbGVhbicpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcih0aXRsZSArICcgYm9vbGVhbiBleHBlY3RlZCwgZ290ICcgKyB2YWx1ZSk7XG59XG4vLyBVc2VkIGluIHdlaWVyc3RyYXNzLCBkZXJcbmV4cG9ydCBmdW5jdGlvbiBudW1iZXJUb0hleFVucGFkZGVkKG51bSkge1xuICAgIGNvbnN0IGhleCA9IG51bS50b1N0cmluZygxNik7XG4gICAgcmV0dXJuIGhleC5sZW5ndGggJiAxID8gJzAnICsgaGV4IDogaGV4O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGhleFRvTnVtYmVyKGhleCkge1xuICAgIGlmICh0eXBlb2YgaGV4ICE9PSAnc3RyaW5nJylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3QgJyArIHR5cGVvZiBoZXgpO1xuICAgIHJldHVybiBoZXggPT09ICcnID8gXzBuIDogQmlnSW50KCcweCcgKyBoZXgpOyAvLyBCaWcgRW5kaWFuXG59XG4vLyBCdWlsdC1pbiBoZXggY29udmVyc2lvbiBodHRwczovL2Nhbml1c2UuY29tL21kbi1qYXZhc2NyaXB0X2J1aWx0aW5zX3VpbnQ4YXJyYXlfZnJvbWhleFxuY29uc3QgaGFzSGV4QnVpbHRpbiA9IFxuLy8gQHRzLWlnbm9yZVxudHlwZW9mIFVpbnQ4QXJyYXkuZnJvbShbXSkudG9IZXggPT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIFVpbnQ4QXJyYXkuZnJvbUhleCA9PT0gJ2Z1bmN0aW9uJztcbi8vIEFycmF5IHdoZXJlIGluZGV4IDB4ZjAgKDI0MCkgaXMgbWFwcGVkIHRvIHN0cmluZyAnZjAnXG5jb25zdCBoZXhlcyA9IC8qIEBfX1BVUkVfXyAqLyBBcnJheS5mcm9tKHsgbGVuZ3RoOiAyNTYgfSwgKF8sIGkpID0+IGkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsICcwJykpO1xuLyoqXG4gKiBDb252ZXJ0IGJ5dGUgYXJyYXkgdG8gaGV4IHN0cmluZy4gVXNlcyBidWlsdC1pbiBmdW5jdGlvbiwgd2hlbiBhdmFpbGFibGUuXG4gKiBAZXhhbXBsZSBieXRlc1RvSGV4KFVpbnQ4QXJyYXkuZnJvbShbMHhjYSwgMHhmZSwgMHgwMSwgMHgyM10pKSAvLyAnY2FmZTAxMjMnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBieXRlc1RvSGV4KGJ5dGVzKSB7XG4gICAgYWJ5dGVzKGJ5dGVzKTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgaWYgKGhhc0hleEJ1aWx0aW4pXG4gICAgICAgIHJldHVybiBieXRlcy50b0hleCgpO1xuICAgIC8vIHByZS1jYWNoaW5nIGltcHJvdmVzIHRoZSBzcGVlZCA2eFxuICAgIGxldCBoZXggPSAnJztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGJ5dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGhleCArPSBoZXhlc1tieXRlc1tpXV07XG4gICAgfVxuICAgIHJldHVybiBoZXg7XG59XG4vLyBXZSB1c2Ugb3B0aW1pemVkIHRlY2huaXF1ZSB0byBjb252ZXJ0IGhleCBzdHJpbmcgdG8gYnl0ZSBhcnJheVxuY29uc3QgYXNjaWlzID0geyBfMDogNDgsIF85OiA1NywgQTogNjUsIEY6IDcwLCBhOiA5NywgZjogMTAyIH07XG5mdW5jdGlvbiBhc2NpaVRvQmFzZTE2KGNoKSB7XG4gICAgaWYgKGNoID49IGFzY2lpcy5fMCAmJiBjaCA8PSBhc2NpaXMuXzkpXG4gICAgICAgIHJldHVybiBjaCAtIGFzY2lpcy5fMDsgLy8gJzInID0+IDUwLTQ4XG4gICAgaWYgKGNoID49IGFzY2lpcy5BICYmIGNoIDw9IGFzY2lpcy5GKVxuICAgICAgICByZXR1cm4gY2ggLSAoYXNjaWlzLkEgLSAxMCk7IC8vICdCJyA9PiA2Ni0oNjUtMTApXG4gICAgaWYgKGNoID49IGFzY2lpcy5hICYmIGNoIDw9IGFzY2lpcy5mKVxuICAgICAgICByZXR1cm4gY2ggLSAoYXNjaWlzLmEgLSAxMCk7IC8vICdiJyA9PiA5OC0oOTctMTApXG4gICAgcmV0dXJuO1xufVxuLyoqXG4gKiBDb252ZXJ0IGhleCBzdHJpbmcgdG8gYnl0ZSBhcnJheS4gVXNlcyBidWlsdC1pbiBmdW5jdGlvbiwgd2hlbiBhdmFpbGFibGUuXG4gKiBAZXhhbXBsZSBoZXhUb0J5dGVzKCdjYWZlMDEyMycpIC8vIFVpbnQ4QXJyYXkuZnJvbShbMHhjYSwgMHhmZSwgMHgwMSwgMHgyM10pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoZXhUb0J5dGVzKGhleCkge1xuICAgIGlmICh0eXBlb2YgaGV4ICE9PSAnc3RyaW5nJylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3QgJyArIHR5cGVvZiBoZXgpO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAoaGFzSGV4QnVpbHRpbilcbiAgICAgICAgcmV0dXJuIFVpbnQ4QXJyYXkuZnJvbUhleChoZXgpO1xuICAgIGNvbnN0IGhsID0gaGV4Lmxlbmd0aDtcbiAgICBjb25zdCBhbCA9IGhsIC8gMjtcbiAgICBpZiAoaGwgJSAyKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2hleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCB1bnBhZGRlZCBoZXggb2YgbGVuZ3RoICcgKyBobCk7XG4gICAgY29uc3QgYXJyYXkgPSBuZXcgVWludDhBcnJheShhbCk7XG4gICAgZm9yIChsZXQgYWkgPSAwLCBoaSA9IDA7IGFpIDwgYWw7IGFpKyssIGhpICs9IDIpIHtcbiAgICAgICAgY29uc3QgbjEgPSBhc2NpaVRvQmFzZTE2KGhleC5jaGFyQ29kZUF0KGhpKSk7XG4gICAgICAgIGNvbnN0IG4yID0gYXNjaWlUb0Jhc2UxNihoZXguY2hhckNvZGVBdChoaSArIDEpKTtcbiAgICAgICAgaWYgKG4xID09PSB1bmRlZmluZWQgfHwgbjIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uc3QgY2hhciA9IGhleFtoaV0gKyBoZXhbaGkgKyAxXTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaGV4IHN0cmluZyBleHBlY3RlZCwgZ290IG5vbi1oZXggY2hhcmFjdGVyIFwiJyArIGNoYXIgKyAnXCIgYXQgaW5kZXggJyArIGhpKTtcbiAgICAgICAgfVxuICAgICAgICBhcnJheVthaV0gPSBuMSAqIDE2ICsgbjI7IC8vIG11bHRpcGx5IGZpcnN0IG9jdGV0LCBlLmcuICdhMycgPT4gMTAqMTYrMyA9PiAxNjAgKyAzID0+IDE2M1xuICAgIH1cbiAgICByZXR1cm4gYXJyYXk7XG59XG4vLyBCRTogQmlnIEVuZGlhbiwgTEU6IExpdHRsZSBFbmRpYW5cbmV4cG9ydCBmdW5jdGlvbiBieXRlc1RvTnVtYmVyQkUoYnl0ZXMpIHtcbiAgICByZXR1cm4gaGV4VG9OdW1iZXIoYnl0ZXNUb0hleChieXRlcykpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9OdW1iZXJMRShieXRlcykge1xuICAgIGFieXRlcyhieXRlcyk7XG4gICAgcmV0dXJuIGhleFRvTnVtYmVyKGJ5dGVzVG9IZXgoVWludDhBcnJheS5mcm9tKGJ5dGVzKS5yZXZlcnNlKCkpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBudW1iZXJUb0J5dGVzQkUobiwgbGVuKSB7XG4gICAgcmV0dXJuIGhleFRvQnl0ZXMobi50b1N0cmluZygxNikucGFkU3RhcnQobGVuICogMiwgJzAnKSk7XG59XG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyVG9CeXRlc0xFKG4sIGxlbikge1xuICAgIHJldHVybiBudW1iZXJUb0J5dGVzQkUobiwgbGVuKS5yZXZlcnNlKCk7XG59XG4vLyBVbnBhZGRlZCwgcmFyZWx5IHVzZWRcbmV4cG9ydCBmdW5jdGlvbiBudW1iZXJUb1ZhckJ5dGVzQkUobikge1xuICAgIHJldHVybiBoZXhUb0J5dGVzKG51bWJlclRvSGV4VW5wYWRkZWQobikpO1xufVxuLyoqXG4gKiBUYWtlcyBoZXggc3RyaW5nIG9yIFVpbnQ4QXJyYXksIGNvbnZlcnRzIHRvIFVpbnQ4QXJyYXkuXG4gKiBWYWxpZGF0ZXMgb3V0cHV0IGxlbmd0aC5cbiAqIFdpbGwgdGhyb3cgZXJyb3IgZm9yIG90aGVyIHR5cGVzLlxuICogQHBhcmFtIHRpdGxlIGRlc2NyaXB0aXZlIHRpdGxlIGZvciBhbiBlcnJvciBlLmcuICdwcml2YXRlIGtleSdcbiAqIEBwYXJhbSBoZXggaGV4IHN0cmluZyBvciBVaW50OEFycmF5XG4gKiBAcGFyYW0gZXhwZWN0ZWRMZW5ndGggb3B0aW9uYWwsIHdpbGwgY29tcGFyZSB0byByZXN1bHQgYXJyYXkncyBsZW5ndGhcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVCeXRlcyh0aXRsZSwgaGV4LCBleHBlY3RlZExlbmd0aCkge1xuICAgIGxldCByZXM7XG4gICAgaWYgKHR5cGVvZiBoZXggPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXMgPSBoZXhUb0J5dGVzKGhleCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcih0aXRsZSArICcgbXVzdCBiZSBoZXggc3RyaW5nIG9yIFVpbnQ4QXJyYXksIGNhdXNlOiAnICsgZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAoaXNCeXRlcyhoZXgpKSB7XG4gICAgICAgIC8vIFVpbnQ4QXJyYXkuZnJvbSgpIGluc3RlYWQgb2YgaGFzaC5zbGljZSgpIGJlY2F1c2Ugbm9kZS5qcyBCdWZmZXJcbiAgICAgICAgLy8gaXMgaW5zdGFuY2Ugb2YgVWludDhBcnJheSwgYW5kIGl0cyBzbGljZSgpIGNyZWF0ZXMgKiptdXRhYmxlKiogY29weVxuICAgICAgICByZXMgPSBVaW50OEFycmF5LmZyb20oaGV4KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcih0aXRsZSArICcgbXVzdCBiZSBoZXggc3RyaW5nIG9yIFVpbnQ4QXJyYXknKTtcbiAgICB9XG4gICAgY29uc3QgbGVuID0gcmVzLmxlbmd0aDtcbiAgICBpZiAodHlwZW9mIGV4cGVjdGVkTGVuZ3RoID09PSAnbnVtYmVyJyAmJiBsZW4gIT09IGV4cGVjdGVkTGVuZ3RoKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IodGl0bGUgKyAnIG9mIGxlbmd0aCAnICsgZXhwZWN0ZWRMZW5ndGggKyAnIGV4cGVjdGVkLCBnb3QgJyArIGxlbik7XG4gICAgcmV0dXJuIHJlcztcbn1cbi8qKlxuICogQ29waWVzIHNldmVyYWwgVWludDhBcnJheXMgaW50byBvbmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25jYXRCeXRlcyguLi5hcnJheXMpIHtcbiAgICBsZXQgc3VtID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhID0gYXJyYXlzW2ldO1xuICAgICAgICBhYnl0ZXMoYSk7XG4gICAgICAgIHN1bSArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgY29uc3QgcmVzID0gbmV3IFVpbnQ4QXJyYXkoc3VtKTtcbiAgICBmb3IgKGxldCBpID0gMCwgcGFkID0gMDsgaSA8IGFycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhID0gYXJyYXlzW2ldO1xuICAgICAgICByZXMuc2V0KGEsIHBhZCk7XG4gICAgICAgIHBhZCArPSBhLmxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cbi8vIENvbXBhcmVzIDIgdThhLXMgaW4ga2luZGEgY29uc3RhbnQgdGltZVxuZXhwb3J0IGZ1bmN0aW9uIGVxdWFsQnl0ZXMoYSwgYikge1xuICAgIGlmIChhLmxlbmd0aCAhPT0gYi5sZW5ndGgpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBsZXQgZGlmZiA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKVxuICAgICAgICBkaWZmIHw9IGFbaV0gXiBiW2ldO1xuICAgIHJldHVybiBkaWZmID09PSAwO1xufVxuLyoqXG4gKiBAZXhhbXBsZSB1dGY4VG9CeXRlcygnYWJjJykgLy8gbmV3IFVpbnQ4QXJyYXkoWzk3LCA5OCwgOTldKVxuICovXG5leHBvcnQgZnVuY3Rpb24gdXRmOFRvQnl0ZXMoc3RyKSB7XG4gICAgaWYgKHR5cGVvZiBzdHIgIT09ICdzdHJpbmcnKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3N0cmluZyBleHBlY3RlZCcpO1xuICAgIHJldHVybiBuZXcgVWludDhBcnJheShuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoc3RyKSk7IC8vIGh0dHBzOi8vYnVnemlsLmxhLzE2ODE4MDlcbn1cbi8vIElzIHBvc2l0aXZlIGJpZ2ludFxuY29uc3QgaXNQb3NCaWcgPSAobikgPT4gdHlwZW9mIG4gPT09ICdiaWdpbnQnICYmIF8wbiA8PSBuO1xuZXhwb3J0IGZ1bmN0aW9uIGluUmFuZ2UobiwgbWluLCBtYXgpIHtcbiAgICByZXR1cm4gaXNQb3NCaWcobikgJiYgaXNQb3NCaWcobWluKSAmJiBpc1Bvc0JpZyhtYXgpICYmIG1pbiA8PSBuICYmIG4gPCBtYXg7XG59XG4vKipcbiAqIEFzc2VydHMgbWluIDw9IG4gPCBtYXguIE5PVEU6IEl0J3MgPCBtYXggYW5kIG5vdCA8PSBtYXguXG4gKiBAZXhhbXBsZVxuICogYUluUmFuZ2UoJ3gnLCB4LCAxbiwgMjU2bik7IC8vIHdvdWxkIGFzc3VtZSB4IGlzIGluICgxbi4uMjU1bilcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFJblJhbmdlKHRpdGxlLCBuLCBtaW4sIG1heCkge1xuICAgIC8vIFdoeSBtaW4gPD0gbiA8IG1heCBhbmQgbm90IGEgKG1pbiA8IG4gPCBtYXgpIE9SIGIgKG1pbiA8PSBuIDw9IG1heCk/XG4gICAgLy8gY29uc2lkZXIgUD0yNTZuLCBtaW49MG4sIG1heD1QXG4gICAgLy8gLSBhIGZvciBtaW49MCB3b3VsZCByZXF1aXJlIC0xOiAgICAgICAgICBgaW5SYW5nZSgneCcsIHgsIC0xbiwgUClgXG4gICAgLy8gLSBiIHdvdWxkIGNvbW1vbmx5IHJlcXVpcmUgc3VidHJhY3Rpb246ICBgaW5SYW5nZSgneCcsIHgsIDBuLCBQIC0gMW4pYFxuICAgIC8vIC0gb3VyIHdheSBpcyB0aGUgY2xlYW5lc3Q6ICAgICAgICAgICAgICAgYGluUmFuZ2UoJ3gnLCB4LCAwbiwgUClcbiAgICBpZiAoIWluUmFuZ2UobiwgbWluLCBtYXgpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2V4cGVjdGVkIHZhbGlkICcgKyB0aXRsZSArICc6ICcgKyBtaW4gKyAnIDw9IG4gPCAnICsgbWF4ICsgJywgZ290ICcgKyBuKTtcbn1cbi8vIEJpdCBvcGVyYXRpb25zXG4vKipcbiAqIENhbGN1bGF0ZXMgYW1vdW50IG9mIGJpdHMgaW4gYSBiaWdpbnQuXG4gKiBTYW1lIGFzIGBuLnRvU3RyaW5nKDIpLmxlbmd0aGBcbiAqIFRPRE86IG1lcmdlIHdpdGggbkxlbmd0aCBpbiBtb2R1bGFyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiaXRMZW4obikge1xuICAgIGxldCBsZW47XG4gICAgZm9yIChsZW4gPSAwOyBuID4gXzBuOyBuID4+PSBfMW4sIGxlbiArPSAxKVxuICAgICAgICA7XG4gICAgcmV0dXJuIGxlbjtcbn1cbi8qKlxuICogR2V0cyBzaW5nbGUgYml0IGF0IHBvc2l0aW9uLlxuICogTk9URTogZmlyc3QgYml0IHBvc2l0aW9uIGlzIDAgKHNhbWUgYXMgYXJyYXlzKVxuICogU2FtZSBhcyBgISErQXJyYXkuZnJvbShuLnRvU3RyaW5nKDIpKS5yZXZlcnNlKClbcG9zXWBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJpdEdldChuLCBwb3MpIHtcbiAgICByZXR1cm4gKG4gPj4gQmlnSW50KHBvcykpICYgXzFuO1xufVxuLyoqXG4gKiBTZXRzIHNpbmdsZSBiaXQgYXQgcG9zaXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiaXRTZXQobiwgcG9zLCB2YWx1ZSkge1xuICAgIHJldHVybiBuIHwgKCh2YWx1ZSA/IF8xbiA6IF8wbikgPDwgQmlnSW50KHBvcykpO1xufVxuLyoqXG4gKiBDYWxjdWxhdGUgbWFzayBmb3IgTiBiaXRzLiBOb3QgdXNpbmcgKiogb3BlcmF0b3Igd2l0aCBiaWdpbnRzIGJlY2F1c2Ugb2Ygb2xkIGVuZ2luZXMuXG4gKiBTYW1lIGFzIEJpZ0ludChgMGIke0FycmF5KGkpLmZpbGwoJzEnKS5qb2luKCcnKX1gKVxuICovXG5leHBvcnQgY29uc3QgYml0TWFzayA9IChuKSA9PiAoXzFuIDw8IEJpZ0ludChuKSkgLSBfMW47XG4vLyBEUkJHXG5jb25zdCB1OG4gPSAobGVuKSA9PiBuZXcgVWludDhBcnJheShsZW4pOyAvLyBjcmVhdGVzIFVpbnQ4QXJyYXlcbmNvbnN0IHU4ZnIgPSAoYXJyKSA9PiBVaW50OEFycmF5LmZyb20oYXJyKTsgLy8gYW5vdGhlciBzaG9ydGN1dFxuLyoqXG4gKiBNaW5pbWFsIEhNQUMtRFJCRyBmcm9tIE5JU1QgODAwLTkwIGZvciBSRkM2OTc5IHNpZ3MuXG4gKiBAcmV0dXJucyBmdW5jdGlvbiB0aGF0IHdpbGwgY2FsbCBEUkJHIHVudGlsIDJuZCBhcmcgcmV0dXJucyBzb21ldGhpbmcgbWVhbmluZ2Z1bFxuICogQGV4YW1wbGVcbiAqICAgY29uc3QgZHJiZyA9IGNyZWF0ZUhtYWNEUkJHPEtleT4oMzIsIDMyLCBobWFjKTtcbiAqICAgZHJiZyhzZWVkLCBieXRlc1RvS2V5KTsgLy8gYnl0ZXNUb0tleSBtdXN0IHJldHVybiBLZXkgb3IgdW5kZWZpbmVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVIbWFjRHJiZyhoYXNoTGVuLCBxQnl0ZUxlbiwgaG1hY0ZuKSB7XG4gICAgaWYgKHR5cGVvZiBoYXNoTGVuICE9PSAnbnVtYmVyJyB8fCBoYXNoTGVuIDwgMilcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdoYXNoTGVuIG11c3QgYmUgYSBudW1iZXInKTtcbiAgICBpZiAodHlwZW9mIHFCeXRlTGVuICE9PSAnbnVtYmVyJyB8fCBxQnl0ZUxlbiA8IDIpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcigncUJ5dGVMZW4gbXVzdCBiZSBhIG51bWJlcicpO1xuICAgIGlmICh0eXBlb2YgaG1hY0ZuICE9PSAnZnVuY3Rpb24nKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2htYWNGbiBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcbiAgICAvLyBTdGVwIEIsIFN0ZXAgQzogc2V0IGhhc2hMZW4gdG8gOCpjZWlsKGhsZW4vOClcbiAgICBsZXQgdiA9IHU4bihoYXNoTGVuKTsgLy8gTWluaW1hbCBub24tZnVsbC1zcGVjIEhNQUMtRFJCRyBmcm9tIE5JU1QgODAwLTkwIGZvciBSRkM2OTc5IHNpZ3MuXG4gICAgbGV0IGsgPSB1OG4oaGFzaExlbik7IC8vIFN0ZXBzIEIgYW5kIEMgb2YgUkZDNjk3OSAzLjI6IHNldCBoYXNoTGVuLCBpbiBvdXIgY2FzZSBhbHdheXMgc2FtZVxuICAgIGxldCBpID0gMDsgLy8gSXRlcmF0aW9ucyBjb3VudGVyLCB3aWxsIHRocm93IHdoZW4gb3ZlciAxMDAwXG4gICAgY29uc3QgcmVzZXQgPSAoKSA9PiB7XG4gICAgICAgIHYuZmlsbCgxKTtcbiAgICAgICAgay5maWxsKDApO1xuICAgICAgICBpID0gMDtcbiAgICB9O1xuICAgIGNvbnN0IGggPSAoLi4uYikgPT4gaG1hY0ZuKGssIHYsIC4uLmIpOyAvLyBobWFjKGspKHYsIC4uLnZhbHVlcylcbiAgICBjb25zdCByZXNlZWQgPSAoc2VlZCA9IHU4bigwKSkgPT4ge1xuICAgICAgICAvLyBITUFDLURSQkcgcmVzZWVkKCkgZnVuY3Rpb24uIFN0ZXBzIEQtR1xuICAgICAgICBrID0gaCh1OGZyKFsweDAwXSksIHNlZWQpOyAvLyBrID0gaG1hYyhrIHx8IHYgfHwgMHgwMCB8fCBzZWVkKVxuICAgICAgICB2ID0gaCgpOyAvLyB2ID0gaG1hYyhrIHx8IHYpXG4gICAgICAgIGlmIChzZWVkLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgayA9IGgodThmcihbMHgwMV0pLCBzZWVkKTsgLy8gayA9IGhtYWMoayB8fCB2IHx8IDB4MDEgfHwgc2VlZClcbiAgICAgICAgdiA9IGgoKTsgLy8gdiA9IGhtYWMoayB8fCB2KVxuICAgIH07XG4gICAgY29uc3QgZ2VuID0gKCkgPT4ge1xuICAgICAgICAvLyBITUFDLURSQkcgZ2VuZXJhdGUoKSBmdW5jdGlvblxuICAgICAgICBpZiAoaSsrID49IDEwMDApXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2RyYmc6IHRyaWVkIDEwMDAgdmFsdWVzJyk7XG4gICAgICAgIGxldCBsZW4gPSAwO1xuICAgICAgICBjb25zdCBvdXQgPSBbXTtcbiAgICAgICAgd2hpbGUgKGxlbiA8IHFCeXRlTGVuKSB7XG4gICAgICAgICAgICB2ID0gaCgpO1xuICAgICAgICAgICAgY29uc3Qgc2wgPSB2LnNsaWNlKCk7XG4gICAgICAgICAgICBvdXQucHVzaChzbCk7XG4gICAgICAgICAgICBsZW4gKz0gdi5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbmNhdEJ5dGVzKC4uLm91dCk7XG4gICAgfTtcbiAgICBjb25zdCBnZW5VbnRpbCA9IChzZWVkLCBwcmVkKSA9PiB7XG4gICAgICAgIHJlc2V0KCk7XG4gICAgICAgIHJlc2VlZChzZWVkKTsgLy8gU3RlcHMgRC1HXG4gICAgICAgIGxldCByZXMgPSB1bmRlZmluZWQ7IC8vIFN0ZXAgSDogZ3JpbmQgdW50aWwgayBpcyBpbiBbMS4ubi0xXVxuICAgICAgICB3aGlsZSAoIShyZXMgPSBwcmVkKGdlbigpKSkpXG4gICAgICAgICAgICByZXNlZWQoKTtcbiAgICAgICAgcmVzZXQoKTtcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9O1xuICAgIHJldHVybiBnZW5VbnRpbDtcbn1cbi8vIFZhbGlkYXRpbmcgY3VydmVzIGFuZCBmaWVsZHNcbmNvbnN0IHZhbGlkYXRvckZucyA9IHtcbiAgICBiaWdpbnQ6ICh2YWwpID0+IHR5cGVvZiB2YWwgPT09ICdiaWdpbnQnLFxuICAgIGZ1bmN0aW9uOiAodmFsKSA9PiB0eXBlb2YgdmFsID09PSAnZnVuY3Rpb24nLFxuICAgIGJvb2xlYW46ICh2YWwpID0+IHR5cGVvZiB2YWwgPT09ICdib29sZWFuJyxcbiAgICBzdHJpbmc6ICh2YWwpID0+IHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnLFxuICAgIHN0cmluZ09yVWludDhBcnJheTogKHZhbCkgPT4gdHlwZW9mIHZhbCA9PT0gJ3N0cmluZycgfHwgaXNCeXRlcyh2YWwpLFxuICAgIGlzU2FmZUludGVnZXI6ICh2YWwpID0+IE51bWJlci5pc1NhZmVJbnRlZ2VyKHZhbCksXG4gICAgYXJyYXk6ICh2YWwpID0+IEFycmF5LmlzQXJyYXkodmFsKSxcbiAgICBmaWVsZDogKHZhbCwgb2JqZWN0KSA9PiBvYmplY3QuRnAuaXNWYWxpZCh2YWwpLFxuICAgIGhhc2g6ICh2YWwpID0+IHR5cGVvZiB2YWwgPT09ICdmdW5jdGlvbicgJiYgTnVtYmVyLmlzU2FmZUludGVnZXIodmFsLm91dHB1dExlbiksXG59O1xuLy8gdHlwZSBSZWNvcmQ8SyBleHRlbmRzIHN0cmluZyB8IG51bWJlciB8IHN5bWJvbCwgVD4gPSB7IFtQIGluIEtdOiBUOyB9XG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVPYmplY3Qob2JqZWN0LCB2YWxpZGF0b3JzLCBvcHRWYWxpZGF0b3JzID0ge30pIHtcbiAgICBjb25zdCBjaGVja0ZpZWxkID0gKGZpZWxkTmFtZSwgdHlwZSwgaXNPcHRpb25hbCkgPT4ge1xuICAgICAgICBjb25zdCBjaGVja1ZhbCA9IHZhbGlkYXRvckZuc1t0eXBlXTtcbiAgICAgICAgaWYgKHR5cGVvZiBjaGVja1ZhbCAhPT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCB2YWxpZGF0b3IgZnVuY3Rpb24nKTtcbiAgICAgICAgY29uc3QgdmFsID0gb2JqZWN0W2ZpZWxkTmFtZV07XG4gICAgICAgIGlmIChpc09wdGlvbmFsICYmIHZhbCA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBpZiAoIWNoZWNrVmFsKHZhbCwgb2JqZWN0KSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdwYXJhbSAnICsgU3RyaW5nKGZpZWxkTmFtZSkgKyAnIGlzIGludmFsaWQuIEV4cGVjdGVkICcgKyB0eXBlICsgJywgZ290ICcgKyB2YWwpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBmb3IgKGNvbnN0IFtmaWVsZE5hbWUsIHR5cGVdIG9mIE9iamVjdC5lbnRyaWVzKHZhbGlkYXRvcnMpKVxuICAgICAgICBjaGVja0ZpZWxkKGZpZWxkTmFtZSwgdHlwZSwgZmFsc2UpO1xuICAgIGZvciAoY29uc3QgW2ZpZWxkTmFtZSwgdHlwZV0gb2YgT2JqZWN0LmVudHJpZXMob3B0VmFsaWRhdG9ycykpXG4gICAgICAgIGNoZWNrRmllbGQoZmllbGROYW1lLCB0eXBlLCB0cnVlKTtcbiAgICByZXR1cm4gb2JqZWN0O1xufVxuLy8gdmFsaWRhdGUgdHlwZSB0ZXN0c1xuLy8gY29uc3QgbzogeyBhOiBudW1iZXI7IGI6IG51bWJlcjsgYzogbnVtYmVyIH0gPSB7IGE6IDEsIGI6IDUsIGM6IDYgfTtcbi8vIGNvbnN0IHowID0gdmFsaWRhdGVPYmplY3QobywgeyBhOiAnaXNTYWZlSW50ZWdlcicgfSwgeyBjOiAnYmlnaW50JyB9KTsgLy8gT2shXG4vLyAvLyBTaG91bGQgZmFpbCB0eXBlLWNoZWNrXG4vLyBjb25zdCB6MSA9IHZhbGlkYXRlT2JqZWN0KG8sIHsgYTogJ3RtcCcgfSwgeyBjOiAnenonIH0pO1xuLy8gY29uc3QgejIgPSB2YWxpZGF0ZU9iamVjdChvLCB7IGE6ICdpc1NhZmVJbnRlZ2VyJyB9LCB7IGM6ICd6eicgfSk7XG4vLyBjb25zdCB6MyA9IHZhbGlkYXRlT2JqZWN0KG8sIHsgdGVzdDogJ2Jvb2xlYW4nLCB6OiAnYnVnJyB9KTtcbi8vIGNvbnN0IHo0ID0gdmFsaWRhdGVPYmplY3QobywgeyBhOiAnYm9vbGVhbicsIHo6ICdidWcnIH0pO1xuLyoqXG4gKiB0aHJvd3Mgbm90IGltcGxlbWVudGVkIGVycm9yXG4gKi9cbmV4cG9ydCBjb25zdCBub3RJbXBsZW1lbnRlZCA9ICgpID0+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpO1xufTtcbi8qKlxuICogTWVtb2l6ZXMgKGNhY2hlcykgY29tcHV0YXRpb24gcmVzdWx0LlxuICogVXNlcyBXZWFrTWFwOiB0aGUgdmFsdWUgaXMgZ29pbmcgYXV0by1jbGVhbmVkIGJ5IEdDIGFmdGVyIGxhc3QgcmVmZXJlbmNlIGlzIHJlbW92ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtZW1vaXplZChmbikge1xuICAgIGNvbnN0IG1hcCA9IG5ldyBXZWFrTWFwKCk7XG4gICAgcmV0dXJuIChhcmcsIC4uLmFyZ3MpID0+IHtcbiAgICAgICAgY29uc3QgdmFsID0gbWFwLmdldChhcmcpO1xuICAgICAgICBpZiAodmFsICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgICBjb25zdCBjb21wdXRlZCA9IGZuKGFyZywgLi4uYXJncyk7XG4gICAgICAgIG1hcC5zZXQoYXJnLCBjb21wdXRlZCk7XG4gICAgICAgIHJldHVybiBjb21wdXRlZDtcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXRpbHMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/weierstrass.js": /*!**********************************************************************************!*\ !*** ./node_modules/viem/node_modules/@noble/curves/esm/abstract/weierstrass.js ***! \**********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DER: () => (/* binding */ DER),\n/* harmony export */ DERErr: () => (/* binding */ DERErr),\n/* harmony export */ SWUFpSqrtRatio: () => (/* binding */ SWUFpSqrtRatio),\n/* harmony export */ mapToCurveSimpleSWU: () => (/* binding */ mapToCurveSimpleSWU),\n/* harmony export */ weierstrass: () => (/* binding */ weierstrass),\n/* harmony export */ weierstrassPoints: () => (/* binding */ weierstrassPoints)\n/* harmony export */ });\n/* harmony import */ var _curve_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./curve.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/curve.js\");\n/* harmony import */ var _modular_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modular.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/modular.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\");\n/**\n * Short Weierstrass curve methods. The formula is: y² = x³ + ax + b.\n *\n * ### Parameters\n *\n * To initialize a weierstrass curve, one needs to pass following params:\n *\n * * a: formula param\n * * b: formula param\n * * Fp: finite field of prime characteristic P; may be complex (Fp2). Arithmetics is done in field\n * * n: order of prime subgroup a.k.a total amount of valid curve points\n * * Gx: Base point (x, y) aka generator point. Gx = x coordinate\n * * Gy: ...y coordinate\n * * h: cofactor, usually 1. h*n = curve group order (n is only subgroup order)\n * * lowS: whether to enable (default) or disable \"low-s\" non-malleable signatures\n *\n * ### Design rationale for types\n *\n * * Interaction between classes from different curves should fail:\n * `k256.Point.BASE.add(p256.Point.BASE)`\n * * For this purpose we want to use `instanceof` operator, which is fast and works during runtime\n * * Different calls of `curve()` would return different classes -\n * `curve(params) !== curve(params)`: if somebody decided to monkey-patch their curve,\n * it won't affect others\n *\n * TypeScript can't infer types for classes created inside a function. Classes is one instance\n * of nominative types in TypeScript and interfaces only check for shape, so it's hard to create\n * unique type for every function call.\n *\n * We can use generic types via some param, like curve opts, but that would:\n * 1. Enable interaction between `curve(params)` and `curve(params)` (curves of same params)\n * which is hard to debug.\n * 2. Params can be generic and we can't enforce them to be constant value:\n * if somebody creates curve from non-constant params,\n * it would be allowed to interact with other curves with non-constant params\n *\n * @todo https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-7.html#unique-symbol\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// prettier-ignore\n\n// prettier-ignore\n\n// prettier-ignore\n\nfunction validateSigVerOpts(opts) {\n if (opts.lowS !== undefined)\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abool)('lowS', opts.lowS);\n if (opts.prehash !== undefined)\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abool)('prehash', opts.prehash);\n}\nfunction validatePointOpts(curve) {\n const opts = (0,_curve_js__WEBPACK_IMPORTED_MODULE_1__.validateBasic)(curve);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.validateObject)(opts, {\n a: 'field',\n b: 'field',\n }, {\n allowInfinityPoint: 'boolean',\n allowedPrivateKeyLengths: 'array',\n clearCofactor: 'function',\n fromBytes: 'function',\n isTorsionFree: 'function',\n toBytes: 'function',\n wrapPrivateKey: 'boolean',\n });\n const { endo, Fp, a } = opts;\n if (endo) {\n if (!Fp.eql(a, Fp.ZERO)) {\n throw new Error('invalid endo: CURVE.a must be 0');\n }\n if (typeof endo !== 'object' ||\n typeof endo.beta !== 'bigint' ||\n typeof endo.splitScalar !== 'function') {\n throw new Error('invalid endo: expected \"beta\": bigint and \"splitScalar\": function');\n }\n }\n return Object.freeze({ ...opts });\n}\nclass DERErr extends Error {\n constructor(m = '') {\n super(m);\n }\n}\n/**\n * ASN.1 DER encoding utilities. ASN is very complex & fragile. Format:\n *\n * [0x30 (SEQUENCE), bytelength, 0x02 (INTEGER), intLength, R, 0x02 (INTEGER), intLength, S]\n *\n * Docs: https://letsencrypt.org/docs/a-warm-welcome-to-asn1-and-der/, https://luca.ntop.org/Teaching/Appunti/asn1.html\n */\nconst DER = {\n // asn.1 DER encoding utils\n Err: DERErr,\n // Basic building block is TLV (Tag-Length-Value)\n _tlv: {\n encode: (tag, data) => {\n const { Err: E } = DER;\n if (tag < 0 || tag > 256)\n throw new E('tlv.encode: wrong tag');\n if (data.length & 1)\n throw new E('tlv.encode: unpadded data');\n const dataLen = data.length / 2;\n const len = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToHexUnpadded)(dataLen);\n if ((len.length / 2) & 128)\n throw new E('tlv.encode: long form length too big');\n // length of length with long form flag\n const lenLen = dataLen > 127 ? (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToHexUnpadded)((len.length / 2) | 128) : '';\n const t = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToHexUnpadded)(tag);\n return t + lenLen + len + data;\n },\n // v - value, l - left bytes (unparsed)\n decode(tag, data) {\n const { Err: E } = DER;\n let pos = 0;\n if (tag < 0 || tag > 256)\n throw new E('tlv.encode: wrong tag');\n if (data.length < 2 || data[pos++] !== tag)\n throw new E('tlv.decode: wrong tlv');\n const first = data[pos++];\n const isLong = !!(first & 128); // First bit of first length byte is flag for short/long form\n let length = 0;\n if (!isLong)\n length = first;\n else {\n // Long form: [longFlag(1bit), lengthLength(7bit), length (BE)]\n const lenLen = first & 127;\n if (!lenLen)\n throw new E('tlv.decode(long): indefinite length not supported');\n if (lenLen > 4)\n throw new E('tlv.decode(long): byte length is too big'); // this will overflow u32 in js\n const lengthBytes = data.subarray(pos, pos + lenLen);\n if (lengthBytes.length !== lenLen)\n throw new E('tlv.decode: length bytes not complete');\n if (lengthBytes[0] === 0)\n throw new E('tlv.decode(long): zero leftmost byte');\n for (const b of lengthBytes)\n length = (length << 8) | b;\n pos += lenLen;\n if (length < 128)\n throw new E('tlv.decode(long): not minimal encoding');\n }\n const v = data.subarray(pos, pos + length);\n if (v.length !== length)\n throw new E('tlv.decode: wrong value length');\n return { v, l: data.subarray(pos + length) };\n },\n },\n // https://crypto.stackexchange.com/a/57734 Leftmost bit of first byte is 'negative' flag,\n // since we always use positive integers here. It must always be empty:\n // - add zero byte if exists\n // - if next byte doesn't have a flag, leading zero is not allowed (minimal encoding)\n _int: {\n encode(num) {\n const { Err: E } = DER;\n if (num < _0n)\n throw new E('integer: negative integers are not allowed');\n let hex = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToHexUnpadded)(num);\n // Pad with zero byte if negative flag is present\n if (Number.parseInt(hex[0], 16) & 0b1000)\n hex = '00' + hex;\n if (hex.length & 1)\n throw new E('unexpected DER parsing assertion: unpadded hex');\n return hex;\n },\n decode(data) {\n const { Err: E } = DER;\n if (data[0] & 128)\n throw new E('invalid signature integer: negative');\n if (data[0] === 0x00 && !(data[1] & 128))\n throw new E('invalid signature integer: unnecessary leading zero');\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)(data);\n },\n },\n toSig(hex) {\n // parse DER signature\n const { Err: E, _int: int, _tlv: tlv } = DER;\n const data = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('signature', hex);\n const { v: seqBytes, l: seqLeftBytes } = tlv.decode(0x30, data);\n if (seqLeftBytes.length)\n throw new E('invalid signature: left bytes after parsing');\n const { v: rBytes, l: rLeftBytes } = tlv.decode(0x02, seqBytes);\n const { v: sBytes, l: sLeftBytes } = tlv.decode(0x02, rLeftBytes);\n if (sLeftBytes.length)\n throw new E('invalid signature: left bytes after parsing');\n return { r: int.decode(rBytes), s: int.decode(sBytes) };\n },\n hexFromSig(sig) {\n const { _tlv: tlv, _int: int } = DER;\n const rs = tlv.encode(0x02, int.encode(sig.r));\n const ss = tlv.encode(0x02, int.encode(sig.s));\n const seq = rs + ss;\n return tlv.encode(0x30, seq);\n },\n};\nfunction numToSizedHex(num, size) {\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToBytesBE)(num, size));\n}\n// Be friendly to bad ECMAScript parsers by not using bigint literals\n// prettier-ignore\nconst _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2), _3n = BigInt(3), _4n = BigInt(4);\nfunction weierstrassPoints(opts) {\n const CURVE = validatePointOpts(opts);\n const { Fp } = CURVE; // All curves has same field / group length as for now, but they can differ\n const Fn = (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.Field)(CURVE.n, CURVE.nBitLength);\n const toBytes = CURVE.toBytes ||\n ((_c, point, _isCompressed) => {\n const a = point.toAffine();\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)(Uint8Array.from([0x04]), Fp.toBytes(a.x), Fp.toBytes(a.y));\n });\n const fromBytes = CURVE.fromBytes ||\n ((bytes) => {\n // const head = bytes[0];\n const tail = bytes.subarray(1);\n // if (head !== 0x04) throw new Error('Only non-compressed encoding is supported');\n const x = Fp.fromBytes(tail.subarray(0, Fp.BYTES));\n const y = Fp.fromBytes(tail.subarray(Fp.BYTES, 2 * Fp.BYTES));\n return { x, y };\n });\n /**\n * y² = x³ + ax + b: Short weierstrass curve formula. Takes x, returns y².\n * @returns y²\n */\n function weierstrassEquation(x) {\n const { a, b } = CURVE;\n const x2 = Fp.sqr(x); // x * x\n const x3 = Fp.mul(x2, x); // x² * x\n return Fp.add(Fp.add(x3, Fp.mul(x, a)), b); // x³ + a * x + b\n }\n function isValidXY(x, y) {\n const left = Fp.sqr(y); // y²\n const right = weierstrassEquation(x); // x³ + ax + b\n return Fp.eql(left, right);\n }\n // Validate whether the passed curve params are valid.\n // Test 1: equation y² = x³ + ax + b should work for generator point.\n if (!isValidXY(CURVE.Gx, CURVE.Gy))\n throw new Error('bad curve params: generator point');\n // Test 2: discriminant Δ part should be non-zero: 4a³ + 27b² != 0.\n // Guarantees curve is genus-1, smooth (non-singular).\n const _4a3 = Fp.mul(Fp.pow(CURVE.a, _3n), _4n);\n const _27b2 = Fp.mul(Fp.sqr(CURVE.b), BigInt(27));\n if (Fp.is0(Fp.add(_4a3, _27b2)))\n throw new Error('bad curve params: a or b');\n // Valid group elements reside in range 1..n-1\n function isWithinCurveOrder(num) {\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.inRange)(num, _1n, CURVE.n);\n }\n // Validates if priv key is valid and converts it to bigint.\n // Supports options allowedPrivateKeyLengths and wrapPrivateKey.\n function normPrivateKeyToScalar(key) {\n const { allowedPrivateKeyLengths: lengths, nByteLength, wrapPrivateKey, n: N } = CURVE;\n if (lengths && typeof key !== 'bigint') {\n if ((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.isBytes)(key))\n key = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(key);\n // Normalize to hex string, pad. E.g. P521 would norm 130-132 char hex to 132-char bytes\n if (typeof key !== 'string' || !lengths.includes(key.length))\n throw new Error('invalid private key');\n key = key.padStart(nByteLength * 2, '0');\n }\n let num;\n try {\n num =\n typeof key === 'bigint'\n ? key\n : (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('private key', key, nByteLength));\n }\n catch (error) {\n throw new Error('invalid private key, expected hex or ' + nByteLength + ' bytes, got ' + typeof key);\n }\n if (wrapPrivateKey)\n num = (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.mod)(num, N); // disabled by default, enabled for BLS\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aInRange)('private key', num, _1n, N); // num in range [1..N-1]\n return num;\n }\n function aprjpoint(other) {\n if (!(other instanceof Point))\n throw new Error('ProjectivePoint expected');\n }\n // Memoized toAffine / validity check. They are heavy. Points are immutable.\n // Converts Projective point to affine (x, y) coordinates.\n // Can accept precomputed Z^-1 - for example, from invertBatch.\n // (X, Y, Z) ∋ (x=X/Z, y=Y/Z)\n const toAffineMemo = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.memoized)((p, iz) => {\n const { px: x, py: y, pz: z } = p;\n // Fast-path for normalized points\n if (Fp.eql(z, Fp.ONE))\n return { x, y };\n const is0 = p.is0();\n // If invZ was 0, we return zero point. However we still want to execute\n // all operations, so we replace invZ with a random number, 1.\n if (iz == null)\n iz = is0 ? Fp.ONE : Fp.inv(z);\n const ax = Fp.mul(x, iz);\n const ay = Fp.mul(y, iz);\n const zz = Fp.mul(z, iz);\n if (is0)\n return { x: Fp.ZERO, y: Fp.ZERO };\n if (!Fp.eql(zz, Fp.ONE))\n throw new Error('invZ was invalid');\n return { x: ax, y: ay };\n });\n // NOTE: on exception this will crash 'cached' and no value will be set.\n // Otherwise true will be return\n const assertValidMemo = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.memoized)((p) => {\n if (p.is0()) {\n // (0, 1, 0) aka ZERO is invalid in most contexts.\n // In BLS, ZERO can be serialized, so we allow it.\n // (0, 0, 0) is invalid representation of ZERO.\n if (CURVE.allowInfinityPoint && !Fp.is0(p.py))\n return;\n throw new Error('bad point: ZERO');\n }\n // Some 3rd-party test vectors require different wording between here & `fromCompressedHex`\n const { x, y } = p.toAffine();\n // Check if x, y are valid field elements\n if (!Fp.isValid(x) || !Fp.isValid(y))\n throw new Error('bad point: x or y not FE');\n if (!isValidXY(x, y))\n throw new Error('bad point: equation left != right');\n if (!p.isTorsionFree())\n throw new Error('bad point: not in prime-order subgroup');\n return true;\n });\n /**\n * Projective Point works in 3d / projective (homogeneous) coordinates: (X, Y, Z) ∋ (x=X/Z, y=Y/Z)\n * Default Point works in 2d / affine coordinates: (x, y)\n * We're doing calculations in projective, because its operations don't require costly inversion.\n */\n class Point {\n constructor(px, py, pz) {\n if (px == null || !Fp.isValid(px))\n throw new Error('x required');\n if (py == null || !Fp.isValid(py) || Fp.is0(py))\n throw new Error('y required');\n if (pz == null || !Fp.isValid(pz))\n throw new Error('z required');\n this.px = px;\n this.py = py;\n this.pz = pz;\n Object.freeze(this);\n }\n // Does not validate if the point is on-curve.\n // Use fromHex instead, or call assertValidity() later.\n static fromAffine(p) {\n const { x, y } = p || {};\n if (!p || !Fp.isValid(x) || !Fp.isValid(y))\n throw new Error('invalid affine point');\n if (p instanceof Point)\n throw new Error('projective point not allowed');\n const is0 = (i) => Fp.eql(i, Fp.ZERO);\n // fromAffine(x:0, y:0) would produce (x:0, y:0, z:1), but we need (x:0, y:1, z:0)\n if (is0(x) && is0(y))\n return Point.ZERO;\n return new Point(x, y, Fp.ONE);\n }\n get x() {\n return this.toAffine().x;\n }\n get y() {\n return this.toAffine().y;\n }\n /**\n * Takes a bunch of Projective Points but executes only one\n * inversion on all of them. Inversion is very slow operation,\n * so this improves performance massively.\n * Optimization: converts a list of projective points to a list of identical points with Z=1.\n */\n static normalizeZ(points) {\n const toInv = (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.FpInvertBatch)(Fp, points.map((p) => p.pz));\n return points.map((p, i) => p.toAffine(toInv[i])).map(Point.fromAffine);\n }\n /**\n * Converts hash string or Uint8Array to Point.\n * @param hex short/long ECDSA hex\n */\n static fromHex(hex) {\n const P = Point.fromAffine(fromBytes((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('pointHex', hex)));\n P.assertValidity();\n return P;\n }\n // Multiplies generator point by privateKey.\n static fromPrivateKey(privateKey) {\n return Point.BASE.multiply(normPrivateKeyToScalar(privateKey));\n }\n // Multiscalar Multiplication\n static msm(points, scalars) {\n return (0,_curve_js__WEBPACK_IMPORTED_MODULE_1__.pippenger)(Point, Fn, points, scalars);\n }\n // \"Private method\", don't use it directly\n _setWindowSize(windowSize) {\n wnaf.setWindowSize(this, windowSize);\n }\n // A point on curve is valid if it conforms to equation.\n assertValidity() {\n assertValidMemo(this);\n }\n hasEvenY() {\n const { y } = this.toAffine();\n if (Fp.isOdd)\n return !Fp.isOdd(y);\n throw new Error(\"Field doesn't support isOdd\");\n }\n /**\n * Compare one point to another.\n */\n equals(other) {\n aprjpoint(other);\n const { px: X1, py: Y1, pz: Z1 } = this;\n const { px: X2, py: Y2, pz: Z2 } = other;\n const U1 = Fp.eql(Fp.mul(X1, Z2), Fp.mul(X2, Z1));\n const U2 = Fp.eql(Fp.mul(Y1, Z2), Fp.mul(Y2, Z1));\n return U1 && U2;\n }\n /**\n * Flips point to one corresponding to (x, -y) in Affine coordinates.\n */\n negate() {\n return new Point(this.px, Fp.neg(this.py), this.pz);\n }\n // Renes-Costello-Batina exception-free doubling formula.\n // There is 30% faster Jacobian formula, but it is not complete.\n // https://eprint.iacr.org/2015/1060, algorithm 3\n // Cost: 8M + 3S + 3*a + 2*b3 + 15add.\n double() {\n const { a, b } = CURVE;\n const b3 = Fp.mul(b, _3n);\n const { px: X1, py: Y1, pz: Z1 } = this;\n let X3 = Fp.ZERO, Y3 = Fp.ZERO, Z3 = Fp.ZERO; // prettier-ignore\n let t0 = Fp.mul(X1, X1); // step 1\n let t1 = Fp.mul(Y1, Y1);\n let t2 = Fp.mul(Z1, Z1);\n let t3 = Fp.mul(X1, Y1);\n t3 = Fp.add(t3, t3); // step 5\n Z3 = Fp.mul(X1, Z1);\n Z3 = Fp.add(Z3, Z3);\n X3 = Fp.mul(a, Z3);\n Y3 = Fp.mul(b3, t2);\n Y3 = Fp.add(X3, Y3); // step 10\n X3 = Fp.sub(t1, Y3);\n Y3 = Fp.add(t1, Y3);\n Y3 = Fp.mul(X3, Y3);\n X3 = Fp.mul(t3, X3);\n Z3 = Fp.mul(b3, Z3); // step 15\n t2 = Fp.mul(a, t2);\n t3 = Fp.sub(t0, t2);\n t3 = Fp.mul(a, t3);\n t3 = Fp.add(t3, Z3);\n Z3 = Fp.add(t0, t0); // step 20\n t0 = Fp.add(Z3, t0);\n t0 = Fp.add(t0, t2);\n t0 = Fp.mul(t0, t3);\n Y3 = Fp.add(Y3, t0);\n t2 = Fp.mul(Y1, Z1); // step 25\n t2 = Fp.add(t2, t2);\n t0 = Fp.mul(t2, t3);\n X3 = Fp.sub(X3, t0);\n Z3 = Fp.mul(t2, t1);\n Z3 = Fp.add(Z3, Z3); // step 30\n Z3 = Fp.add(Z3, Z3);\n return new Point(X3, Y3, Z3);\n }\n // Renes-Costello-Batina exception-free addition formula.\n // There is 30% faster Jacobian formula, but it is not complete.\n // https://eprint.iacr.org/2015/1060, algorithm 1\n // Cost: 12M + 0S + 3*a + 3*b3 + 23add.\n add(other) {\n aprjpoint(other);\n const { px: X1, py: Y1, pz: Z1 } = this;\n const { px: X2, py: Y2, pz: Z2 } = other;\n let X3 = Fp.ZERO, Y3 = Fp.ZERO, Z3 = Fp.ZERO; // prettier-ignore\n const a = CURVE.a;\n const b3 = Fp.mul(CURVE.b, _3n);\n let t0 = Fp.mul(X1, X2); // step 1\n let t1 = Fp.mul(Y1, Y2);\n let t2 = Fp.mul(Z1, Z2);\n let t3 = Fp.add(X1, Y1);\n let t4 = Fp.add(X2, Y2); // step 5\n t3 = Fp.mul(t3, t4);\n t4 = Fp.add(t0, t1);\n t3 = Fp.sub(t3, t4);\n t4 = Fp.add(X1, Z1);\n let t5 = Fp.add(X2, Z2); // step 10\n t4 = Fp.mul(t4, t5);\n t5 = Fp.add(t0, t2);\n t4 = Fp.sub(t4, t5);\n t5 = Fp.add(Y1, Z1);\n X3 = Fp.add(Y2, Z2); // step 15\n t5 = Fp.mul(t5, X3);\n X3 = Fp.add(t1, t2);\n t5 = Fp.sub(t5, X3);\n Z3 = Fp.mul(a, t4);\n X3 = Fp.mul(b3, t2); // step 20\n Z3 = Fp.add(X3, Z3);\n X3 = Fp.sub(t1, Z3);\n Z3 = Fp.add(t1, Z3);\n Y3 = Fp.mul(X3, Z3);\n t1 = Fp.add(t0, t0); // step 25\n t1 = Fp.add(t1, t0);\n t2 = Fp.mul(a, t2);\n t4 = Fp.mul(b3, t4);\n t1 = Fp.add(t1, t2);\n t2 = Fp.sub(t0, t2); // step 30\n t2 = Fp.mul(a, t2);\n t4 = Fp.add(t4, t2);\n t0 = Fp.mul(t1, t4);\n Y3 = Fp.add(Y3, t0);\n t0 = Fp.mul(t5, t4); // step 35\n X3 = Fp.mul(t3, X3);\n X3 = Fp.sub(X3, t0);\n t0 = Fp.mul(t3, t1);\n Z3 = Fp.mul(t5, Z3);\n Z3 = Fp.add(Z3, t0); // step 40\n return new Point(X3, Y3, Z3);\n }\n subtract(other) {\n return this.add(other.negate());\n }\n is0() {\n return this.equals(Point.ZERO);\n }\n wNAF(n) {\n return wnaf.wNAFCached(this, n, Point.normalizeZ);\n }\n /**\n * Non-constant-time multiplication. Uses double-and-add algorithm.\n * It's faster, but should only be used when you don't care about\n * an exposed private key e.g. sig verification, which works over *public* keys.\n */\n multiplyUnsafe(sc) {\n const { endo, n: N } = CURVE;\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aInRange)('scalar', sc, _0n, N);\n const I = Point.ZERO;\n if (sc === _0n)\n return I;\n if (this.is0() || sc === _1n)\n return this;\n // Case a: no endomorphism. Case b: has precomputes.\n if (!endo || wnaf.hasPrecomputes(this))\n return wnaf.wNAFCachedUnsafe(this, sc, Point.normalizeZ);\n // Case c: endomorphism\n /** See docs for {@link EndomorphismOpts} */\n let { k1neg, k1, k2neg, k2 } = endo.splitScalar(sc);\n let k1p = I;\n let k2p = I;\n let d = this;\n while (k1 > _0n || k2 > _0n) {\n if (k1 & _1n)\n k1p = k1p.add(d);\n if (k2 & _1n)\n k2p = k2p.add(d);\n d = d.double();\n k1 >>= _1n;\n k2 >>= _1n;\n }\n if (k1neg)\n k1p = k1p.negate();\n if (k2neg)\n k2p = k2p.negate();\n k2p = new Point(Fp.mul(k2p.px, endo.beta), k2p.py, k2p.pz);\n return k1p.add(k2p);\n }\n /**\n * Constant time multiplication.\n * Uses wNAF method. Windowed method may be 10% faster,\n * but takes 2x longer to generate and consumes 2x memory.\n * Uses precomputes when available.\n * Uses endomorphism for Koblitz curves.\n * @param scalar by which the point would be multiplied\n * @returns New point\n */\n multiply(scalar) {\n const { endo, n: N } = CURVE;\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aInRange)('scalar', scalar, _1n, N);\n let point, fake; // Fake point is used to const-time mult\n /** See docs for {@link EndomorphismOpts} */\n if (endo) {\n const { k1neg, k1, k2neg, k2 } = endo.splitScalar(scalar);\n let { p: k1p, f: f1p } = this.wNAF(k1);\n let { p: k2p, f: f2p } = this.wNAF(k2);\n k1p = wnaf.constTimeNegate(k1neg, k1p);\n k2p = wnaf.constTimeNegate(k2neg, k2p);\n k2p = new Point(Fp.mul(k2p.px, endo.beta), k2p.py, k2p.pz);\n point = k1p.add(k2p);\n fake = f1p.add(f2p);\n }\n else {\n const { p, f } = this.wNAF(scalar);\n point = p;\n fake = f;\n }\n // Normalize `z` for both points, but return only real one\n return Point.normalizeZ([point, fake])[0];\n }\n /**\n * Efficiently calculate `aP + bQ`. Unsafe, can expose private key, if used incorrectly.\n * Not using Strauss-Shamir trick: precomputation tables are faster.\n * The trick could be useful if both P and Q are not G (not in our case).\n * @returns non-zero affine point\n */\n multiplyAndAddUnsafe(Q, a, b) {\n const G = Point.BASE; // No Strauss-Shamir trick: we have 10% faster G precomputes\n const mul = (P, a // Select faster multiply() method\n ) => (a === _0n || a === _1n || !P.equals(G) ? P.multiplyUnsafe(a) : P.multiply(a));\n const sum = mul(this, a).add(mul(Q, b));\n return sum.is0() ? undefined : sum;\n }\n // Converts Projective point to affine (x, y) coordinates.\n // Can accept precomputed Z^-1 - for example, from invertBatch.\n // (x, y, z) ∋ (x=x/z, y=y/z)\n toAffine(iz) {\n return toAffineMemo(this, iz);\n }\n isTorsionFree() {\n const { h: cofactor, isTorsionFree } = CURVE;\n if (cofactor === _1n)\n return true; // No subgroups, always torsion-free\n if (isTorsionFree)\n return isTorsionFree(Point, this);\n throw new Error('isTorsionFree() has not been declared for the elliptic curve');\n }\n clearCofactor() {\n const { h: cofactor, clearCofactor } = CURVE;\n if (cofactor === _1n)\n return this; // Fast-path\n if (clearCofactor)\n return clearCofactor(Point, this);\n return this.multiplyUnsafe(CURVE.h);\n }\n toRawBytes(isCompressed = true) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abool)('isCompressed', isCompressed);\n this.assertValidity();\n return toBytes(Point, this, isCompressed);\n }\n toHex(isCompressed = true) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abool)('isCompressed', isCompressed);\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToHex)(this.toRawBytes(isCompressed));\n }\n }\n // base / generator point\n Point.BASE = new Point(CURVE.Gx, CURVE.Gy, Fp.ONE);\n // zero / infinity / identity point\n Point.ZERO = new Point(Fp.ZERO, Fp.ONE, Fp.ZERO); // 0, 1, 0\n const { endo, nBitLength } = CURVE;\n const wnaf = (0,_curve_js__WEBPACK_IMPORTED_MODULE_1__.wNAF)(Point, endo ? Math.ceil(nBitLength / 2) : nBitLength);\n return {\n CURVE,\n ProjectivePoint: Point,\n normPrivateKeyToScalar,\n weierstrassEquation,\n isWithinCurveOrder,\n };\n}\nfunction validateOpts(curve) {\n const opts = (0,_curve_js__WEBPACK_IMPORTED_MODULE_1__.validateBasic)(curve);\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.validateObject)(opts, {\n hash: 'hash',\n hmac: 'function',\n randomBytes: 'function',\n }, {\n bits2int: 'function',\n bits2int_modN: 'function',\n lowS: 'boolean',\n });\n return Object.freeze({ lowS: true, ...opts });\n}\n/**\n * Creates short weierstrass curve and ECDSA signature methods for it.\n * @example\n * import { Field } from '@noble/curves/abstract/modular';\n * // Before that, define BigInt-s: a, b, p, n, Gx, Gy\n * const curve = weierstrass({ a, b, Fp: Field(p), n, Gx, Gy, h: 1n })\n */\nfunction weierstrass(curveDef) {\n const CURVE = validateOpts(curveDef);\n const { Fp, n: CURVE_ORDER, nByteLength, nBitLength } = CURVE;\n const compressedLen = Fp.BYTES + 1; // e.g. 33 for 32\n const uncompressedLen = 2 * Fp.BYTES + 1; // e.g. 65 for 32\n function modN(a) {\n return (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.mod)(a, CURVE_ORDER);\n }\n function invN(a) {\n return (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.invert)(a, CURVE_ORDER);\n }\n const { ProjectivePoint: Point, normPrivateKeyToScalar, weierstrassEquation, isWithinCurveOrder, } = weierstrassPoints({\n ...CURVE,\n toBytes(_c, point, isCompressed) {\n const a = point.toAffine();\n const x = Fp.toBytes(a.x);\n const cat = _utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes;\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.abool)('isCompressed', isCompressed);\n if (isCompressed) {\n return cat(Uint8Array.from([point.hasEvenY() ? 0x02 : 0x03]), x);\n }\n else {\n return cat(Uint8Array.from([0x04]), x, Fp.toBytes(a.y));\n }\n },\n fromBytes(bytes) {\n const len = bytes.length;\n const head = bytes[0];\n const tail = bytes.subarray(1);\n // this.assertValidity() is done inside of fromHex\n if (len === compressedLen && (head === 0x02 || head === 0x03)) {\n const x = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)(tail);\n if (!(0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.inRange)(x, _1n, Fp.ORDER))\n throw new Error('Point is not on curve');\n const y2 = weierstrassEquation(x); // y² = x³ + ax + b\n let y;\n try {\n y = Fp.sqrt(y2); // y = y² ^ (p+1)/4\n }\n catch (sqrtError) {\n const suffix = sqrtError instanceof Error ? ': ' + sqrtError.message : '';\n throw new Error('Point is not on curve' + suffix);\n }\n const isYOdd = (y & _1n) === _1n;\n // ECDSA\n const isHeadOdd = (head & 1) === 1;\n if (isHeadOdd !== isYOdd)\n y = Fp.neg(y);\n return { x, y };\n }\n else if (len === uncompressedLen && head === 0x04) {\n const x = Fp.fromBytes(tail.subarray(0, Fp.BYTES));\n const y = Fp.fromBytes(tail.subarray(Fp.BYTES, 2 * Fp.BYTES));\n return { x, y };\n }\n else {\n const cl = compressedLen;\n const ul = uncompressedLen;\n throw new Error('invalid Point, expected length of ' + cl + ', or uncompressed ' + ul + ', got ' + len);\n }\n },\n });\n function isBiggerThanHalfOrder(number) {\n const HALF = CURVE_ORDER >> _1n;\n return number > HALF;\n }\n function normalizeS(s) {\n return isBiggerThanHalfOrder(s) ? modN(-s) : s;\n }\n // slice bytes num\n const slcNum = (b, from, to) => (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)(b.slice(from, to));\n /**\n * ECDSA signature with its (r, s) properties. Supports DER & compact representations.\n */\n class Signature {\n constructor(r, s, recovery) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aInRange)('r', r, _1n, CURVE_ORDER); // r in [1..N]\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aInRange)('s', s, _1n, CURVE_ORDER); // s in [1..N]\n this.r = r;\n this.s = s;\n if (recovery != null)\n this.recovery = recovery;\n Object.freeze(this);\n }\n // pair (bytes of r, bytes of s)\n static fromCompact(hex) {\n const l = nByteLength;\n hex = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('compactSignature', hex, l * 2);\n return new Signature(slcNum(hex, 0, l), slcNum(hex, l, 2 * l));\n }\n // DER encoded ECDSA signature\n // https://bitcoin.stackexchange.com/questions/57644/what-are-the-parts-of-a-bitcoin-transaction-input-script\n static fromDER(hex) {\n const { r, s } = DER.toSig((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('DER', hex));\n return new Signature(r, s);\n }\n /**\n * @todo remove\n * @deprecated\n */\n assertValidity() { }\n addRecoveryBit(recovery) {\n return new Signature(this.r, this.s, recovery);\n }\n recoverPublicKey(msgHash) {\n const { r, s, recovery: rec } = this;\n const h = bits2int_modN((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('msgHash', msgHash)); // Truncate hash\n if (rec == null || ![0, 1, 2, 3].includes(rec))\n throw new Error('recovery id invalid');\n const radj = rec === 2 || rec === 3 ? r + CURVE.n : r;\n if (radj >= Fp.ORDER)\n throw new Error('recovery id 2 or 3 invalid');\n const prefix = (rec & 1) === 0 ? '02' : '03';\n const R = Point.fromHex(prefix + numToSizedHex(radj, Fp.BYTES));\n const ir = invN(radj); // r^-1\n const u1 = modN(-h * ir); // -hr^-1\n const u2 = modN(s * ir); // sr^-1\n const Q = Point.BASE.multiplyAndAddUnsafe(R, u1, u2); // (sr^-1)R-(hr^-1)G = -(hr^-1)G + (sr^-1)\n if (!Q)\n throw new Error('point at infinify'); // unsafe is fine: no priv data leaked\n Q.assertValidity();\n return Q;\n }\n // Signatures should be low-s, to prevent malleability.\n hasHighS() {\n return isBiggerThanHalfOrder(this.s);\n }\n normalizeS() {\n return this.hasHighS() ? new Signature(this.r, modN(-this.s), this.recovery) : this;\n }\n // DER-encoded\n toDERRawBytes() {\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.hexToBytes)(this.toDERHex());\n }\n toDERHex() {\n return DER.hexFromSig(this);\n }\n // padded bytes of r, then padded bytes of s\n toCompactRawBytes() {\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.hexToBytes)(this.toCompactHex());\n }\n toCompactHex() {\n const l = nByteLength;\n return numToSizedHex(this.r, l) + numToSizedHex(this.s, l);\n }\n }\n const utils = {\n isValidPrivateKey(privateKey) {\n try {\n normPrivateKeyToScalar(privateKey);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n normPrivateKeyToScalar: normPrivateKeyToScalar,\n /**\n * Produces cryptographically secure private key from random of size\n * (groupLen + ceil(groupLen / 2)) with modulo bias being negligible.\n */\n randomPrivateKey: () => {\n const length = (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.getMinHashLength)(CURVE.n);\n return (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.mapHashToField)(CURVE.randomBytes(length), CURVE.n);\n },\n /**\n * Creates precompute table for an arbitrary EC point. Makes point \"cached\".\n * Allows to massively speed-up `point.multiply(scalar)`.\n * @returns cached point\n * @example\n * const fast = utils.precompute(8, ProjectivePoint.fromHex(someonesPubKey));\n * fast.multiply(privKey); // much faster ECDH now\n */\n precompute(windowSize = 8, point = Point.BASE) {\n point._setWindowSize(windowSize);\n point.multiply(BigInt(3)); // 3 is arbitrary, just need any number here\n return point;\n },\n };\n /**\n * Computes public key for a private key. Checks for validity of the private key.\n * @param privateKey private key\n * @param isCompressed whether to return compact (default), or full key\n * @returns Public key, full when isCompressed=false; short when isCompressed=true\n */\n function getPublicKey(privateKey, isCompressed = true) {\n return Point.fromPrivateKey(privateKey).toRawBytes(isCompressed);\n }\n /**\n * Quick and dirty check for item being public key. Does not validate hex, or being on-curve.\n */\n function isProbPub(item) {\n if (typeof item === 'bigint')\n return false;\n if (item instanceof Point)\n return true;\n const arr = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('key', item);\n const len = arr.length;\n const fpl = Fp.BYTES;\n const compLen = fpl + 1; // e.g. 33 for 32\n const uncompLen = 2 * fpl + 1; // e.g. 65 for 32\n if (CURVE.allowedPrivateKeyLengths || nByteLength === compLen) {\n return undefined;\n }\n else {\n return len === compLen || len === uncompLen;\n }\n }\n /**\n * ECDH (Elliptic Curve Diffie Hellman).\n * Computes shared public key from private key and public key.\n * Checks: 1) private key validity 2) shared key is on-curve.\n * Does NOT hash the result.\n * @param privateA private key\n * @param publicB different public key\n * @param isCompressed whether to return compact (default), or full key\n * @returns shared public key\n */\n function getSharedSecret(privateA, publicB, isCompressed = true) {\n if (isProbPub(privateA) === true)\n throw new Error('first arg must be private key');\n if (isProbPub(publicB) === false)\n throw new Error('second arg must be public key');\n const b = Point.fromHex(publicB); // check for being on-curve\n return b.multiply(normPrivateKeyToScalar(privateA)).toRawBytes(isCompressed);\n }\n // RFC6979: ensure ECDSA msg is X bytes and < N. RFC suggests optional truncating via bits2octets.\n // FIPS 186-4 4.6 suggests the leftmost min(nBitLen, outLen) bits, which matches bits2int.\n // bits2int can produce res>N, we can do mod(res, N) since the bitLen is the same.\n // int2octets can't be used; pads small msgs with 0: unacceptatble for trunc as per RFC vectors\n const bits2int = CURVE.bits2int ||\n function (bytes) {\n // Our custom check \"just in case\", for protection against DoS\n if (bytes.length > 8192)\n throw new Error('input is too large');\n // For curves with nBitLength % 8 !== 0: bits2octets(bits2octets(m)) !== bits2octets(m)\n // for some cases, since bytes.length * 8 is not actual bitLength.\n const num = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bytesToNumberBE)(bytes); // check for == u8 done here\n const delta = bytes.length * 8 - nBitLength; // truncate to nBitLength leftmost bits\n return delta > 0 ? num >> BigInt(delta) : num;\n };\n const bits2int_modN = CURVE.bits2int_modN ||\n function (bytes) {\n return modN(bits2int(bytes)); // can't use bytesToNumberBE here\n };\n // NOTE: pads output with zero as per spec\n const ORDER_MASK = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.bitMask)(nBitLength);\n /**\n * Converts to bytes. Checks if num in `[0..ORDER_MASK-1]` e.g.: `[0..2^256-1]`.\n */\n function int2octets(num) {\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.aInRange)('num < 2^' + nBitLength, num, _0n, ORDER_MASK);\n // works with order, can have different size than numToField!\n return (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.numberToBytesBE)(num, nByteLength);\n }\n // Steps A, D of RFC6979 3.2\n // Creates RFC6979 seed; converts msg/privKey to numbers.\n // Used only in sign, not in verify.\n // NOTE: we cannot assume here that msgHash has same amount of bytes as curve order,\n // this will be invalid at least for P521. Also it can be bigger for P224 + SHA256\n function prepSig(msgHash, privateKey, opts = defaultSigOpts) {\n if (['recovered', 'canonical'].some((k) => k in opts))\n throw new Error('sign() legacy options not supported');\n const { hash, randomBytes } = CURVE;\n let { lowS, prehash, extraEntropy: ent } = opts; // generates low-s sigs by default\n if (lowS == null)\n lowS = true; // RFC6979 3.2: we skip step A, because we already provide hash\n msgHash = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('msgHash', msgHash);\n validateSigVerOpts(opts);\n if (prehash)\n msgHash = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('prehashed msgHash', hash(msgHash));\n // We can't later call bits2octets, since nested bits2int is broken for curves\n // with nBitLength % 8 !== 0. Because of that, we unwrap it here as int2octets call.\n // const bits2octets = (bits) => int2octets(bits2int_modN(bits))\n const h1int = bits2int_modN(msgHash);\n const d = normPrivateKeyToScalar(privateKey); // validate private key, convert to bigint\n const seedArgs = [int2octets(d), int2octets(h1int)];\n // extraEntropy. RFC6979 3.6: additional k' (optional).\n if (ent != null && ent !== false) {\n // K = HMAC_K(V || 0x00 || int2octets(x) || bits2octets(h1) || k')\n const e = ent === true ? randomBytes(Fp.BYTES) : ent; // generate random bytes OR pass as-is\n seedArgs.push((0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('extraEntropy', e)); // check for being bytes\n }\n const seed = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.concatBytes)(...seedArgs); // Step D of RFC6979 3.2\n const m = h1int; // NOTE: no need to call bits2int second time here, it is inside truncateHash!\n // Converts signature params into point w r/s, checks result for validity.\n function k2sig(kBytes) {\n // RFC 6979 Section 3.2, step 3: k = bits2int(T)\n const k = bits2int(kBytes); // Cannot use fields methods, since it is group element\n if (!isWithinCurveOrder(k))\n return; // Important: all mod() calls here must be done over N\n const ik = invN(k); // k^-1 mod n\n const q = Point.BASE.multiply(k).toAffine(); // q = Gk\n const r = modN(q.x); // r = q.x mod n\n if (r === _0n)\n return;\n // Can use scalar blinding b^-1(bm + bdr) where b ∈ [1,q−1] according to\n // https://tches.iacr.org/index.php/TCHES/article/view/7337/6509. We've decided against it:\n // a) dependency on CSPRNG b) 15% slowdown c) doesn't really help since bigints are not CT\n const s = modN(ik * modN(m + r * d)); // Not using blinding here\n if (s === _0n)\n return;\n let recovery = (q.x === r ? 0 : 2) | Number(q.y & _1n); // recovery bit (2 or 3, when q.x > n)\n let normS = s;\n if (lowS && isBiggerThanHalfOrder(s)) {\n normS = normalizeS(s); // if lowS was passed, ensure s is always\n recovery ^= 1; // // in the bottom half of N\n }\n return new Signature(r, normS, recovery); // use normS, not s\n }\n return { seed, k2sig };\n }\n const defaultSigOpts = { lowS: CURVE.lowS, prehash: false };\n const defaultVerOpts = { lowS: CURVE.lowS, prehash: false };\n /**\n * Signs message hash with a private key.\n * ```\n * sign(m, d, k) where\n * (x, y) = G × k\n * r = x mod n\n * s = (m + dr)/k mod n\n * ```\n * @param msgHash NOT message. msg needs to be hashed to `msgHash`, or use `prehash`.\n * @param privKey private key\n * @param opts lowS for non-malleable sigs. extraEntropy for mixing randomness into k. prehash will hash first arg.\n * @returns signature with recovery param\n */\n function sign(msgHash, privKey, opts = defaultSigOpts) {\n const { seed, k2sig } = prepSig(msgHash, privKey, opts); // Steps A, D of RFC6979 3.2.\n const C = CURVE;\n const drbg = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.createHmacDrbg)(C.hash.outputLen, C.nByteLength, C.hmac);\n return drbg(seed, k2sig); // Steps B, C, D, E, F, G\n }\n // Enable precomputes. Slows down first publicKey computation by 20ms.\n Point.BASE._setWindowSize(8);\n // utils.precompute(8, ProjectivePoint.BASE)\n /**\n * Verifies a signature against message hash and public key.\n * Rejects lowS signatures by default: to override,\n * specify option `{lowS: false}`. Implements section 4.1.4 from https://www.secg.org/sec1-v2.pdf:\n *\n * ```\n * verify(r, s, h, P) where\n * U1 = hs^-1 mod n\n * U2 = rs^-1 mod n\n * R = U1⋅G - U2⋅P\n * mod(R.x, n) == r\n * ```\n */\n function verify(signature, msgHash, publicKey, opts = defaultVerOpts) {\n const sg = signature;\n msgHash = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('msgHash', msgHash);\n publicKey = (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.ensureBytes)('publicKey', publicKey);\n const { lowS, prehash, format } = opts;\n // Verify opts, deduce signature format\n validateSigVerOpts(opts);\n if ('strict' in opts)\n throw new Error('options.strict was renamed to lowS');\n if (format !== undefined && format !== 'compact' && format !== 'der')\n throw new Error('format must be compact or der');\n const isHex = typeof sg === 'string' || (0,_utils_js__WEBPACK_IMPORTED_MODULE_0__.isBytes)(sg);\n const isObj = !isHex &&\n !format &&\n typeof sg === 'object' &&\n sg !== null &&\n typeof sg.r === 'bigint' &&\n typeof sg.s === 'bigint';\n if (!isHex && !isObj)\n throw new Error('invalid signature, expected Uint8Array, hex string or Signature instance');\n let _sig = undefined;\n let P;\n try {\n if (isObj)\n _sig = new Signature(sg.r, sg.s);\n if (isHex) {\n // Signature can be represented in 2 ways: compact (2*nByteLength) & DER (variable-length).\n // Since DER can also be 2*nByteLength bytes, we check for it first.\n try {\n if (format !== 'compact')\n _sig = Signature.fromDER(sg);\n }\n catch (derError) {\n if (!(derError instanceof DER.Err))\n throw derError;\n }\n if (!_sig && format !== 'der')\n _sig = Signature.fromCompact(sg);\n }\n P = Point.fromHex(publicKey);\n }\n catch (error) {\n return false;\n }\n if (!_sig)\n return false;\n if (lowS && _sig.hasHighS())\n return false;\n if (prehash)\n msgHash = CURVE.hash(msgHash);\n const { r, s } = _sig;\n const h = bits2int_modN(msgHash); // Cannot use fields methods, since it is group element\n const is = invN(s); // s^-1\n const u1 = modN(h * is); // u1 = hs^-1 mod n\n const u2 = modN(r * is); // u2 = rs^-1 mod n\n const R = Point.BASE.multiplyAndAddUnsafe(P, u1, u2)?.toAffine(); // R = u1⋅G + u2⋅P\n if (!R)\n return false;\n const v = modN(R.x);\n return v === r;\n }\n return {\n CURVE,\n getPublicKey,\n getSharedSecret,\n sign,\n verify,\n ProjectivePoint: Point,\n Signature,\n utils,\n };\n}\n/**\n * Implementation of the Shallue and van de Woestijne method for any weierstrass curve.\n * TODO: check if there is a way to merge this with uvRatio in Edwards; move to modular.\n * b = True and y = sqrt(u / v) if (u / v) is square in F, and\n * b = False and y = sqrt(Z * (u / v)) otherwise.\n * @param Fp\n * @param Z\n * @returns\n */\nfunction SWUFpSqrtRatio(Fp, Z) {\n // Generic implementation\n const q = Fp.ORDER;\n let l = _0n;\n for (let o = q - _1n; o % _2n === _0n; o /= _2n)\n l += _1n;\n const c1 = l; // 1. c1, the largest integer such that 2^c1 divides q - 1.\n // We need 2n ** c1 and 2n ** (c1-1). We can't use **; but we can use <<.\n // 2n ** c1 == 2n << (c1-1)\n const _2n_pow_c1_1 = _2n << (c1 - _1n - _1n);\n const _2n_pow_c1 = _2n_pow_c1_1 * _2n;\n const c2 = (q - _1n) / _2n_pow_c1; // 2. c2 = (q - 1) / (2^c1) # Integer arithmetic\n const c3 = (c2 - _1n) / _2n; // 3. c3 = (c2 - 1) / 2 # Integer arithmetic\n const c4 = _2n_pow_c1 - _1n; // 4. c4 = 2^c1 - 1 # Integer arithmetic\n const c5 = _2n_pow_c1_1; // 5. c5 = 2^(c1 - 1) # Integer arithmetic\n const c6 = Fp.pow(Z, c2); // 6. c6 = Z^c2\n const c7 = Fp.pow(Z, (c2 + _1n) / _2n); // 7. c7 = Z^((c2 + 1) / 2)\n let sqrtRatio = (u, v) => {\n let tv1 = c6; // 1. tv1 = c6\n let tv2 = Fp.pow(v, c4); // 2. tv2 = v^c4\n let tv3 = Fp.sqr(tv2); // 3. tv3 = tv2^2\n tv3 = Fp.mul(tv3, v); // 4. tv3 = tv3 * v\n let tv5 = Fp.mul(u, tv3); // 5. tv5 = u * tv3\n tv5 = Fp.pow(tv5, c3); // 6. tv5 = tv5^c3\n tv5 = Fp.mul(tv5, tv2); // 7. tv5 = tv5 * tv2\n tv2 = Fp.mul(tv5, v); // 8. tv2 = tv5 * v\n tv3 = Fp.mul(tv5, u); // 9. tv3 = tv5 * u\n let tv4 = Fp.mul(tv3, tv2); // 10. tv4 = tv3 * tv2\n tv5 = Fp.pow(tv4, c5); // 11. tv5 = tv4^c5\n let isQR = Fp.eql(tv5, Fp.ONE); // 12. isQR = tv5 == 1\n tv2 = Fp.mul(tv3, c7); // 13. tv2 = tv3 * c7\n tv5 = Fp.mul(tv4, tv1); // 14. tv5 = tv4 * tv1\n tv3 = Fp.cmov(tv2, tv3, isQR); // 15. tv3 = CMOV(tv2, tv3, isQR)\n tv4 = Fp.cmov(tv5, tv4, isQR); // 16. tv4 = CMOV(tv5, tv4, isQR)\n // 17. for i in (c1, c1 - 1, ..., 2):\n for (let i = c1; i > _1n; i--) {\n let tv5 = i - _2n; // 18. tv5 = i - 2\n tv5 = _2n << (tv5 - _1n); // 19. tv5 = 2^tv5\n let tvv5 = Fp.pow(tv4, tv5); // 20. tv5 = tv4^tv5\n const e1 = Fp.eql(tvv5, Fp.ONE); // 21. e1 = tv5 == 1\n tv2 = Fp.mul(tv3, tv1); // 22. tv2 = tv3 * tv1\n tv1 = Fp.mul(tv1, tv1); // 23. tv1 = tv1 * tv1\n tvv5 = Fp.mul(tv4, tv1); // 24. tv5 = tv4 * tv1\n tv3 = Fp.cmov(tv2, tv3, e1); // 25. tv3 = CMOV(tv2, tv3, e1)\n tv4 = Fp.cmov(tvv5, tv4, e1); // 26. tv4 = CMOV(tv5, tv4, e1)\n }\n return { isValid: isQR, value: tv3 };\n };\n if (Fp.ORDER % _4n === _3n) {\n // sqrt_ratio_3mod4(u, v)\n const c1 = (Fp.ORDER - _3n) / _4n; // 1. c1 = (q - 3) / 4 # Integer arithmetic\n const c2 = Fp.sqrt(Fp.neg(Z)); // 2. c2 = sqrt(-Z)\n sqrtRatio = (u, v) => {\n let tv1 = Fp.sqr(v); // 1. tv1 = v^2\n const tv2 = Fp.mul(u, v); // 2. tv2 = u * v\n tv1 = Fp.mul(tv1, tv2); // 3. tv1 = tv1 * tv2\n let y1 = Fp.pow(tv1, c1); // 4. y1 = tv1^c1\n y1 = Fp.mul(y1, tv2); // 5. y1 = y1 * tv2\n const y2 = Fp.mul(y1, c2); // 6. y2 = y1 * c2\n const tv3 = Fp.mul(Fp.sqr(y1), v); // 7. tv3 = y1^2; 8. tv3 = tv3 * v\n const isQR = Fp.eql(tv3, u); // 9. isQR = tv3 == u\n let y = Fp.cmov(y2, y1, isQR); // 10. y = CMOV(y2, y1, isQR)\n return { isValid: isQR, value: y }; // 11. return (isQR, y) isQR ? y : y*c2\n };\n }\n // No curves uses that\n // if (Fp.ORDER % _8n === _5n) // sqrt_ratio_5mod8\n return sqrtRatio;\n}\n/**\n * Simplified Shallue-van de Woestijne-Ulas Method\n * https://www.rfc-editor.org/rfc/rfc9380#section-6.6.2\n */\nfunction mapToCurveSimpleSWU(Fp, opts) {\n (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.validateField)(Fp);\n if (!Fp.isValid(opts.A) || !Fp.isValid(opts.B) || !Fp.isValid(opts.Z))\n throw new Error('mapToCurveSimpleSWU: invalid opts');\n const sqrtRatio = SWUFpSqrtRatio(Fp, opts.Z);\n if (!Fp.isOdd)\n throw new Error('Fp.isOdd is not implemented!');\n // Input: u, an element of F.\n // Output: (x, y), a point on E.\n return (u) => {\n // prettier-ignore\n let tv1, tv2, tv3, tv4, tv5, tv6, x, y;\n tv1 = Fp.sqr(u); // 1. tv1 = u^2\n tv1 = Fp.mul(tv1, opts.Z); // 2. tv1 = Z * tv1\n tv2 = Fp.sqr(tv1); // 3. tv2 = tv1^2\n tv2 = Fp.add(tv2, tv1); // 4. tv2 = tv2 + tv1\n tv3 = Fp.add(tv2, Fp.ONE); // 5. tv3 = tv2 + 1\n tv3 = Fp.mul(tv3, opts.B); // 6. tv3 = B * tv3\n tv4 = Fp.cmov(opts.Z, Fp.neg(tv2), !Fp.eql(tv2, Fp.ZERO)); // 7. tv4 = CMOV(Z, -tv2, tv2 != 0)\n tv4 = Fp.mul(tv4, opts.A); // 8. tv4 = A * tv4\n tv2 = Fp.sqr(tv3); // 9. tv2 = tv3^2\n tv6 = Fp.sqr(tv4); // 10. tv6 = tv4^2\n tv5 = Fp.mul(tv6, opts.A); // 11. tv5 = A * tv6\n tv2 = Fp.add(tv2, tv5); // 12. tv2 = tv2 + tv5\n tv2 = Fp.mul(tv2, tv3); // 13. tv2 = tv2 * tv3\n tv6 = Fp.mul(tv6, tv4); // 14. tv6 = tv6 * tv4\n tv5 = Fp.mul(tv6, opts.B); // 15. tv5 = B * tv6\n tv2 = Fp.add(tv2, tv5); // 16. tv2 = tv2 + tv5\n x = Fp.mul(tv1, tv3); // 17. x = tv1 * tv3\n const { isValid, value } = sqrtRatio(tv2, tv6); // 18. (is_gx1_square, y1) = sqrt_ratio(tv2, tv6)\n y = Fp.mul(tv1, u); // 19. y = tv1 * u -> Z * u^3 * y1\n y = Fp.mul(y, value); // 20. y = y * y1\n x = Fp.cmov(x, tv3, isValid); // 21. x = CMOV(x, tv3, is_gx1_square)\n y = Fp.cmov(y, value, isValid); // 22. y = CMOV(y, y1, is_gx1_square)\n const e1 = Fp.isOdd(u) === Fp.isOdd(y); // 23. e1 = sgn0(u) == sgn0(y)\n y = Fp.cmov(Fp.neg(y), y, e1); // 24. y = CMOV(-y, y, e1)\n const tv4_inv = (0,_modular_js__WEBPACK_IMPORTED_MODULE_2__.FpInvertBatch)(Fp, [tv4], true)[0];\n x = Fp.mul(x, tv4_inv); // 25. x = x / tv4\n return { x, y };\n };\n}\n//# sourceMappingURL=weierstrass.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9hYnN0cmFjdC93ZWllcnN0cmFzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpREFBaUQ7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDNEQ7QUFDNUQ7QUFDa0g7QUFDbEg7QUFDMk47QUFDM047QUFDQTtBQUNBLFFBQVEsZ0RBQUs7QUFDYjtBQUNBLFFBQVEsZ0RBQUs7QUFDYjtBQUNBO0FBQ0EsaUJBQWlCLHdEQUFhO0FBQzlCLElBQUkseURBQWM7QUFDbEI7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxZQUFZLGNBQWM7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsU0FBUztBQUNwQztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixTQUFTO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsOERBQW1CO0FBQzNDO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQyw4REFBbUI7QUFDOUQsc0JBQXNCLDhEQUFtQjtBQUN6QztBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0Esb0JBQW9CLFNBQVM7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZFQUE2RTtBQUM3RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLFNBQVM7QUFDVCxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLFNBQVM7QUFDN0I7QUFDQTtBQUNBLHNCQUFzQiw4REFBbUI7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0Esb0JBQW9CLFNBQVM7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsMERBQWU7QUFDbEMsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0EsZ0JBQWdCLCtCQUErQjtBQUMvQyxxQkFBcUIsc0RBQVc7QUFDaEMsZ0JBQWdCLCtCQUErQjtBQUMvQztBQUNBO0FBQ0EsZ0JBQWdCLDJCQUEyQjtBQUMzQyxnQkFBZ0IsMkJBQTJCO0FBQzNDO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakIsS0FBSztBQUNMO0FBQ0EsZ0JBQWdCLHVCQUF1QjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsV0FBVyxxREFBVSxDQUFDLDBEQUFlO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLFlBQVksS0FBSyxTQUFTO0FBQzFCLGVBQWUsa0RBQUs7QUFDcEI7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHNEQUFXO0FBQzlCLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixPQUFPO0FBQ3ZCLDhCQUE4QjtBQUM5QixrQ0FBa0M7QUFDbEMsb0RBQW9EO0FBQ3BEO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEMsOENBQThDO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLGtEQUFPO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLHVFQUF1RTtBQUN2RjtBQUNBLGdCQUFnQixrREFBTztBQUN2QixzQkFBc0IscURBQVU7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMERBQWUsQ0FBQyxzREFBVztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGdEQUFHLFVBQVU7QUFDL0IsUUFBUSxtREFBUSw4QkFBOEI7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsbURBQVE7QUFDakMsZ0JBQWdCLHNCQUFzQjtBQUN0QztBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCLEtBQUs7QUFDTDtBQUNBO0FBQ0EsNEJBQTRCLG1EQUFRO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixPQUFPO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLE9BQU87QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwwREFBYTtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlEQUFpRCxzREFBVztBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsb0RBQVM7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsSUFBSTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IseUJBQXlCO0FBQzdDLG9CQUFvQix5QkFBeUI7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLE9BQU87QUFDM0I7QUFDQSxvQkFBb0IseUJBQXlCO0FBQzdDLDBEQUEwRDtBQUMxRCxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQix5QkFBeUI7QUFDN0Msb0JBQW9CLHlCQUF5QjtBQUM3QywwREFBMEQ7QUFDMUQ7QUFDQTtBQUNBLHFDQUFxQztBQUNyQztBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUM7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixhQUFhO0FBQ2pDLFlBQVksbURBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLHdCQUF3QjtBQUN0RCxrQkFBa0IsdUJBQXVCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsYUFBYTtBQUNqQyxZQUFZLG1EQUFRO0FBQ3BCLDZCQUE2QjtBQUM3Qiw4QkFBOEIsd0JBQXdCO0FBQ3REO0FBQ0Esd0JBQXdCLHVCQUF1QjtBQUMvQyxzQkFBc0IsaUJBQWlCO0FBQ3ZDLHNCQUFzQixpQkFBaUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsT0FBTztBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNkJBQTZCO0FBQ2pEO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNkJBQTZCO0FBQ2pEO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdEQUFLO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnREFBSztBQUNqQixtQkFBbUIscURBQVU7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNEQUFzRDtBQUN0RCxZQUFZLG1CQUFtQjtBQUMvQixpQkFBaUIsK0NBQUk7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLHdEQUFhO0FBQzlCLElBQUkseURBQWM7QUFDbEI7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCwyQkFBMkIscUJBQXFCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0EsK0JBQStCLHNDQUFzQztBQUNyRTtBQUNPO0FBQ1A7QUFDQSxZQUFZLDhDQUE4QztBQUMxRCx3Q0FBd0M7QUFDeEMsOENBQThDO0FBQzlDO0FBQ0EsZUFBZSxnREFBRztBQUNsQjtBQUNBO0FBQ0EsZUFBZSxtREFBTTtBQUNyQjtBQUNBLFlBQVksMkZBQTJGO0FBQ3ZHO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLGtEQUFXO0FBQ25DLFlBQVksZ0RBQUs7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQiwwREFBZTtBQUN6QyxxQkFBcUIsa0RBQU87QUFDNUI7QUFDQSxtREFBbUQ7QUFDbkQ7QUFDQTtBQUNBLHFDQUFxQztBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsMERBQWU7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksbURBQVEsNEJBQTRCO0FBQ2hELFlBQVksbURBQVEsNEJBQTRCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixzREFBVztBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLE9BQU8sWUFBWSxzREFBVztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHNCQUFzQjtBQUMxQyxvQ0FBb0Msc0RBQVcsdUJBQXVCO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DO0FBQ25DLHNDQUFzQztBQUN0QyxxQ0FBcUM7QUFDckMsa0VBQWtFO0FBQ2xFO0FBQ0Esc0RBQXNEO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixxREFBVTtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIscURBQVU7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQiw2REFBZ0I7QUFDM0MsbUJBQW1CLDJEQUFjO0FBQ2pDLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUM7QUFDbkM7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwREFBMEQ7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHNEQUFXO0FBQy9CO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakMsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsMERBQWUsU0FBUztBQUNoRCx5REFBeUQ7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBLHVCQUF1QixrREFBTztBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsbURBQVE7QUFDaEI7QUFDQSxlQUFlLDBEQUFlO0FBQzlCO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLG9CQUFvQjtBQUNwQyxjQUFjLG1DQUFtQyxRQUFRO0FBQ3pEO0FBQ0EseUJBQXlCO0FBQ3pCLGtCQUFrQixzREFBVztBQUM3QjtBQUNBO0FBQ0Esc0JBQXNCLHNEQUFXO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0RBQXNEO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0VBQWtFO0FBQ2xFLDBCQUEwQixzREFBVyxzQkFBc0I7QUFDM0Q7QUFDQSxxQkFBcUIsc0RBQVcsZUFBZTtBQUMvQyx5QkFBeUI7QUFDekI7QUFDQTtBQUNBO0FBQ0Esd0NBQXdDO0FBQ3hDO0FBQ0Esd0JBQXdCO0FBQ3hCLGdDQUFnQztBQUNoQyx5REFBeUQ7QUFDekQsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrREFBa0Q7QUFDbEQ7QUFDQTtBQUNBLG9FQUFvRTtBQUNwRTtBQUNBO0FBQ0EsdUNBQXVDO0FBQ3ZDLCtCQUErQjtBQUMvQjtBQUNBLHNEQUFzRDtBQUN0RDtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBLDZCQUE2QjtBQUM3Qiw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixjQUFjLG1DQUFtQztBQUNqRTtBQUNBLHFCQUFxQix5REFBYztBQUNuQyxrQ0FBa0M7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsWUFBWTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLHNEQUFXO0FBQzdCLG9CQUFvQixzREFBVztBQUMvQixnQkFBZ0Isd0JBQXdCO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCxrREFBTztBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLE9BQU87QUFDdkIsMENBQTBDO0FBQzFDLDRCQUE0QjtBQUM1QixpQ0FBaUM7QUFDakMsaUNBQWlDO0FBQ2pDLDBFQUEwRTtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3RUFBd0U7QUFDeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsaUJBQWlCO0FBQzNDO0FBQ0Esa0JBQWtCO0FBQ2xCLDJEQUEyRDtBQUMzRDtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUM7QUFDdkMsaUNBQWlDO0FBQ2pDLGlDQUFpQztBQUNqQyw2QkFBNkI7QUFDN0IsOEJBQThCO0FBQzlCLDRDQUE0QztBQUM1QztBQUNBLHNCQUFzQjtBQUN0QixpQ0FBaUM7QUFDakMsK0JBQStCO0FBQy9CLDhCQUE4QjtBQUM5QixrQ0FBa0M7QUFDbEMsK0JBQStCO0FBQy9CLGdDQUFnQztBQUNoQyw4QkFBOEI7QUFDOUIsOEJBQThCO0FBQzlCLG9DQUFvQztBQUNwQywrQkFBK0I7QUFDL0Isd0NBQXdDO0FBQ3hDLCtCQUErQjtBQUMvQixnQ0FBZ0M7QUFDaEMsdUNBQXVDO0FBQ3ZDLHVDQUF1QztBQUN2QztBQUNBLHlCQUF5QixTQUFTO0FBQ2xDLCtCQUErQjtBQUMvQixzQ0FBc0M7QUFDdEMseUNBQXlDO0FBQ3pDLDZDQUE2QztBQUM3QyxvQ0FBb0M7QUFDcEMsb0NBQW9DO0FBQ3BDLHFDQUFxQztBQUNyQyx5Q0FBeUM7QUFDekMsMENBQTBDO0FBQzFDO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLDJDQUEyQztBQUMzQyx1Q0FBdUM7QUFDdkM7QUFDQSxpQ0FBaUM7QUFDakMsc0NBQXNDO0FBQ3RDLG9DQUFvQztBQUNwQyxzQ0FBc0M7QUFDdEMsa0NBQWtDO0FBQ2xDLHVDQUF1QztBQUN2QywrQ0FBK0Msa0JBQWtCO0FBQ2pFLHlDQUF5QztBQUN6QywyQ0FBMkM7QUFDM0MscUJBQXFCLDJCQUEyQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsSUFBSSwwREFBYTtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QixtQ0FBbUM7QUFDbkMsMkJBQTJCO0FBQzNCLGdDQUFnQztBQUNoQyxtQ0FBbUM7QUFDbkMsbUNBQW1DO0FBQ25DLG1FQUFtRTtBQUNuRSxtQ0FBbUM7QUFDbkMsMkJBQTJCO0FBQzNCLDJCQUEyQjtBQUMzQixtQ0FBbUM7QUFDbkMsZ0NBQWdDO0FBQ2hDLGdDQUFnQztBQUNoQyxnQ0FBZ0M7QUFDaEMsbUNBQW1DO0FBQ25DLGdDQUFnQztBQUNoQyw4QkFBOEI7QUFDOUIsZ0JBQWdCLGlCQUFpQix1QkFBdUI7QUFDeEQsNEJBQTRCO0FBQzVCLDhCQUE4QjtBQUM5QixzQ0FBc0M7QUFDdEMsd0NBQXdDO0FBQ3hDLGdEQUFnRDtBQUNoRCx1Q0FBdUM7QUFDdkMsd0JBQXdCLDBEQUFhO0FBQ3JDLGdDQUFnQztBQUNoQyxpQkFBaUI7QUFDakI7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvZXNtL2Fic3RyYWN0L3dlaWVyc3RyYXNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2hvcnQgV2VpZXJzdHJhc3MgY3VydmUgbWV0aG9kcy4gVGhlIGZvcm11bGEgaXM6IHnCsiA9IHjCsyArIGF4ICsgYi5cbiAqXG4gKiAjIyMgUGFyYW1ldGVyc1xuICpcbiAqIFRvIGluaXRpYWxpemUgYSB3ZWllcnN0cmFzcyBjdXJ2ZSwgb25lIG5lZWRzIHRvIHBhc3MgZm9sbG93aW5nIHBhcmFtczpcbiAqXG4gKiAqIGE6IGZvcm11bGEgcGFyYW1cbiAqICogYjogZm9ybXVsYSBwYXJhbVxuICogKiBGcDogZmluaXRlIGZpZWxkIG9mIHByaW1lIGNoYXJhY3RlcmlzdGljIFA7IG1heSBiZSBjb21wbGV4IChGcDIpLiBBcml0aG1ldGljcyBpcyBkb25lIGluIGZpZWxkXG4gKiAqIG46IG9yZGVyIG9mIHByaW1lIHN1Ymdyb3VwIGEuay5hIHRvdGFsIGFtb3VudCBvZiB2YWxpZCBjdXJ2ZSBwb2ludHNcbiAqICogR3g6IEJhc2UgcG9pbnQgKHgsIHkpIGFrYSBnZW5lcmF0b3IgcG9pbnQuIEd4ID0geCBjb29yZGluYXRlXG4gKiAqIEd5OiAuLi55IGNvb3JkaW5hdGVcbiAqICogaDogY29mYWN0b3IsIHVzdWFsbHkgMS4gaCpuID0gY3VydmUgZ3JvdXAgb3JkZXIgKG4gaXMgb25seSBzdWJncm91cCBvcmRlcilcbiAqICogbG93Uzogd2hldGhlciB0byBlbmFibGUgKGRlZmF1bHQpIG9yIGRpc2FibGUgXCJsb3ctc1wiIG5vbi1tYWxsZWFibGUgc2lnbmF0dXJlc1xuICpcbiAqICMjIyBEZXNpZ24gcmF0aW9uYWxlIGZvciB0eXBlc1xuICpcbiAqICogSW50ZXJhY3Rpb24gYmV0d2VlbiBjbGFzc2VzIGZyb20gZGlmZmVyZW50IGN1cnZlcyBzaG91bGQgZmFpbDpcbiAqICAgYGsyNTYuUG9pbnQuQkFTRS5hZGQocDI1Ni5Qb2ludC5CQVNFKWBcbiAqICogRm9yIHRoaXMgcHVycG9zZSB3ZSB3YW50IHRvIHVzZSBgaW5zdGFuY2VvZmAgb3BlcmF0b3IsIHdoaWNoIGlzIGZhc3QgYW5kIHdvcmtzIGR1cmluZyBydW50aW1lXG4gKiAqIERpZmZlcmVudCBjYWxscyBvZiBgY3VydmUoKWAgd291bGQgcmV0dXJuIGRpZmZlcmVudCBjbGFzc2VzIC1cbiAqICAgYGN1cnZlKHBhcmFtcykgIT09IGN1cnZlKHBhcmFtcylgOiBpZiBzb21lYm9keSBkZWNpZGVkIHRvIG1vbmtleS1wYXRjaCB0aGVpciBjdXJ2ZSxcbiAqICAgaXQgd29uJ3QgYWZmZWN0IG90aGVyc1xuICpcbiAqIFR5cGVTY3JpcHQgY2FuJ3QgaW5mZXIgdHlwZXMgZm9yIGNsYXNzZXMgY3JlYXRlZCBpbnNpZGUgYSBmdW5jdGlvbi4gQ2xhc3NlcyBpcyBvbmUgaW5zdGFuY2VcbiAqIG9mIG5vbWluYXRpdmUgdHlwZXMgaW4gVHlwZVNjcmlwdCBhbmQgaW50ZXJmYWNlcyBvbmx5IGNoZWNrIGZvciBzaGFwZSwgc28gaXQncyBoYXJkIHRvIGNyZWF0ZVxuICogdW5pcXVlIHR5cGUgZm9yIGV2ZXJ5IGZ1bmN0aW9uIGNhbGwuXG4gKlxuICogV2UgY2FuIHVzZSBnZW5lcmljIHR5cGVzIHZpYSBzb21lIHBhcmFtLCBsaWtlIGN1cnZlIG9wdHMsIGJ1dCB0aGF0IHdvdWxkOlxuICogICAgIDEuIEVuYWJsZSBpbnRlcmFjdGlvbiBiZXR3ZWVuIGBjdXJ2ZShwYXJhbXMpYCBhbmQgYGN1cnZlKHBhcmFtcylgIChjdXJ2ZXMgb2Ygc2FtZSBwYXJhbXMpXG4gKiAgICAgd2hpY2ggaXMgaGFyZCB0byBkZWJ1Zy5cbiAqICAgICAyLiBQYXJhbXMgY2FuIGJlIGdlbmVyaWMgYW5kIHdlIGNhbid0IGVuZm9yY2UgdGhlbSB0byBiZSBjb25zdGFudCB2YWx1ZTpcbiAqICAgICBpZiBzb21lYm9keSBjcmVhdGVzIGN1cnZlIGZyb20gbm9uLWNvbnN0YW50IHBhcmFtcyxcbiAqICAgICBpdCB3b3VsZCBiZSBhbGxvd2VkIHRvIGludGVyYWN0IHdpdGggb3RoZXIgY3VydmVzIHdpdGggbm9uLWNvbnN0YW50IHBhcmFtc1xuICpcbiAqIEB0b2RvIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rL3JlbGVhc2Utbm90ZXMvdHlwZXNjcmlwdC0yLTcuaHRtbCN1bmlxdWUtc3ltYm9sXG4gKiBAbW9kdWxlXG4gKi9cbi8qISBub2JsZS1jdXJ2ZXMgLSBNSVQgTGljZW5zZSAoYykgMjAyMiBQYXVsIE1pbGxlciAocGF1bG1pbGxyLmNvbSkgKi9cbi8vIHByZXR0aWVyLWlnbm9yZVxuaW1wb3J0IHsgcGlwcGVuZ2VyLCB2YWxpZGF0ZUJhc2ljLCB3TkFGIH0gZnJvbSBcIi4vY3VydmUuanNcIjtcbi8vIHByZXR0aWVyLWlnbm9yZVxuaW1wb3J0IHsgRmllbGQsIEZwSW52ZXJ0QmF0Y2gsIGdldE1pbkhhc2hMZW5ndGgsIGludmVydCwgbWFwSGFzaFRvRmllbGQsIG1vZCwgdmFsaWRhdGVGaWVsZCB9IGZyb20gXCIuL21vZHVsYXIuanNcIjtcbi8vIHByZXR0aWVyLWlnbm9yZVxuaW1wb3J0IHsgYUluUmFuZ2UsIGFib29sLCBiaXRNYXNrLCBieXRlc1RvSGV4LCBieXRlc1RvTnVtYmVyQkUsIGNvbmNhdEJ5dGVzLCBjcmVhdGVIbWFjRHJiZywgZW5zdXJlQnl0ZXMsIGhleFRvQnl0ZXMsIGluUmFuZ2UsIGlzQnl0ZXMsIG1lbW9pemVkLCBudW1iZXJUb0J5dGVzQkUsIG51bWJlclRvSGV4VW5wYWRkZWQsIHZhbGlkYXRlT2JqZWN0IH0gZnJvbSBcIi4vdXRpbHMuanNcIjtcbmZ1bmN0aW9uIHZhbGlkYXRlU2lnVmVyT3B0cyhvcHRzKSB7XG4gICAgaWYgKG9wdHMubG93UyAhPT0gdW5kZWZpbmVkKVxuICAgICAgICBhYm9vbCgnbG93UycsIG9wdHMubG93Uyk7XG4gICAgaWYgKG9wdHMucHJlaGFzaCAhPT0gdW5kZWZpbmVkKVxuICAgICAgICBhYm9vbCgncHJlaGFzaCcsIG9wdHMucHJlaGFzaCk7XG59XG5mdW5jdGlvbiB2YWxpZGF0ZVBvaW50T3B0cyhjdXJ2ZSkge1xuICAgIGNvbnN0IG9wdHMgPSB2YWxpZGF0ZUJhc2ljKGN1cnZlKTtcbiAgICB2YWxpZGF0ZU9iamVjdChvcHRzLCB7XG4gICAgICAgIGE6ICdmaWVsZCcsXG4gICAgICAgIGI6ICdmaWVsZCcsXG4gICAgfSwge1xuICAgICAgICBhbGxvd0luZmluaXR5UG9pbnQ6ICdib29sZWFuJyxcbiAgICAgICAgYWxsb3dlZFByaXZhdGVLZXlMZW5ndGhzOiAnYXJyYXknLFxuICAgICAgICBjbGVhckNvZmFjdG9yOiAnZnVuY3Rpb24nLFxuICAgICAgICBmcm9tQnl0ZXM6ICdmdW5jdGlvbicsXG4gICAgICAgIGlzVG9yc2lvbkZyZWU6ICdmdW5jdGlvbicsXG4gICAgICAgIHRvQnl0ZXM6ICdmdW5jdGlvbicsXG4gICAgICAgIHdyYXBQcml2YXRlS2V5OiAnYm9vbGVhbicsXG4gICAgfSk7XG4gICAgY29uc3QgeyBlbmRvLCBGcCwgYSB9ID0gb3B0cztcbiAgICBpZiAoZW5kbykge1xuICAgICAgICBpZiAoIUZwLmVxbChhLCBGcC5aRVJPKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGVuZG86IENVUlZFLmEgbXVzdCBiZSAwJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBlbmRvICE9PSAnb2JqZWN0JyB8fFxuICAgICAgICAgICAgdHlwZW9mIGVuZG8uYmV0YSAhPT0gJ2JpZ2ludCcgfHxcbiAgICAgICAgICAgIHR5cGVvZiBlbmRvLnNwbGl0U2NhbGFyICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgZW5kbzogZXhwZWN0ZWQgXCJiZXRhXCI6IGJpZ2ludCBhbmQgXCJzcGxpdFNjYWxhclwiOiBmdW5jdGlvbicpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBPYmplY3QuZnJlZXplKHsgLi4ub3B0cyB9KTtcbn1cbmV4cG9ydCBjbGFzcyBERVJFcnIgZXh0ZW5kcyBFcnJvciB7XG4gICAgY29uc3RydWN0b3IobSA9ICcnKSB7XG4gICAgICAgIHN1cGVyKG0pO1xuICAgIH1cbn1cbi8qKlxuICogQVNOLjEgREVSIGVuY29kaW5nIHV0aWxpdGllcy4gQVNOIGlzIHZlcnkgY29tcGxleCAmIGZyYWdpbGUuIEZvcm1hdDpcbiAqXG4gKiAgICAgWzB4MzAgKFNFUVVFTkNFKSwgYnl0ZWxlbmd0aCwgMHgwMiAoSU5URUdFUiksIGludExlbmd0aCwgUiwgMHgwMiAoSU5URUdFUiksIGludExlbmd0aCwgU11cbiAqXG4gKiBEb2NzOiBodHRwczovL2xldHNlbmNyeXB0Lm9yZy9kb2NzL2Etd2FybS13ZWxjb21lLXRvLWFzbjEtYW5kLWRlci8sIGh0dHBzOi8vbHVjYS5udG9wLm9yZy9UZWFjaGluZy9BcHB1bnRpL2FzbjEuaHRtbFxuICovXG5leHBvcnQgY29uc3QgREVSID0ge1xuICAgIC8vIGFzbi4xIERFUiBlbmNvZGluZyB1dGlsc1xuICAgIEVycjogREVSRXJyLFxuICAgIC8vIEJhc2ljIGJ1aWxkaW5nIGJsb2NrIGlzIFRMViAoVGFnLUxlbmd0aC1WYWx1ZSlcbiAgICBfdGx2OiB7XG4gICAgICAgIGVuY29kZTogKHRhZywgZGF0YSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBFcnI6IEUgfSA9IERFUjtcbiAgICAgICAgICAgIGlmICh0YWcgPCAwIHx8IHRhZyA+IDI1NilcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRSgndGx2LmVuY29kZTogd3JvbmcgdGFnJyk7XG4gICAgICAgICAgICBpZiAoZGF0YS5sZW5ndGggJiAxKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFKCd0bHYuZW5jb2RlOiB1bnBhZGRlZCBkYXRhJyk7XG4gICAgICAgICAgICBjb25zdCBkYXRhTGVuID0gZGF0YS5sZW5ndGggLyAyO1xuICAgICAgICAgICAgY29uc3QgbGVuID0gbnVtYmVyVG9IZXhVbnBhZGRlZChkYXRhTGVuKTtcbiAgICAgICAgICAgIGlmICgobGVuLmxlbmd0aCAvIDIpICYgMTI4KVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFKCd0bHYuZW5jb2RlOiBsb25nIGZvcm0gbGVuZ3RoIHRvbyBiaWcnKTtcbiAgICAgICAgICAgIC8vIGxlbmd0aCBvZiBsZW5ndGggd2l0aCBsb25nIGZvcm0gZmxhZ1xuICAgICAgICAgICAgY29uc3QgbGVuTGVuID0gZGF0YUxlbiA+IDEyNyA/IG51bWJlclRvSGV4VW5wYWRkZWQoKGxlbi5sZW5ndGggLyAyKSB8IDEyOCkgOiAnJztcbiAgICAgICAgICAgIGNvbnN0IHQgPSBudW1iZXJUb0hleFVucGFkZGVkKHRhZyk7XG4gICAgICAgICAgICByZXR1cm4gdCArIGxlbkxlbiArIGxlbiArIGRhdGE7XG4gICAgICAgIH0sXG4gICAgICAgIC8vIHYgLSB2YWx1ZSwgbCAtIGxlZnQgYnl0ZXMgKHVucGFyc2VkKVxuICAgICAgICBkZWNvZGUodGFnLCBkYXRhKSB7XG4gICAgICAgICAgICBjb25zdCB7IEVycjogRSB9ID0gREVSO1xuICAgICAgICAgICAgbGV0IHBvcyA9IDA7XG4gICAgICAgICAgICBpZiAodGFnIDwgMCB8fCB0YWcgPiAyNTYpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEUoJ3Rsdi5lbmNvZGU6IHdyb25nIHRhZycpO1xuICAgICAgICAgICAgaWYgKGRhdGEubGVuZ3RoIDwgMiB8fCBkYXRhW3BvcysrXSAhPT0gdGFnKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFKCd0bHYuZGVjb2RlOiB3cm9uZyB0bHYnKTtcbiAgICAgICAgICAgIGNvbnN0IGZpcnN0ID0gZGF0YVtwb3MrK107XG4gICAgICAgICAgICBjb25zdCBpc0xvbmcgPSAhIShmaXJzdCAmIDEyOCk7IC8vIEZpcnN0IGJpdCBvZiBmaXJzdCBsZW5ndGggYnl0ZSBpcyBmbGFnIGZvciBzaG9ydC9sb25nIGZvcm1cbiAgICAgICAgICAgIGxldCBsZW5ndGggPSAwO1xuICAgICAgICAgICAgaWYgKCFpc0xvbmcpXG4gICAgICAgICAgICAgICAgbGVuZ3RoID0gZmlyc3Q7XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBMb25nIGZvcm06IFtsb25nRmxhZygxYml0KSwgbGVuZ3RoTGVuZ3RoKDdiaXQpLCBsZW5ndGggKEJFKV1cbiAgICAgICAgICAgICAgICBjb25zdCBsZW5MZW4gPSBmaXJzdCAmIDEyNztcbiAgICAgICAgICAgICAgICBpZiAoIWxlbkxlbilcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEUoJ3Rsdi5kZWNvZGUobG9uZyk6IGluZGVmaW5pdGUgbGVuZ3RoIG5vdCBzdXBwb3J0ZWQnKTtcbiAgICAgICAgICAgICAgICBpZiAobGVuTGVuID4gNClcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEUoJ3Rsdi5kZWNvZGUobG9uZyk6IGJ5dGUgbGVuZ3RoIGlzIHRvbyBiaWcnKTsgLy8gdGhpcyB3aWxsIG92ZXJmbG93IHUzMiBpbiBqc1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlbmd0aEJ5dGVzID0gZGF0YS5zdWJhcnJheShwb3MsIHBvcyArIGxlbkxlbik7XG4gICAgICAgICAgICAgICAgaWYgKGxlbmd0aEJ5dGVzLmxlbmd0aCAhPT0gbGVuTGVuKVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRSgndGx2LmRlY29kZTogbGVuZ3RoIGJ5dGVzIG5vdCBjb21wbGV0ZScpO1xuICAgICAgICAgICAgICAgIGlmIChsZW5ndGhCeXRlc1swXSA9PT0gMClcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEUoJ3Rsdi5kZWNvZGUobG9uZyk6IHplcm8gbGVmdG1vc3QgYnl0ZScpO1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYiBvZiBsZW5ndGhCeXRlcylcbiAgICAgICAgICAgICAgICAgICAgbGVuZ3RoID0gKGxlbmd0aCA8PCA4KSB8IGI7XG4gICAgICAgICAgICAgICAgcG9zICs9IGxlbkxlbjtcbiAgICAgICAgICAgICAgICBpZiAobGVuZ3RoIDwgMTI4KVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRSgndGx2LmRlY29kZShsb25nKTogbm90IG1pbmltYWwgZW5jb2RpbmcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHYgPSBkYXRhLnN1YmFycmF5KHBvcywgcG9zICsgbGVuZ3RoKTtcbiAgICAgICAgICAgIGlmICh2Lmxlbmd0aCAhPT0gbGVuZ3RoKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFKCd0bHYuZGVjb2RlOiB3cm9uZyB2YWx1ZSBsZW5ndGgnKTtcbiAgICAgICAgICAgIHJldHVybiB7IHYsIGw6IGRhdGEuc3ViYXJyYXkocG9zICsgbGVuZ3RoKSB9O1xuICAgICAgICB9LFxuICAgIH0sXG4gICAgLy8gaHR0cHM6Ly9jcnlwdG8uc3RhY2tleGNoYW5nZS5jb20vYS81NzczNCBMZWZ0bW9zdCBiaXQgb2YgZmlyc3QgYnl0ZSBpcyAnbmVnYXRpdmUnIGZsYWcsXG4gICAgLy8gc2luY2Ugd2UgYWx3YXlzIHVzZSBwb3NpdGl2ZSBpbnRlZ2VycyBoZXJlLiBJdCBtdXN0IGFsd2F5cyBiZSBlbXB0eTpcbiAgICAvLyAtIGFkZCB6ZXJvIGJ5dGUgaWYgZXhpc3RzXG4gICAgLy8gLSBpZiBuZXh0IGJ5dGUgZG9lc24ndCBoYXZlIGEgZmxhZywgbGVhZGluZyB6ZXJvIGlzIG5vdCBhbGxvd2VkIChtaW5pbWFsIGVuY29kaW5nKVxuICAgIF9pbnQ6IHtcbiAgICAgICAgZW5jb2RlKG51bSkge1xuICAgICAgICAgICAgY29uc3QgeyBFcnI6IEUgfSA9IERFUjtcbiAgICAgICAgICAgIGlmIChudW0gPCBfMG4pXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEUoJ2ludGVnZXI6IG5lZ2F0aXZlIGludGVnZXJzIGFyZSBub3QgYWxsb3dlZCcpO1xuICAgICAgICAgICAgbGV0IGhleCA9IG51bWJlclRvSGV4VW5wYWRkZWQobnVtKTtcbiAgICAgICAgICAgIC8vIFBhZCB3aXRoIHplcm8gYnl0ZSBpZiBuZWdhdGl2ZSBmbGFnIGlzIHByZXNlbnRcbiAgICAgICAgICAgIGlmIChOdW1iZXIucGFyc2VJbnQoaGV4WzBdLCAxNikgJiAwYjEwMDApXG4gICAgICAgICAgICAgICAgaGV4ID0gJzAwJyArIGhleDtcbiAgICAgICAgICAgIGlmIChoZXgubGVuZ3RoICYgMSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRSgndW5leHBlY3RlZCBERVIgcGFyc2luZyBhc3NlcnRpb246IHVucGFkZGVkIGhleCcpO1xuICAgICAgICAgICAgcmV0dXJuIGhleDtcbiAgICAgICAgfSxcbiAgICAgICAgZGVjb2RlKGRhdGEpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgRXJyOiBFIH0gPSBERVI7XG4gICAgICAgICAgICBpZiAoZGF0YVswXSAmIDEyOClcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRSgnaW52YWxpZCBzaWduYXR1cmUgaW50ZWdlcjogbmVnYXRpdmUnKTtcbiAgICAgICAgICAgIGlmIChkYXRhWzBdID09PSAweDAwICYmICEoZGF0YVsxXSAmIDEyOCkpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEUoJ2ludmFsaWQgc2lnbmF0dXJlIGludGVnZXI6IHVubmVjZXNzYXJ5IGxlYWRpbmcgemVybycpO1xuICAgICAgICAgICAgcmV0dXJuIGJ5dGVzVG9OdW1iZXJCRShkYXRhKTtcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIHRvU2lnKGhleCkge1xuICAgICAgICAvLyBwYXJzZSBERVIgc2lnbmF0dXJlXG4gICAgICAgIGNvbnN0IHsgRXJyOiBFLCBfaW50OiBpbnQsIF90bHY6IHRsdiB9ID0gREVSO1xuICAgICAgICBjb25zdCBkYXRhID0gZW5zdXJlQnl0ZXMoJ3NpZ25hdHVyZScsIGhleCk7XG4gICAgICAgIGNvbnN0IHsgdjogc2VxQnl0ZXMsIGw6IHNlcUxlZnRCeXRlcyB9ID0gdGx2LmRlY29kZSgweDMwLCBkYXRhKTtcbiAgICAgICAgaWYgKHNlcUxlZnRCeXRlcy5sZW5ndGgpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRSgnaW52YWxpZCBzaWduYXR1cmU6IGxlZnQgYnl0ZXMgYWZ0ZXIgcGFyc2luZycpO1xuICAgICAgICBjb25zdCB7IHY6IHJCeXRlcywgbDogckxlZnRCeXRlcyB9ID0gdGx2LmRlY29kZSgweDAyLCBzZXFCeXRlcyk7XG4gICAgICAgIGNvbnN0IHsgdjogc0J5dGVzLCBsOiBzTGVmdEJ5dGVzIH0gPSB0bHYuZGVjb2RlKDB4MDIsIHJMZWZ0Qnl0ZXMpO1xuICAgICAgICBpZiAoc0xlZnRCeXRlcy5sZW5ndGgpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRSgnaW52YWxpZCBzaWduYXR1cmU6IGxlZnQgYnl0ZXMgYWZ0ZXIgcGFyc2luZycpO1xuICAgICAgICByZXR1cm4geyByOiBpbnQuZGVjb2RlKHJCeXRlcyksIHM6IGludC5kZWNvZGUoc0J5dGVzKSB9O1xuICAgIH0sXG4gICAgaGV4RnJvbVNpZyhzaWcpIHtcbiAgICAgICAgY29uc3QgeyBfdGx2OiB0bHYsIF9pbnQ6IGludCB9ID0gREVSO1xuICAgICAgICBjb25zdCBycyA9IHRsdi5lbmNvZGUoMHgwMiwgaW50LmVuY29kZShzaWcucikpO1xuICAgICAgICBjb25zdCBzcyA9IHRsdi5lbmNvZGUoMHgwMiwgaW50LmVuY29kZShzaWcucykpO1xuICAgICAgICBjb25zdCBzZXEgPSBycyArIHNzO1xuICAgICAgICByZXR1cm4gdGx2LmVuY29kZSgweDMwLCBzZXEpO1xuICAgIH0sXG59O1xuZnVuY3Rpb24gbnVtVG9TaXplZEhleChudW0sIHNpemUpIHtcbiAgICByZXR1cm4gYnl0ZXNUb0hleChudW1iZXJUb0J5dGVzQkUobnVtLCBzaXplKSk7XG59XG4vLyBCZSBmcmllbmRseSB0byBiYWQgRUNNQVNjcmlwdCBwYXJzZXJzIGJ5IG5vdCB1c2luZyBiaWdpbnQgbGl0ZXJhbHNcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgXzBuID0gQmlnSW50KDApLCBfMW4gPSBCaWdJbnQoMSksIF8ybiA9IEJpZ0ludCgyKSwgXzNuID0gQmlnSW50KDMpLCBfNG4gPSBCaWdJbnQoNCk7XG5leHBvcnQgZnVuY3Rpb24gd2VpZXJzdHJhc3NQb2ludHMob3B0cykge1xuICAgIGNvbnN0IENVUlZFID0gdmFsaWRhdGVQb2ludE9wdHMob3B0cyk7XG4gICAgY29uc3QgeyBGcCB9ID0gQ1VSVkU7IC8vIEFsbCBjdXJ2ZXMgaGFzIHNhbWUgZmllbGQgLyBncm91cCBsZW5ndGggYXMgZm9yIG5vdywgYnV0IHRoZXkgY2FuIGRpZmZlclxuICAgIGNvbnN0IEZuID0gRmllbGQoQ1VSVkUubiwgQ1VSVkUubkJpdExlbmd0aCk7XG4gICAgY29uc3QgdG9CeXRlcyA9IENVUlZFLnRvQnl0ZXMgfHxcbiAgICAgICAgKChfYywgcG9pbnQsIF9pc0NvbXByZXNzZWQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGEgPSBwb2ludC50b0FmZmluZSgpO1xuICAgICAgICAgICAgcmV0dXJuIGNvbmNhdEJ5dGVzKFVpbnQ4QXJyYXkuZnJvbShbMHgwNF0pLCBGcC50b0J5dGVzKGEueCksIEZwLnRvQnl0ZXMoYS55KSk7XG4gICAgICAgIH0pO1xuICAgIGNvbnN0IGZyb21CeXRlcyA9IENVUlZFLmZyb21CeXRlcyB8fFxuICAgICAgICAoKGJ5dGVzKSA9PiB7XG4gICAgICAgICAgICAvLyBjb25zdCBoZWFkID0gYnl0ZXNbMF07XG4gICAgICAgICAgICBjb25zdCB0YWlsID0gYnl0ZXMuc3ViYXJyYXkoMSk7XG4gICAgICAgICAgICAvLyBpZiAoaGVhZCAhPT0gMHgwNCkgdGhyb3cgbmV3IEVycm9yKCdPbmx5IG5vbi1jb21wcmVzc2VkIGVuY29kaW5nIGlzIHN1cHBvcnRlZCcpO1xuICAgICAgICAgICAgY29uc3QgeCA9IEZwLmZyb21CeXRlcyh0YWlsLnN1YmFycmF5KDAsIEZwLkJZVEVTKSk7XG4gICAgICAgICAgICBjb25zdCB5ID0gRnAuZnJvbUJ5dGVzKHRhaWwuc3ViYXJyYXkoRnAuQllURVMsIDIgKiBGcC5CWVRFUykpO1xuICAgICAgICAgICAgcmV0dXJuIHsgeCwgeSB9O1xuICAgICAgICB9KTtcbiAgICAvKipcbiAgICAgKiB5wrIgPSB4wrMgKyBheCArIGI6IFNob3J0IHdlaWVyc3RyYXNzIGN1cnZlIGZvcm11bGEuIFRha2VzIHgsIHJldHVybnMgecKyLlxuICAgICAqIEByZXR1cm5zIHnCslxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHdlaWVyc3RyYXNzRXF1YXRpb24oeCkge1xuICAgICAgICBjb25zdCB7IGEsIGIgfSA9IENVUlZFO1xuICAgICAgICBjb25zdCB4MiA9IEZwLnNxcih4KTsgLy8geCAqIHhcbiAgICAgICAgY29uc3QgeDMgPSBGcC5tdWwoeDIsIHgpOyAvLyB4wrIgKiB4XG4gICAgICAgIHJldHVybiBGcC5hZGQoRnAuYWRkKHgzLCBGcC5tdWwoeCwgYSkpLCBiKTsgLy8geMKzICsgYSAqIHggKyBiXG4gICAgfVxuICAgIGZ1bmN0aW9uIGlzVmFsaWRYWSh4LCB5KSB7XG4gICAgICAgIGNvbnN0IGxlZnQgPSBGcC5zcXIoeSk7IC8vIHnCslxuICAgICAgICBjb25zdCByaWdodCA9IHdlaWVyc3RyYXNzRXF1YXRpb24oeCk7IC8vIHjCsyArIGF4ICsgYlxuICAgICAgICByZXR1cm4gRnAuZXFsKGxlZnQsIHJpZ2h0KTtcbiAgICB9XG4gICAgLy8gVmFsaWRhdGUgd2hldGhlciB0aGUgcGFzc2VkIGN1cnZlIHBhcmFtcyBhcmUgdmFsaWQuXG4gICAgLy8gVGVzdCAxOiBlcXVhdGlvbiB5wrIgPSB4wrMgKyBheCArIGIgc2hvdWxkIHdvcmsgZm9yIGdlbmVyYXRvciBwb2ludC5cbiAgICBpZiAoIWlzVmFsaWRYWShDVVJWRS5HeCwgQ1VSVkUuR3kpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBjdXJ2ZSBwYXJhbXM6IGdlbmVyYXRvciBwb2ludCcpO1xuICAgIC8vIFRlc3QgMjogZGlzY3JpbWluYW50IM6UIHBhcnQgc2hvdWxkIGJlIG5vbi16ZXJvOiA0YcKzICsgMjdiwrIgIT0gMC5cbiAgICAvLyBHdWFyYW50ZWVzIGN1cnZlIGlzIGdlbnVzLTEsIHNtb290aCAobm9uLXNpbmd1bGFyKS5cbiAgICBjb25zdCBfNGEzID0gRnAubXVsKEZwLnBvdyhDVVJWRS5hLCBfM24pLCBfNG4pO1xuICAgIGNvbnN0IF8yN2IyID0gRnAubXVsKEZwLnNxcihDVVJWRS5iKSwgQmlnSW50KDI3KSk7XG4gICAgaWYgKEZwLmlzMChGcC5hZGQoXzRhMywgXzI3YjIpKSlcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgY3VydmUgcGFyYW1zOiBhIG9yIGInKTtcbiAgICAvLyBWYWxpZCBncm91cCBlbGVtZW50cyByZXNpZGUgaW4gcmFuZ2UgMS4ubi0xXG4gICAgZnVuY3Rpb24gaXNXaXRoaW5DdXJ2ZU9yZGVyKG51bSkge1xuICAgICAgICByZXR1cm4gaW5SYW5nZShudW0sIF8xbiwgQ1VSVkUubik7XG4gICAgfVxuICAgIC8vIFZhbGlkYXRlcyBpZiBwcml2IGtleSBpcyB2YWxpZCBhbmQgY29udmVydHMgaXQgdG8gYmlnaW50LlxuICAgIC8vIFN1cHBvcnRzIG9wdGlvbnMgYWxsb3dlZFByaXZhdGVLZXlMZW5ndGhzIGFuZCB3cmFwUHJpdmF0ZUtleS5cbiAgICBmdW5jdGlvbiBub3JtUHJpdmF0ZUtleVRvU2NhbGFyKGtleSkge1xuICAgICAgICBjb25zdCB7IGFsbG93ZWRQcml2YXRlS2V5TGVuZ3RoczogbGVuZ3RocywgbkJ5dGVMZW5ndGgsIHdyYXBQcml2YXRlS2V5LCBuOiBOIH0gPSBDVVJWRTtcbiAgICAgICAgaWYgKGxlbmd0aHMgJiYgdHlwZW9mIGtleSAhPT0gJ2JpZ2ludCcpIHtcbiAgICAgICAgICAgIGlmIChpc0J5dGVzKGtleSkpXG4gICAgICAgICAgICAgICAga2V5ID0gYnl0ZXNUb0hleChrZXkpO1xuICAgICAgICAgICAgLy8gTm9ybWFsaXplIHRvIGhleCBzdHJpbmcsIHBhZC4gRS5nLiBQNTIxIHdvdWxkIG5vcm0gMTMwLTEzMiBjaGFyIGhleCB0byAxMzItY2hhciBieXRlc1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBrZXkgIT09ICdzdHJpbmcnIHx8ICFsZW5ndGhzLmluY2x1ZGVzKGtleS5sZW5ndGgpKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBwcml2YXRlIGtleScpO1xuICAgICAgICAgICAga2V5ID0ga2V5LnBhZFN0YXJ0KG5CeXRlTGVuZ3RoICogMiwgJzAnKTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgbnVtO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgbnVtID1cbiAgICAgICAgICAgICAgICB0eXBlb2Yga2V5ID09PSAnYmlnaW50J1xuICAgICAgICAgICAgICAgICAgICA/IGtleVxuICAgICAgICAgICAgICAgICAgICA6IGJ5dGVzVG9OdW1iZXJCRShlbnN1cmVCeXRlcygncHJpdmF0ZSBrZXknLCBrZXksIG5CeXRlTGVuZ3RoKSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgcHJpdmF0ZSBrZXksIGV4cGVjdGVkIGhleCBvciAnICsgbkJ5dGVMZW5ndGggKyAnIGJ5dGVzLCBnb3QgJyArIHR5cGVvZiBrZXkpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh3cmFwUHJpdmF0ZUtleSlcbiAgICAgICAgICAgIG51bSA9IG1vZChudW0sIE4pOyAvLyBkaXNhYmxlZCBieSBkZWZhdWx0LCBlbmFibGVkIGZvciBCTFNcbiAgICAgICAgYUluUmFuZ2UoJ3ByaXZhdGUga2V5JywgbnVtLCBfMW4sIE4pOyAvLyBudW0gaW4gcmFuZ2UgWzEuLk4tMV1cbiAgICAgICAgcmV0dXJuIG51bTtcbiAgICB9XG4gICAgZnVuY3Rpb24gYXByanBvaW50KG90aGVyKSB7XG4gICAgICAgIGlmICghKG90aGVyIGluc3RhbmNlb2YgUG9pbnQpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdQcm9qZWN0aXZlUG9pbnQgZXhwZWN0ZWQnKTtcbiAgICB9XG4gICAgLy8gTWVtb2l6ZWQgdG9BZmZpbmUgLyB2YWxpZGl0eSBjaGVjay4gVGhleSBhcmUgaGVhdnkuIFBvaW50cyBhcmUgaW1tdXRhYmxlLlxuICAgIC8vIENvbnZlcnRzIFByb2plY3RpdmUgcG9pbnQgdG8gYWZmaW5lICh4LCB5KSBjb29yZGluYXRlcy5cbiAgICAvLyBDYW4gYWNjZXB0IHByZWNvbXB1dGVkIFpeLTEgLSBmb3IgZXhhbXBsZSwgZnJvbSBpbnZlcnRCYXRjaC5cbiAgICAvLyAoWCwgWSwgWikg4oiLICh4PVgvWiwgeT1ZL1opXG4gICAgY29uc3QgdG9BZmZpbmVNZW1vID0gbWVtb2l6ZWQoKHAsIGl6KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcHg6IHgsIHB5OiB5LCBwejogeiB9ID0gcDtcbiAgICAgICAgLy8gRmFzdC1wYXRoIGZvciBub3JtYWxpemVkIHBvaW50c1xuICAgICAgICBpZiAoRnAuZXFsKHosIEZwLk9ORSkpXG4gICAgICAgICAgICByZXR1cm4geyB4LCB5IH07XG4gICAgICAgIGNvbnN0IGlzMCA9IHAuaXMwKCk7XG4gICAgICAgIC8vIElmIGludlogd2FzIDAsIHdlIHJldHVybiB6ZXJvIHBvaW50LiBIb3dldmVyIHdlIHN0aWxsIHdhbnQgdG8gZXhlY3V0ZVxuICAgICAgICAvLyBhbGwgb3BlcmF0aW9ucywgc28gd2UgcmVwbGFjZSBpbnZaIHdpdGggYSByYW5kb20gbnVtYmVyLCAxLlxuICAgICAgICBpZiAoaXogPT0gbnVsbClcbiAgICAgICAgICAgIGl6ID0gaXMwID8gRnAuT05FIDogRnAuaW52KHopO1xuICAgICAgICBjb25zdCBheCA9IEZwLm11bCh4LCBpeik7XG4gICAgICAgIGNvbnN0IGF5ID0gRnAubXVsKHksIGl6KTtcbiAgICAgICAgY29uc3QgenogPSBGcC5tdWwoeiwgaXopO1xuICAgICAgICBpZiAoaXMwKVxuICAgICAgICAgICAgcmV0dXJuIHsgeDogRnAuWkVSTywgeTogRnAuWkVSTyB9O1xuICAgICAgICBpZiAoIUZwLmVxbCh6eiwgRnAuT05FKSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaW52WiB3YXMgaW52YWxpZCcpO1xuICAgICAgICByZXR1cm4geyB4OiBheCwgeTogYXkgfTtcbiAgICB9KTtcbiAgICAvLyBOT1RFOiBvbiBleGNlcHRpb24gdGhpcyB3aWxsIGNyYXNoICdjYWNoZWQnIGFuZCBubyB2YWx1ZSB3aWxsIGJlIHNldC5cbiAgICAvLyBPdGhlcndpc2UgdHJ1ZSB3aWxsIGJlIHJldHVyblxuICAgIGNvbnN0IGFzc2VydFZhbGlkTWVtbyA9IG1lbW9pemVkKChwKSA9PiB7XG4gICAgICAgIGlmIChwLmlzMCgpKSB7XG4gICAgICAgICAgICAvLyAoMCwgMSwgMCkgYWthIFpFUk8gaXMgaW52YWxpZCBpbiBtb3N0IGNvbnRleHRzLlxuICAgICAgICAgICAgLy8gSW4gQkxTLCBaRVJPIGNhbiBiZSBzZXJpYWxpemVkLCBzbyB3ZSBhbGxvdyBpdC5cbiAgICAgICAgICAgIC8vICgwLCAwLCAwKSBpcyBpbnZhbGlkIHJlcHJlc2VudGF0aW9uIG9mIFpFUk8uXG4gICAgICAgICAgICBpZiAoQ1VSVkUuYWxsb3dJbmZpbml0eVBvaW50ICYmICFGcC5pczAocC5weSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgcG9pbnQ6IFpFUk8nKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBTb21lIDNyZC1wYXJ0eSB0ZXN0IHZlY3RvcnMgcmVxdWlyZSBkaWZmZXJlbnQgd29yZGluZyBiZXR3ZWVuIGhlcmUgJiBgZnJvbUNvbXByZXNzZWRIZXhgXG4gICAgICAgIGNvbnN0IHsgeCwgeSB9ID0gcC50b0FmZmluZSgpO1xuICAgICAgICAvLyBDaGVjayBpZiB4LCB5IGFyZSB2YWxpZCBmaWVsZCBlbGVtZW50c1xuICAgICAgICBpZiAoIUZwLmlzVmFsaWQoeCkgfHwgIUZwLmlzVmFsaWQoeSkpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBwb2ludDogeCBvciB5IG5vdCBGRScpO1xuICAgICAgICBpZiAoIWlzVmFsaWRYWSh4LCB5KSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYmFkIHBvaW50OiBlcXVhdGlvbiBsZWZ0ICE9IHJpZ2h0Jyk7XG4gICAgICAgIGlmICghcC5pc1RvcnNpb25GcmVlKCkpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBwb2ludDogbm90IGluIHByaW1lLW9yZGVyIHN1Ymdyb3VwJyk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICAgIC8qKlxuICAgICAqIFByb2plY3RpdmUgUG9pbnQgd29ya3MgaW4gM2QgLyBwcm9qZWN0aXZlIChob21vZ2VuZW91cykgY29vcmRpbmF0ZXM6IChYLCBZLCBaKSDiiIsgKHg9WC9aLCB5PVkvWilcbiAgICAgKiBEZWZhdWx0IFBvaW50IHdvcmtzIGluIDJkIC8gYWZmaW5lIGNvb3JkaW5hdGVzOiAoeCwgeSlcbiAgICAgKiBXZSdyZSBkb2luZyBjYWxjdWxhdGlvbnMgaW4gcHJvamVjdGl2ZSwgYmVjYXVzZSBpdHMgb3BlcmF0aW9ucyBkb24ndCByZXF1aXJlIGNvc3RseSBpbnZlcnNpb24uXG4gICAgICovXG4gICAgY2xhc3MgUG9pbnQge1xuICAgICAgICBjb25zdHJ1Y3RvcihweCwgcHksIHB6KSB7XG4gICAgICAgICAgICBpZiAocHggPT0gbnVsbCB8fCAhRnAuaXNWYWxpZChweCkpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd4IHJlcXVpcmVkJyk7XG4gICAgICAgICAgICBpZiAocHkgPT0gbnVsbCB8fCAhRnAuaXNWYWxpZChweSkgfHwgRnAuaXMwKHB5KSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3kgcmVxdWlyZWQnKTtcbiAgICAgICAgICAgIGlmIChweiA9PSBudWxsIHx8ICFGcC5pc1ZhbGlkKHB6KSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3ogcmVxdWlyZWQnKTtcbiAgICAgICAgICAgIHRoaXMucHggPSBweDtcbiAgICAgICAgICAgIHRoaXMucHkgPSBweTtcbiAgICAgICAgICAgIHRoaXMucHogPSBwejtcbiAgICAgICAgICAgIE9iamVjdC5mcmVlemUodGhpcyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gRG9lcyBub3QgdmFsaWRhdGUgaWYgdGhlIHBvaW50IGlzIG9uLWN1cnZlLlxuICAgICAgICAvLyBVc2UgZnJvbUhleCBpbnN0ZWFkLCBvciBjYWxsIGFzc2VydFZhbGlkaXR5KCkgbGF0ZXIuXG4gICAgICAgIHN0YXRpYyBmcm9tQWZmaW5lKHApIHtcbiAgICAgICAgICAgIGNvbnN0IHsgeCwgeSB9ID0gcCB8fCB7fTtcbiAgICAgICAgICAgIGlmICghcCB8fCAhRnAuaXNWYWxpZCh4KSB8fCAhRnAuaXNWYWxpZCh5KSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgYWZmaW5lIHBvaW50Jyk7XG4gICAgICAgICAgICBpZiAocCBpbnN0YW5jZW9mIFBvaW50KVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigncHJvamVjdGl2ZSBwb2ludCBub3QgYWxsb3dlZCcpO1xuICAgICAgICAgICAgY29uc3QgaXMwID0gKGkpID0+IEZwLmVxbChpLCBGcC5aRVJPKTtcbiAgICAgICAgICAgIC8vIGZyb21BZmZpbmUoeDowLCB5OjApIHdvdWxkIHByb2R1Y2UgKHg6MCwgeTowLCB6OjEpLCBidXQgd2UgbmVlZCAoeDowLCB5OjEsIHo6MClcbiAgICAgICAgICAgIGlmIChpczAoeCkgJiYgaXMwKHkpKVxuICAgICAgICAgICAgICAgIHJldHVybiBQb2ludC5aRVJPO1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBQb2ludCh4LCB5LCBGcC5PTkUpO1xuICAgICAgICB9XG4gICAgICAgIGdldCB4KCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudG9BZmZpbmUoKS54O1xuICAgICAgICB9XG4gICAgICAgIGdldCB5KCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudG9BZmZpbmUoKS55O1xuICAgICAgICB9XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUYWtlcyBhIGJ1bmNoIG9mIFByb2plY3RpdmUgUG9pbnRzIGJ1dCBleGVjdXRlcyBvbmx5IG9uZVxuICAgICAgICAgKiBpbnZlcnNpb24gb24gYWxsIG9mIHRoZW0uIEludmVyc2lvbiBpcyB2ZXJ5IHNsb3cgb3BlcmF0aW9uLFxuICAgICAgICAgKiBzbyB0aGlzIGltcHJvdmVzIHBlcmZvcm1hbmNlIG1hc3NpdmVseS5cbiAgICAgICAgICogT3B0aW1pemF0aW9uOiBjb252ZXJ0cyBhIGxpc3Qgb2YgcHJvamVjdGl2ZSBwb2ludHMgdG8gYSBsaXN0IG9mIGlkZW50aWNhbCBwb2ludHMgd2l0aCBaPTEuXG4gICAgICAgICAqL1xuICAgICAgICBzdGF0aWMgbm9ybWFsaXplWihwb2ludHMpIHtcbiAgICAgICAgICAgIGNvbnN0IHRvSW52ID0gRnBJbnZlcnRCYXRjaChGcCwgcG9pbnRzLm1hcCgocCkgPT4gcC5weikpO1xuICAgICAgICAgICAgcmV0dXJuIHBvaW50cy5tYXAoKHAsIGkpID0+IHAudG9BZmZpbmUodG9JbnZbaV0pKS5tYXAoUG9pbnQuZnJvbUFmZmluZSk7XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIENvbnZlcnRzIGhhc2ggc3RyaW5nIG9yIFVpbnQ4QXJyYXkgdG8gUG9pbnQuXG4gICAgICAgICAqIEBwYXJhbSBoZXggc2hvcnQvbG9uZyBFQ0RTQSBoZXhcbiAgICAgICAgICovXG4gICAgICAgIHN0YXRpYyBmcm9tSGV4KGhleCkge1xuICAgICAgICAgICAgY29uc3QgUCA9IFBvaW50LmZyb21BZmZpbmUoZnJvbUJ5dGVzKGVuc3VyZUJ5dGVzKCdwb2ludEhleCcsIGhleCkpKTtcbiAgICAgICAgICAgIFAuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICAgICAgICAgIHJldHVybiBQO1xuICAgICAgICB9XG4gICAgICAgIC8vIE11bHRpcGxpZXMgZ2VuZXJhdG9yIHBvaW50IGJ5IHByaXZhdGVLZXkuXG4gICAgICAgIHN0YXRpYyBmcm9tUHJpdmF0ZUtleShwcml2YXRlS2V5KSB7XG4gICAgICAgICAgICByZXR1cm4gUG9pbnQuQkFTRS5tdWx0aXBseShub3JtUHJpdmF0ZUtleVRvU2NhbGFyKHByaXZhdGVLZXkpKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBNdWx0aXNjYWxhciBNdWx0aXBsaWNhdGlvblxuICAgICAgICBzdGF0aWMgbXNtKHBvaW50cywgc2NhbGFycykge1xuICAgICAgICAgICAgcmV0dXJuIHBpcHBlbmdlcihQb2ludCwgRm4sIHBvaW50cywgc2NhbGFycyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gXCJQcml2YXRlIG1ldGhvZFwiLCBkb24ndCB1c2UgaXQgZGlyZWN0bHlcbiAgICAgICAgX3NldFdpbmRvd1NpemUod2luZG93U2l6ZSkge1xuICAgICAgICAgICAgd25hZi5zZXRXaW5kb3dTaXplKHRoaXMsIHdpbmRvd1NpemUpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEEgcG9pbnQgb24gY3VydmUgaXMgdmFsaWQgaWYgaXQgY29uZm9ybXMgdG8gZXF1YXRpb24uXG4gICAgICAgIGFzc2VydFZhbGlkaXR5KCkge1xuICAgICAgICAgICAgYXNzZXJ0VmFsaWRNZW1vKHRoaXMpO1xuICAgICAgICB9XG4gICAgICAgIGhhc0V2ZW5ZKCkge1xuICAgICAgICAgICAgY29uc3QgeyB5IH0gPSB0aGlzLnRvQWZmaW5lKCk7XG4gICAgICAgICAgICBpZiAoRnAuaXNPZGQpXG4gICAgICAgICAgICAgICAgcmV0dXJuICFGcC5pc09kZCh5KTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkZpZWxkIGRvZXNuJ3Qgc3VwcG9ydCBpc09kZFwiKTtcbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgICAgICogQ29tcGFyZSBvbmUgcG9pbnQgdG8gYW5vdGhlci5cbiAgICAgICAgICovXG4gICAgICAgIGVxdWFscyhvdGhlcikge1xuICAgICAgICAgICAgYXByanBvaW50KG90aGVyKTtcbiAgICAgICAgICAgIGNvbnN0IHsgcHg6IFgxLCBweTogWTEsIHB6OiBaMSB9ID0gdGhpcztcbiAgICAgICAgICAgIGNvbnN0IHsgcHg6IFgyLCBweTogWTIsIHB6OiBaMiB9ID0gb3RoZXI7XG4gICAgICAgICAgICBjb25zdCBVMSA9IEZwLmVxbChGcC5tdWwoWDEsIFoyKSwgRnAubXVsKFgyLCBaMSkpO1xuICAgICAgICAgICAgY29uc3QgVTIgPSBGcC5lcWwoRnAubXVsKFkxLCBaMiksIEZwLm11bChZMiwgWjEpKTtcbiAgICAgICAgICAgIHJldHVybiBVMSAmJiBVMjtcbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgICAgICogRmxpcHMgcG9pbnQgdG8gb25lIGNvcnJlc3BvbmRpbmcgdG8gKHgsIC15KSBpbiBBZmZpbmUgY29vcmRpbmF0ZXMuXG4gICAgICAgICAqL1xuICAgICAgICBuZWdhdGUoKSB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMucHgsIEZwLm5lZyh0aGlzLnB5KSwgdGhpcy5weik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUmVuZXMtQ29zdGVsbG8tQmF0aW5hIGV4Y2VwdGlvbi1mcmVlIGRvdWJsaW5nIGZvcm11bGEuXG4gICAgICAgIC8vIFRoZXJlIGlzIDMwJSBmYXN0ZXIgSmFjb2JpYW4gZm9ybXVsYSwgYnV0IGl0IGlzIG5vdCBjb21wbGV0ZS5cbiAgICAgICAgLy8gaHR0cHM6Ly9lcHJpbnQuaWFjci5vcmcvMjAxNS8xMDYwLCBhbGdvcml0aG0gM1xuICAgICAgICAvLyBDb3N0OiA4TSArIDNTICsgMyphICsgMipiMyArIDE1YWRkLlxuICAgICAgICBkb3VibGUoKSB7XG4gICAgICAgICAgICBjb25zdCB7IGEsIGIgfSA9IENVUlZFO1xuICAgICAgICAgICAgY29uc3QgYjMgPSBGcC5tdWwoYiwgXzNuKTtcbiAgICAgICAgICAgIGNvbnN0IHsgcHg6IFgxLCBweTogWTEsIHB6OiBaMSB9ID0gdGhpcztcbiAgICAgICAgICAgIGxldCBYMyA9IEZwLlpFUk8sIFkzID0gRnAuWkVSTywgWjMgPSBGcC5aRVJPOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgICAgICAgIGxldCB0MCA9IEZwLm11bChYMSwgWDEpOyAvLyBzdGVwIDFcbiAgICAgICAgICAgIGxldCB0MSA9IEZwLm11bChZMSwgWTEpO1xuICAgICAgICAgICAgbGV0IHQyID0gRnAubXVsKFoxLCBaMSk7XG4gICAgICAgICAgICBsZXQgdDMgPSBGcC5tdWwoWDEsIFkxKTtcbiAgICAgICAgICAgIHQzID0gRnAuYWRkKHQzLCB0Myk7IC8vIHN0ZXAgNVxuICAgICAgICAgICAgWjMgPSBGcC5tdWwoWDEsIFoxKTtcbiAgICAgICAgICAgIFozID0gRnAuYWRkKFozLCBaMyk7XG4gICAgICAgICAgICBYMyA9IEZwLm11bChhLCBaMyk7XG4gICAgICAgICAgICBZMyA9IEZwLm11bChiMywgdDIpO1xuICAgICAgICAgICAgWTMgPSBGcC5hZGQoWDMsIFkzKTsgLy8gc3RlcCAxMFxuICAgICAgICAgICAgWDMgPSBGcC5zdWIodDEsIFkzKTtcbiAgICAgICAgICAgIFkzID0gRnAuYWRkKHQxLCBZMyk7XG4gICAgICAgICAgICBZMyA9IEZwLm11bChYMywgWTMpO1xuICAgICAgICAgICAgWDMgPSBGcC5tdWwodDMsIFgzKTtcbiAgICAgICAgICAgIFozID0gRnAubXVsKGIzLCBaMyk7IC8vIHN0ZXAgMTVcbiAgICAgICAgICAgIHQyID0gRnAubXVsKGEsIHQyKTtcbiAgICAgICAgICAgIHQzID0gRnAuc3ViKHQwLCB0Mik7XG4gICAgICAgICAgICB0MyA9IEZwLm11bChhLCB0Myk7XG4gICAgICAgICAgICB0MyA9IEZwLmFkZCh0MywgWjMpO1xuICAgICAgICAgICAgWjMgPSBGcC5hZGQodDAsIHQwKTsgLy8gc3RlcCAyMFxuICAgICAgICAgICAgdDAgPSBGcC5hZGQoWjMsIHQwKTtcbiAgICAgICAgICAgIHQwID0gRnAuYWRkKHQwLCB0Mik7XG4gICAgICAgICAgICB0MCA9IEZwLm11bCh0MCwgdDMpO1xuICAgICAgICAgICAgWTMgPSBGcC5hZGQoWTMsIHQwKTtcbiAgICAgICAgICAgIHQyID0gRnAubXVsKFkxLCBaMSk7IC8vIHN0ZXAgMjVcbiAgICAgICAgICAgIHQyID0gRnAuYWRkKHQyLCB0Mik7XG4gICAgICAgICAgICB0MCA9IEZwLm11bCh0MiwgdDMpO1xuICAgICAgICAgICAgWDMgPSBGcC5zdWIoWDMsIHQwKTtcbiAgICAgICAgICAgIFozID0gRnAubXVsKHQyLCB0MSk7XG4gICAgICAgICAgICBaMyA9IEZwLmFkZChaMywgWjMpOyAvLyBzdGVwIDMwXG4gICAgICAgICAgICBaMyA9IEZwLmFkZChaMywgWjMpO1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBQb2ludChYMywgWTMsIFozKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBSZW5lcy1Db3N0ZWxsby1CYXRpbmEgZXhjZXB0aW9uLWZyZWUgYWRkaXRpb24gZm9ybXVsYS5cbiAgICAgICAgLy8gVGhlcmUgaXMgMzAlIGZhc3RlciBKYWNvYmlhbiBmb3JtdWxhLCBidXQgaXQgaXMgbm90IGNvbXBsZXRlLlxuICAgICAgICAvLyBodHRwczovL2VwcmludC5pYWNyLm9yZy8yMDE1LzEwNjAsIGFsZ29yaXRobSAxXG4gICAgICAgIC8vIENvc3Q6IDEyTSArIDBTICsgMyphICsgMypiMyArIDIzYWRkLlxuICAgICAgICBhZGQob3RoZXIpIHtcbiAgICAgICAgICAgIGFwcmpwb2ludChvdGhlcik7XG4gICAgICAgICAgICBjb25zdCB7IHB4OiBYMSwgcHk6IFkxLCBwejogWjEgfSA9IHRoaXM7XG4gICAgICAgICAgICBjb25zdCB7IHB4OiBYMiwgcHk6IFkyLCBwejogWjIgfSA9IG90aGVyO1xuICAgICAgICAgICAgbGV0IFgzID0gRnAuWkVSTywgWTMgPSBGcC5aRVJPLCBaMyA9IEZwLlpFUk87IC8vIHByZXR0aWVyLWlnbm9yZVxuICAgICAgICAgICAgY29uc3QgYSA9IENVUlZFLmE7XG4gICAgICAgICAgICBjb25zdCBiMyA9IEZwLm11bChDVVJWRS5iLCBfM24pO1xuICAgICAgICAgICAgbGV0IHQwID0gRnAubXVsKFgxLCBYMik7IC8vIHN0ZXAgMVxuICAgICAgICAgICAgbGV0IHQxID0gRnAubXVsKFkxLCBZMik7XG4gICAgICAgICAgICBsZXQgdDIgPSBGcC5tdWwoWjEsIFoyKTtcbiAgICAgICAgICAgIGxldCB0MyA9IEZwLmFkZChYMSwgWTEpO1xuICAgICAgICAgICAgbGV0IHQ0ID0gRnAuYWRkKFgyLCBZMik7IC8vIHN0ZXAgNVxuICAgICAgICAgICAgdDMgPSBGcC5tdWwodDMsIHQ0KTtcbiAgICAgICAgICAgIHQ0ID0gRnAuYWRkKHQwLCB0MSk7XG4gICAgICAgICAgICB0MyA9IEZwLnN1Yih0MywgdDQpO1xuICAgICAgICAgICAgdDQgPSBGcC5hZGQoWDEsIFoxKTtcbiAgICAgICAgICAgIGxldCB0NSA9IEZwLmFkZChYMiwgWjIpOyAvLyBzdGVwIDEwXG4gICAgICAgICAgICB0NCA9IEZwLm11bCh0NCwgdDUpO1xuICAgICAgICAgICAgdDUgPSBGcC5hZGQodDAsIHQyKTtcbiAgICAgICAgICAgIHQ0ID0gRnAuc3ViKHQ0LCB0NSk7XG4gICAgICAgICAgICB0NSA9IEZwLmFkZChZMSwgWjEpO1xuICAgICAgICAgICAgWDMgPSBGcC5hZGQoWTIsIFoyKTsgLy8gc3RlcCAxNVxuICAgICAgICAgICAgdDUgPSBGcC5tdWwodDUsIFgzKTtcbiAgICAgICAgICAgIFgzID0gRnAuYWRkKHQxLCB0Mik7XG4gICAgICAgICAgICB0NSA9IEZwLnN1Yih0NSwgWDMpO1xuICAgICAgICAgICAgWjMgPSBGcC5tdWwoYSwgdDQpO1xuICAgICAgICAgICAgWDMgPSBGcC5tdWwoYjMsIHQyKTsgLy8gc3RlcCAyMFxuICAgICAgICAgICAgWjMgPSBGcC5hZGQoWDMsIFozKTtcbiAgICAgICAgICAgIFgzID0gRnAuc3ViKHQxLCBaMyk7XG4gICAgICAgICAgICBaMyA9IEZwLmFkZCh0MSwgWjMpO1xuICAgICAgICAgICAgWTMgPSBGcC5tdWwoWDMsIFozKTtcbiAgICAgICAgICAgIHQxID0gRnAuYWRkKHQwLCB0MCk7IC8vIHN0ZXAgMjVcbiAgICAgICAgICAgIHQxID0gRnAuYWRkKHQxLCB0MCk7XG4gICAgICAgICAgICB0MiA9IEZwLm11bChhLCB0Mik7XG4gICAgICAgICAgICB0NCA9IEZwLm11bChiMywgdDQpO1xuICAgICAgICAgICAgdDEgPSBGcC5hZGQodDEsIHQyKTtcbiAgICAgICAgICAgIHQyID0gRnAuc3ViKHQwLCB0Mik7IC8vIHN0ZXAgMzBcbiAgICAgICAgICAgIHQyID0gRnAubXVsKGEsIHQyKTtcbiAgICAgICAgICAgIHQ0ID0gRnAuYWRkKHQ0LCB0Mik7XG4gICAgICAgICAgICB0MCA9IEZwLm11bCh0MSwgdDQpO1xuICAgICAgICAgICAgWTMgPSBGcC5hZGQoWTMsIHQwKTtcbiAgICAgICAgICAgIHQwID0gRnAubXVsKHQ1LCB0NCk7IC8vIHN0ZXAgMzVcbiAgICAgICAgICAgIFgzID0gRnAubXVsKHQzLCBYMyk7XG4gICAgICAgICAgICBYMyA9IEZwLnN1YihYMywgdDApO1xuICAgICAgICAgICAgdDAgPSBGcC5tdWwodDMsIHQxKTtcbiAgICAgICAgICAgIFozID0gRnAubXVsKHQ1LCBaMyk7XG4gICAgICAgICAgICBaMyA9IEZwLmFkZChaMywgdDApOyAvLyBzdGVwIDQwXG4gICAgICAgICAgICByZXR1cm4gbmV3IFBvaW50KFgzLCBZMywgWjMpO1xuICAgICAgICB9XG4gICAgICAgIHN1YnRyYWN0KG90aGVyKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5hZGQob3RoZXIubmVnYXRlKCkpO1xuICAgICAgICB9XG4gICAgICAgIGlzMCgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmVxdWFscyhQb2ludC5aRVJPKTtcbiAgICAgICAgfVxuICAgICAgICB3TkFGKG4pIHtcbiAgICAgICAgICAgIHJldHVybiB3bmFmLndOQUZDYWNoZWQodGhpcywgbiwgUG9pbnQubm9ybWFsaXplWik7XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIE5vbi1jb25zdGFudC10aW1lIG11bHRpcGxpY2F0aW9uLiBVc2VzIGRvdWJsZS1hbmQtYWRkIGFsZ29yaXRobS5cbiAgICAgICAgICogSXQncyBmYXN0ZXIsIGJ1dCBzaG91bGQgb25seSBiZSB1c2VkIHdoZW4geW91IGRvbid0IGNhcmUgYWJvdXRcbiAgICAgICAgICogYW4gZXhwb3NlZCBwcml2YXRlIGtleSBlLmcuIHNpZyB2ZXJpZmljYXRpb24sIHdoaWNoIHdvcmtzIG92ZXIgKnB1YmxpYyoga2V5cy5cbiAgICAgICAgICovXG4gICAgICAgIG11bHRpcGx5VW5zYWZlKHNjKSB7XG4gICAgICAgICAgICBjb25zdCB7IGVuZG8sIG46IE4gfSA9IENVUlZFO1xuICAgICAgICAgICAgYUluUmFuZ2UoJ3NjYWxhcicsIHNjLCBfMG4sIE4pO1xuICAgICAgICAgICAgY29uc3QgSSA9IFBvaW50LlpFUk87XG4gICAgICAgICAgICBpZiAoc2MgPT09IF8wbilcbiAgICAgICAgICAgICAgICByZXR1cm4gSTtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzMCgpIHx8IHNjID09PSBfMW4pXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgICAgICAvLyBDYXNlIGE6IG5vIGVuZG9tb3JwaGlzbS4gQ2FzZSBiOiBoYXMgcHJlY29tcHV0ZXMuXG4gICAgICAgICAgICBpZiAoIWVuZG8gfHwgd25hZi5oYXNQcmVjb21wdXRlcyh0aGlzKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gd25hZi53TkFGQ2FjaGVkVW5zYWZlKHRoaXMsIHNjLCBQb2ludC5ub3JtYWxpemVaKTtcbiAgICAgICAgICAgIC8vIENhc2UgYzogZW5kb21vcnBoaXNtXG4gICAgICAgICAgICAvKiogU2VlIGRvY3MgZm9yIHtAbGluayBFbmRvbW9ycGhpc21PcHRzfSAqL1xuICAgICAgICAgICAgbGV0IHsgazFuZWcsIGsxLCBrMm5lZywgazIgfSA9IGVuZG8uc3BsaXRTY2FsYXIoc2MpO1xuICAgICAgICAgICAgbGV0IGsxcCA9IEk7XG4gICAgICAgICAgICBsZXQgazJwID0gSTtcbiAgICAgICAgICAgIGxldCBkID0gdGhpcztcbiAgICAgICAgICAgIHdoaWxlIChrMSA+IF8wbiB8fCBrMiA+IF8wbikge1xuICAgICAgICAgICAgICAgIGlmIChrMSAmIF8xbilcbiAgICAgICAgICAgICAgICAgICAgazFwID0gazFwLmFkZChkKTtcbiAgICAgICAgICAgICAgICBpZiAoazIgJiBfMW4pXG4gICAgICAgICAgICAgICAgICAgIGsycCA9IGsycC5hZGQoZCk7XG4gICAgICAgICAgICAgICAgZCA9IGQuZG91YmxlKCk7XG4gICAgICAgICAgICAgICAgazEgPj49IF8xbjtcbiAgICAgICAgICAgICAgICBrMiA+Pj0gXzFuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGsxbmVnKVxuICAgICAgICAgICAgICAgIGsxcCA9IGsxcC5uZWdhdGUoKTtcbiAgICAgICAgICAgIGlmIChrMm5lZylcbiAgICAgICAgICAgICAgICBrMnAgPSBrMnAubmVnYXRlKCk7XG4gICAgICAgICAgICBrMnAgPSBuZXcgUG9pbnQoRnAubXVsKGsycC5weCwgZW5kby5iZXRhKSwgazJwLnB5LCBrMnAucHopO1xuICAgICAgICAgICAgcmV0dXJuIGsxcC5hZGQoazJwKTtcbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgICAgICogQ29uc3RhbnQgdGltZSBtdWx0aXBsaWNhdGlvbi5cbiAgICAgICAgICogVXNlcyB3TkFGIG1ldGhvZC4gV2luZG93ZWQgbWV0aG9kIG1heSBiZSAxMCUgZmFzdGVyLFxuICAgICAgICAgKiBidXQgdGFrZXMgMnggbG9uZ2VyIHRvIGdlbmVyYXRlIGFuZCBjb25zdW1lcyAyeCBtZW1vcnkuXG4gICAgICAgICAqIFVzZXMgcHJlY29tcHV0ZXMgd2hlbiBhdmFpbGFibGUuXG4gICAgICAgICAqIFVzZXMgZW5kb21vcnBoaXNtIGZvciBLb2JsaXR6IGN1cnZlcy5cbiAgICAgICAgICogQHBhcmFtIHNjYWxhciBieSB3aGljaCB0aGUgcG9pbnQgd291bGQgYmUgbXVsdGlwbGllZFxuICAgICAgICAgKiBAcmV0dXJucyBOZXcgcG9pbnRcbiAgICAgICAgICovXG4gICAgICAgIG11bHRpcGx5KHNjYWxhcikge1xuICAgICAgICAgICAgY29uc3QgeyBlbmRvLCBuOiBOIH0gPSBDVVJWRTtcbiAgICAgICAgICAgIGFJblJhbmdlKCdzY2FsYXInLCBzY2FsYXIsIF8xbiwgTik7XG4gICAgICAgICAgICBsZXQgcG9pbnQsIGZha2U7IC8vIEZha2UgcG9pbnQgaXMgdXNlZCB0byBjb25zdC10aW1lIG11bHRcbiAgICAgICAgICAgIC8qKiBTZWUgZG9jcyBmb3Ige0BsaW5rIEVuZG9tb3JwaGlzbU9wdHN9ICovXG4gICAgICAgICAgICBpZiAoZW5kbykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgazFuZWcsIGsxLCBrMm5lZywgazIgfSA9IGVuZG8uc3BsaXRTY2FsYXIoc2NhbGFyKTtcbiAgICAgICAgICAgICAgICBsZXQgeyBwOiBrMXAsIGY6IGYxcCB9ID0gdGhpcy53TkFGKGsxKTtcbiAgICAgICAgICAgICAgICBsZXQgeyBwOiBrMnAsIGY6IGYycCB9ID0gdGhpcy53TkFGKGsyKTtcbiAgICAgICAgICAgICAgICBrMXAgPSB3bmFmLmNvbnN0VGltZU5lZ2F0ZShrMW5lZywgazFwKTtcbiAgICAgICAgICAgICAgICBrMnAgPSB3bmFmLmNvbnN0VGltZU5lZ2F0ZShrMm5lZywgazJwKTtcbiAgICAgICAgICAgICAgICBrMnAgPSBuZXcgUG9pbnQoRnAubXVsKGsycC5weCwgZW5kby5iZXRhKSwgazJwLnB5LCBrMnAucHopO1xuICAgICAgICAgICAgICAgIHBvaW50ID0gazFwLmFkZChrMnApO1xuICAgICAgICAgICAgICAgIGZha2UgPSBmMXAuYWRkKGYycCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IHAsIGYgfSA9IHRoaXMud05BRihzY2FsYXIpO1xuICAgICAgICAgICAgICAgIHBvaW50ID0gcDtcbiAgICAgICAgICAgICAgICBmYWtlID0gZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIE5vcm1hbGl6ZSBgemAgZm9yIGJvdGggcG9pbnRzLCBidXQgcmV0dXJuIG9ubHkgcmVhbCBvbmVcbiAgICAgICAgICAgIHJldHVybiBQb2ludC5ub3JtYWxpemVaKFtwb2ludCwgZmFrZV0pWzBdO1xuICAgICAgICB9XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFZmZpY2llbnRseSBjYWxjdWxhdGUgYGFQICsgYlFgLiBVbnNhZmUsIGNhbiBleHBvc2UgcHJpdmF0ZSBrZXksIGlmIHVzZWQgaW5jb3JyZWN0bHkuXG4gICAgICAgICAqIE5vdCB1c2luZyBTdHJhdXNzLVNoYW1pciB0cmljazogcHJlY29tcHV0YXRpb24gdGFibGVzIGFyZSBmYXN0ZXIuXG4gICAgICAgICAqIFRoZSB0cmljayBjb3VsZCBiZSB1c2VmdWwgaWYgYm90aCBQIGFuZCBRIGFyZSBub3QgRyAobm90IGluIG91ciBjYXNlKS5cbiAgICAgICAgICogQHJldHVybnMgbm9uLXplcm8gYWZmaW5lIHBvaW50XG4gICAgICAgICAqL1xuICAgICAgICBtdWx0aXBseUFuZEFkZFVuc2FmZShRLCBhLCBiKSB7XG4gICAgICAgICAgICBjb25zdCBHID0gUG9pbnQuQkFTRTsgLy8gTm8gU3RyYXVzcy1TaGFtaXIgdHJpY2s6IHdlIGhhdmUgMTAlIGZhc3RlciBHIHByZWNvbXB1dGVzXG4gICAgICAgICAgICBjb25zdCBtdWwgPSAoUCwgYSAvLyBTZWxlY3QgZmFzdGVyIG11bHRpcGx5KCkgbWV0aG9kXG4gICAgICAgICAgICApID0+IChhID09PSBfMG4gfHwgYSA9PT0gXzFuIHx8ICFQLmVxdWFscyhHKSA/IFAubXVsdGlwbHlVbnNhZmUoYSkgOiBQLm11bHRpcGx5KGEpKTtcbiAgICAgICAgICAgIGNvbnN0IHN1bSA9IG11bCh0aGlzLCBhKS5hZGQobXVsKFEsIGIpKTtcbiAgICAgICAgICAgIHJldHVybiBzdW0uaXMwKCkgPyB1bmRlZmluZWQgOiBzdW07XG4gICAgICAgIH1cbiAgICAgICAgLy8gQ29udmVydHMgUHJvamVjdGl2ZSBwb2ludCB0byBhZmZpbmUgKHgsIHkpIGNvb3JkaW5hdGVzLlxuICAgICAgICAvLyBDYW4gYWNjZXB0IHByZWNvbXB1dGVkIFpeLTEgLSBmb3IgZXhhbXBsZSwgZnJvbSBpbnZlcnRCYXRjaC5cbiAgICAgICAgLy8gKHgsIHksIHopIOKIiyAoeD14L3osIHk9eS96KVxuICAgICAgICB0b0FmZmluZShpeikge1xuICAgICAgICAgICAgcmV0dXJuIHRvQWZmaW5lTWVtbyh0aGlzLCBpeik7XG4gICAgICAgIH1cbiAgICAgICAgaXNUb3JzaW9uRnJlZSgpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgaDogY29mYWN0b3IsIGlzVG9yc2lvbkZyZWUgfSA9IENVUlZFO1xuICAgICAgICAgICAgaWYgKGNvZmFjdG9yID09PSBfMW4pXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7IC8vIE5vIHN1Ymdyb3VwcywgYWx3YXlzIHRvcnNpb24tZnJlZVxuICAgICAgICAgICAgaWYgKGlzVG9yc2lvbkZyZWUpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzVG9yc2lvbkZyZWUoUG9pbnQsIHRoaXMpO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdpc1RvcnNpb25GcmVlKCkgaGFzIG5vdCBiZWVuIGRlY2xhcmVkIGZvciB0aGUgZWxsaXB0aWMgY3VydmUnKTtcbiAgICAgICAgfVxuICAgICAgICBjbGVhckNvZmFjdG9yKCkge1xuICAgICAgICAgICAgY29uc3QgeyBoOiBjb2ZhY3RvciwgY2xlYXJDb2ZhY3RvciB9ID0gQ1VSVkU7XG4gICAgICAgICAgICBpZiAoY29mYWN0b3IgPT09IF8xbilcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpczsgLy8gRmFzdC1wYXRoXG4gICAgICAgICAgICBpZiAoY2xlYXJDb2ZhY3RvcilcbiAgICAgICAgICAgICAgICByZXR1cm4gY2xlYXJDb2ZhY3RvcihQb2ludCwgdGhpcyk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5tdWx0aXBseVVuc2FmZShDVVJWRS5oKTtcbiAgICAgICAgfVxuICAgICAgICB0b1Jhd0J5dGVzKGlzQ29tcHJlc3NlZCA9IHRydWUpIHtcbiAgICAgICAgICAgIGFib29sKCdpc0NvbXByZXNzZWQnLCBpc0NvbXByZXNzZWQpO1xuICAgICAgICAgICAgdGhpcy5hc3NlcnRWYWxpZGl0eSgpO1xuICAgICAgICAgICAgcmV0dXJuIHRvQnl0ZXMoUG9pbnQsIHRoaXMsIGlzQ29tcHJlc3NlZCk7XG4gICAgICAgIH1cbiAgICAgICAgdG9IZXgoaXNDb21wcmVzc2VkID0gdHJ1ZSkge1xuICAgICAgICAgICAgYWJvb2woJ2lzQ29tcHJlc3NlZCcsIGlzQ29tcHJlc3NlZCk7XG4gICAgICAgICAgICByZXR1cm4gYnl0ZXNUb0hleCh0aGlzLnRvUmF3Qnl0ZXMoaXNDb21wcmVzc2VkKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gYmFzZSAvIGdlbmVyYXRvciBwb2ludFxuICAgIFBvaW50LkJBU0UgPSBuZXcgUG9pbnQoQ1VSVkUuR3gsIENVUlZFLkd5LCBGcC5PTkUpO1xuICAgIC8vIHplcm8gLyBpbmZpbml0eSAvIGlkZW50aXR5IHBvaW50XG4gICAgUG9pbnQuWkVSTyA9IG5ldyBQb2ludChGcC5aRVJPLCBGcC5PTkUsIEZwLlpFUk8pOyAvLyAwLCAxLCAwXG4gICAgY29uc3QgeyBlbmRvLCBuQml0TGVuZ3RoIH0gPSBDVVJWRTtcbiAgICBjb25zdCB3bmFmID0gd05BRihQb2ludCwgZW5kbyA/IE1hdGguY2VpbChuQml0TGVuZ3RoIC8gMikgOiBuQml0TGVuZ3RoKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBDVVJWRSxcbiAgICAgICAgUHJvamVjdGl2ZVBvaW50OiBQb2ludCxcbiAgICAgICAgbm9ybVByaXZhdGVLZXlUb1NjYWxhcixcbiAgICAgICAgd2VpZXJzdHJhc3NFcXVhdGlvbixcbiAgICAgICAgaXNXaXRoaW5DdXJ2ZU9yZGVyLFxuICAgIH07XG59XG5mdW5jdGlvbiB2YWxpZGF0ZU9wdHMoY3VydmUpIHtcbiAgICBjb25zdCBvcHRzID0gdmFsaWRhdGVCYXNpYyhjdXJ2ZSk7XG4gICAgdmFsaWRhdGVPYmplY3Qob3B0cywge1xuICAgICAgICBoYXNoOiAnaGFzaCcsXG4gICAgICAgIGhtYWM6ICdmdW5jdGlvbicsXG4gICAgICAgIHJhbmRvbUJ5dGVzOiAnZnVuY3Rpb24nLFxuICAgIH0sIHtcbiAgICAgICAgYml0czJpbnQ6ICdmdW5jdGlvbicsXG4gICAgICAgIGJpdHMyaW50X21vZE46ICdmdW5jdGlvbicsXG4gICAgICAgIGxvd1M6ICdib29sZWFuJyxcbiAgICB9KTtcbiAgICByZXR1cm4gT2JqZWN0LmZyZWV6ZSh7IGxvd1M6IHRydWUsIC4uLm9wdHMgfSk7XG59XG4vKipcbiAqIENyZWF0ZXMgc2hvcnQgd2VpZXJzdHJhc3MgY3VydmUgYW5kIEVDRFNBIHNpZ25hdHVyZSBtZXRob2RzIGZvciBpdC5cbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBGaWVsZCB9IGZyb20gJ0Bub2JsZS9jdXJ2ZXMvYWJzdHJhY3QvbW9kdWxhcic7XG4gKiAvLyBCZWZvcmUgdGhhdCwgZGVmaW5lIEJpZ0ludC1zOiBhLCBiLCBwLCBuLCBHeCwgR3lcbiAqIGNvbnN0IGN1cnZlID0gd2VpZXJzdHJhc3MoeyBhLCBiLCBGcDogRmllbGQocCksIG4sIEd4LCBHeSwgaDogMW4gfSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdlaWVyc3RyYXNzKGN1cnZlRGVmKSB7XG4gICAgY29uc3QgQ1VSVkUgPSB2YWxpZGF0ZU9wdHMoY3VydmVEZWYpO1xuICAgIGNvbnN0IHsgRnAsIG46IENVUlZFX09SREVSLCBuQnl0ZUxlbmd0aCwgbkJpdExlbmd0aCB9ID0gQ1VSVkU7XG4gICAgY29uc3QgY29tcHJlc3NlZExlbiA9IEZwLkJZVEVTICsgMTsgLy8gZS5nLiAzMyBmb3IgMzJcbiAgICBjb25zdCB1bmNvbXByZXNzZWRMZW4gPSAyICogRnAuQllURVMgKyAxOyAvLyBlLmcuIDY1IGZvciAzMlxuICAgIGZ1bmN0aW9uIG1vZE4oYSkge1xuICAgICAgICByZXR1cm4gbW9kKGEsIENVUlZFX09SREVSKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gaW52TihhKSB7XG4gICAgICAgIHJldHVybiBpbnZlcnQoYSwgQ1VSVkVfT1JERVIpO1xuICAgIH1cbiAgICBjb25zdCB7IFByb2plY3RpdmVQb2ludDogUG9pbnQsIG5vcm1Qcml2YXRlS2V5VG9TY2FsYXIsIHdlaWVyc3RyYXNzRXF1YXRpb24sIGlzV2l0aGluQ3VydmVPcmRlciwgfSA9IHdlaWVyc3RyYXNzUG9pbnRzKHtcbiAgICAgICAgLi4uQ1VSVkUsXG4gICAgICAgIHRvQnl0ZXMoX2MsIHBvaW50LCBpc0NvbXByZXNzZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGEgPSBwb2ludC50b0FmZmluZSgpO1xuICAgICAgICAgICAgY29uc3QgeCA9IEZwLnRvQnl0ZXMoYS54KTtcbiAgICAgICAgICAgIGNvbnN0IGNhdCA9IGNvbmNhdEJ5dGVzO1xuICAgICAgICAgICAgYWJvb2woJ2lzQ29tcHJlc3NlZCcsIGlzQ29tcHJlc3NlZCk7XG4gICAgICAgICAgICBpZiAoaXNDb21wcmVzc2VkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhdChVaW50OEFycmF5LmZyb20oW3BvaW50Lmhhc0V2ZW5ZKCkgPyAweDAyIDogMHgwM10pLCB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBjYXQoVWludDhBcnJheS5mcm9tKFsweDA0XSksIHgsIEZwLnRvQnl0ZXMoYS55KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGZyb21CeXRlcyhieXRlcykge1xuICAgICAgICAgICAgY29uc3QgbGVuID0gYnl0ZXMubGVuZ3RoO1xuICAgICAgICAgICAgY29uc3QgaGVhZCA9IGJ5dGVzWzBdO1xuICAgICAgICAgICAgY29uc3QgdGFpbCA9IGJ5dGVzLnN1YmFycmF5KDEpO1xuICAgICAgICAgICAgLy8gdGhpcy5hc3NlcnRWYWxpZGl0eSgpIGlzIGRvbmUgaW5zaWRlIG9mIGZyb21IZXhcbiAgICAgICAgICAgIGlmIChsZW4gPT09IGNvbXByZXNzZWRMZW4gJiYgKGhlYWQgPT09IDB4MDIgfHwgaGVhZCA9PT0gMHgwMykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB4ID0gYnl0ZXNUb051bWJlckJFKHRhaWwpO1xuICAgICAgICAgICAgICAgIGlmICghaW5SYW5nZSh4LCBfMW4sIEZwLk9SREVSKSlcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdQb2ludCBpcyBub3Qgb24gY3VydmUnKTtcbiAgICAgICAgICAgICAgICBjb25zdCB5MiA9IHdlaWVyc3RyYXNzRXF1YXRpb24oeCk7IC8vIHnCsiA9IHjCsyArIGF4ICsgYlxuICAgICAgICAgICAgICAgIGxldCB5O1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHkgPSBGcC5zcXJ0KHkyKTsgLy8geSA9IHnCsiBeIChwKzEpLzRcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2ggKHNxcnRFcnJvcikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWZmaXggPSBzcXJ0RXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/ICc6ICcgKyBzcXJ0RXJyb3IubWVzc2FnZSA6ICcnO1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1BvaW50IGlzIG5vdCBvbiBjdXJ2ZScgKyBzdWZmaXgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCBpc1lPZGQgPSAoeSAmIF8xbikgPT09IF8xbjtcbiAgICAgICAgICAgICAgICAvLyBFQ0RTQVxuICAgICAgICAgICAgICAgIGNvbnN0IGlzSGVhZE9kZCA9IChoZWFkICYgMSkgPT09IDE7XG4gICAgICAgICAgICAgICAgaWYgKGlzSGVhZE9kZCAhPT0gaXNZT2RkKVxuICAgICAgICAgICAgICAgICAgICB5ID0gRnAubmVnKHkpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHgsIHkgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGxlbiA9PT0gdW5jb21wcmVzc2VkTGVuICYmIGhlYWQgPT09IDB4MDQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB4ID0gRnAuZnJvbUJ5dGVzKHRhaWwuc3ViYXJyYXkoMCwgRnAuQllURVMpKTtcbiAgICAgICAgICAgICAgICBjb25zdCB5ID0gRnAuZnJvbUJ5dGVzKHRhaWwuc3ViYXJyYXkoRnAuQllURVMsIDIgKiBGcC5CWVRFUykpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHgsIHkgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNsID0gY29tcHJlc3NlZExlbjtcbiAgICAgICAgICAgICAgICBjb25zdCB1bCA9IHVuY29tcHJlc3NlZExlbjtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgUG9pbnQsIGV4cGVjdGVkIGxlbmd0aCBvZiAnICsgY2wgKyAnLCBvciB1bmNvbXByZXNzZWQgJyArIHVsICsgJywgZ290ICcgKyBsZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgIH0pO1xuICAgIGZ1bmN0aW9uIGlzQmlnZ2VyVGhhbkhhbGZPcmRlcihudW1iZXIpIHtcbiAgICAgICAgY29uc3QgSEFMRiA9IENVUlZFX09SREVSID4+IF8xbjtcbiAgICAgICAgcmV0dXJuIG51bWJlciA+IEhBTEY7XG4gICAgfVxuICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZVMocykge1xuICAgICAgICByZXR1cm4gaXNCaWdnZXJUaGFuSGFsZk9yZGVyKHMpID8gbW9kTigtcykgOiBzO1xuICAgIH1cbiAgICAvLyBzbGljZSBieXRlcyBudW1cbiAgICBjb25zdCBzbGNOdW0gPSAoYiwgZnJvbSwgdG8pID0+IGJ5dGVzVG9OdW1iZXJCRShiLnNsaWNlKGZyb20sIHRvKSk7XG4gICAgLyoqXG4gICAgICogRUNEU0Egc2lnbmF0dXJlIHdpdGggaXRzIChyLCBzKSBwcm9wZXJ0aWVzLiBTdXBwb3J0cyBERVIgJiBjb21wYWN0IHJlcHJlc2VudGF0aW9ucy5cbiAgICAgKi9cbiAgICBjbGFzcyBTaWduYXR1cmUge1xuICAgICAgICBjb25zdHJ1Y3RvcihyLCBzLCByZWNvdmVyeSkge1xuICAgICAgICAgICAgYUluUmFuZ2UoJ3InLCByLCBfMW4sIENVUlZFX09SREVSKTsgLy8gciBpbiBbMS4uTl1cbiAgICAgICAgICAgIGFJblJhbmdlKCdzJywgcywgXzFuLCBDVVJWRV9PUkRFUik7IC8vIHMgaW4gWzEuLk5dXG4gICAgICAgICAgICB0aGlzLnIgPSByO1xuICAgICAgICAgICAgdGhpcy5zID0gcztcbiAgICAgICAgICAgIGlmIChyZWNvdmVyeSAhPSBudWxsKVxuICAgICAgICAgICAgICAgIHRoaXMucmVjb3ZlcnkgPSByZWNvdmVyeTtcbiAgICAgICAgICAgIE9iamVjdC5mcmVlemUodGhpcyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gcGFpciAoYnl0ZXMgb2YgciwgYnl0ZXMgb2YgcylcbiAgICAgICAgc3RhdGljIGZyb21Db21wYWN0KGhleCkge1xuICAgICAgICAgICAgY29uc3QgbCA9IG5CeXRlTGVuZ3RoO1xuICAgICAgICAgICAgaGV4ID0gZW5zdXJlQnl0ZXMoJ2NvbXBhY3RTaWduYXR1cmUnLCBoZXgsIGwgKiAyKTtcbiAgICAgICAgICAgIHJldHVybiBuZXcgU2lnbmF0dXJlKHNsY051bShoZXgsIDAsIGwpLCBzbGNOdW0oaGV4LCBsLCAyICogbCkpO1xuICAgICAgICB9XG4gICAgICAgIC8vIERFUiBlbmNvZGVkIEVDRFNBIHNpZ25hdHVyZVxuICAgICAgICAvLyBodHRwczovL2JpdGNvaW4uc3RhY2tleGNoYW5nZS5jb20vcXVlc3Rpb25zLzU3NjQ0L3doYXQtYXJlLXRoZS1wYXJ0cy1vZi1hLWJpdGNvaW4tdHJhbnNhY3Rpb24taW5wdXQtc2NyaXB0XG4gICAgICAgIHN0YXRpYyBmcm9tREVSKGhleCkge1xuICAgICAgICAgICAgY29uc3QgeyByLCBzIH0gPSBERVIudG9TaWcoZW5zdXJlQnl0ZXMoJ0RFUicsIGhleCkpO1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBTaWduYXR1cmUociwgcyk7XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEB0b2RvIHJlbW92ZVxuICAgICAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAgICAgKi9cbiAgICAgICAgYXNzZXJ0VmFsaWRpdHkoKSB7IH1cbiAgICAgICAgYWRkUmVjb3ZlcnlCaXQocmVjb3ZlcnkpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgU2lnbmF0dXJlKHRoaXMuciwgdGhpcy5zLCByZWNvdmVyeSk7XG4gICAgICAgIH1cbiAgICAgICAgcmVjb3ZlclB1YmxpY0tleShtc2dIYXNoKSB7XG4gICAgICAgICAgICBjb25zdCB7IHIsIHMsIHJlY292ZXJ5OiByZWMgfSA9IHRoaXM7XG4gICAgICAgICAgICBjb25zdCBoID0gYml0czJpbnRfbW9kTihlbnN1cmVCeXRlcygnbXNnSGFzaCcsIG1zZ0hhc2gpKTsgLy8gVHJ1bmNhdGUgaGFzaFxuICAgICAgICAgICAgaWYgKHJlYyA9PSBudWxsIHx8ICFbMCwgMSwgMiwgM10uaW5jbHVkZXMocmVjKSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlY292ZXJ5IGlkIGludmFsaWQnKTtcbiAgICAgICAgICAgIGNvbnN0IHJhZGogPSByZWMgPT09IDIgfHwgcmVjID09PSAzID8gciArIENVUlZFLm4gOiByO1xuICAgICAgICAgICAgaWYgKHJhZGogPj0gRnAuT1JERVIpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyZWNvdmVyeSBpZCAyIG9yIDMgaW52YWxpZCcpO1xuICAgICAgICAgICAgY29uc3QgcHJlZml4ID0gKHJlYyAmIDEpID09PSAwID8gJzAyJyA6ICcwMyc7XG4gICAgICAgICAgICBjb25zdCBSID0gUG9pbnQuZnJvbUhleChwcmVmaXggKyBudW1Ub1NpemVkSGV4KHJhZGosIEZwLkJZVEVTKSk7XG4gICAgICAgICAgICBjb25zdCBpciA9IGludk4ocmFkaik7IC8vIHJeLTFcbiAgICAgICAgICAgIGNvbnN0IHUxID0gbW9kTigtaCAqIGlyKTsgLy8gLWhyXi0xXG4gICAgICAgICAgICBjb25zdCB1MiA9IG1vZE4ocyAqIGlyKTsgLy8gc3JeLTFcbiAgICAgICAgICAgIGNvbnN0IFEgPSBQb2ludC5CQVNFLm11bHRpcGx5QW5kQWRkVW5zYWZlKFIsIHUxLCB1Mik7IC8vIChzcl4tMSlSLShocl4tMSlHID0gLShocl4tMSlHICsgKHNyXi0xKVxuICAgICAgICAgICAgaWYgKCFRKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigncG9pbnQgYXQgaW5maW5pZnknKTsgLy8gdW5zYWZlIGlzIGZpbmU6IG5vIHByaXYgZGF0YSBsZWFrZWRcbiAgICAgICAgICAgIFEuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICAgICAgICAgIHJldHVybiBRO1xuICAgICAgICB9XG4gICAgICAgIC8vIFNpZ25hdHVyZXMgc2hvdWxkIGJlIGxvdy1zLCB0byBwcmV2ZW50IG1hbGxlYWJpbGl0eS5cbiAgICAgICAgaGFzSGlnaFMoKSB7XG4gICAgICAgICAgICByZXR1cm4gaXNCaWdnZXJUaGFuSGFsZk9yZGVyKHRoaXMucyk7XG4gICAgICAgIH1cbiAgICAgICAgbm9ybWFsaXplUygpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmhhc0hpZ2hTKCkgPyBuZXcgU2lnbmF0dXJlKHRoaXMuciwgbW9kTigtdGhpcy5zKSwgdGhpcy5yZWNvdmVyeSkgOiB0aGlzO1xuICAgICAgICB9XG4gICAgICAgIC8vIERFUi1lbmNvZGVkXG4gICAgICAgIHRvREVSUmF3Qnl0ZXMoKSB7XG4gICAgICAgICAgICByZXR1cm4gaGV4VG9CeXRlcyh0aGlzLnRvREVSSGV4KCkpO1xuICAgICAgICB9XG4gICAgICAgIHRvREVSSGV4KCkge1xuICAgICAgICAgICAgcmV0dXJuIERFUi5oZXhGcm9tU2lnKHRoaXMpO1xuICAgICAgICB9XG4gICAgICAgIC8vIHBhZGRlZCBieXRlcyBvZiByLCB0aGVuIHBhZGRlZCBieXRlcyBvZiBzXG4gICAgICAgIHRvQ29tcGFjdFJhd0J5dGVzKCkge1xuICAgICAgICAgICAgcmV0dXJuIGhleFRvQnl0ZXModGhpcy50b0NvbXBhY3RIZXgoKSk7XG4gICAgICAgIH1cbiAgICAgICAgdG9Db21wYWN0SGV4KCkge1xuICAgICAgICAgICAgY29uc3QgbCA9IG5CeXRlTGVuZ3RoO1xuICAgICAgICAgICAgcmV0dXJuIG51bVRvU2l6ZWRIZXgodGhpcy5yLCBsKSArIG51bVRvU2l6ZWRIZXgodGhpcy5zLCBsKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCB1dGlscyA9IHtcbiAgICAgICAgaXNWYWxpZFByaXZhdGVLZXkocHJpdmF0ZUtleSkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBub3JtUHJpdmF0ZUtleVRvU2NhbGFyKHByaXZhdGVLZXkpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBub3JtUHJpdmF0ZUtleVRvU2NhbGFyOiBub3JtUHJpdmF0ZUtleVRvU2NhbGFyLFxuICAgICAgICAvKipcbiAgICAgICAgICogUHJvZHVjZXMgY3J5cHRvZ3JhcGhpY2FsbHkgc2VjdXJlIHByaXZhdGUga2V5IGZyb20gcmFuZG9tIG9mIHNpemVcbiAgICAgICAgICogKGdyb3VwTGVuICsgY2VpbChncm91cExlbiAvIDIpKSB3aXRoIG1vZHVsbyBiaWFzIGJlaW5nIG5lZ2xpZ2libGUuXG4gICAgICAgICAqL1xuICAgICAgICByYW5kb21Qcml2YXRlS2V5OiAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsZW5ndGggPSBnZXRNaW5IYXNoTGVuZ3RoKENVUlZFLm4pO1xuICAgICAgICAgICAgcmV0dXJuIG1hcEhhc2hUb0ZpZWxkKENVUlZFLnJhbmRvbUJ5dGVzKGxlbmd0aCksIENVUlZFLm4pO1xuICAgICAgICB9LFxuICAgICAgICAvKipcbiAgICAgICAgICogQ3JlYXRlcyBwcmVjb21wdXRlIHRhYmxlIGZvciBhbiBhcmJpdHJhcnkgRUMgcG9pbnQuIE1ha2VzIHBvaW50IFwiY2FjaGVkXCIuXG4gICAgICAgICAqIEFsbG93cyB0byBtYXNzaXZlbHkgc3BlZWQtdXAgYHBvaW50Lm11bHRpcGx5KHNjYWxhcilgLlxuICAgICAgICAgKiBAcmV0dXJucyBjYWNoZWQgcG9pbnRcbiAgICAgICAgICogQGV4YW1wbGVcbiAgICAgICAgICogY29uc3QgZmFzdCA9IHV0aWxzLnByZWNvbXB1dGUoOCwgUHJvamVjdGl2ZVBvaW50LmZyb21IZXgoc29tZW9uZXNQdWJLZXkpKTtcbiAgICAgICAgICogZmFzdC5tdWx0aXBseShwcml2S2V5KTsgLy8gbXVjaCBmYXN0ZXIgRUNESCBub3dcbiAgICAgICAgICovXG4gICAgICAgIHByZWNvbXB1dGUod2luZG93U2l6ZSA9IDgsIHBvaW50ID0gUG9pbnQuQkFTRSkge1xuICAgICAgICAgICAgcG9pbnQuX3NldFdpbmRvd1NpemUod2luZG93U2l6ZSk7XG4gICAgICAgICAgICBwb2ludC5tdWx0aXBseShCaWdJbnQoMykpOyAvLyAzIGlzIGFyYml0cmFyeSwganVzdCBuZWVkIGFueSBudW1iZXIgaGVyZVxuICAgICAgICAgICAgcmV0dXJuIHBvaW50O1xuICAgICAgICB9LFxuICAgIH07XG4gICAgLyoqXG4gICAgICogQ29tcHV0ZXMgcHVibGljIGtleSBmb3IgYSBwcml2YXRlIGtleS4gQ2hlY2tzIGZvciB2YWxpZGl0eSBvZiB0aGUgcHJpdmF0ZSBrZXkuXG4gICAgICogQHBhcmFtIHByaXZhdGVLZXkgcHJpdmF0ZSBrZXlcbiAgICAgKiBAcGFyYW0gaXNDb21wcmVzc2VkIHdoZXRoZXIgdG8gcmV0dXJuIGNvbXBhY3QgKGRlZmF1bHQpLCBvciBmdWxsIGtleVxuICAgICAqIEByZXR1cm5zIFB1YmxpYyBrZXksIGZ1bGwgd2hlbiBpc0NvbXByZXNzZWQ9ZmFsc2U7IHNob3J0IHdoZW4gaXNDb21wcmVzc2VkPXRydWVcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBnZXRQdWJsaWNLZXkocHJpdmF0ZUtleSwgaXNDb21wcmVzc2VkID0gdHJ1ZSkge1xuICAgICAgICByZXR1cm4gUG9pbnQuZnJvbVByaXZhdGVLZXkocHJpdmF0ZUtleSkudG9SYXdCeXRlcyhpc0NvbXByZXNzZWQpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBRdWljayBhbmQgZGlydHkgY2hlY2sgZm9yIGl0ZW0gYmVpbmcgcHVibGljIGtleS4gRG9lcyBub3QgdmFsaWRhdGUgaGV4LCBvciBiZWluZyBvbi1jdXJ2ZS5cbiAgICAgKi9cbiAgICBmdW5jdGlvbiBpc1Byb2JQdWIoaXRlbSkge1xuICAgICAgICBpZiAodHlwZW9mIGl0ZW0gPT09ICdiaWdpbnQnKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIFBvaW50KVxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIGNvbnN0IGFyciA9IGVuc3VyZUJ5dGVzKCdrZXknLCBpdGVtKTtcbiAgICAgICAgY29uc3QgbGVuID0gYXJyLmxlbmd0aDtcbiAgICAgICAgY29uc3QgZnBsID0gRnAuQllURVM7XG4gICAgICAgIGNvbnN0IGNvbXBMZW4gPSBmcGwgKyAxOyAvLyBlLmcuIDMzIGZvciAzMlxuICAgICAgICBjb25zdCB1bmNvbXBMZW4gPSAyICogZnBsICsgMTsgLy8gZS5nLiA2NSBmb3IgMzJcbiAgICAgICAgaWYgKENVUlZFLmFsbG93ZWRQcml2YXRlS2V5TGVuZ3RocyB8fCBuQnl0ZUxlbmd0aCA9PT0gY29tcExlbikge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBsZW4gPT09IGNvbXBMZW4gfHwgbGVuID09PSB1bmNvbXBMZW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogRUNESCAoRWxsaXB0aWMgQ3VydmUgRGlmZmllIEhlbGxtYW4pLlxuICAgICAqIENvbXB1dGVzIHNoYXJlZCBwdWJsaWMga2V5IGZyb20gcHJpdmF0ZSBrZXkgYW5kIHB1YmxpYyBrZXkuXG4gICAgICogQ2hlY2tzOiAxKSBwcml2YXRlIGtleSB2YWxpZGl0eSAyKSBzaGFyZWQga2V5IGlzIG9uLWN1cnZlLlxuICAgICAqIERvZXMgTk9UIGhhc2ggdGhlIHJlc3VsdC5cbiAgICAgKiBAcGFyYW0gcHJpdmF0ZUEgcHJpdmF0ZSBrZXlcbiAgICAgKiBAcGFyYW0gcHVibGljQiBkaWZmZXJlbnQgcHVibGljIGtleVxuICAgICAqIEBwYXJhbSBpc0NvbXByZXNzZWQgd2hldGhlciB0byByZXR1cm4gY29tcGFjdCAoZGVmYXVsdCksIG9yIGZ1bGwga2V5XG4gICAgICogQHJldHVybnMgc2hhcmVkIHB1YmxpYyBrZXlcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBnZXRTaGFyZWRTZWNyZXQocHJpdmF0ZUEsIHB1YmxpY0IsIGlzQ29tcHJlc3NlZCA9IHRydWUpIHtcbiAgICAgICAgaWYgKGlzUHJvYlB1Yihwcml2YXRlQSkgPT09IHRydWUpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ZpcnN0IGFyZyBtdXN0IGJlIHByaXZhdGUga2V5Jyk7XG4gICAgICAgIGlmIChpc1Byb2JQdWIocHVibGljQikgPT09IGZhbHNlKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdzZWNvbmQgYXJnIG11c3QgYmUgcHVibGljIGtleScpO1xuICAgICAgICBjb25zdCBiID0gUG9pbnQuZnJvbUhleChwdWJsaWNCKTsgLy8gY2hlY2sgZm9yIGJlaW5nIG9uLWN1cnZlXG4gICAgICAgIHJldHVybiBiLm11bHRpcGx5KG5vcm1Qcml2YXRlS2V5VG9TY2FsYXIocHJpdmF0ZUEpKS50b1Jhd0J5dGVzKGlzQ29tcHJlc3NlZCk7XG4gICAgfVxuICAgIC8vIFJGQzY5Nzk6IGVuc3VyZSBFQ0RTQSBtc2cgaXMgWCBieXRlcyBhbmQgPCBOLiBSRkMgc3VnZ2VzdHMgb3B0aW9uYWwgdHJ1bmNhdGluZyB2aWEgYml0czJvY3RldHMuXG4gICAgLy8gRklQUyAxODYtNCA0LjYgc3VnZ2VzdHMgdGhlIGxlZnRtb3N0IG1pbihuQml0TGVuLCBvdXRMZW4pIGJpdHMsIHdoaWNoIG1hdGNoZXMgYml0czJpbnQuXG4gICAgLy8gYml0czJpbnQgY2FuIHByb2R1Y2UgcmVzPk4sIHdlIGNhbiBkbyBtb2QocmVzLCBOKSBzaW5jZSB0aGUgYml0TGVuIGlzIHRoZSBzYW1lLlxuICAgIC8vIGludDJvY3RldHMgY2FuJ3QgYmUgdXNlZDsgcGFkcyBzbWFsbCBtc2dzIHdpdGggMDogdW5hY2NlcHRhdGJsZSBmb3IgdHJ1bmMgYXMgcGVyIFJGQyB2ZWN0b3JzXG4gICAgY29uc3QgYml0czJpbnQgPSBDVVJWRS5iaXRzMmludCB8fFxuICAgICAgICBmdW5jdGlvbiAoYnl0ZXMpIHtcbiAgICAgICAgICAgIC8vIE91ciBjdXN0b20gY2hlY2sgXCJqdXN0IGluIGNhc2VcIiwgZm9yIHByb3RlY3Rpb24gYWdhaW5zdCBEb1NcbiAgICAgICAgICAgIGlmIChieXRlcy5sZW5ndGggPiA4MTkyKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaW5wdXQgaXMgdG9vIGxhcmdlJyk7XG4gICAgICAgICAgICAvLyBGb3IgY3VydmVzIHdpdGggbkJpdExlbmd0aCAlIDggIT09IDA6IGJpdHMyb2N0ZXRzKGJpdHMyb2N0ZXRzKG0pKSAhPT0gYml0czJvY3RldHMobSlcbiAgICAgICAgICAgIC8vIGZvciBzb21lIGNhc2VzLCBzaW5jZSBieXRlcy5sZW5ndGggKiA4IGlzIG5vdCBhY3R1YWwgYml0TGVuZ3RoLlxuICAgICAgICAgICAgY29uc3QgbnVtID0gYnl0ZXNUb051bWJlckJFKGJ5dGVzKTsgLy8gY2hlY2sgZm9yID09IHU4IGRvbmUgaGVyZVxuICAgICAgICAgICAgY29uc3QgZGVsdGEgPSBieXRlcy5sZW5ndGggKiA4IC0gbkJpdExlbmd0aDsgLy8gdHJ1bmNhdGUgdG8gbkJpdExlbmd0aCBsZWZ0bW9zdCBiaXRzXG4gICAgICAgICAgICByZXR1cm4gZGVsdGEgPiAwID8gbnVtID4+IEJpZ0ludChkZWx0YSkgOiBudW07XG4gICAgICAgIH07XG4gICAgY29uc3QgYml0czJpbnRfbW9kTiA9IENVUlZFLmJpdHMyaW50X21vZE4gfHxcbiAgICAgICAgZnVuY3Rpb24gKGJ5dGVzKSB7XG4gICAgICAgICAgICByZXR1cm4gbW9kTihiaXRzMmludChieXRlcykpOyAvLyBjYW4ndCB1c2UgYnl0ZXNUb051bWJlckJFIGhlcmVcbiAgICAgICAgfTtcbiAgICAvLyBOT1RFOiBwYWRzIG91dHB1dCB3aXRoIHplcm8gYXMgcGVyIHNwZWNcbiAgICBjb25zdCBPUkRFUl9NQVNLID0gYml0TWFzayhuQml0TGVuZ3RoKTtcbiAgICAvKipcbiAgICAgKiBDb252ZXJ0cyB0byBieXRlcy4gQ2hlY2tzIGlmIG51bSBpbiBgWzAuLk9SREVSX01BU0stMV1gIGUuZy46IGBbMC4uMl4yNTYtMV1gLlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGludDJvY3RldHMobnVtKSB7XG4gICAgICAgIGFJblJhbmdlKCdudW0gPCAyXicgKyBuQml0TGVuZ3RoLCBudW0sIF8wbiwgT1JERVJfTUFTSyk7XG4gICAgICAgIC8vIHdvcmtzIHdpdGggb3JkZXIsIGNhbiBoYXZlIGRpZmZlcmVudCBzaXplIHRoYW4gbnVtVG9GaWVsZCFcbiAgICAgICAgcmV0dXJuIG51bWJlclRvQnl0ZXNCRShudW0sIG5CeXRlTGVuZ3RoKTtcbiAgICB9XG4gICAgLy8gU3RlcHMgQSwgRCBvZiBSRkM2OTc5IDMuMlxuICAgIC8vIENyZWF0ZXMgUkZDNjk3OSBzZWVkOyBjb252ZXJ0cyBtc2cvcHJpdktleSB0byBudW1iZXJzLlxuICAgIC8vIFVzZWQgb25seSBpbiBzaWduLCBub3QgaW4gdmVyaWZ5LlxuICAgIC8vIE5PVEU6IHdlIGNhbm5vdCBhc3N1bWUgaGVyZSB0aGF0IG1zZ0hhc2ggaGFzIHNhbWUgYW1vdW50IG9mIGJ5dGVzIGFzIGN1cnZlIG9yZGVyLFxuICAgIC8vIHRoaXMgd2lsbCBiZSBpbnZhbGlkIGF0IGxlYXN0IGZvciBQNTIxLiBBbHNvIGl0IGNhbiBiZSBiaWdnZXIgZm9yIFAyMjQgKyBTSEEyNTZcbiAgICBmdW5jdGlvbiBwcmVwU2lnKG1zZ0hhc2gsIHByaXZhdGVLZXksIG9wdHMgPSBkZWZhdWx0U2lnT3B0cykge1xuICAgICAgICBpZiAoWydyZWNvdmVyZWQnLCAnY2Fub25pY2FsJ10uc29tZSgoaykgPT4gayBpbiBvcHRzKSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignc2lnbigpIGxlZ2FjeSBvcHRpb25zIG5vdCBzdXBwb3J0ZWQnKTtcbiAgICAgICAgY29uc3QgeyBoYXNoLCByYW5kb21CeXRlcyB9ID0gQ1VSVkU7XG4gICAgICAgIGxldCB7IGxvd1MsIHByZWhhc2gsIGV4dHJhRW50cm9weTogZW50IH0gPSBvcHRzOyAvLyBnZW5lcmF0ZXMgbG93LXMgc2lncyBieSBkZWZhdWx0XG4gICAgICAgIGlmIChsb3dTID09IG51bGwpXG4gICAgICAgICAgICBsb3dTID0gdHJ1ZTsgLy8gUkZDNjk3OSAzLjI6IHdlIHNraXAgc3RlcCBBLCBiZWNhdXNlIHdlIGFscmVhZHkgcHJvdmlkZSBoYXNoXG4gICAgICAgIG1zZ0hhc2ggPSBlbnN1cmVCeXRlcygnbXNnSGFzaCcsIG1zZ0hhc2gpO1xuICAgICAgICB2YWxpZGF0ZVNpZ1Zlck9wdHMob3B0cyk7XG4gICAgICAgIGlmIChwcmVoYXNoKVxuICAgICAgICAgICAgbXNnSGFzaCA9IGVuc3VyZUJ5dGVzKCdwcmVoYXNoZWQgbXNnSGFzaCcsIGhhc2gobXNnSGFzaCkpO1xuICAgICAgICAvLyBXZSBjYW4ndCBsYXRlciBjYWxsIGJpdHMyb2N0ZXRzLCBzaW5jZSBuZXN0ZWQgYml0czJpbnQgaXMgYnJva2VuIGZvciBjdXJ2ZXNcbiAgICAgICAgLy8gd2l0aCBuQml0TGVuZ3RoICUgOCAhPT0gMC4gQmVjYXVzZSBvZiB0aGF0LCB3ZSB1bndyYXAgaXQgaGVyZSBhcyBpbnQyb2N0ZXRzIGNhbGwuXG4gICAgICAgIC8vIGNvbnN0IGJpdHMyb2N0ZXRzID0gKGJpdHMpID0+IGludDJvY3RldHMoYml0czJpbnRfbW9kTihiaXRzKSlcbiAgICAgICAgY29uc3QgaDFpbnQgPSBiaXRzMmludF9tb2ROKG1zZ0hhc2gpO1xuICAgICAgICBjb25zdCBkID0gbm9ybVByaXZhdGVLZXlUb1NjYWxhcihwcml2YXRlS2V5KTsgLy8gdmFsaWRhdGUgcHJpdmF0ZSBrZXksIGNvbnZlcnQgdG8gYmlnaW50XG4gICAgICAgIGNvbnN0IHNlZWRBcmdzID0gW2ludDJvY3RldHMoZCksIGludDJvY3RldHMoaDFpbnQpXTtcbiAgICAgICAgLy8gZXh0cmFFbnRyb3B5LiBSRkM2OTc5IDMuNjogYWRkaXRpb25hbCBrJyAob3B0aW9uYWwpLlxuICAgICAgICBpZiAoZW50ICE9IG51bGwgJiYgZW50ICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgLy8gSyA9IEhNQUNfSyhWIHx8IDB4MDAgfHwgaW50Mm9jdGV0cyh4KSB8fCBiaXRzMm9jdGV0cyhoMSkgfHwgaycpXG4gICAgICAgICAgICBjb25zdCBlID0gZW50ID09PSB0cnVlID8gcmFuZG9tQnl0ZXMoRnAuQllURVMpIDogZW50OyAvLyBnZW5lcmF0ZSByYW5kb20gYnl0ZXMgT1IgcGFzcyBhcy1pc1xuICAgICAgICAgICAgc2VlZEFyZ3MucHVzaChlbnN1cmVCeXRlcygnZXh0cmFFbnRyb3B5JywgZSkpOyAvLyBjaGVjayBmb3IgYmVpbmcgYnl0ZXNcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzZWVkID0gY29uY2F0Qnl0ZXMoLi4uc2VlZEFyZ3MpOyAvLyBTdGVwIEQgb2YgUkZDNjk3OSAzLjJcbiAgICAgICAgY29uc3QgbSA9IGgxaW50OyAvLyBOT1RFOiBubyBuZWVkIHRvIGNhbGwgYml0czJpbnQgc2Vjb25kIHRpbWUgaGVyZSwgaXQgaXMgaW5zaWRlIHRydW5jYXRlSGFzaCFcbiAgICAgICAgLy8gQ29udmVydHMgc2lnbmF0dXJlIHBhcmFtcyBpbnRvIHBvaW50IHcgci9zLCBjaGVja3MgcmVzdWx0IGZvciB2YWxpZGl0eS5cbiAgICAgICAgZnVuY3Rpb24gazJzaWcoa0J5dGVzKSB7XG4gICAgICAgICAgICAvLyBSRkMgNjk3OSBTZWN0aW9uIDMuMiwgc3RlcCAzOiBrID0gYml0czJpbnQoVClcbiAgICAgICAgICAgIGNvbnN0IGsgPSBiaXRzMmludChrQnl0ZXMpOyAvLyBDYW5ub3QgdXNlIGZpZWxkcyBtZXRob2RzLCBzaW5jZSBpdCBpcyBncm91cCBlbGVtZW50XG4gICAgICAgICAgICBpZiAoIWlzV2l0aGluQ3VydmVPcmRlcihrKSlcbiAgICAgICAgICAgICAgICByZXR1cm47IC8vIEltcG9ydGFudDogYWxsIG1vZCgpIGNhbGxzIGhlcmUgbXVzdCBiZSBkb25lIG92ZXIgTlxuICAgICAgICAgICAgY29uc3QgaWsgPSBpbnZOKGspOyAvLyBrXi0xIG1vZCBuXG4gICAgICAgICAgICBjb25zdCBxID0gUG9pbnQuQkFTRS5tdWx0aXBseShrKS50b0FmZmluZSgpOyAvLyBxID0gR2tcbiAgICAgICAgICAgIGNvbnN0IHIgPSBtb2ROKHEueCk7IC8vIHIgPSBxLnggbW9kIG5cbiAgICAgICAgICAgIGlmIChyID09PSBfMG4pXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgLy8gQ2FuIHVzZSBzY2FsYXIgYmxpbmRpbmcgYl4tMShibSArIGJkcikgd2hlcmUgYiDiiIggWzEsceKIkjFdIGFjY29yZGluZyB0b1xuICAgICAgICAgICAgLy8gaHR0cHM6Ly90Y2hlcy5pYWNyLm9yZy9pbmRleC5waHAvVENIRVMvYXJ0aWNsZS92aWV3LzczMzcvNjUwOS4gV2UndmUgZGVjaWRlZCBhZ2FpbnN0IGl0OlxuICAgICAgICAgICAgLy8gYSkgZGVwZW5kZW5jeSBvbiBDU1BSTkcgYikgMTUlIHNsb3dkb3duIGMpIGRvZXNuJ3QgcmVhbGx5IGhlbHAgc2luY2UgYmlnaW50cyBhcmUgbm90IENUXG4gICAgICAgICAgICBjb25zdCBzID0gbW9kTihpayAqIG1vZE4obSArIHIgKiBkKSk7IC8vIE5vdCB1c2luZyBibGluZGluZyBoZXJlXG4gICAgICAgICAgICBpZiAocyA9PT0gXzBuKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGxldCByZWNvdmVyeSA9IChxLnggPT09IHIgPyAwIDogMikgfCBOdW1iZXIocS55ICYgXzFuKTsgLy8gcmVjb3ZlcnkgYml0ICgyIG9yIDMsIHdoZW4gcS54ID4gbilcbiAgICAgICAgICAgIGxldCBub3JtUyA9IHM7XG4gICAgICAgICAgICBpZiAobG93UyAmJiBpc0JpZ2dlclRoYW5IYWxmT3JkZXIocykpIHtcbiAgICAgICAgICAgICAgICBub3JtUyA9IG5vcm1hbGl6ZVMocyk7IC8vIGlmIGxvd1Mgd2FzIHBhc3NlZCwgZW5zdXJlIHMgaXMgYWx3YXlzXG4gICAgICAgICAgICAgICAgcmVjb3ZlcnkgXj0gMTsgLy8gLy8gaW4gdGhlIGJvdHRvbSBoYWxmIG9mIE5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBuZXcgU2lnbmF0dXJlKHIsIG5vcm1TLCByZWNvdmVyeSk7IC8vIHVzZSBub3JtUywgbm90IHNcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBzZWVkLCBrMnNpZyB9O1xuICAgIH1cbiAgICBjb25zdCBkZWZhdWx0U2lnT3B0cyA9IHsgbG93UzogQ1VSVkUubG93UywgcHJlaGFzaDogZmFsc2UgfTtcbiAgICBjb25zdCBkZWZhdWx0VmVyT3B0cyA9IHsgbG93UzogQ1VSVkUubG93UywgcHJlaGFzaDogZmFsc2UgfTtcbiAgICAvKipcbiAgICAgKiBTaWducyBtZXNzYWdlIGhhc2ggd2l0aCBhIHByaXZhdGUga2V5LlxuICAgICAqIGBgYFxuICAgICAqIHNpZ24obSwgZCwgaykgd2hlcmVcbiAgICAgKiAgICh4LCB5KSA9IEcgw5cga1xuICAgICAqICAgciA9IHggbW9kIG5cbiAgICAgKiAgIHMgPSAobSArIGRyKS9rIG1vZCBuXG4gICAgICogYGBgXG4gICAgICogQHBhcmFtIG1zZ0hhc2ggTk9UIG1lc3NhZ2UuIG1zZyBuZWVkcyB0byBiZSBoYXNoZWQgdG8gYG1zZ0hhc2hgLCBvciB1c2UgYHByZWhhc2hgLlxuICAgICAqIEBwYXJhbSBwcml2S2V5IHByaXZhdGUga2V5XG4gICAgICogQHBhcmFtIG9wdHMgbG93UyBmb3Igbm9uLW1hbGxlYWJsZSBzaWdzLiBleHRyYUVudHJvcHkgZm9yIG1peGluZyByYW5kb21uZXNzIGludG8gay4gcHJlaGFzaCB3aWxsIGhhc2ggZmlyc3QgYXJnLlxuICAgICAqIEByZXR1cm5zIHNpZ25hdHVyZSB3aXRoIHJlY292ZXJ5IHBhcmFtXG4gICAgICovXG4gICAgZnVuY3Rpb24gc2lnbihtc2dIYXNoLCBwcml2S2V5LCBvcHRzID0gZGVmYXVsdFNpZ09wdHMpIHtcbiAgICAgICAgY29uc3QgeyBzZWVkLCBrMnNpZyB9ID0gcHJlcFNpZyhtc2dIYXNoLCBwcml2S2V5LCBvcHRzKTsgLy8gU3RlcHMgQSwgRCBvZiBSRkM2OTc5IDMuMi5cbiAgICAgICAgY29uc3QgQyA9IENVUlZFO1xuICAgICAgICBjb25zdCBkcmJnID0gY3JlYXRlSG1hY0RyYmcoQy5oYXNoLm91dHB1dExlbiwgQy5uQnl0ZUxlbmd0aCwgQy5obWFjKTtcbiAgICAgICAgcmV0dXJuIGRyYmcoc2VlZCwgazJzaWcpOyAvLyBTdGVwcyBCLCBDLCBELCBFLCBGLCBHXG4gICAgfVxuICAgIC8vIEVuYWJsZSBwcmVjb21wdXRlcy4gU2xvd3MgZG93biBmaXJzdCBwdWJsaWNLZXkgY29tcHV0YXRpb24gYnkgMjBtcy5cbiAgICBQb2ludC5CQVNFLl9zZXRXaW5kb3dTaXplKDgpO1xuICAgIC8vIHV0aWxzLnByZWNvbXB1dGUoOCwgUHJvamVjdGl2ZVBvaW50LkJBU0UpXG4gICAgLyoqXG4gICAgICogVmVyaWZpZXMgYSBzaWduYXR1cmUgYWdhaW5zdCBtZXNzYWdlIGhhc2ggYW5kIHB1YmxpYyBrZXkuXG4gICAgICogUmVqZWN0cyBsb3dTIHNpZ25hdHVyZXMgYnkgZGVmYXVsdDogdG8gb3ZlcnJpZGUsXG4gICAgICogc3BlY2lmeSBvcHRpb24gYHtsb3dTOiBmYWxzZX1gLiBJbXBsZW1lbnRzIHNlY3Rpb24gNC4xLjQgZnJvbSBodHRwczovL3d3dy5zZWNnLm9yZy9zZWMxLXYyLnBkZjpcbiAgICAgKlxuICAgICAqIGBgYFxuICAgICAqIHZlcmlmeShyLCBzLCBoLCBQKSB3aGVyZVxuICAgICAqICAgVTEgPSBoc14tMSBtb2QgblxuICAgICAqICAgVTIgPSByc14tMSBtb2QgblxuICAgICAqICAgUiA9IFUx4ouFRyAtIFUy4ouFUFxuICAgICAqICAgbW9kKFIueCwgbikgPT0gclxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHZlcmlmeShzaWduYXR1cmUsIG1zZ0hhc2gsIHB1YmxpY0tleSwgb3B0cyA9IGRlZmF1bHRWZXJPcHRzKSB7XG4gICAgICAgIGNvbnN0IHNnID0gc2lnbmF0dXJlO1xuICAgICAgICBtc2dIYXNoID0gZW5zdXJlQnl0ZXMoJ21zZ0hhc2gnLCBtc2dIYXNoKTtcbiAgICAgICAgcHVibGljS2V5ID0gZW5zdXJlQnl0ZXMoJ3B1YmxpY0tleScsIHB1YmxpY0tleSk7XG4gICAgICAgIGNvbnN0IHsgbG93UywgcHJlaGFzaCwgZm9ybWF0IH0gPSBvcHRzO1xuICAgICAgICAvLyBWZXJpZnkgb3B0cywgZGVkdWNlIHNpZ25hdHVyZSBmb3JtYXRcbiAgICAgICAgdmFsaWRhdGVTaWdWZXJPcHRzKG9wdHMpO1xuICAgICAgICBpZiAoJ3N0cmljdCcgaW4gb3B0cylcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignb3B0aW9ucy5zdHJpY3Qgd2FzIHJlbmFtZWQgdG8gbG93UycpO1xuICAgICAgICBpZiAoZm9ybWF0ICE9PSB1bmRlZmluZWQgJiYgZm9ybWF0ICE9PSAnY29tcGFjdCcgJiYgZm9ybWF0ICE9PSAnZGVyJylcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignZm9ybWF0IG11c3QgYmUgY29tcGFjdCBvciBkZXInKTtcbiAgICAgICAgY29uc3QgaXNIZXggPSB0eXBlb2Ygc2cgPT09ICdzdHJpbmcnIHx8IGlzQnl0ZXMoc2cpO1xuICAgICAgICBjb25zdCBpc09iaiA9ICFpc0hleCAmJlxuICAgICAgICAgICAgIWZvcm1hdCAmJlxuICAgICAgICAgICAgdHlwZW9mIHNnID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgICAgc2cgIT09IG51bGwgJiZcbiAgICAgICAgICAgIHR5cGVvZiBzZy5yID09PSAnYmlnaW50JyAmJlxuICAgICAgICAgICAgdHlwZW9mIHNnLnMgPT09ICdiaWdpbnQnO1xuICAgICAgICBpZiAoIWlzSGV4ICYmICFpc09iailcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBzaWduYXR1cmUsIGV4cGVjdGVkIFVpbnQ4QXJyYXksIGhleCBzdHJpbmcgb3IgU2lnbmF0dXJlIGluc3RhbmNlJyk7XG4gICAgICAgIGxldCBfc2lnID0gdW5kZWZpbmVkO1xuICAgICAgICBsZXQgUDtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmIChpc09iailcbiAgICAgICAgICAgICAgICBfc2lnID0gbmV3IFNpZ25hdHVyZShzZy5yLCBzZy5zKTtcbiAgICAgICAgICAgIGlmIChpc0hleCkge1xuICAgICAgICAgICAgICAgIC8vIFNpZ25hdHVyZSBjYW4gYmUgcmVwcmVzZW50ZWQgaW4gMiB3YXlzOiBjb21wYWN0ICgyKm5CeXRlTGVuZ3RoKSAmIERFUiAodmFyaWFibGUtbGVuZ3RoKS5cbiAgICAgICAgICAgICAgICAvLyBTaW5jZSBERVIgY2FuIGFsc28gYmUgMipuQnl0ZUxlbmd0aCBieXRlcywgd2UgY2hlY2sgZm9yIGl0IGZpcnN0LlxuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmb3JtYXQgIT09ICdjb21wYWN0JylcbiAgICAgICAgICAgICAgICAgICAgICAgIF9zaWcgPSBTaWduYXR1cmUuZnJvbURFUihzZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhdGNoIChkZXJFcnJvcikge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIShkZXJFcnJvciBpbnN0YW5jZW9mIERFUi5FcnIpKVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgZGVyRXJyb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghX3NpZyAmJiBmb3JtYXQgIT09ICdkZXInKVxuICAgICAgICAgICAgICAgICAgICBfc2lnID0gU2lnbmF0dXJlLmZyb21Db21wYWN0KHNnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFAgPSBQb2ludC5mcm9tSGV4KHB1YmxpY0tleSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFfc2lnKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBpZiAobG93UyAmJiBfc2lnLmhhc0hpZ2hTKCkpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmIChwcmVoYXNoKVxuICAgICAgICAgICAgbXNnSGFzaCA9IENVUlZFLmhhc2gobXNnSGFzaCk7XG4gICAgICAgIGNvbnN0IHsgciwgcyB9ID0gX3NpZztcbiAgICAgICAgY29uc3QgaCA9IGJpdHMyaW50X21vZE4obXNnSGFzaCk7IC8vIENhbm5vdCB1c2UgZmllbGRzIG1ldGhvZHMsIHNpbmNlIGl0IGlzIGdyb3VwIGVsZW1lbnRcbiAgICAgICAgY29uc3QgaXMgPSBpbnZOKHMpOyAvLyBzXi0xXG4gICAgICAgIGNvbnN0IHUxID0gbW9kTihoICogaXMpOyAvLyB1MSA9IGhzXi0xIG1vZCBuXG4gICAgICAgIGNvbnN0IHUyID0gbW9kTihyICogaXMpOyAvLyB1MiA9IHJzXi0xIG1vZCBuXG4gICAgICAgIGNvbnN0IFIgPSBQb2ludC5CQVNFLm11bHRpcGx5QW5kQWRkVW5zYWZlKFAsIHUxLCB1Mik/LnRvQWZmaW5lKCk7IC8vIFIgPSB1MeKLhUcgKyB1MuKLhVBcbiAgICAgICAgaWYgKCFSKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCB2ID0gbW9kTihSLngpO1xuICAgICAgICByZXR1cm4gdiA9PT0gcjtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgQ1VSVkUsXG4gICAgICAgIGdldFB1YmxpY0tleSxcbiAgICAgICAgZ2V0U2hhcmVkU2VjcmV0LFxuICAgICAgICBzaWduLFxuICAgICAgICB2ZXJpZnksXG4gICAgICAgIFByb2plY3RpdmVQb2ludDogUG9pbnQsXG4gICAgICAgIFNpZ25hdHVyZSxcbiAgICAgICAgdXRpbHMsXG4gICAgfTtcbn1cbi8qKlxuICogSW1wbGVtZW50YXRpb24gb2YgdGhlIFNoYWxsdWUgYW5kIHZhbiBkZSBXb2VzdGlqbmUgbWV0aG9kIGZvciBhbnkgd2VpZXJzdHJhc3MgY3VydmUuXG4gKiBUT0RPOiBjaGVjayBpZiB0aGVyZSBpcyBhIHdheSB0byBtZXJnZSB0aGlzIHdpdGggdXZSYXRpbyBpbiBFZHdhcmRzOyBtb3ZlIHRvIG1vZHVsYXIuXG4gKiBiID0gVHJ1ZSBhbmQgeSA9IHNxcnQodSAvIHYpIGlmICh1IC8gdikgaXMgc3F1YXJlIGluIEYsIGFuZFxuICogYiA9IEZhbHNlIGFuZCB5ID0gc3FydChaICogKHUgLyB2KSkgb3RoZXJ3aXNlLlxuICogQHBhcmFtIEZwXG4gKiBAcGFyYW0gWlxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFNXVUZwU3FydFJhdGlvKEZwLCBaKSB7XG4gICAgLy8gR2VuZXJpYyBpbXBsZW1lbnRhdGlvblxuICAgIGNvbnN0IHEgPSBGcC5PUkRFUjtcbiAgICBsZXQgbCA9IF8wbjtcbiAgICBmb3IgKGxldCBvID0gcSAtIF8xbjsgbyAlIF8ybiA9PT0gXzBuOyBvIC89IF8ybilcbiAgICAgICAgbCArPSBfMW47XG4gICAgY29uc3QgYzEgPSBsOyAvLyAxLiBjMSwgdGhlIGxhcmdlc3QgaW50ZWdlciBzdWNoIHRoYXQgMl5jMSBkaXZpZGVzIHEgLSAxLlxuICAgIC8vIFdlIG5lZWQgMm4gKiogYzEgYW5kIDJuICoqIChjMS0xKS4gV2UgY2FuJ3QgdXNlICoqOyBidXQgd2UgY2FuIHVzZSA8PC5cbiAgICAvLyAybiAqKiBjMSA9PSAybiA8PCAoYzEtMSlcbiAgICBjb25zdCBfMm5fcG93X2MxXzEgPSBfMm4gPDwgKGMxIC0gXzFuIC0gXzFuKTtcbiAgICBjb25zdCBfMm5fcG93X2MxID0gXzJuX3Bvd19jMV8xICogXzJuO1xuICAgIGNvbnN0IGMyID0gKHEgLSBfMW4pIC8gXzJuX3Bvd19jMTsgLy8gMi4gYzIgPSAocSAtIDEpIC8gKDJeYzEpICAjIEludGVnZXIgYXJpdGhtZXRpY1xuICAgIGNvbnN0IGMzID0gKGMyIC0gXzFuKSAvIF8ybjsgLy8gMy4gYzMgPSAoYzIgLSAxKSAvIDIgICAgICAgICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuICAgIGNvbnN0IGM0ID0gXzJuX3Bvd19jMSAtIF8xbjsgLy8gNC4gYzQgPSAyXmMxIC0gMSAgICAgICAgICAgICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuICAgIGNvbnN0IGM1ID0gXzJuX3Bvd19jMV8xOyAvLyA1LiBjNSA9IDJeKGMxIC0gMSkgICAgICAgICAgICAgICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuICAgIGNvbnN0IGM2ID0gRnAucG93KFosIGMyKTsgLy8gNi4gYzYgPSBaXmMyXG4gICAgY29uc3QgYzcgPSBGcC5wb3coWiwgKGMyICsgXzFuKSAvIF8ybik7IC8vIDcuIGM3ID0gWl4oKGMyICsgMSkgLyAyKVxuICAgIGxldCBzcXJ0UmF0aW8gPSAodSwgdikgPT4ge1xuICAgICAgICBsZXQgdHYxID0gYzY7IC8vIDEuIHR2MSA9IGM2XG4gICAgICAgIGxldCB0djIgPSBGcC5wb3codiwgYzQpOyAvLyAyLiB0djIgPSB2XmM0XG4gICAgICAgIGxldCB0djMgPSBGcC5zcXIodHYyKTsgLy8gMy4gdHYzID0gdHYyXjJcbiAgICAgICAgdHYzID0gRnAubXVsKHR2Mywgdik7IC8vIDQuIHR2MyA9IHR2MyAqIHZcbiAgICAgICAgbGV0IHR2NSA9IEZwLm11bCh1LCB0djMpOyAvLyA1LiB0djUgPSB1ICogdHYzXG4gICAgICAgIHR2NSA9IEZwLnBvdyh0djUsIGMzKTsgLy8gNi4gdHY1ID0gdHY1XmMzXG4gICAgICAgIHR2NSA9IEZwLm11bCh0djUsIHR2Mik7IC8vIDcuIHR2NSA9IHR2NSAqIHR2MlxuICAgICAgICB0djIgPSBGcC5tdWwodHY1LCB2KTsgLy8gOC4gdHYyID0gdHY1ICogdlxuICAgICAgICB0djMgPSBGcC5tdWwodHY1LCB1KTsgLy8gOS4gdHYzID0gdHY1ICogdVxuICAgICAgICBsZXQgdHY0ID0gRnAubXVsKHR2MywgdHYyKTsgLy8gMTAuIHR2NCA9IHR2MyAqIHR2MlxuICAgICAgICB0djUgPSBGcC5wb3codHY0LCBjNSk7IC8vIDExLiB0djUgPSB0djReYzVcbiAgICAgICAgbGV0IGlzUVIgPSBGcC5lcWwodHY1LCBGcC5PTkUpOyAvLyAxMi4gaXNRUiA9IHR2NSA9PSAxXG4gICAgICAgIHR2MiA9IEZwLm11bCh0djMsIGM3KTsgLy8gMTMuIHR2MiA9IHR2MyAqIGM3XG4gICAgICAgIHR2NSA9IEZwLm11bCh0djQsIHR2MSk7IC8vIDE0LiB0djUgPSB0djQgKiB0djFcbiAgICAgICAgdHYzID0gRnAuY21vdih0djIsIHR2MywgaXNRUik7IC8vIDE1LiB0djMgPSBDTU9WKHR2MiwgdHYzLCBpc1FSKVxuICAgICAgICB0djQgPSBGcC5jbW92KHR2NSwgdHY0LCBpc1FSKTsgLy8gMTYuIHR2NCA9IENNT1YodHY1LCB0djQsIGlzUVIpXG4gICAgICAgIC8vIDE3LiBmb3IgaSBpbiAoYzEsIGMxIC0gMSwgLi4uLCAyKTpcbiAgICAgICAgZm9yIChsZXQgaSA9IGMxOyBpID4gXzFuOyBpLS0pIHtcbiAgICAgICAgICAgIGxldCB0djUgPSBpIC0gXzJuOyAvLyAxOC4gICAgdHY1ID0gaSAtIDJcbiAgICAgICAgICAgIHR2NSA9IF8ybiA8PCAodHY1IC0gXzFuKTsgLy8gMTkuICAgIHR2NSA9IDJedHY1XG4gICAgICAgICAgICBsZXQgdHZ2NSA9IEZwLnBvdyh0djQsIHR2NSk7IC8vIDIwLiAgICB0djUgPSB0djRedHY1XG4gICAgICAgICAgICBjb25zdCBlMSA9IEZwLmVxbCh0dnY1LCBGcC5PTkUpOyAvLyAyMS4gICAgZTEgPSB0djUgPT0gMVxuICAgICAgICAgICAgdHYyID0gRnAubXVsKHR2MywgdHYxKTsgLy8gMjIuICAgIHR2MiA9IHR2MyAqIHR2MVxuICAgICAgICAgICAgdHYxID0gRnAubXVsKHR2MSwgdHYxKTsgLy8gMjMuICAgIHR2MSA9IHR2MSAqIHR2MVxuICAgICAgICAgICAgdHZ2NSA9IEZwLm11bCh0djQsIHR2MSk7IC8vIDI0LiAgICB0djUgPSB0djQgKiB0djFcbiAgICAgICAgICAgIHR2MyA9IEZwLmNtb3YodHYyLCB0djMsIGUxKTsgLy8gMjUuICAgIHR2MyA9IENNT1YodHYyLCB0djMsIGUxKVxuICAgICAgICAgICAgdHY0ID0gRnAuY21vdih0dnY1LCB0djQsIGUxKTsgLy8gMjYuICAgIHR2NCA9IENNT1YodHY1LCB0djQsIGUxKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7IGlzVmFsaWQ6IGlzUVIsIHZhbHVlOiB0djMgfTtcbiAgICB9O1xuICAgIGlmIChGcC5PUkRFUiAlIF80biA9PT0gXzNuKSB7XG4gICAgICAgIC8vIHNxcnRfcmF0aW9fM21vZDQodSwgdilcbiAgICAgICAgY29uc3QgYzEgPSAoRnAuT1JERVIgLSBfM24pIC8gXzRuOyAvLyAxLiBjMSA9IChxIC0gMykgLyA0ICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuICAgICAgICBjb25zdCBjMiA9IEZwLnNxcnQoRnAubmVnKFopKTsgLy8gMi4gYzIgPSBzcXJ0KC1aKVxuICAgICAgICBzcXJ0UmF0aW8gPSAodSwgdikgPT4ge1xuICAgICAgICAgICAgbGV0IHR2MSA9IEZwLnNxcih2KTsgLy8gMS4gdHYxID0gdl4yXG4gICAgICAgICAgICBjb25zdCB0djIgPSBGcC5tdWwodSwgdik7IC8vIDIuIHR2MiA9IHUgKiB2XG4gICAgICAgICAgICB0djEgPSBGcC5tdWwodHYxLCB0djIpOyAvLyAzLiB0djEgPSB0djEgKiB0djJcbiAgICAgICAgICAgIGxldCB5MSA9IEZwLnBvdyh0djEsIGMxKTsgLy8gNC4geTEgPSB0djFeYzFcbiAgICAgICAgICAgIHkxID0gRnAubXVsKHkxLCB0djIpOyAvLyA1LiB5MSA9IHkxICogdHYyXG4gICAgICAgICAgICBjb25zdCB5MiA9IEZwLm11bCh5MSwgYzIpOyAvLyA2LiB5MiA9IHkxICogYzJcbiAgICAgICAgICAgIGNvbnN0IHR2MyA9IEZwLm11bChGcC5zcXIoeTEpLCB2KTsgLy8gNy4gdHYzID0geTFeMjsgOC4gdHYzID0gdHYzICogdlxuICAgICAgICAgICAgY29uc3QgaXNRUiA9IEZwLmVxbCh0djMsIHUpOyAvLyA5LiBpc1FSID0gdHYzID09IHVcbiAgICAgICAgICAgIGxldCB5ID0gRnAuY21vdih5MiwgeTEsIGlzUVIpOyAvLyAxMC4geSA9IENNT1YoeTIsIHkxLCBpc1FSKVxuICAgICAgICAgICAgcmV0dXJuIHsgaXNWYWxpZDogaXNRUiwgdmFsdWU6IHkgfTsgLy8gMTEuIHJldHVybiAoaXNRUiwgeSkgaXNRUiA/IHkgOiB5KmMyXG4gICAgICAgIH07XG4gICAgfVxuICAgIC8vIE5vIGN1cnZlcyB1c2VzIHRoYXRcbiAgICAvLyBpZiAoRnAuT1JERVIgJSBfOG4gPT09IF81bikgLy8gc3FydF9yYXRpb181bW9kOFxuICAgIHJldHVybiBzcXJ0UmF0aW87XG59XG4vKipcbiAqIFNpbXBsaWZpZWQgU2hhbGx1ZS12YW4gZGUgV29lc3Rpam5lLVVsYXMgTWV0aG9kXG4gKiBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTYuNi4yXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXBUb0N1cnZlU2ltcGxlU1dVKEZwLCBvcHRzKSB7XG4gICAgdmFsaWRhdGVGaWVsZChGcCk7XG4gICAgaWYgKCFGcC5pc1ZhbGlkKG9wdHMuQSkgfHwgIUZwLmlzVmFsaWQob3B0cy5CKSB8fCAhRnAuaXNWYWxpZChvcHRzLlopKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ21hcFRvQ3VydmVTaW1wbGVTV1U6IGludmFsaWQgb3B0cycpO1xuICAgIGNvbnN0IHNxcnRSYXRpbyA9IFNXVUZwU3FydFJhdGlvKEZwLCBvcHRzLlopO1xuICAgIGlmICghRnAuaXNPZGQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRnAuaXNPZGQgaXMgbm90IGltcGxlbWVudGVkIScpO1xuICAgIC8vIElucHV0OiB1LCBhbiBlbGVtZW50IG9mIEYuXG4gICAgLy8gT3V0cHV0OiAoeCwgeSksIGEgcG9pbnQgb24gRS5cbiAgICByZXR1cm4gKHUpID0+IHtcbiAgICAgICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgICAgIGxldCB0djEsIHR2MiwgdHYzLCB0djQsIHR2NSwgdHY2LCB4LCB5O1xuICAgICAgICB0djEgPSBGcC5zcXIodSk7IC8vIDEuICB0djEgPSB1XjJcbiAgICAgICAgdHYxID0gRnAubXVsKHR2MSwgb3B0cy5aKTsgLy8gMi4gIHR2MSA9IFogKiB0djFcbiAgICAgICAgdHYyID0gRnAuc3FyKHR2MSk7IC8vIDMuICB0djIgPSB0djFeMlxuICAgICAgICB0djIgPSBGcC5hZGQodHYyLCB0djEpOyAvLyA0LiAgdHYyID0gdHYyICsgdHYxXG4gICAgICAgIHR2MyA9IEZwLmFkZCh0djIsIEZwLk9ORSk7IC8vIDUuICB0djMgPSB0djIgKyAxXG4gICAgICAgIHR2MyA9IEZwLm11bCh0djMsIG9wdHMuQik7IC8vIDYuICB0djMgPSBCICogdHYzXG4gICAgICAgIHR2NCA9IEZwLmNtb3Yob3B0cy5aLCBGcC5uZWcodHYyKSwgIUZwLmVxbCh0djIsIEZwLlpFUk8pKTsgLy8gNy4gIHR2NCA9IENNT1YoWiwgLXR2MiwgdHYyICE9IDApXG4gICAgICAgIHR2NCA9IEZwLm11bCh0djQsIG9wdHMuQSk7IC8vIDguICB0djQgPSBBICogdHY0XG4gICAgICAgIHR2MiA9IEZwLnNxcih0djMpOyAvLyA5LiAgdHYyID0gdHYzXjJcbiAgICAgICAgdHY2ID0gRnAuc3FyKHR2NCk7IC8vIDEwLiB0djYgPSB0djReMlxuICAgICAgICB0djUgPSBGcC5tdWwodHY2LCBvcHRzLkEpOyAvLyAxMS4gdHY1ID0gQSAqIHR2NlxuICAgICAgICB0djIgPSBGcC5hZGQodHYyLCB0djUpOyAvLyAxMi4gdHYyID0gdHYyICsgdHY1XG4gICAgICAgIHR2MiA9IEZwLm11bCh0djIsIHR2Myk7IC8vIDEzLiB0djIgPSB0djIgKiB0djNcbiAgICAgICAgdHY2ID0gRnAubXVsKHR2NiwgdHY0KTsgLy8gMTQuIHR2NiA9IHR2NiAqIHR2NFxuICAgICAgICB0djUgPSBGcC5tdWwodHY2LCBvcHRzLkIpOyAvLyAxNS4gdHY1ID0gQiAqIHR2NlxuICAgICAgICB0djIgPSBGcC5hZGQodHYyLCB0djUpOyAvLyAxNi4gdHYyID0gdHYyICsgdHY1XG4gICAgICAgIHggPSBGcC5tdWwodHYxLCB0djMpOyAvLyAxNy4gICB4ID0gdHYxICogdHYzXG4gICAgICAgIGNvbnN0IHsgaXNWYWxpZCwgdmFsdWUgfSA9IHNxcnRSYXRpbyh0djIsIHR2Nik7IC8vIDE4LiAoaXNfZ3gxX3NxdWFyZSwgeTEpID0gc3FydF9yYXRpbyh0djIsIHR2NilcbiAgICAgICAgeSA9IEZwLm11bCh0djEsIHUpOyAvLyAxOS4gICB5ID0gdHYxICogdSAgLT4gWiAqIHVeMyAqIHkxXG4gICAgICAgIHkgPSBGcC5tdWwoeSwgdmFsdWUpOyAvLyAyMC4gICB5ID0geSAqIHkxXG4gICAgICAgIHggPSBGcC5jbW92KHgsIHR2MywgaXNWYWxpZCk7IC8vIDIxLiAgIHggPSBDTU9WKHgsIHR2MywgaXNfZ3gxX3NxdWFyZSlcbiAgICAgICAgeSA9IEZwLmNtb3YoeSwgdmFsdWUsIGlzVmFsaWQpOyAvLyAyMi4gICB5ID0gQ01PVih5LCB5MSwgaXNfZ3gxX3NxdWFyZSlcbiAgICAgICAgY29uc3QgZTEgPSBGcC5pc09kZCh1KSA9PT0gRnAuaXNPZGQoeSk7IC8vIDIzLiAgZTEgPSBzZ24wKHUpID09IHNnbjAoeSlcbiAgICAgICAgeSA9IEZwLmNtb3YoRnAubmVnKHkpLCB5LCBlMSk7IC8vIDI0LiAgIHkgPSBDTU9WKC15LCB5LCBlMSlcbiAgICAgICAgY29uc3QgdHY0X2ludiA9IEZwSW52ZXJ0QmF0Y2goRnAsIFt0djRdLCB0cnVlKVswXTtcbiAgICAgICAgeCA9IEZwLm11bCh4LCB0djRfaW52KTsgLy8gMjUuICAgeCA9IHggLyB0djRcbiAgICAgICAgcmV0dXJuIHsgeCwgeSB9O1xuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD13ZWllcnN0cmFzcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/weierstrass.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js": /*!***********************************************************************!*\ !*** ./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ encodeToCurve: () => (/* binding */ encodeToCurve),\n/* harmony export */ hashToCurve: () => (/* binding */ hashToCurve),\n/* harmony export */ schnorr: () => (/* binding */ schnorr),\n/* harmony export */ secp256k1: () => (/* binding */ secp256k1),\n/* harmony export */ secp256k1_hasher: () => (/* binding */ secp256k1_hasher)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_sha2__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @noble/hashes/sha2 */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/sha2.js\");\n/* harmony import */ var _noble_hashes_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @noble/hashes/utils */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/utils.js\");\n/* harmony import */ var _shortw_utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_shortw_utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/_shortw_utils.js\");\n/* harmony import */ var _abstract_hash_to_curve_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./abstract/hash-to-curve.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/hash-to-curve.js\");\n/* harmony import */ var _abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstract/modular.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/modular.js\");\n/* harmony import */ var _abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./abstract/utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\");\n/* harmony import */ var _abstract_weierstrass_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./abstract/weierstrass.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/weierstrass.js\");\n/**\n * NIST secp256k1. See [pdf](https://www.secg.org/sec2-v2.pdf).\n *\n * Seems to be rigid (not backdoored)\n * [as per discussion](https://bitcointalk.org/index.php?topic=289795.msg3183975#msg3183975).\n *\n * secp256k1 belongs to Koblitz curves: it has efficiently computable endomorphism.\n * Endomorphism uses 2x less RAM, speeds up precomputation by 2x and ECDH / key recovery by 20%.\n * For precomputed wNAF it trades off 1/2 init time & 1/3 ram for 20% perf hit.\n * [See explanation](https://gist.github.com/paulmillr/eb670806793e84df628a7c434a873066).\n * @module\n */\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n\n\n\n\n\n\nconst secp256k1P = BigInt('0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f');\nconst secp256k1N = BigInt('0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141');\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nconst divNearest = (a, b) => (a + b / _2n) / b;\n/**\n * √n = n^((p+1)/4) for fields p = 3 mod 4. We unwrap the loop and multiply bit-by-bit.\n * (P+1n/4n).toString(2) would produce bits [223x 1, 0, 22x 1, 4x 0, 11, 00]\n */\nfunction sqrtMod(y) {\n const P = secp256k1P;\n // prettier-ignore\n const _3n = BigInt(3), _6n = BigInt(6), _11n = BigInt(11), _22n = BigInt(22);\n // prettier-ignore\n const _23n = BigInt(23), _44n = BigInt(44), _88n = BigInt(88);\n const b2 = (y * y * y) % P; // x^3, 11\n const b3 = (b2 * b2 * y) % P; // x^7\n const b6 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b3, _3n, P) * b3) % P;\n const b9 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b6, _3n, P) * b3) % P;\n const b11 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b9, _2n, P) * b2) % P;\n const b22 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b11, _11n, P) * b11) % P;\n const b44 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b22, _22n, P) * b22) % P;\n const b88 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b44, _44n, P) * b44) % P;\n const b176 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b88, _88n, P) * b88) % P;\n const b220 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b176, _44n, P) * b44) % P;\n const b223 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b220, _3n, P) * b3) % P;\n const t1 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(b223, _23n, P) * b22) % P;\n const t2 = ((0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(t1, _6n, P) * b2) % P;\n const root = (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.pow2)(t2, _2n, P);\n if (!Fpk1.eql(Fpk1.sqr(root), y))\n throw new Error('Cannot find square root');\n return root;\n}\nconst Fpk1 = (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.Field)(secp256k1P, undefined, undefined, { sqrt: sqrtMod });\n/**\n * secp256k1 curve, ECDSA and ECDH methods.\n *\n * Field: `2n**256n - 2n**32n - 2n**9n - 2n**8n - 2n**7n - 2n**6n - 2n**4n - 1n`\n *\n * @example\n * ```js\n * import { secp256k1 } from '@noble/curves/secp256k1';\n * const priv = secp256k1.utils.randomPrivateKey();\n * const pub = secp256k1.getPublicKey(priv);\n * const msg = new Uint8Array(32).fill(1); // message hash (not message) in ecdsa\n * const sig = secp256k1.sign(msg, priv); // `{prehash: true}` option is available\n * const isValid = secp256k1.verify(sig, msg, pub) === true;\n * ```\n */\nconst secp256k1 = (0,_shortw_utils_js__WEBPACK_IMPORTED_MODULE_1__.createCurve)({\n a: _0n,\n b: BigInt(7),\n Fp: Fpk1,\n n: secp256k1N,\n Gx: BigInt('55066263022277343669578718895168534326250603453777594175500187360389116729240'),\n Gy: BigInt('32670510020758816978083085130507043184471273380659243275938904335757337482424'),\n h: BigInt(1),\n lowS: true, // Allow only low-S signatures by default in sign() and verify()\n endo: {\n // Endomorphism, see above\n beta: BigInt('0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee'),\n splitScalar: (k) => {\n const n = secp256k1N;\n const a1 = BigInt('0x3086d221a7d46bcde86c90e49284eb15');\n const b1 = -_1n * BigInt('0xe4437ed6010e88286f547fa90abfe4c3');\n const a2 = BigInt('0x114ca50f7a8e2f3f657c1108d9d44cfd8');\n const b2 = a1;\n const POW_2_128 = BigInt('0x100000000000000000000000000000000'); // (2n**128n).toString(16)\n const c1 = divNearest(b2 * k, n);\n const c2 = divNearest(-b1 * k, n);\n let k1 = (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.mod)(k - c1 * a1 - c2 * a2, n);\n let k2 = (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.mod)(-c1 * b1 - c2 * b2, n);\n const k1neg = k1 > POW_2_128;\n const k2neg = k2 > POW_2_128;\n if (k1neg)\n k1 = n - k1;\n if (k2neg)\n k2 = n - k2;\n if (k1 > POW_2_128 || k2 > POW_2_128) {\n throw new Error('splitScalar: Endomorphism failed, k=' + k);\n }\n return { k1neg, k1, k2neg, k2 };\n },\n },\n}, _noble_hashes_sha2__WEBPACK_IMPORTED_MODULE_2__.sha256);\n// Schnorr signatures are superior to ECDSA from above. Below is Schnorr-specific BIP0340 code.\n// https://github.com/bitcoin/bips/blob/master/bip-0340.mediawiki\n/** An object mapping tags to their tagged hash prefix of [SHA256(tag) | SHA256(tag)] */\nconst TAGGED_HASH_PREFIXES = {};\nfunction taggedHash(tag, ...messages) {\n let tagP = TAGGED_HASH_PREFIXES[tag];\n if (tagP === undefined) {\n const tagH = (0,_noble_hashes_sha2__WEBPACK_IMPORTED_MODULE_2__.sha256)(Uint8Array.from(tag, (c) => c.charCodeAt(0)));\n tagP = (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.concatBytes)(tagH, tagH);\n TAGGED_HASH_PREFIXES[tag] = tagP;\n }\n return (0,_noble_hashes_sha2__WEBPACK_IMPORTED_MODULE_2__.sha256)((0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.concatBytes)(tagP, ...messages));\n}\n// ECDSA compact points are 33-byte. Schnorr is 32: we strip first byte 0x02 or 0x03\nconst pointToBytes = (point) => point.toRawBytes(true).slice(1);\nconst numTo32b = (n) => (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.numberToBytesBE)(n, 32);\nconst modP = (x) => (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.mod)(x, secp256k1P);\nconst modN = (x) => (0,_abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.mod)(x, secp256k1N);\nconst Point = /* @__PURE__ */ (() => secp256k1.ProjectivePoint)();\nconst GmulAdd = (Q, a, b) => Point.BASE.multiplyAndAddUnsafe(Q, a, b);\n// Calculate point, scalar and bytes\nfunction schnorrGetExtPubKey(priv) {\n let d_ = secp256k1.utils.normPrivateKeyToScalar(priv); // same method executed in fromPrivateKey\n let p = Point.fromPrivateKey(d_); // P = d'⋅G; 0 < d' < n check is done inside\n const scalar = p.hasEvenY() ? d_ : modN(-d_);\n return { scalar: scalar, bytes: pointToBytes(p) };\n}\n/**\n * lift_x from BIP340. Convert 32-byte x coordinate to elliptic curve point.\n * @returns valid point checked for being on-curve\n */\nfunction lift_x(x) {\n (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.aInRange)('x', x, _1n, secp256k1P); // Fail if x ≥ p.\n const xx = modP(x * x);\n const c = modP(xx * x + BigInt(7)); // Let c = x³ + 7 mod p.\n let y = sqrtMod(c); // Let y = c^(p+1)/4 mod p.\n if (y % _2n !== _0n)\n y = modP(-y); // Return the unique point P such that x(P) = x and\n const p = new Point(x, y, _1n); // y(P) = y if y mod 2 = 0 or y(P) = p-y otherwise.\n p.assertValidity();\n return p;\n}\nconst num = _abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.bytesToNumberBE;\n/**\n * Create tagged hash, convert it to bigint, reduce modulo-n.\n */\nfunction challenge(...args) {\n return modN(num(taggedHash('BIP0340/challenge', ...args)));\n}\n/**\n * Schnorr public key is just `x` coordinate of Point as per BIP340.\n */\nfunction schnorrGetPublicKey(privateKey) {\n return schnorrGetExtPubKey(privateKey).bytes; // d'=int(sk). Fail if d'=0 or d'≥n. Ret bytes(d'⋅G)\n}\n/**\n * Creates Schnorr signature as per BIP340. Verifies itself before returning anything.\n * auxRand is optional and is not the sole source of k generation: bad CSPRNG won't be dangerous.\n */\nfunction schnorrSign(message, privateKey, auxRand = (0,_noble_hashes_utils__WEBPACK_IMPORTED_MODULE_4__.randomBytes)(32)) {\n const m = (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.ensureBytes)('message', message);\n const { bytes: px, scalar: d } = schnorrGetExtPubKey(privateKey); // checks for isWithinCurveOrder\n const a = (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.ensureBytes)('auxRand', auxRand, 32); // Auxiliary random data a: a 32-byte array\n const t = numTo32b(d ^ num(taggedHash('BIP0340/aux', a))); // Let t be the byte-wise xor of bytes(d) and hash/aux(a)\n const rand = taggedHash('BIP0340/nonce', t, px, m); // Let rand = hash/nonce(t || bytes(P) || m)\n const k_ = modN(num(rand)); // Let k' = int(rand) mod n\n if (k_ === _0n)\n throw new Error('sign failed: k is zero'); // Fail if k' = 0.\n const { bytes: rx, scalar: k } = schnorrGetExtPubKey(k_); // Let R = k'⋅G.\n const e = challenge(rx, px, m); // Let e = int(hash/challenge(bytes(R) || bytes(P) || m)) mod n.\n const sig = new Uint8Array(64); // Let sig = bytes(R) || bytes((k + ed) mod n).\n sig.set(rx, 0);\n sig.set(numTo32b(modN(k + e * d)), 32);\n // If Verify(bytes(P), m, sig) (see below) returns failure, abort\n if (!schnorrVerify(sig, m, px))\n throw new Error('sign: Invalid signature produced');\n return sig;\n}\n/**\n * Verifies Schnorr signature.\n * Will swallow errors & return false except for initial type validation of arguments.\n */\nfunction schnorrVerify(signature, message, publicKey) {\n const sig = (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.ensureBytes)('signature', signature, 64);\n const m = (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.ensureBytes)('message', message);\n const pub = (0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.ensureBytes)('publicKey', publicKey, 32);\n try {\n const P = lift_x(num(pub)); // P = lift_x(int(pk)); fail if that fails\n const r = num(sig.subarray(0, 32)); // Let r = int(sig[0:32]); fail if r ≥ p.\n if (!(0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.inRange)(r, _1n, secp256k1P))\n return false;\n const s = num(sig.subarray(32, 64)); // Let s = int(sig[32:64]); fail if s ≥ n.\n if (!(0,_abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.inRange)(s, _1n, secp256k1N))\n return false;\n const e = challenge(numTo32b(r), pointToBytes(P), m); // int(challenge(bytes(r)||bytes(P)||m))%n\n const R = GmulAdd(P, s, modN(-e)); // R = s⋅G - e⋅P\n if (!R || !R.hasEvenY() || R.toAffine().x !== r)\n return false; // -eP == (n-e)P\n return true; // Fail if is_infinite(R) / not has_even_y(R) / x(R) ≠ r.\n }\n catch (error) {\n return false;\n }\n}\n/**\n * Schnorr signatures over secp256k1.\n * https://github.com/bitcoin/bips/blob/master/bip-0340.mediawiki\n * @example\n * ```js\n * import { schnorr } from '@noble/curves/secp256k1';\n * const priv = schnorr.utils.randomPrivateKey();\n * const pub = schnorr.getPublicKey(priv);\n * const msg = new TextEncoder().encode('hello');\n * const sig = schnorr.sign(msg, priv);\n * const isValid = schnorr.verify(sig, msg, pub);\n * ```\n */\nconst schnorr = /* @__PURE__ */ (() => ({\n getPublicKey: schnorrGetPublicKey,\n sign: schnorrSign,\n verify: schnorrVerify,\n utils: {\n randomPrivateKey: secp256k1.utils.randomPrivateKey,\n lift_x,\n pointToBytes,\n numberToBytesBE: _abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.numberToBytesBE,\n bytesToNumberBE: _abstract_utils_js__WEBPACK_IMPORTED_MODULE_3__.bytesToNumberBE,\n taggedHash,\n mod: _abstract_modular_js__WEBPACK_IMPORTED_MODULE_0__.mod,\n },\n}))();\nconst isoMap = /* @__PURE__ */ (() => (0,_abstract_hash_to_curve_js__WEBPACK_IMPORTED_MODULE_5__.isogenyMap)(Fpk1, [\n // xNum\n [\n '0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7',\n '0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581',\n '0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262',\n '0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c',\n ],\n // xDen\n [\n '0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b',\n '0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14',\n '0x0000000000000000000000000000000000000000000000000000000000000001', // LAST 1\n ],\n // yNum\n [\n '0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c',\n '0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3',\n '0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931',\n '0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84',\n ],\n // yDen\n [\n '0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b',\n '0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573',\n '0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f',\n '0x0000000000000000000000000000000000000000000000000000000000000001', // LAST 1\n ],\n].map((i) => i.map((j) => BigInt(j)))))();\nconst mapSWU = /* @__PURE__ */ (() => (0,_abstract_weierstrass_js__WEBPACK_IMPORTED_MODULE_6__.mapToCurveSimpleSWU)(Fpk1, {\n A: BigInt('0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533'),\n B: BigInt('1771'),\n Z: Fpk1.create(BigInt('-11')),\n}))();\n/** Hashing / encoding to secp256k1 points / field. RFC 9380 methods. */\nconst secp256k1_hasher = /* @__PURE__ */ (() => (0,_abstract_hash_to_curve_js__WEBPACK_IMPORTED_MODULE_5__.createHasher)(secp256k1.ProjectivePoint, (scalars) => {\n const { x, y } = mapSWU(Fpk1.create(scalars[0]));\n return isoMap(x, y);\n}, {\n DST: 'secp256k1_XMD:SHA-256_SSWU_RO_',\n encodeDST: 'secp256k1_XMD:SHA-256_SSWU_NU_',\n p: Fpk1.ORDER,\n m: 1,\n k: 128,\n expand: 'xmd',\n hash: _noble_hashes_sha2__WEBPACK_IMPORTED_MODULE_2__.sha256,\n}))();\nconst hashToCurve = /* @__PURE__ */ (() => secp256k1_hasher.hashToCurve)();\nconst encodeToCurve = /* @__PURE__ */ (() => secp256k1_hasher.encodeToCurve)();\n//# sourceMappingURL=secp256k1.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL2VzbS9zZWNwMjU2azEuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDNEM7QUFDTTtBQUNEO0FBQ3NCO0FBQ2Q7QUFDNEQ7QUFDckQ7QUFDaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEMsa0NBQWtDO0FBQ2xDLGdCQUFnQiwwREFBSTtBQUNwQixnQkFBZ0IsMERBQUk7QUFDcEIsaUJBQWlCLDBEQUFJO0FBQ3JCLGlCQUFpQiwwREFBSTtBQUNyQixpQkFBaUIsMERBQUk7QUFDckIsaUJBQWlCLDBEQUFJO0FBQ3JCLGtCQUFrQiwwREFBSTtBQUN0QixrQkFBa0IsMERBQUk7QUFDdEIsa0JBQWtCLDBEQUFJO0FBQ3RCLGdCQUFnQiwwREFBSTtBQUNwQixnQkFBZ0IsMERBQUk7QUFDcEIsaUJBQWlCLDBEQUFJO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSwyREFBSyxxQ0FBcUMsZUFBZTtBQUN0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0EsMkNBQTJDO0FBQzNDLDBDQUEwQyxLQUFLLGNBQWM7QUFDN0Q7QUFDQTtBQUNBO0FBQ08sa0JBQWtCLDZEQUFXO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2RUFBNkU7QUFDN0U7QUFDQTtBQUNBLHFCQUFxQix5REFBRztBQUN4QixxQkFBcUIseURBQUc7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLFNBQVM7QUFDVCxLQUFLO0FBQ0wsQ0FBQyxFQUFFLHNEQUFNO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsMERBQU07QUFDM0IsZUFBZSwrREFBVztBQUMxQjtBQUNBO0FBQ0EsV0FBVywwREFBTSxDQUFDLCtEQUFXO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixtRUFBZTtBQUN2QyxvQkFBb0IseURBQUc7QUFDdkIsb0JBQW9CLHlEQUFHO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkRBQTJEO0FBQzNELHNDQUFzQyxhQUFhO0FBQ25EO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUksNERBQVEsMkJBQTJCO0FBQ3ZDO0FBQ0Esd0NBQXdDO0FBQ3hDLHdCQUF3QjtBQUN4QjtBQUNBLHNCQUFzQjtBQUN0QixvQ0FBb0M7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSwrREFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtEQUFrRDtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0RBQW9ELGdFQUFXO0FBQy9ELGNBQWMsK0RBQVc7QUFDekIsWUFBWSx1QkFBdUIsbUNBQW1DO0FBQ3RFLGNBQWMsK0RBQVcsMEJBQTBCO0FBQ25ELCtEQUErRDtBQUMvRCx3REFBd0Q7QUFDeEQsZ0NBQWdDO0FBQ2hDO0FBQ0EsbURBQW1EO0FBQ25ELFlBQVksdUJBQXVCLDJCQUEyQjtBQUM5RCxvQ0FBb0M7QUFDcEMsb0NBQW9DO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiwrREFBVztBQUMzQixjQUFjLCtEQUFXO0FBQ3pCLGdCQUFnQiwrREFBVztBQUMzQjtBQUNBLG9DQUFvQyx3QkFBd0I7QUFDNUQsNENBQTRDLDJCQUEyQjtBQUN2RSxhQUFhLDJEQUFPO0FBQ3BCO0FBQ0EsNkNBQTZDLDRCQUE0QjtBQUN6RSxhQUFhLDJEQUFPO0FBQ3BCO0FBQ0EsOERBQThEO0FBQzlELDJDQUEyQztBQUMzQztBQUNBLDBCQUEwQjtBQUMxQixxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCO0FBQ3ZCLHVCQUF1QjtBQUN2QjtBQUNBLFdBQVc7QUFDWCxLQUFLO0FBQ0wsQ0FBQztBQUNELHNDQUFzQyxzRUFBVTtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyw2RUFBbUI7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ08sZ0RBQWdELHdFQUFZO0FBQ25FLFlBQVksT0FBTztBQUNuQjtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVLHNEQUFNO0FBQ2hCLENBQUM7QUFDTTtBQUNBO0FBQ1AiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9lc20vc2VjcDI1NmsxLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTklTVCBzZWNwMjU2azEuIFNlZSBbcGRmXShodHRwczovL3d3dy5zZWNnLm9yZy9zZWMyLXYyLnBkZikuXG4gKlxuICogU2VlbXMgdG8gYmUgcmlnaWQgKG5vdCBiYWNrZG9vcmVkKVxuICogW2FzIHBlciBkaXNjdXNzaW9uXShodHRwczovL2JpdGNvaW50YWxrLm9yZy9pbmRleC5waHA/dG9waWM9Mjg5Nzk1Lm1zZzMxODM5NzUjbXNnMzE4Mzk3NSkuXG4gKlxuICogc2VjcDI1NmsxIGJlbG9uZ3MgdG8gS29ibGl0eiBjdXJ2ZXM6IGl0IGhhcyBlZmZpY2llbnRseSBjb21wdXRhYmxlIGVuZG9tb3JwaGlzbS5cbiAqIEVuZG9tb3JwaGlzbSB1c2VzIDJ4IGxlc3MgUkFNLCBzcGVlZHMgdXAgcHJlY29tcHV0YXRpb24gYnkgMnggYW5kIEVDREggLyBrZXkgcmVjb3ZlcnkgYnkgMjAlLlxuICogRm9yIHByZWNvbXB1dGVkIHdOQUYgaXQgdHJhZGVzIG9mZiAxLzIgaW5pdCB0aW1lICYgMS8zIHJhbSBmb3IgMjAlIHBlcmYgaGl0LlxuICogW1NlZSBleHBsYW5hdGlvbl0oaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vcGF1bG1pbGxyL2ViNjcwODA2NzkzZTg0ZGY2MjhhN2M0MzRhODczMDY2KS5cbiAqIEBtb2R1bGVcbiAqL1xuLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuaW1wb3J0IHsgc2hhMjU2IH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9zaGEyJztcbmltcG9ydCB7IHJhbmRvbUJ5dGVzIH0gZnJvbSAnQG5vYmxlL2hhc2hlcy91dGlscyc7XG5pbXBvcnQgeyBjcmVhdGVDdXJ2ZSB9IGZyb20gXCIuL19zaG9ydHdfdXRpbHMuanNcIjtcbmltcG9ydCB7IGNyZWF0ZUhhc2hlciwgaXNvZ2VueU1hcCB9IGZyb20gXCIuL2Fic3RyYWN0L2hhc2gtdG8tY3VydmUuanNcIjtcbmltcG9ydCB7IEZpZWxkLCBtb2QsIHBvdzIgfSBmcm9tIFwiLi9hYnN0cmFjdC9tb2R1bGFyLmpzXCI7XG5pbXBvcnQgeyBhSW5SYW5nZSwgYnl0ZXNUb051bWJlckJFLCBjb25jYXRCeXRlcywgZW5zdXJlQnl0ZXMsIGluUmFuZ2UsIG51bWJlclRvQnl0ZXNCRSwgfSBmcm9tIFwiLi9hYnN0cmFjdC91dGlscy5qc1wiO1xuaW1wb3J0IHsgbWFwVG9DdXJ2ZVNpbXBsZVNXVSB9IGZyb20gXCIuL2Fic3RyYWN0L3dlaWVyc3RyYXNzLmpzXCI7XG5jb25zdCBzZWNwMjU2azFQID0gQmlnSW50KCcweGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlZmZmZmZjMmYnKTtcbmNvbnN0IHNlY3AyNTZrMU4gPSBCaWdJbnQoJzB4ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmViYWFlZGNlNmFmNDhhMDNiYmZkMjVlOGNkMDM2NDE0MScpO1xuY29uc3QgXzBuID0gQmlnSW50KDApO1xuY29uc3QgXzFuID0gQmlnSW50KDEpO1xuY29uc3QgXzJuID0gQmlnSW50KDIpO1xuY29uc3QgZGl2TmVhcmVzdCA9IChhLCBiKSA9PiAoYSArIGIgLyBfMm4pIC8gYjtcbi8qKlxuICog4oiabiA9IG5eKChwKzEpLzQpIGZvciBmaWVsZHMgcCA9IDMgbW9kIDQuIFdlIHVud3JhcCB0aGUgbG9vcCBhbmQgbXVsdGlwbHkgYml0LWJ5LWJpdC5cbiAqIChQKzFuLzRuKS50b1N0cmluZygyKSB3b3VsZCBwcm9kdWNlIGJpdHMgWzIyM3ggMSwgMCwgMjJ4IDEsIDR4IDAsIDExLCAwMF1cbiAqL1xuZnVuY3Rpb24gc3FydE1vZCh5KSB7XG4gICAgY29uc3QgUCA9IHNlY3AyNTZrMVA7XG4gICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgY29uc3QgXzNuID0gQmlnSW50KDMpLCBfNm4gPSBCaWdJbnQoNiksIF8xMW4gPSBCaWdJbnQoMTEpLCBfMjJuID0gQmlnSW50KDIyKTtcbiAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBjb25zdCBfMjNuID0gQmlnSW50KDIzKSwgXzQ0biA9IEJpZ0ludCg0NCksIF84OG4gPSBCaWdJbnQoODgpO1xuICAgIGNvbnN0IGIyID0gKHkgKiB5ICogeSkgJSBQOyAvLyB4XjMsIDExXG4gICAgY29uc3QgYjMgPSAoYjIgKiBiMiAqIHkpICUgUDsgLy8geF43XG4gICAgY29uc3QgYjYgPSAocG93MihiMywgXzNuLCBQKSAqIGIzKSAlIFA7XG4gICAgY29uc3QgYjkgPSAocG93MihiNiwgXzNuLCBQKSAqIGIzKSAlIFA7XG4gICAgY29uc3QgYjExID0gKHBvdzIoYjksIF8ybiwgUCkgKiBiMikgJSBQO1xuICAgIGNvbnN0IGIyMiA9IChwb3cyKGIxMSwgXzExbiwgUCkgKiBiMTEpICUgUDtcbiAgICBjb25zdCBiNDQgPSAocG93MihiMjIsIF8yMm4sIFApICogYjIyKSAlIFA7XG4gICAgY29uc3QgYjg4ID0gKHBvdzIoYjQ0LCBfNDRuLCBQKSAqIGI0NCkgJSBQO1xuICAgIGNvbnN0IGIxNzYgPSAocG93MihiODgsIF84OG4sIFApICogYjg4KSAlIFA7XG4gICAgY29uc3QgYjIyMCA9IChwb3cyKGIxNzYsIF80NG4sIFApICogYjQ0KSAlIFA7XG4gICAgY29uc3QgYjIyMyA9IChwb3cyKGIyMjAsIF8zbiwgUCkgKiBiMykgJSBQO1xuICAgIGNvbnN0IHQxID0gKHBvdzIoYjIyMywgXzIzbiwgUCkgKiBiMjIpICUgUDtcbiAgICBjb25zdCB0MiA9IChwb3cyKHQxLCBfNm4sIFApICogYjIpICUgUDtcbiAgICBjb25zdCByb290ID0gcG93Mih0MiwgXzJuLCBQKTtcbiAgICBpZiAoIUZwazEuZXFsKEZwazEuc3FyKHJvb3QpLCB5KSlcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZmluZCBzcXVhcmUgcm9vdCcpO1xuICAgIHJldHVybiByb290O1xufVxuY29uc3QgRnBrMSA9IEZpZWxkKHNlY3AyNTZrMVAsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB7IHNxcnQ6IHNxcnRNb2QgfSk7XG4vKipcbiAqIHNlY3AyNTZrMSBjdXJ2ZSwgRUNEU0EgYW5kIEVDREggbWV0aG9kcy5cbiAqXG4gKiBGaWVsZDogYDJuKioyNTZuIC0gMm4qKjMybiAtIDJuKio5biAtIDJuKio4biAtIDJuKio3biAtIDJuKio2biAtIDJuKio0biAtIDFuYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqc1xuICogaW1wb3J0IHsgc2VjcDI1NmsxIH0gZnJvbSAnQG5vYmxlL2N1cnZlcy9zZWNwMjU2azEnO1xuICogY29uc3QgcHJpdiA9IHNlY3AyNTZrMS51dGlscy5yYW5kb21Qcml2YXRlS2V5KCk7XG4gKiBjb25zdCBwdWIgPSBzZWNwMjU2azEuZ2V0UHVibGljS2V5KHByaXYpO1xuICogY29uc3QgbXNnID0gbmV3IFVpbnQ4QXJyYXkoMzIpLmZpbGwoMSk7IC8vIG1lc3NhZ2UgaGFzaCAobm90IG1lc3NhZ2UpIGluIGVjZHNhXG4gKiBjb25zdCBzaWcgPSBzZWNwMjU2azEuc2lnbihtc2csIHByaXYpOyAvLyBge3ByZWhhc2g6IHRydWV9YCBvcHRpb24gaXMgYXZhaWxhYmxlXG4gKiBjb25zdCBpc1ZhbGlkID0gc2VjcDI1NmsxLnZlcmlmeShzaWcsIG1zZywgcHViKSA9PT0gdHJ1ZTtcbiAqIGBgYFxuICovXG5leHBvcnQgY29uc3Qgc2VjcDI1NmsxID0gY3JlYXRlQ3VydmUoe1xuICAgIGE6IF8wbixcbiAgICBiOiBCaWdJbnQoNyksXG4gICAgRnA6IEZwazEsXG4gICAgbjogc2VjcDI1NmsxTixcbiAgICBHeDogQmlnSW50KCc1NTA2NjI2MzAyMjI3NzM0MzY2OTU3ODcxODg5NTE2ODUzNDMyNjI1MDYwMzQ1Mzc3NzU5NDE3NTUwMDE4NzM2MDM4OTExNjcyOTI0MCcpLFxuICAgIEd5OiBCaWdJbnQoJzMyNjcwNTEwMDIwNzU4ODE2OTc4MDgzMDg1MTMwNTA3MDQzMTg0NDcxMjczMzgwNjU5MjQzMjc1OTM4OTA0MzM1NzU3MzM3NDgyNDI0JyksXG4gICAgaDogQmlnSW50KDEpLFxuICAgIGxvd1M6IHRydWUsIC8vIEFsbG93IG9ubHkgbG93LVMgc2lnbmF0dXJlcyBieSBkZWZhdWx0IGluIHNpZ24oKSBhbmQgdmVyaWZ5KClcbiAgICBlbmRvOiB7XG4gICAgICAgIC8vIEVuZG9tb3JwaGlzbSwgc2VlIGFib3ZlXG4gICAgICAgIGJldGE6IEJpZ0ludCgnMHg3YWU5NmEyYjY1N2MwNzEwNmU2NDQ3OWVhYzM0MzRlOTljZjA0OTc1MTJmNTg5OTVjMTM5NmMyODcxOTUwMWVlJyksXG4gICAgICAgIHNwbGl0U2NhbGFyOiAoaykgPT4ge1xuICAgICAgICAgICAgY29uc3QgbiA9IHNlY3AyNTZrMU47XG4gICAgICAgICAgICBjb25zdCBhMSA9IEJpZ0ludCgnMHgzMDg2ZDIyMWE3ZDQ2YmNkZTg2YzkwZTQ5Mjg0ZWIxNScpO1xuICAgICAgICAgICAgY29uc3QgYjEgPSAtXzFuICogQmlnSW50KCcweGU0NDM3ZWQ2MDEwZTg4Mjg2ZjU0N2ZhOTBhYmZlNGMzJyk7XG4gICAgICAgICAgICBjb25zdCBhMiA9IEJpZ0ludCgnMHgxMTRjYTUwZjdhOGUyZjNmNjU3YzExMDhkOWQ0NGNmZDgnKTtcbiAgICAgICAgICAgIGNvbnN0IGIyID0gYTE7XG4gICAgICAgICAgICBjb25zdCBQT1dfMl8xMjggPSBCaWdJbnQoJzB4MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyk7IC8vICgybioqMTI4bikudG9TdHJpbmcoMTYpXG4gICAgICAgICAgICBjb25zdCBjMSA9IGRpdk5lYXJlc3QoYjIgKiBrLCBuKTtcbiAgICAgICAgICAgIGNvbnN0IGMyID0gZGl2TmVhcmVzdCgtYjEgKiBrLCBuKTtcbiAgICAgICAgICAgIGxldCBrMSA9IG1vZChrIC0gYzEgKiBhMSAtIGMyICogYTIsIG4pO1xuICAgICAgICAgICAgbGV0IGsyID0gbW9kKC1jMSAqIGIxIC0gYzIgKiBiMiwgbik7XG4gICAgICAgICAgICBjb25zdCBrMW5lZyA9IGsxID4gUE9XXzJfMTI4O1xuICAgICAgICAgICAgY29uc3QgazJuZWcgPSBrMiA+IFBPV18yXzEyODtcbiAgICAgICAgICAgIGlmIChrMW5lZylcbiAgICAgICAgICAgICAgICBrMSA9IG4gLSBrMTtcbiAgICAgICAgICAgIGlmIChrMm5lZylcbiAgICAgICAgICAgICAgICBrMiA9IG4gLSBrMjtcbiAgICAgICAgICAgIGlmIChrMSA+IFBPV18yXzEyOCB8fCBrMiA+IFBPV18yXzEyOCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignc3BsaXRTY2FsYXI6IEVuZG9tb3JwaGlzbSBmYWlsZWQsIGs9JyArIGspO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHsgazFuZWcsIGsxLCBrMm5lZywgazIgfTtcbiAgICAgICAgfSxcbiAgICB9LFxufSwgc2hhMjU2KTtcbi8vIFNjaG5vcnIgc2lnbmF0dXJlcyBhcmUgc3VwZXJpb3IgdG8gRUNEU0EgZnJvbSBhYm92ZS4gQmVsb3cgaXMgU2Nobm9yci1zcGVjaWZpYyBCSVAwMzQwIGNvZGUuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXBzL2Jsb2IvbWFzdGVyL2JpcC0wMzQwLm1lZGlhd2lraVxuLyoqIEFuIG9iamVjdCBtYXBwaW5nIHRhZ3MgdG8gdGhlaXIgdGFnZ2VkIGhhc2ggcHJlZml4IG9mIFtTSEEyNTYodGFnKSB8IFNIQTI1Nih0YWcpXSAqL1xuY29uc3QgVEFHR0VEX0hBU0hfUFJFRklYRVMgPSB7fTtcbmZ1bmN0aW9uIHRhZ2dlZEhhc2godGFnLCAuLi5tZXNzYWdlcykge1xuICAgIGxldCB0YWdQID0gVEFHR0VEX0hBU0hfUFJFRklYRVNbdGFnXTtcbiAgICBpZiAodGFnUCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IHRhZ0ggPSBzaGEyNTYoVWludDhBcnJheS5mcm9tKHRhZywgKGMpID0+IGMuY2hhckNvZGVBdCgwKSkpO1xuICAgICAgICB0YWdQID0gY29uY2F0Qnl0ZXModGFnSCwgdGFnSCk7XG4gICAgICAgIFRBR0dFRF9IQVNIX1BSRUZJWEVTW3RhZ10gPSB0YWdQO1xuICAgIH1cbiAgICByZXR1cm4gc2hhMjU2KGNvbmNhdEJ5dGVzKHRhZ1AsIC4uLm1lc3NhZ2VzKSk7XG59XG4vLyBFQ0RTQSBjb21wYWN0IHBvaW50cyBhcmUgMzMtYnl0ZS4gU2Nobm9yciBpcyAzMjogd2Ugc3RyaXAgZmlyc3QgYnl0ZSAweDAyIG9yIDB4MDNcbmNvbnN0IHBvaW50VG9CeXRlcyA9IChwb2ludCkgPT4gcG9pbnQudG9SYXdCeXRlcyh0cnVlKS5zbGljZSgxKTtcbmNvbnN0IG51bVRvMzJiID0gKG4pID0+IG51bWJlclRvQnl0ZXNCRShuLCAzMik7XG5jb25zdCBtb2RQID0gKHgpID0+IG1vZCh4LCBzZWNwMjU2azFQKTtcbmNvbnN0IG1vZE4gPSAoeCkgPT4gbW9kKHgsIHNlY3AyNTZrMU4pO1xuY29uc3QgUG9pbnQgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IHNlY3AyNTZrMS5Qcm9qZWN0aXZlUG9pbnQpKCk7XG5jb25zdCBHbXVsQWRkID0gKFEsIGEsIGIpID0+IFBvaW50LkJBU0UubXVsdGlwbHlBbmRBZGRVbnNhZmUoUSwgYSwgYik7XG4vLyBDYWxjdWxhdGUgcG9pbnQsIHNjYWxhciBhbmQgYnl0ZXNcbmZ1bmN0aW9uIHNjaG5vcnJHZXRFeHRQdWJLZXkocHJpdikge1xuICAgIGxldCBkXyA9IHNlY3AyNTZrMS51dGlscy5ub3JtUHJpdmF0ZUtleVRvU2NhbGFyKHByaXYpOyAvLyBzYW1lIG1ldGhvZCBleGVjdXRlZCBpbiBmcm9tUHJpdmF0ZUtleVxuICAgIGxldCBwID0gUG9pbnQuZnJvbVByaXZhdGVLZXkoZF8pOyAvLyBQID0gZCfii4VHOyAwIDwgZCcgPCBuIGNoZWNrIGlzIGRvbmUgaW5zaWRlXG4gICAgY29uc3Qgc2NhbGFyID0gcC5oYXNFdmVuWSgpID8gZF8gOiBtb2ROKC1kXyk7XG4gICAgcmV0dXJuIHsgc2NhbGFyOiBzY2FsYXIsIGJ5dGVzOiBwb2ludFRvQnl0ZXMocCkgfTtcbn1cbi8qKlxuICogbGlmdF94IGZyb20gQklQMzQwLiBDb252ZXJ0IDMyLWJ5dGUgeCBjb29yZGluYXRlIHRvIGVsbGlwdGljIGN1cnZlIHBvaW50LlxuICogQHJldHVybnMgdmFsaWQgcG9pbnQgY2hlY2tlZCBmb3IgYmVpbmcgb24tY3VydmVcbiAqL1xuZnVuY3Rpb24gbGlmdF94KHgpIHtcbiAgICBhSW5SYW5nZSgneCcsIHgsIF8xbiwgc2VjcDI1NmsxUCk7IC8vIEZhaWwgaWYgeCDiiaUgcC5cbiAgICBjb25zdCB4eCA9IG1vZFAoeCAqIHgpO1xuICAgIGNvbnN0IGMgPSBtb2RQKHh4ICogeCArIEJpZ0ludCg3KSk7IC8vIExldCBjID0geMKzICsgNyBtb2QgcC5cbiAgICBsZXQgeSA9IHNxcnRNb2QoYyk7IC8vIExldCB5ID0gY14ocCsxKS80IG1vZCBwLlxuICAgIGlmICh5ICUgXzJuICE9PSBfMG4pXG4gICAgICAgIHkgPSBtb2RQKC15KTsgLy8gUmV0dXJuIHRoZSB1bmlxdWUgcG9pbnQgUCBzdWNoIHRoYXQgeChQKSA9IHggYW5kXG4gICAgY29uc3QgcCA9IG5ldyBQb2ludCh4LCB5LCBfMW4pOyAvLyB5KFApID0geSBpZiB5IG1vZCAyID0gMCBvciB5KFApID0gcC15IG90aGVyd2lzZS5cbiAgICBwLmFzc2VydFZhbGlkaXR5KCk7XG4gICAgcmV0dXJuIHA7XG59XG5jb25zdCBudW0gPSBieXRlc1RvTnVtYmVyQkU7XG4vKipcbiAqIENyZWF0ZSB0YWdnZWQgaGFzaCwgY29udmVydCBpdCB0byBiaWdpbnQsIHJlZHVjZSBtb2R1bG8tbi5cbiAqL1xuZnVuY3Rpb24gY2hhbGxlbmdlKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gbW9kTihudW0odGFnZ2VkSGFzaCgnQklQMDM0MC9jaGFsbGVuZ2UnLCAuLi5hcmdzKSkpO1xufVxuLyoqXG4gKiBTY2hub3JyIHB1YmxpYyBrZXkgaXMganVzdCBgeGAgY29vcmRpbmF0ZSBvZiBQb2ludCBhcyBwZXIgQklQMzQwLlxuICovXG5mdW5jdGlvbiBzY2hub3JyR2V0UHVibGljS2V5KHByaXZhdGVLZXkpIHtcbiAgICByZXR1cm4gc2Nobm9yckdldEV4dFB1YktleShwcml2YXRlS2V5KS5ieXRlczsgLy8gZCc9aW50KHNrKS4gRmFpbCBpZiBkJz0wIG9yIGQn4omlbi4gUmV0IGJ5dGVzKGQn4ouFRylcbn1cbi8qKlxuICogQ3JlYXRlcyBTY2hub3JyIHNpZ25hdHVyZSBhcyBwZXIgQklQMzQwLiBWZXJpZmllcyBpdHNlbGYgYmVmb3JlIHJldHVybmluZyBhbnl0aGluZy5cbiAqIGF1eFJhbmQgaXMgb3B0aW9uYWwgYW5kIGlzIG5vdCB0aGUgc29sZSBzb3VyY2Ugb2YgayBnZW5lcmF0aW9uOiBiYWQgQ1NQUk5HIHdvbid0IGJlIGRhbmdlcm91cy5cbiAqL1xuZnVuY3Rpb24gc2Nobm9yclNpZ24obWVzc2FnZSwgcHJpdmF0ZUtleSwgYXV4UmFuZCA9IHJhbmRvbUJ5dGVzKDMyKSkge1xuICAgIGNvbnN0IG0gPSBlbnN1cmVCeXRlcygnbWVzc2FnZScsIG1lc3NhZ2UpO1xuICAgIGNvbnN0IHsgYnl0ZXM6IHB4LCBzY2FsYXI6IGQgfSA9IHNjaG5vcnJHZXRFeHRQdWJLZXkocHJpdmF0ZUtleSk7IC8vIGNoZWNrcyBmb3IgaXNXaXRoaW5DdXJ2ZU9yZGVyXG4gICAgY29uc3QgYSA9IGVuc3VyZUJ5dGVzKCdhdXhSYW5kJywgYXV4UmFuZCwgMzIpOyAvLyBBdXhpbGlhcnkgcmFuZG9tIGRhdGEgYTogYSAzMi1ieXRlIGFycmF5XG4gICAgY29uc3QgdCA9IG51bVRvMzJiKGQgXiBudW0odGFnZ2VkSGFzaCgnQklQMDM0MC9hdXgnLCBhKSkpOyAvLyBMZXQgdCBiZSB0aGUgYnl0ZS13aXNlIHhvciBvZiBieXRlcyhkKSBhbmQgaGFzaC9hdXgoYSlcbiAgICBjb25zdCByYW5kID0gdGFnZ2VkSGFzaCgnQklQMDM0MC9ub25jZScsIHQsIHB4LCBtKTsgLy8gTGV0IHJhbmQgPSBoYXNoL25vbmNlKHQgfHwgYnl0ZXMoUCkgfHwgbSlcbiAgICBjb25zdCBrXyA9IG1vZE4obnVtKHJhbmQpKTsgLy8gTGV0IGsnID0gaW50KHJhbmQpIG1vZCBuXG4gICAgaWYgKGtfID09PSBfMG4pXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignc2lnbiBmYWlsZWQ6IGsgaXMgemVybycpOyAvLyBGYWlsIGlmIGsnID0gMC5cbiAgICBjb25zdCB7IGJ5dGVzOiByeCwgc2NhbGFyOiBrIH0gPSBzY2hub3JyR2V0RXh0UHViS2V5KGtfKTsgLy8gTGV0IFIgPSBrJ+KLhUcuXG4gICAgY29uc3QgZSA9IGNoYWxsZW5nZShyeCwgcHgsIG0pOyAvLyBMZXQgZSA9IGludChoYXNoL2NoYWxsZW5nZShieXRlcyhSKSB8fCBieXRlcyhQKSB8fCBtKSkgbW9kIG4uXG4gICAgY29uc3Qgc2lnID0gbmV3IFVpbnQ4QXJyYXkoNjQpOyAvLyBMZXQgc2lnID0gYnl0ZXMoUikgfHwgYnl0ZXMoKGsgKyBlZCkgbW9kIG4pLlxuICAgIHNpZy5zZXQocngsIDApO1xuICAgIHNpZy5zZXQobnVtVG8zMmIobW9kTihrICsgZSAqIGQpKSwgMzIpO1xuICAgIC8vIElmIFZlcmlmeShieXRlcyhQKSwgbSwgc2lnKSAoc2VlIGJlbG93KSByZXR1cm5zIGZhaWx1cmUsIGFib3J0XG4gICAgaWYgKCFzY2hub3JyVmVyaWZ5KHNpZywgbSwgcHgpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NpZ246IEludmFsaWQgc2lnbmF0dXJlIHByb2R1Y2VkJyk7XG4gICAgcmV0dXJuIHNpZztcbn1cbi8qKlxuICogVmVyaWZpZXMgU2Nobm9yciBzaWduYXR1cmUuXG4gKiBXaWxsIHN3YWxsb3cgZXJyb3JzICYgcmV0dXJuIGZhbHNlIGV4Y2VwdCBmb3IgaW5pdGlhbCB0eXBlIHZhbGlkYXRpb24gb2YgYXJndW1lbnRzLlxuICovXG5mdW5jdGlvbiBzY2hub3JyVmVyaWZ5KHNpZ25hdHVyZSwgbWVzc2FnZSwgcHVibGljS2V5KSB7XG4gICAgY29uc3Qgc2lnID0gZW5zdXJlQnl0ZXMoJ3NpZ25hdHVyZScsIHNpZ25hdHVyZSwgNjQpO1xuICAgIGNvbnN0IG0gPSBlbnN1cmVCeXRlcygnbWVzc2FnZScsIG1lc3NhZ2UpO1xuICAgIGNvbnN0IHB1YiA9IGVuc3VyZUJ5dGVzKCdwdWJsaWNLZXknLCBwdWJsaWNLZXksIDMyKTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBQID0gbGlmdF94KG51bShwdWIpKTsgLy8gUCA9IGxpZnRfeChpbnQocGspKTsgZmFpbCBpZiB0aGF0IGZhaWxzXG4gICAgICAgIGNvbnN0IHIgPSBudW0oc2lnLnN1YmFycmF5KDAsIDMyKSk7IC8vIExldCByID0gaW50KHNpZ1swOjMyXSk7IGZhaWwgaWYgciDiiaUgcC5cbiAgICAgICAgaWYgKCFpblJhbmdlKHIsIF8xbiwgc2VjcDI1NmsxUCkpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IHMgPSBudW0oc2lnLnN1YmFycmF5KDMyLCA2NCkpOyAvLyBMZXQgcyA9IGludChzaWdbMzI6NjRdKTsgZmFpbCBpZiBzIOKJpSBuLlxuICAgICAgICBpZiAoIWluUmFuZ2UocywgXzFuLCBzZWNwMjU2azFOKSlcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgZSA9IGNoYWxsZW5nZShudW1UbzMyYihyKSwgcG9pbnRUb0J5dGVzKFApLCBtKTsgLy8gaW50KGNoYWxsZW5nZShieXRlcyhyKXx8Ynl0ZXMoUCl8fG0pKSVuXG4gICAgICAgIGNvbnN0IFIgPSBHbXVsQWRkKFAsIHMsIG1vZE4oLWUpKTsgLy8gUiA9IHPii4VHIC0gZeKLhVBcbiAgICAgICAgaWYgKCFSIHx8ICFSLmhhc0V2ZW5ZKCkgfHwgUi50b0FmZmluZSgpLnggIT09IHIpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7IC8vIC1lUCA9PSAobi1lKVBcbiAgICAgICAgcmV0dXJuIHRydWU7IC8vIEZhaWwgaWYgaXNfaW5maW5pdGUoUikgLyBub3QgaGFzX2V2ZW5feShSKSAvIHgoUikg4omgIHIuXG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqXG4gKiBTY2hub3JyIHNpZ25hdHVyZXMgb3ZlciBzZWNwMjU2azEuXG4gKiBodHRwczovL2dpdGh1Yi5jb20vYml0Y29pbi9iaXBzL2Jsb2IvbWFzdGVyL2JpcC0wMzQwLm1lZGlhd2lraVxuICogQGV4YW1wbGVcbiAqIGBgYGpzXG4gKiBpbXBvcnQgeyBzY2hub3JyIH0gZnJvbSAnQG5vYmxlL2N1cnZlcy9zZWNwMjU2azEnO1xuICogY29uc3QgcHJpdiA9IHNjaG5vcnIudXRpbHMucmFuZG9tUHJpdmF0ZUtleSgpO1xuICogY29uc3QgcHViID0gc2Nobm9yci5nZXRQdWJsaWNLZXkocHJpdik7XG4gKiBjb25zdCBtc2cgPSBuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoJ2hlbGxvJyk7XG4gKiBjb25zdCBzaWcgPSBzY2hub3JyLnNpZ24obXNnLCBwcml2KTtcbiAqIGNvbnN0IGlzVmFsaWQgPSBzY2hub3JyLnZlcmlmeShzaWcsIG1zZywgcHViKTtcbiAqIGBgYFxuICovXG5leHBvcnQgY29uc3Qgc2Nobm9yciA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gKHtcbiAgICBnZXRQdWJsaWNLZXk6IHNjaG5vcnJHZXRQdWJsaWNLZXksXG4gICAgc2lnbjogc2Nobm9yclNpZ24sXG4gICAgdmVyaWZ5OiBzY2hub3JyVmVyaWZ5LFxuICAgIHV0aWxzOiB7XG4gICAgICAgIHJhbmRvbVByaXZhdGVLZXk6IHNlY3AyNTZrMS51dGlscy5yYW5kb21Qcml2YXRlS2V5LFxuICAgICAgICBsaWZ0X3gsXG4gICAgICAgIHBvaW50VG9CeXRlcyxcbiAgICAgICAgbnVtYmVyVG9CeXRlc0JFLFxuICAgICAgICBieXRlc1RvTnVtYmVyQkUsXG4gICAgICAgIHRhZ2dlZEhhc2gsXG4gICAgICAgIG1vZCxcbiAgICB9LFxufSkpKCk7XG5jb25zdCBpc29NYXAgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGlzb2dlbnlNYXAoRnBrMSwgW1xuICAgIC8vIHhOdW1cbiAgICBbXG4gICAgICAgICcweDhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhkYWFhYWE4YzcnLFxuICAgICAgICAnMHg3ZDNkNGM4MGJjMzIxZDViOWYzMTVjZWE3ZmQ0NGM1ZDU5NWQyZmMwYmY2M2I5MmRmZmYxMDQ0ZjE3YzY1ODEnLFxuICAgICAgICAnMHg1MzRjMzI4ZDIzZjIzNGU2ZTJhNDEzZGVjYTI1Y2FlY2U0NTA2MTQ0MDM3YzQwMzE0ZWNiZDBiNTNkOWRkMjYyJyxcbiAgICAgICAgJzB4OGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGUzOGRhYWFhYTg4YycsXG4gICAgXSxcbiAgICAvLyB4RGVuXG4gICAgW1xuICAgICAgICAnMHhkMzU3NzExOTNkOTQ5MThhOWNhMzRjY2JiN2I2NDBkZDg2Y2Q0MDk1NDJmODQ4N2Q5ZmU2Yjc0NTc4MWViNDliJyxcbiAgICAgICAgJzB4ZWRhZGM2ZjY0MzgzZGMxZGY3YzRiMmQ1MWI1NDIyNTQwNmQzNmI2NDFmNWU0MWJiYzUyYTU2NjEyYThjNmQxNCcsXG4gICAgICAgICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEnLCAvLyBMQVNUIDFcbiAgICBdLFxuICAgIC8vIHlOdW1cbiAgICBbXG4gICAgICAgICcweDRiZGExMmY2ODRiZGExMmY2ODRiZGExMmY2ODRiZGExMmY2ODRiZGExMmY2ODRiZGExMmY2ODRiOGUzOGUyM2MnLFxuICAgICAgICAnMHhjNzVlMGMzMmQ1Y2I3YzBmYTlkMGE1NGIxMmEwYTZkNTY0N2FiMDQ2ZDY4NmRhNmZkZmZjOTBmYzIwMWQ3MWEzJyxcbiAgICAgICAgJzB4MjlhNjE5NDY5MWY5MWE3MzcxNTIwOWVmNjUxMmU1NzY3MjI4MzBhMjAxYmUyMDE4YTc2NWU4NWE5ZWNlZTkzMScsXG4gICAgICAgICcweDJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmMzhlMzhkODQnLFxuICAgIF0sXG4gICAgLy8geURlblxuICAgIFtcbiAgICAgICAgJzB4ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVmZmZmZjkzYicsXG4gICAgICAgICcweDdhMDY1MzRiYjhiZGI0OWZkNWU5ZTY2MzI3MjJjMjk4OTQ2N2MxYmZjOGU4ZDk3OGRmYjQyNWQyNjg1YzI1NzMnLFxuICAgICAgICAnMHg2NDg0YWE3MTY1NDVjYTJjZjNhNzBjM2ZhOGZlMzM3ZTBhM2QyMTE2MmYwZDYyOTlhN2JmODE5MmJmZDJhNzZmJyxcbiAgICAgICAgJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMScsIC8vIExBU1QgMVxuICAgIF0sXG5dLm1hcCgoaSkgPT4gaS5tYXAoKGopID0+IEJpZ0ludChqKSkpKSkoKTtcbmNvbnN0IG1hcFNXVSA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gbWFwVG9DdXJ2ZVNpbXBsZVNXVShGcGsxLCB7XG4gICAgQTogQmlnSW50KCcweDNmODczMWFiZGQ2NjFhZGNhMDhhNTU1OGYwZjVkMjcyZTk1M2QzNjNjYjZmMGU1ZDQwNTQ0N2MwMWE0NDQ1MzMnKSxcbiAgICBCOiBCaWdJbnQoJzE3NzEnKSxcbiAgICBaOiBGcGsxLmNyZWF0ZShCaWdJbnQoJy0xMScpKSxcbn0pKSgpO1xuLyoqIEhhc2hpbmcgLyBlbmNvZGluZyB0byBzZWNwMjU2azEgcG9pbnRzIC8gZmllbGQuIFJGQyA5MzgwIG1ldGhvZHMuICovXG5leHBvcnQgY29uc3Qgc2VjcDI1NmsxX2hhc2hlciA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gY3JlYXRlSGFzaGVyKHNlY3AyNTZrMS5Qcm9qZWN0aXZlUG9pbnQsIChzY2FsYXJzKSA9PiB7XG4gICAgY29uc3QgeyB4LCB5IH0gPSBtYXBTV1UoRnBrMS5jcmVhdGUoc2NhbGFyc1swXSkpO1xuICAgIHJldHVybiBpc29NYXAoeCwgeSk7XG59LCB7XG4gICAgRFNUOiAnc2VjcDI1NmsxX1hNRDpTSEEtMjU2X1NTV1VfUk9fJyxcbiAgICBlbmNvZGVEU1Q6ICdzZWNwMjU2azFfWE1EOlNIQS0yNTZfU1NXVV9OVV8nLFxuICAgIHA6IEZwazEuT1JERVIsXG4gICAgbTogMSxcbiAgICBrOiAxMjgsXG4gICAgZXhwYW5kOiAneG1kJyxcbiAgICBoYXNoOiBzaGEyNTYsXG59KSkoKTtcbmV4cG9ydCBjb25zdCBoYXNoVG9DdXJ2ZSA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gc2VjcDI1NmsxX2hhc2hlci5oYXNoVG9DdXJ2ZSkoKTtcbmV4cG9ydCBjb25zdCBlbmNvZGVUb0N1cnZlID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBzZWNwMjU2azFfaGFzaGVyLmVuY29kZVRvQ3VydmUpKCk7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zZWNwMjU2azEuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/errors.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/errors.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BaseError: () => (/* binding */ BaseError)\n/* harmony export */ });\n/* harmony import */ var _version_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./version.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/version.js\");\n\nclass BaseError extends Error {\n constructor(shortMessage, args = {}) {\n const details = args.cause instanceof BaseError\n ? args.cause.details\n : args.cause?.message\n ? args.cause.message\n : args.details;\n const docsPath = args.cause instanceof BaseError\n ? args.cause.docsPath || args.docsPath\n : args.docsPath;\n const message = [\n shortMessage || 'An error occurred.',\n '',\n ...(args.metaMessages ? [...args.metaMessages, ''] : []),\n ...(docsPath ? [`Docs: https://abitype.dev${docsPath}`] : []),\n ...(details ? [`Details: ${details}`] : []),\n `Version: abitype@${_version_js__WEBPACK_IMPORTED_MODULE_0__.version}`,\n ].join('\\n');\n super(message);\n Object.defineProperty(this, \"details\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"docsPath\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"metaMessages\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"shortMessage\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiTypeError'\n });\n if (args.cause)\n this.cause = args.cause;\n this.details = details;\n this.docsPath = docsPath;\n this.metaMessages = args.metaMessages;\n this.shortMessage = shortMessage;\n }\n}\n//# sourceMappingURL=errors.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2Vycm9ycy5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUF1QztBQUNoQztBQUNQLHVDQUF1QztBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3REFBd0QsU0FBUztBQUNqRSx1Q0FBdUMsUUFBUTtBQUMvQyxnQ0FBZ0MsZ0RBQU8sQ0FBQztBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2Vycm9ycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB2ZXJzaW9uIH0gZnJvbSAnLi92ZXJzaW9uLmpzJztcbmV4cG9ydCBjbGFzcyBCYXNlRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gICAgY29uc3RydWN0b3Ioc2hvcnRNZXNzYWdlLCBhcmdzID0ge30pIHtcbiAgICAgICAgY29uc3QgZGV0YWlscyA9IGFyZ3MuY2F1c2UgaW5zdGFuY2VvZiBCYXNlRXJyb3JcbiAgICAgICAgICAgID8gYXJncy5jYXVzZS5kZXRhaWxzXG4gICAgICAgICAgICA6IGFyZ3MuY2F1c2U/Lm1lc3NhZ2VcbiAgICAgICAgICAgICAgICA/IGFyZ3MuY2F1c2UubWVzc2FnZVxuICAgICAgICAgICAgICAgIDogYXJncy5kZXRhaWxzO1xuICAgICAgICBjb25zdCBkb2NzUGF0aCA9IGFyZ3MuY2F1c2UgaW5zdGFuY2VvZiBCYXNlRXJyb3JcbiAgICAgICAgICAgID8gYXJncy5jYXVzZS5kb2NzUGF0aCB8fCBhcmdzLmRvY3NQYXRoXG4gICAgICAgICAgICA6IGFyZ3MuZG9jc1BhdGg7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBbXG4gICAgICAgICAgICBzaG9ydE1lc3NhZ2UgfHwgJ0FuIGVycm9yIG9jY3VycmVkLicsXG4gICAgICAgICAgICAnJyxcbiAgICAgICAgICAgIC4uLihhcmdzLm1ldGFNZXNzYWdlcyA/IFsuLi5hcmdzLm1ldGFNZXNzYWdlcywgJyddIDogW10pLFxuICAgICAgICAgICAgLi4uKGRvY3NQYXRoID8gW2BEb2NzOiBodHRwczovL2FiaXR5cGUuZGV2JHtkb2NzUGF0aH1gXSA6IFtdKSxcbiAgICAgICAgICAgIC4uLihkZXRhaWxzID8gW2BEZXRhaWxzOiAke2RldGFpbHN9YF0gOiBbXSksXG4gICAgICAgICAgICBgVmVyc2lvbjogYWJpdHlwZUAke3ZlcnNpb259YCxcbiAgICAgICAgXS5qb2luKCdcXG4nKTtcbiAgICAgICAgc3VwZXIobWVzc2FnZSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImRldGFpbHNcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwiZG9jc1BhdGhcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibWV0YU1lc3NhZ2VzXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcInNob3J0TWVzc2FnZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnQWJpVHlwZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGFyZ3MuY2F1c2UpXG4gICAgICAgICAgICB0aGlzLmNhdXNlID0gYXJncy5jYXVzZTtcbiAgICAgICAgdGhpcy5kZXRhaWxzID0gZGV0YWlscztcbiAgICAgICAgdGhpcy5kb2NzUGF0aCA9IGRvY3NQYXRoO1xuICAgICAgICB0aGlzLm1ldGFNZXNzYWdlcyA9IGFyZ3MubWV0YU1lc3NhZ2VzO1xuICAgICAgICB0aGlzLnNob3J0TWVzc2FnZSA9IHNob3J0TWVzc2FnZTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1lcnJvcnMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/errors.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiItem.js": /*!******************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiItem.js ***! \******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidAbiItemError: () => (/* binding */ InvalidAbiItemError),\n/* harmony export */ UnknownSolidityTypeError: () => (/* binding */ UnknownSolidityTypeError),\n/* harmony export */ UnknownTypeError: () => (/* binding */ UnknownTypeError)\n/* harmony export */ });\n/* harmony import */ var _errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/errors.js\");\n\nclass InvalidAbiItemError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ signature }) {\n super('Failed to parse ABI item.', {\n details: `parseAbiItem(${JSON.stringify(signature, null, 2)})`,\n docsPath: '/api/human#parseabiitem-1',\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidAbiItemError'\n });\n }\n}\nclass UnknownTypeError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ type }) {\n super('Unknown type.', {\n metaMessages: [\n `Type \"${type}\" is not a valid ABI type. Perhaps you forgot to include a struct signature?`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'UnknownTypeError'\n });\n }\n}\nclass UnknownSolidityTypeError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ type }) {\n super('Unknown type.', {\n metaMessages: [`Type \"${type}\" is not a valid ABI type.`],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'UnknownSolidityTypeError'\n });\n }\n}\n//# sourceMappingURL=abiItem.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Vycm9ycy9hYmlJdGVtLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBNEM7QUFDckMsa0NBQWtDLGlEQUFTO0FBQ2xELGtCQUFrQixXQUFXO0FBQzdCO0FBQ0EscUNBQXFDLG1DQUFtQztBQUN4RTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTywrQkFBK0IsaURBQVM7QUFDL0Msa0JBQWtCLE1BQU07QUFDeEI7QUFDQTtBQUNBLHlCQUF5QixLQUFLO0FBQzlCO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLHVDQUF1QyxpREFBUztBQUN2RCxrQkFBa0IsTUFBTTtBQUN4QjtBQUNBLG9DQUFvQyxLQUFLO0FBQ3pDLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Vycm9ycy9hYmlJdGVtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy5qcyc7XG5leHBvcnQgY2xhc3MgSW52YWxpZEFiaUl0ZW1FcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBzaWduYXR1cmUgfSkge1xuICAgICAgICBzdXBlcignRmFpbGVkIHRvIHBhcnNlIEFCSSBpdGVtLicsIHtcbiAgICAgICAgICAgIGRldGFpbHM6IGBwYXJzZUFiaUl0ZW0oJHtKU09OLnN0cmluZ2lmeShzaWduYXR1cmUsIG51bGwsIDIpfSlgLFxuICAgICAgICAgICAgZG9jc1BhdGg6ICcvYXBpL2h1bWFuI3BhcnNlYWJpaXRlbS0xJyxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdJbnZhbGlkQWJpSXRlbUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgVW5rbm93blR5cGVFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyB0eXBlIH0pIHtcbiAgICAgICAgc3VwZXIoJ1Vua25vd24gdHlwZS4nLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICBgVHlwZSBcIiR7dHlwZX1cIiBpcyBub3QgYSB2YWxpZCBBQkkgdHlwZS4gUGVyaGFwcyB5b3UgZm9yZ290IHRvIGluY2x1ZGUgYSBzdHJ1Y3Qgc2lnbmF0dXJlP2AsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1Vua25vd25UeXBlRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBVbmtub3duU29saWRpdHlUeXBlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgdHlwZSB9KSB7XG4gICAgICAgIHN1cGVyKCdVbmtub3duIHR5cGUuJywge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbYFR5cGUgXCIke3R5cGV9XCIgaXMgbm90IGEgdmFsaWQgQUJJIHR5cGUuYF0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnVW5rbm93blNvbGlkaXR5VHlwZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hYmlJdGVtLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiItem.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiParameter.js": /*!***********************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiParameter.js ***! \***********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidAbiParameterError: () => (/* binding */ InvalidAbiParameterError),\n/* harmony export */ InvalidAbiParametersError: () => (/* binding */ InvalidAbiParametersError),\n/* harmony export */ InvalidAbiTypeParameterError: () => (/* binding */ InvalidAbiTypeParameterError),\n/* harmony export */ InvalidFunctionModifierError: () => (/* binding */ InvalidFunctionModifierError),\n/* harmony export */ InvalidModifierError: () => (/* binding */ InvalidModifierError),\n/* harmony export */ InvalidParameterError: () => (/* binding */ InvalidParameterError),\n/* harmony export */ SolidityProtectedKeywordError: () => (/* binding */ SolidityProtectedKeywordError)\n/* harmony export */ });\n/* harmony import */ var _errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/errors.js\");\n\nclass InvalidAbiParameterError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ param }) {\n super('Failed to parse ABI parameter.', {\n details: `parseAbiParameter(${JSON.stringify(param, null, 2)})`,\n docsPath: '/api/human#parseabiparameter-1',\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidAbiParameterError'\n });\n }\n}\nclass InvalidAbiParametersError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ params }) {\n super('Failed to parse ABI parameters.', {\n details: `parseAbiParameters(${JSON.stringify(params, null, 2)})`,\n docsPath: '/api/human#parseabiparameters-1',\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidAbiParametersError'\n });\n }\n}\nclass InvalidParameterError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ param }) {\n super('Invalid ABI parameter.', {\n details: param,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidParameterError'\n });\n }\n}\nclass SolidityProtectedKeywordError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ param, name }) {\n super('Invalid ABI parameter.', {\n details: param,\n metaMessages: [\n `\"${name}\" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'SolidityProtectedKeywordError'\n });\n }\n}\nclass InvalidModifierError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ param, type, modifier, }) {\n super('Invalid ABI parameter.', {\n details: param,\n metaMessages: [\n `Modifier \"${modifier}\" not allowed${type ? ` in \"${type}\" type` : ''}.`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidModifierError'\n });\n }\n}\nclass InvalidFunctionModifierError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ param, type, modifier, }) {\n super('Invalid ABI parameter.', {\n details: param,\n metaMessages: [\n `Modifier \"${modifier}\" not allowed${type ? ` in \"${type}\" type` : ''}.`,\n `Data location can only be specified for array, struct, or mapping types, but \"${modifier}\" was given.`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidFunctionModifierError'\n });\n }\n}\nclass InvalidAbiTypeParameterError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ abiParameter, }) {\n super('Invalid ABI parameter.', {\n details: JSON.stringify(abiParameter, null, 2),\n metaMessages: ['ABI parameter type is invalid.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidAbiTypeParameterError'\n });\n }\n}\n//# sourceMappingURL=abiParameter.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Vycm9ycy9hYmlQYXJhbWV0ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBNEM7QUFDckMsdUNBQXVDLGlEQUFTO0FBQ3ZELGtCQUFrQixPQUFPO0FBQ3pCO0FBQ0EsMENBQTBDLCtCQUErQjtBQUN6RTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyx3Q0FBd0MsaURBQVM7QUFDeEQsa0JBQWtCLFFBQVE7QUFDMUI7QUFDQSwyQ0FBMkMsZ0NBQWdDO0FBQzNFO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLG9DQUFvQyxpREFBUztBQUNwRCxrQkFBa0IsT0FBTztBQUN6QjtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLDRDQUE0QyxpREFBUztBQUM1RCxrQkFBa0IsYUFBYTtBQUMvQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsS0FBSztBQUN6QjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxtQ0FBbUMsaURBQVM7QUFDbkQsa0JBQWtCLHdCQUF3QjtBQUMxQztBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsU0FBUyxlQUFlLGVBQWUsS0FBSyxhQUFhO0FBQ3RGO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPLDJDQUEyQyxpREFBUztBQUMzRCxrQkFBa0Isd0JBQXdCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixTQUFTLGVBQWUsZUFBZSxLQUFLLGFBQWE7QUFDdEYsaUdBQWlHLFNBQVM7QUFDMUc7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ08sMkNBQTJDLGlEQUFTO0FBQzNELGtCQUFrQixlQUFlO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Vycm9ycy9hYmlQYXJhbWV0ZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUVycm9yIH0gZnJvbSAnLi4vLi4vZXJyb3JzLmpzJztcbmV4cG9ydCBjbGFzcyBJbnZhbGlkQWJpUGFyYW1ldGVyRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcGFyYW0gfSkge1xuICAgICAgICBzdXBlcignRmFpbGVkIHRvIHBhcnNlIEFCSSBwYXJhbWV0ZXIuJywge1xuICAgICAgICAgICAgZGV0YWlsczogYHBhcnNlQWJpUGFyYW1ldGVyKCR7SlNPTi5zdHJpbmdpZnkocGFyYW0sIG51bGwsIDIpfSlgLFxuICAgICAgICAgICAgZG9jc1BhdGg6ICcvYXBpL2h1bWFuI3BhcnNlYWJpcGFyYW1ldGVyLTEnLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0ludmFsaWRBYmlQYXJhbWV0ZXJFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRBYmlQYXJhbWV0ZXJzRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcGFyYW1zIH0pIHtcbiAgICAgICAgc3VwZXIoJ0ZhaWxlZCB0byBwYXJzZSBBQkkgcGFyYW1ldGVycy4nLCB7XG4gICAgICAgICAgICBkZXRhaWxzOiBgcGFyc2VBYmlQYXJhbWV0ZXJzKCR7SlNPTi5zdHJpbmdpZnkocGFyYW1zLCBudWxsLCAyKX0pYCxcbiAgICAgICAgICAgIGRvY3NQYXRoOiAnL2FwaS9odW1hbiNwYXJzZWFiaXBhcmFtZXRlcnMtMScsXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSW52YWxpZEFiaVBhcmFtZXRlcnNFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRQYXJhbWV0ZXJFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBwYXJhbSB9KSB7XG4gICAgICAgIHN1cGVyKCdJbnZhbGlkIEFCSSBwYXJhbWV0ZXIuJywge1xuICAgICAgICAgICAgZGV0YWlsczogcGFyYW0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSW52YWxpZFBhcmFtZXRlckVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgU29saWRpdHlQcm90ZWN0ZWRLZXl3b3JkRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcGFyYW0sIG5hbWUgfSkge1xuICAgICAgICBzdXBlcignSW52YWxpZCBBQkkgcGFyYW1ldGVyLicsIHtcbiAgICAgICAgICAgIGRldGFpbHM6IHBhcmFtLFxuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgYFwiJHtuYW1lfVwiIGlzIGEgcHJvdGVjdGVkIFNvbGlkaXR5IGtleXdvcmQuIE1vcmUgaW5mbzogaHR0cHM6Ly9kb2NzLnNvbGlkaXR5bGFuZy5vcmcvZW4vbGF0ZXN0L2NoZWF0c2hlZXQuaHRtbGAsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1NvbGlkaXR5UHJvdGVjdGVkS2V5d29yZEVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgSW52YWxpZE1vZGlmaWVyRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcGFyYW0sIHR5cGUsIG1vZGlmaWVyLCB9KSB7XG4gICAgICAgIHN1cGVyKCdJbnZhbGlkIEFCSSBwYXJhbWV0ZXIuJywge1xuICAgICAgICAgICAgZGV0YWlsczogcGFyYW0sXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICBgTW9kaWZpZXIgXCIke21vZGlmaWVyfVwiIG5vdCBhbGxvd2VkJHt0eXBlID8gYCBpbiBcIiR7dHlwZX1cIiB0eXBlYCA6ICcnfS5gLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdJbnZhbGlkTW9kaWZpZXJFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRGdW5jdGlvbk1vZGlmaWVyRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcGFyYW0sIHR5cGUsIG1vZGlmaWVyLCB9KSB7XG4gICAgICAgIHN1cGVyKCdJbnZhbGlkIEFCSSBwYXJhbWV0ZXIuJywge1xuICAgICAgICAgICAgZGV0YWlsczogcGFyYW0sXG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICBgTW9kaWZpZXIgXCIke21vZGlmaWVyfVwiIG5vdCBhbGxvd2VkJHt0eXBlID8gYCBpbiBcIiR7dHlwZX1cIiB0eXBlYCA6ICcnfS5gLFxuICAgICAgICAgICAgICAgIGBEYXRhIGxvY2F0aW9uIGNhbiBvbmx5IGJlIHNwZWNpZmllZCBmb3IgYXJyYXksIHN0cnVjdCwgb3IgbWFwcGluZyB0eXBlcywgYnV0IFwiJHttb2RpZmllcn1cIiB3YXMgZ2l2ZW4uYCxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSW52YWxpZEZ1bmN0aW9uTW9kaWZpZXJFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRBYmlUeXBlUGFyYW1ldGVyRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgYWJpUGFyYW1ldGVyLCB9KSB7XG4gICAgICAgIHN1cGVyKCdJbnZhbGlkIEFCSSBwYXJhbWV0ZXIuJywge1xuICAgICAgICAgICAgZGV0YWlsczogSlNPTi5zdHJpbmdpZnkoYWJpUGFyYW1ldGVyLCBudWxsLCAyKSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogWydBQkkgcGFyYW1ldGVyIHR5cGUgaXMgaW52YWxpZC4nXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdJbnZhbGlkQWJpVHlwZVBhcmFtZXRlckVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hYmlQYXJhbWV0ZXIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiParameter.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/signature.js": /*!********************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/signature.js ***! \********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidSignatureError: () => (/* binding */ InvalidSignatureError),\n/* harmony export */ InvalidStructSignatureError: () => (/* binding */ InvalidStructSignatureError),\n/* harmony export */ UnknownSignatureError: () => (/* binding */ UnknownSignatureError)\n/* harmony export */ });\n/* harmony import */ var _errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/errors.js\");\n\nclass InvalidSignatureError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ signature, type, }) {\n super(`Invalid ${type} signature.`, {\n details: signature,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidSignatureError'\n });\n }\n}\nclass UnknownSignatureError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ signature }) {\n super('Unknown signature.', {\n details: signature,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'UnknownSignatureError'\n });\n }\n}\nclass InvalidStructSignatureError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ signature }) {\n super('Invalid struct signature.', {\n details: signature,\n metaMessages: ['No properties exist.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidStructSignatureError'\n });\n }\n}\n//# sourceMappingURL=signature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Vycm9ycy9zaWduYXR1cmUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE0QztBQUNyQyxvQ0FBb0MsaURBQVM7QUFDcEQsa0JBQWtCLGtCQUFrQjtBQUNwQyx5QkFBeUIsTUFBTTtBQUMvQjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTyxvQ0FBb0MsaURBQVM7QUFDcEQsa0JBQWtCLFdBQVc7QUFDN0I7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDTywwQ0FBMEMsaURBQVM7QUFDMUQsa0JBQWtCLFdBQVc7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL2FiaXR5cGUvZGlzdC9lc20vaHVtYW4tcmVhZGFibGUvZXJyb3JzL3NpZ25hdHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMuanMnO1xuZXhwb3J0IGNsYXNzIEludmFsaWRTaWduYXR1cmVFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBzaWduYXR1cmUsIHR5cGUsIH0pIHtcbiAgICAgICAgc3VwZXIoYEludmFsaWQgJHt0eXBlfSBzaWduYXR1cmUuYCwge1xuICAgICAgICAgICAgZGV0YWlsczogc2lnbmF0dXJlLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0ludmFsaWRTaWduYXR1cmVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIFVua25vd25TaWduYXR1cmVFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBzaWduYXR1cmUgfSkge1xuICAgICAgICBzdXBlcignVW5rbm93biBzaWduYXR1cmUuJywge1xuICAgICAgICAgICAgZGV0YWlsczogc2lnbmF0dXJlLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1Vua25vd25TaWduYXR1cmVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEludmFsaWRTdHJ1Y3RTaWduYXR1cmVFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBzaWduYXR1cmUgfSkge1xuICAgICAgICBzdXBlcignSW52YWxpZCBzdHJ1Y3Qgc2lnbmF0dXJlLicsIHtcbiAgICAgICAgICAgIGRldGFpbHM6IHNpZ25hdHVyZSxcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogWydObyBwcm9wZXJ0aWVzIGV4aXN0LiddLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0ludmFsaWRTdHJ1Y3RTaWduYXR1cmVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c2lnbmF0dXJlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/signature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/splitParameters.js": /*!**************************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/splitParameters.js ***! \**************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidParenthesisError: () => (/* binding */ InvalidParenthesisError)\n/* harmony export */ });\n/* harmony import */ var _errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/errors.js\");\n\nclass InvalidParenthesisError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ current, depth }) {\n super('Unbalanced parentheses.', {\n metaMessages: [\n `\"${current.trim()}\" has too many ${depth > 0 ? 'opening' : 'closing'} parentheses.`,\n ],\n details: `Depth \"${depth}\"`,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'InvalidParenthesisError'\n });\n }\n}\n//# sourceMappingURL=splitParameters.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Vycm9ycy9zcGxpdFBhcmFtZXRlcnMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBNEM7QUFDckMsc0NBQXNDLGlEQUFTO0FBQ3RELGtCQUFrQixnQkFBZ0I7QUFDbEM7QUFDQTtBQUNBLG9CQUFvQixlQUFlLGlCQUFpQixtQ0FBbUM7QUFDdkY7QUFDQSwrQkFBK0IsTUFBTTtBQUNyQyxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvYWJpdHlwZS9kaXN0L2VzbS9odW1hbi1yZWFkYWJsZS9lcnJvcnMvc3BsaXRQYXJhbWV0ZXJzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gJy4uLy4uL2Vycm9ycy5qcyc7XG5leHBvcnQgY2xhc3MgSW52YWxpZFBhcmVudGhlc2lzRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgY3VycmVudCwgZGVwdGggfSkge1xuICAgICAgICBzdXBlcignVW5iYWxhbmNlZCBwYXJlbnRoZXNlcy4nLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICBgXCIke2N1cnJlbnQudHJpbSgpfVwiIGhhcyB0b28gbWFueSAke2RlcHRoID4gMCA/ICdvcGVuaW5nJyA6ICdjbG9zaW5nJ30gcGFyZW50aGVzZXMuYCxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBkZXRhaWxzOiBgRGVwdGggXCIke2RlcHRofVwiYCxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdJbnZhbGlkUGFyZW50aGVzaXNFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3BsaXRQYXJhbWV0ZXJzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/splitParameters.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/struct.js": /*!*****************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/struct.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CircularReferenceError: () => (/* binding */ CircularReferenceError)\n/* harmony export */ });\n/* harmony import */ var _errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/errors.js\");\n\nclass CircularReferenceError extends _errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ type }) {\n super('Circular reference detected.', {\n metaMessages: [`Struct \"${type}\" is a circular reference.`],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'CircularReferenceError'\n });\n }\n}\n//# sourceMappingURL=struct.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Vycm9ycy9zdHJ1Y3QuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBNEM7QUFDckMscUNBQXFDLGlEQUFTO0FBQ3JELGtCQUFrQixNQUFNO0FBQ3hCO0FBQ0Esc0NBQXNDLEtBQUs7QUFDM0MsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL2FiaXR5cGUvZGlzdC9lc20vaHVtYW4tcmVhZGFibGUvZXJyb3JzL3N0cnVjdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMuanMnO1xuZXhwb3J0IGNsYXNzIENpcmN1bGFyUmVmZXJlbmNlRXJyb3IgZXh0ZW5kcyBCYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgdHlwZSB9KSB7XG4gICAgICAgIHN1cGVyKCdDaXJjdWxhciByZWZlcmVuY2UgZGV0ZWN0ZWQuJywge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbYFN0cnVjdCBcIiR7dHlwZX1cIiBpcyBhIGNpcmN1bGFyIHJlZmVyZW5jZS5gXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdDaXJjdWxhclJlZmVyZW5jZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHJ1Y3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/struct.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiItem.js": /*!*****************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiItem.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatAbiItem: () => (/* binding */ formatAbiItem)\n/* harmony export */ });\n/* harmony import */ var _formatAbiParameters_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./formatAbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameters.js\");\n\n/**\n * Formats ABI item (e.g. error, event, function) into human-readable ABI item\n *\n * @param abiItem - ABI item\n * @returns Human-readable ABI item\n */\nfunction formatAbiItem(abiItem) {\n if (abiItem.type === 'function')\n return `function ${abiItem.name}(${(0,_formatAbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.formatAbiParameters)(abiItem.inputs)})${abiItem.stateMutability && abiItem.stateMutability !== 'nonpayable'\n ? ` ${abiItem.stateMutability}`\n : ''}${abiItem.outputs?.length\n ? ` returns (${(0,_formatAbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.formatAbiParameters)(abiItem.outputs)})`\n : ''}`;\n if (abiItem.type === 'event')\n return `event ${abiItem.name}(${(0,_formatAbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.formatAbiParameters)(abiItem.inputs)})`;\n if (abiItem.type === 'error')\n return `error ${abiItem.name}(${(0,_formatAbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.formatAbiParameters)(abiItem.inputs)})`;\n if (abiItem.type === 'constructor')\n return `constructor(${(0,_formatAbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.formatAbiParameters)(abiItem.inputs)})${abiItem.stateMutability === 'payable' ? ' payable' : ''}`;\n if (abiItem.type === 'fallback')\n return `fallback() external${abiItem.stateMutability === 'payable' ? ' payable' : ''}`;\n return 'receive() external payable';\n}\n//# sourceMappingURL=formatAbiItem.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Zvcm1hdEFiaUl0ZW0uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBZ0U7QUFDaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLDJCQUEyQixhQUFhLEdBQUcsNEVBQW1CLGlCQUFpQixHQUFHO0FBQ2xGLGtCQUFrQix3QkFBd0I7QUFDMUMsaUJBQWlCLEVBQUU7QUFDbkIsMkJBQTJCLDRFQUFtQixrQkFBa0I7QUFDaEUsaUJBQWlCO0FBQ2pCO0FBQ0Esd0JBQXdCLGFBQWEsR0FBRyw0RUFBbUIsaUJBQWlCO0FBQzVFO0FBQ0Esd0JBQXdCLGFBQWEsR0FBRyw0RUFBbUIsaUJBQWlCO0FBQzVFO0FBQ0EsOEJBQThCLDRFQUFtQixpQkFBaUIsR0FBRyx3REFBd0Q7QUFDN0g7QUFDQSxxQ0FBcUMsd0RBQXdEO0FBQzdGO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Zvcm1hdEFiaUl0ZW0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9ybWF0QWJpUGFyYW1ldGVycywgfSBmcm9tICcuL2Zvcm1hdEFiaVBhcmFtZXRlcnMuanMnO1xuLyoqXG4gKiBGb3JtYXRzIEFCSSBpdGVtIChlLmcuIGVycm9yLCBldmVudCwgZnVuY3Rpb24pIGludG8gaHVtYW4tcmVhZGFibGUgQUJJIGl0ZW1cbiAqXG4gKiBAcGFyYW0gYWJpSXRlbSAtIEFCSSBpdGVtXG4gKiBAcmV0dXJucyBIdW1hbi1yZWFkYWJsZSBBQkkgaXRlbVxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0QWJpSXRlbShhYmlJdGVtKSB7XG4gICAgaWYgKGFiaUl0ZW0udHlwZSA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgcmV0dXJuIGBmdW5jdGlvbiAke2FiaUl0ZW0ubmFtZX0oJHtmb3JtYXRBYmlQYXJhbWV0ZXJzKGFiaUl0ZW0uaW5wdXRzKX0pJHthYmlJdGVtLnN0YXRlTXV0YWJpbGl0eSAmJiBhYmlJdGVtLnN0YXRlTXV0YWJpbGl0eSAhPT0gJ25vbnBheWFibGUnXG4gICAgICAgICAgICA/IGAgJHthYmlJdGVtLnN0YXRlTXV0YWJpbGl0eX1gXG4gICAgICAgICAgICA6ICcnfSR7YWJpSXRlbS5vdXRwdXRzPy5sZW5ndGhcbiAgICAgICAgICAgID8gYCByZXR1cm5zICgke2Zvcm1hdEFiaVBhcmFtZXRlcnMoYWJpSXRlbS5vdXRwdXRzKX0pYFxuICAgICAgICAgICAgOiAnJ31gO1xuICAgIGlmIChhYmlJdGVtLnR5cGUgPT09ICdldmVudCcpXG4gICAgICAgIHJldHVybiBgZXZlbnQgJHthYmlJdGVtLm5hbWV9KCR7Zm9ybWF0QWJpUGFyYW1ldGVycyhhYmlJdGVtLmlucHV0cyl9KWA7XG4gICAgaWYgKGFiaUl0ZW0udHlwZSA9PT0gJ2Vycm9yJylcbiAgICAgICAgcmV0dXJuIGBlcnJvciAke2FiaUl0ZW0ubmFtZX0oJHtmb3JtYXRBYmlQYXJhbWV0ZXJzKGFiaUl0ZW0uaW5wdXRzKX0pYDtcbiAgICBpZiAoYWJpSXRlbS50eXBlID09PSAnY29uc3RydWN0b3InKVxuICAgICAgICByZXR1cm4gYGNvbnN0cnVjdG9yKCR7Zm9ybWF0QWJpUGFyYW1ldGVycyhhYmlJdGVtLmlucHV0cyl9KSR7YWJpSXRlbS5zdGF0ZU11dGFiaWxpdHkgPT09ICdwYXlhYmxlJyA/ICcgcGF5YWJsZScgOiAnJ31gO1xuICAgIGlmIChhYmlJdGVtLnR5cGUgPT09ICdmYWxsYmFjaycpXG4gICAgICAgIHJldHVybiBgZmFsbGJhY2soKSBleHRlcm5hbCR7YWJpSXRlbS5zdGF0ZU11dGFiaWxpdHkgPT09ICdwYXlhYmxlJyA/ICcgcGF5YWJsZScgOiAnJ31gO1xuICAgIHJldHVybiAncmVjZWl2ZSgpIGV4dGVybmFsIHBheWFibGUnO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Zm9ybWF0QWJpSXRlbS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiItem.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameter.js": /*!**********************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameter.js ***! \**********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatAbiParameter: () => (/* binding */ formatAbiParameter)\n/* harmony export */ });\n/* harmony import */ var _regex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../regex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/regex.js\");\n\n// https://regexr.com/7f7rv\nconst tupleRegex = /^tuple(?<array>(\\[(\\d*)\\])*)$/;\n/**\n * Formats {@link AbiParameter} to human-readable ABI parameter.\n *\n * @param abiParameter - ABI parameter\n * @returns Human-readable ABI parameter\n *\n * @example\n * const result = formatAbiParameter({ type: 'address', name: 'from' })\n * // ^? const result: 'address from'\n */\nfunction formatAbiParameter(abiParameter) {\n let type = abiParameter.type;\n if (tupleRegex.test(abiParameter.type) && 'components' in abiParameter) {\n type = '(';\n const length = abiParameter.components.length;\n for (let i = 0; i < length; i++) {\n const component = abiParameter.components[i];\n type += formatAbiParameter(component);\n if (i < length - 1)\n type += ', ';\n }\n const result = (0,_regex_js__WEBPACK_IMPORTED_MODULE_0__.execTyped)(tupleRegex, abiParameter.type);\n type += `)${result?.array ?? ''}`;\n return formatAbiParameter({\n ...abiParameter,\n type,\n });\n }\n // Add `indexed` to type if in `abiParameter`\n if ('indexed' in abiParameter && abiParameter.indexed)\n type = `${type} indexed`;\n // Return human-readable ABI parameter\n if (abiParameter.name)\n return `${type} ${abiParameter.name}`;\n return type;\n}\n//# sourceMappingURL=formatAbiParameter.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Zvcm1hdEFiaVBhcmFtZXRlci5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUF3QztBQUN4QztBQUNBO0FBQ0E7QUFDQSxZQUFZLG9CQUFvQjtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDLCtCQUErQjtBQUN0RTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixZQUFZO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsb0RBQVM7QUFDaEMsb0JBQW9CLG9CQUFvQjtBQUN4QztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLE1BQU07QUFDeEI7QUFDQTtBQUNBLGtCQUFrQixNQUFNLEVBQUUsa0JBQWtCO0FBQzVDO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Zvcm1hdEFiaVBhcmFtZXRlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleGVjVHlwZWQgfSBmcm9tICcuLi9yZWdleC5qcyc7XG4vLyBodHRwczovL3JlZ2V4ci5jb20vN2Y3cnZcbmNvbnN0IHR1cGxlUmVnZXggPSAvXnR1cGxlKD88YXJyYXk+KFxcWyhcXGQqKVxcXSkqKSQvO1xuLyoqXG4gKiBGb3JtYXRzIHtAbGluayBBYmlQYXJhbWV0ZXJ9IHRvIGh1bWFuLXJlYWRhYmxlIEFCSSBwYXJhbWV0ZXIuXG4gKlxuICogQHBhcmFtIGFiaVBhcmFtZXRlciAtIEFCSSBwYXJhbWV0ZXJcbiAqIEByZXR1cm5zIEh1bWFuLXJlYWRhYmxlIEFCSSBwYXJhbWV0ZXJcbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgcmVzdWx0ID0gZm9ybWF0QWJpUGFyYW1ldGVyKHsgdHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAnZnJvbScgfSlcbiAqIC8vICAgIF4/IGNvbnN0IHJlc3VsdDogJ2FkZHJlc3MgZnJvbSdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEFiaVBhcmFtZXRlcihhYmlQYXJhbWV0ZXIpIHtcbiAgICBsZXQgdHlwZSA9IGFiaVBhcmFtZXRlci50eXBlO1xuICAgIGlmICh0dXBsZVJlZ2V4LnRlc3QoYWJpUGFyYW1ldGVyLnR5cGUpICYmICdjb21wb25lbnRzJyBpbiBhYmlQYXJhbWV0ZXIpIHtcbiAgICAgICAgdHlwZSA9ICcoJztcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gYWJpUGFyYW1ldGVyLmNvbXBvbmVudHMubGVuZ3RoO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnQgPSBhYmlQYXJhbWV0ZXIuY29tcG9uZW50c1tpXTtcbiAgICAgICAgICAgIHR5cGUgKz0gZm9ybWF0QWJpUGFyYW1ldGVyKGNvbXBvbmVudCk7XG4gICAgICAgICAgICBpZiAoaSA8IGxlbmd0aCAtIDEpXG4gICAgICAgICAgICAgICAgdHlwZSArPSAnLCAnO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGV4ZWNUeXBlZCh0dXBsZVJlZ2V4LCBhYmlQYXJhbWV0ZXIudHlwZSk7XG4gICAgICAgIHR5cGUgKz0gYCkke3Jlc3VsdD8uYXJyYXkgPz8gJyd9YDtcbiAgICAgICAgcmV0dXJuIGZvcm1hdEFiaVBhcmFtZXRlcih7XG4gICAgICAgICAgICAuLi5hYmlQYXJhbWV0ZXIsXG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgLy8gQWRkIGBpbmRleGVkYCB0byB0eXBlIGlmIGluIGBhYmlQYXJhbWV0ZXJgXG4gICAgaWYgKCdpbmRleGVkJyBpbiBhYmlQYXJhbWV0ZXIgJiYgYWJpUGFyYW1ldGVyLmluZGV4ZWQpXG4gICAgICAgIHR5cGUgPSBgJHt0eXBlfSBpbmRleGVkYDtcbiAgICAvLyBSZXR1cm4gaHVtYW4tcmVhZGFibGUgQUJJIHBhcmFtZXRlclxuICAgIGlmIChhYmlQYXJhbWV0ZXIubmFtZSlcbiAgICAgICAgcmV0dXJuIGAke3R5cGV9ICR7YWJpUGFyYW1ldGVyLm5hbWV9YDtcbiAgICByZXR1cm4gdHlwZTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWZvcm1hdEFiaVBhcmFtZXRlci5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameter.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameters.js": /*!***********************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameters.js ***! \***********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ formatAbiParameters: () => (/* binding */ formatAbiParameters)\n/* harmony export */ });\n/* harmony import */ var _formatAbiParameter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./formatAbiParameter.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameter.js\");\n\n/**\n * Formats {@link AbiParameter}s to human-readable ABI parameters.\n *\n * @param abiParameters - ABI parameters\n * @returns Human-readable ABI parameters\n *\n * @example\n * const result = formatAbiParameters([\n * // ^? const result: 'address from, uint256 tokenId'\n * { type: 'address', name: 'from' },\n * { type: 'uint256', name: 'tokenId' },\n * ])\n */\nfunction formatAbiParameters(abiParameters) {\n let params = '';\n const length = abiParameters.length;\n for (let i = 0; i < length; i++) {\n const abiParameter = abiParameters[i];\n params += (0,_formatAbiParameter_js__WEBPACK_IMPORTED_MODULE_0__.formatAbiParameter)(abiParameter);\n if (i !== length - 1)\n params += ', ';\n }\n return params;\n}\n//# sourceMappingURL=formatAbiParameters.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL2Zvcm1hdEFiaVBhcmFtZXRlcnMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBOEQ7QUFDOUQ7QUFDQSxZQUFZLG1CQUFtQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sK0JBQStCO0FBQ3RDLE9BQU8sa0NBQWtDO0FBQ3pDO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSxvQkFBb0IsWUFBWTtBQUNoQztBQUNBLGtCQUFrQiwwRUFBa0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL2FiaXR5cGUvZGlzdC9lc20vaHVtYW4tcmVhZGFibGUvZm9ybWF0QWJpUGFyYW1ldGVycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXRBYmlQYXJhbWV0ZXIsIH0gZnJvbSAnLi9mb3JtYXRBYmlQYXJhbWV0ZXIuanMnO1xuLyoqXG4gKiBGb3JtYXRzIHtAbGluayBBYmlQYXJhbWV0ZXJ9cyB0byBodW1hbi1yZWFkYWJsZSBBQkkgcGFyYW1ldGVycy5cbiAqXG4gKiBAcGFyYW0gYWJpUGFyYW1ldGVycyAtIEFCSSBwYXJhbWV0ZXJzXG4gKiBAcmV0dXJucyBIdW1hbi1yZWFkYWJsZSBBQkkgcGFyYW1ldGVyc1xuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCByZXN1bHQgPSBmb3JtYXRBYmlQYXJhbWV0ZXJzKFtcbiAqICAgLy8gIF4/IGNvbnN0IHJlc3VsdDogJ2FkZHJlc3MgZnJvbSwgdWludDI1NiB0b2tlbklkJ1xuICogICB7IHR5cGU6ICdhZGRyZXNzJywgbmFtZTogJ2Zyb20nIH0sXG4gKiAgIHsgdHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAndG9rZW5JZCcgfSxcbiAqIF0pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRBYmlQYXJhbWV0ZXJzKGFiaVBhcmFtZXRlcnMpIHtcbiAgICBsZXQgcGFyYW1zID0gJyc7XG4gICAgY29uc3QgbGVuZ3RoID0gYWJpUGFyYW1ldGVycy5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhYmlQYXJhbWV0ZXIgPSBhYmlQYXJhbWV0ZXJzW2ldO1xuICAgICAgICBwYXJhbXMgKz0gZm9ybWF0QWJpUGFyYW1ldGVyKGFiaVBhcmFtZXRlcik7XG4gICAgICAgIGlmIChpICE9PSBsZW5ndGggLSAxKVxuICAgICAgICAgICAgcGFyYW1zICs9ICcsICc7XG4gICAgfVxuICAgIHJldHVybiBwYXJhbXM7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1mb3JtYXRBYmlQYXJhbWV0ZXJzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameters.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbi.js": /*!************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbi.js ***! \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseAbi: () => (/* binding */ parseAbi)\n/* harmony export */ });\n/* harmony import */ var _runtime_signatures_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./runtime/signatures.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js\");\n/* harmony import */ var _runtime_structs_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./runtime/structs.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/structs.js\");\n/* harmony import */ var _runtime_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./runtime/utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/utils.js\");\n\n\n\n/**\n * Parses human-readable ABI into JSON {@link Abi}\n *\n * @param signatures - Human-Readable ABI\n * @returns Parsed {@link Abi}\n *\n * @example\n * const abi = parseAbi([\n * // ^? const abi: readonly [{ name: \"balanceOf\"; type: \"function\"; stateMutability:...\n * 'function balanceOf(address owner) view returns (uint256)',\n * 'event Transfer(address indexed from, address indexed to, uint256 amount)',\n * ])\n */\nfunction parseAbi(signatures) {\n const structs = (0,_runtime_structs_js__WEBPACK_IMPORTED_MODULE_0__.parseStructs)(signatures);\n const abi = [];\n const length = signatures.length;\n for (let i = 0; i < length; i++) {\n const signature = signatures[i];\n if ((0,_runtime_signatures_js__WEBPACK_IMPORTED_MODULE_1__.isStructSignature)(signature))\n continue;\n abi.push((0,_runtime_utils_js__WEBPACK_IMPORTED_MODULE_2__.parseSignature)(signature, structs));\n }\n return abi;\n}\n//# sourceMappingURL=parseAbi.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3BhcnNlQWJpLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBNEQ7QUFDUjtBQUNBO0FBQ3BEO0FBQ0Esd0NBQXdDO0FBQ3hDO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLG1CQUFtQixrQkFBa0I7QUFDeEU7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLG9CQUFvQixpRUFBWTtBQUNoQztBQUNBO0FBQ0Esb0JBQW9CLFlBQVk7QUFDaEM7QUFDQSxZQUFZLHlFQUFpQjtBQUM3QjtBQUNBLGlCQUFpQixpRUFBYztBQUMvQjtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3BhcnNlQWJpLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzU3RydWN0U2lnbmF0dXJlIH0gZnJvbSAnLi9ydW50aW1lL3NpZ25hdHVyZXMuanMnO1xuaW1wb3J0IHsgcGFyc2VTdHJ1Y3RzIH0gZnJvbSAnLi9ydW50aW1lL3N0cnVjdHMuanMnO1xuaW1wb3J0IHsgcGFyc2VTaWduYXR1cmUgfSBmcm9tICcuL3J1bnRpbWUvdXRpbHMuanMnO1xuLyoqXG4gKiBQYXJzZXMgaHVtYW4tcmVhZGFibGUgQUJJIGludG8gSlNPTiB7QGxpbmsgQWJpfVxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmVzIC0gSHVtYW4tUmVhZGFibGUgQUJJXG4gKiBAcmV0dXJucyBQYXJzZWQge0BsaW5rIEFiaX1cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgYWJpID0gcGFyc2VBYmkoW1xuICogICAvLyAgXj8gY29uc3QgYWJpOiByZWFkb25seSBbeyBuYW1lOiBcImJhbGFuY2VPZlwiOyB0eXBlOiBcImZ1bmN0aW9uXCI7IHN0YXRlTXV0YWJpbGl0eTouLi5cbiAqICAgJ2Z1bmN0aW9uIGJhbGFuY2VPZihhZGRyZXNzIG93bmVyKSB2aWV3IHJldHVybnMgKHVpbnQyNTYpJyxcbiAqICAgJ2V2ZW50IFRyYW5zZmVyKGFkZHJlc3MgaW5kZXhlZCBmcm9tLCBhZGRyZXNzIGluZGV4ZWQgdG8sIHVpbnQyNTYgYW1vdW50KScsXG4gKiBdKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VBYmkoc2lnbmF0dXJlcykge1xuICAgIGNvbnN0IHN0cnVjdHMgPSBwYXJzZVN0cnVjdHMoc2lnbmF0dXJlcyk7XG4gICAgY29uc3QgYWJpID0gW107XG4gICAgY29uc3QgbGVuZ3RoID0gc2lnbmF0dXJlcy5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBzaWduYXR1cmUgPSBzaWduYXR1cmVzW2ldO1xuICAgICAgICBpZiAoaXNTdHJ1Y3RTaWduYXR1cmUoc2lnbmF0dXJlKSlcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBhYmkucHVzaChwYXJzZVNpZ25hdHVyZShzaWduYXR1cmUsIHN0cnVjdHMpKTtcbiAgICB9XG4gICAgcmV0dXJuIGFiaTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXBhcnNlQWJpLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbi.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiItem.js": /*!****************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiItem.js ***! \****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseAbiItem: () => (/* binding */ parseAbiItem)\n/* harmony export */ });\n/* harmony import */ var _errors_abiItem_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./errors/abiItem.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiItem.js\");\n/* harmony import */ var _runtime_signatures_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./runtime/signatures.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js\");\n/* harmony import */ var _runtime_structs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./runtime/structs.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/structs.js\");\n/* harmony import */ var _runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./runtime/utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/utils.js\");\n\n\n\n\n/**\n * Parses human-readable ABI item (e.g. error, event, function) into {@link Abi} item\n *\n * @param signature - Human-readable ABI item\n * @returns Parsed {@link Abi} item\n *\n * @example\n * const abiItem = parseAbiItem('function balanceOf(address owner) view returns (uint256)')\n * // ^? const abiItem: { name: \"balanceOf\"; type: \"function\"; stateMutability: \"view\";...\n *\n * @example\n * const abiItem = parseAbiItem([\n * // ^? const abiItem: { name: \"foo\"; type: \"function\"; stateMutability: \"view\"; inputs:...\n * 'function foo(Baz bar) view returns (string)',\n * 'struct Baz { string name; }',\n * ])\n */\nfunction parseAbiItem(signature) {\n let abiItem;\n if (typeof signature === 'string')\n abiItem = (0,_runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__.parseSignature)(signature);\n else {\n const structs = (0,_runtime_structs_js__WEBPACK_IMPORTED_MODULE_1__.parseStructs)(signature);\n const length = signature.length;\n for (let i = 0; i < length; i++) {\n const signature_ = signature[i];\n if ((0,_runtime_signatures_js__WEBPACK_IMPORTED_MODULE_2__.isStructSignature)(signature_))\n continue;\n abiItem = (0,_runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__.parseSignature)(signature_, structs);\n break;\n }\n }\n if (!abiItem)\n throw new _errors_abiItem_js__WEBPACK_IMPORTED_MODULE_3__.InvalidAbiItemError({ signature });\n return abiItem;\n}\n//# sourceMappingURL=parseAbiItem.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3BhcnNlQWJpSXRlbS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUEwRDtBQUNFO0FBQ1I7QUFDQTtBQUNwRDtBQUNBLHNFQUFzRSxXQUFXO0FBQ2pGO0FBQ0E7QUFDQSxvQkFBb0IsV0FBVztBQUMvQjtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsbUJBQW1CLGtCQUFrQix3QkFBd0I7QUFDMUY7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGFBQWEsa0JBQWtCLHlCQUF5QjtBQUNyRjtBQUNBLG1CQUFtQixjQUFjO0FBQ2pDO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSxrQkFBa0IsaUVBQWM7QUFDaEM7QUFDQSx3QkFBd0IsaUVBQVk7QUFDcEM7QUFDQSx3QkFBd0IsWUFBWTtBQUNwQztBQUNBLGdCQUFnQix5RUFBaUI7QUFDakM7QUFDQSxzQkFBc0IsaUVBQWM7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsbUVBQW1CLEdBQUcsV0FBVztBQUNuRDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvYWJpdHlwZS9kaXN0L2VzbS9odW1hbi1yZWFkYWJsZS9wYXJzZUFiaUl0ZW0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW52YWxpZEFiaUl0ZW1FcnJvciB9IGZyb20gJy4vZXJyb3JzL2FiaUl0ZW0uanMnO1xuaW1wb3J0IHsgaXNTdHJ1Y3RTaWduYXR1cmUgfSBmcm9tICcuL3J1bnRpbWUvc2lnbmF0dXJlcy5qcyc7XG5pbXBvcnQgeyBwYXJzZVN0cnVjdHMgfSBmcm9tICcuL3J1bnRpbWUvc3RydWN0cy5qcyc7XG5pbXBvcnQgeyBwYXJzZVNpZ25hdHVyZSB9IGZyb20gJy4vcnVudGltZS91dGlscy5qcyc7XG4vKipcbiAqIFBhcnNlcyBodW1hbi1yZWFkYWJsZSBBQkkgaXRlbSAoZS5nLiBlcnJvciwgZXZlbnQsIGZ1bmN0aW9uKSBpbnRvIHtAbGluayBBYml9IGl0ZW1cbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gSHVtYW4tcmVhZGFibGUgQUJJIGl0ZW1cbiAqIEByZXR1cm5zIFBhcnNlZCB7QGxpbmsgQWJpfSBpdGVtXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IGFiaUl0ZW0gPSBwYXJzZUFiaUl0ZW0oJ2Z1bmN0aW9uIGJhbGFuY2VPZihhZGRyZXNzIG93bmVyKSB2aWV3IHJldHVybnMgKHVpbnQyNTYpJylcbiAqIC8vICAgIF4/IGNvbnN0IGFiaUl0ZW06IHsgbmFtZTogXCJiYWxhbmNlT2ZcIjsgdHlwZTogXCJmdW5jdGlvblwiOyBzdGF0ZU11dGFiaWxpdHk6IFwidmlld1wiOy4uLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBhYmlJdGVtID0gcGFyc2VBYmlJdGVtKFtcbiAqICAgLy8gIF4/IGNvbnN0IGFiaUl0ZW06IHsgbmFtZTogXCJmb29cIjsgdHlwZTogXCJmdW5jdGlvblwiOyBzdGF0ZU11dGFiaWxpdHk6IFwidmlld1wiOyBpbnB1dHM6Li4uXG4gKiAgICdmdW5jdGlvbiBmb28oQmF6IGJhcikgdmlldyByZXR1cm5zIChzdHJpbmcpJyxcbiAqICAgJ3N0cnVjdCBCYXogeyBzdHJpbmcgbmFtZTsgfScsXG4gKiBdKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VBYmlJdGVtKHNpZ25hdHVyZSkge1xuICAgIGxldCBhYmlJdGVtO1xuICAgIGlmICh0eXBlb2Ygc2lnbmF0dXJlID09PSAnc3RyaW5nJylcbiAgICAgICAgYWJpSXRlbSA9IHBhcnNlU2lnbmF0dXJlKHNpZ25hdHVyZSk7XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IHN0cnVjdHMgPSBwYXJzZVN0cnVjdHMoc2lnbmF0dXJlKTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gc2lnbmF0dXJlLmxlbmd0aDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgc2lnbmF0dXJlXyA9IHNpZ25hdHVyZVtpXTtcbiAgICAgICAgICAgIGlmIChpc1N0cnVjdFNpZ25hdHVyZShzaWduYXR1cmVfKSlcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGFiaUl0ZW0gPSBwYXJzZVNpZ25hdHVyZShzaWduYXR1cmVfLCBzdHJ1Y3RzKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmICghYWJpSXRlbSlcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBYmlJdGVtRXJyb3IoeyBzaWduYXR1cmUgfSk7XG4gICAgcmV0dXJuIGFiaUl0ZW07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wYXJzZUFiaUl0ZW0uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiItem.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiParameters.js": /*!**********************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiParameters.js ***! \**********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseAbiParameters: () => (/* binding */ parseAbiParameters)\n/* harmony export */ });\n/* harmony import */ var _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./errors/abiParameter.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiParameter.js\");\n/* harmony import */ var _runtime_signatures_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./runtime/signatures.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js\");\n/* harmony import */ var _runtime_structs_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./runtime/structs.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/structs.js\");\n/* harmony import */ var _runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./runtime/utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/utils.js\");\n\n\n\n\n\n/**\n * Parses human-readable ABI parameters into {@link AbiParameter}s\n *\n * @param params - Human-readable ABI parameters\n * @returns Parsed {@link AbiParameter}s\n *\n * @example\n * const abiParameters = parseAbiParameters('address from, address to, uint256 amount')\n * // ^? const abiParameters: [{ type: \"address\"; name: \"from\"; }, { type: \"address\";...\n *\n * @example\n * const abiParameters = parseAbiParameters([\n * // ^? const abiParameters: [{ type: \"tuple\"; components: [{ type: \"string\"; name:...\n * 'Baz bar',\n * 'struct Baz { string name; }',\n * ])\n */\nfunction parseAbiParameters(params) {\n const abiParameters = [];\n if (typeof params === 'string') {\n const parameters = (0,_runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__.splitParameters)(params);\n const length = parameters.length;\n for (let i = 0; i < length; i++) {\n abiParameters.push((0,_runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__.parseAbiParameter)(parameters[i], { modifiers: _runtime_signatures_js__WEBPACK_IMPORTED_MODULE_1__.modifiers }));\n }\n }\n else {\n const structs = (0,_runtime_structs_js__WEBPACK_IMPORTED_MODULE_2__.parseStructs)(params);\n const length = params.length;\n for (let i = 0; i < length; i++) {\n const signature = params[i];\n if ((0,_runtime_signatures_js__WEBPACK_IMPORTED_MODULE_1__.isStructSignature)(signature))\n continue;\n const parameters = (0,_runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__.splitParameters)(signature);\n const length = parameters.length;\n for (let k = 0; k < length; k++) {\n abiParameters.push((0,_runtime_utils_js__WEBPACK_IMPORTED_MODULE_0__.parseAbiParameter)(parameters[k], { modifiers: _runtime_signatures_js__WEBPACK_IMPORTED_MODULE_1__.modifiers, structs }));\n }\n }\n }\n if (abiParameters.length === 0)\n throw new _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_3__.InvalidAbiParametersError({ params });\n return abiParameters;\n}\n//# sourceMappingURL=parseAbiParameters.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3BhcnNlQWJpUGFyYW1ldGVycy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFxRTtBQUNFO0FBQ25CO0FBQ0M7QUFDd0I7QUFDN0U7QUFDQSw4Q0FBOEMsbUJBQW1CO0FBQ2pFO0FBQ0E7QUFDQSxvQkFBb0IsbUJBQW1CO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxpQkFBaUIsZUFBZSxJQUFJLGdCQUFnQjtBQUN4RjtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsZUFBZSxlQUFlLGdCQUFnQjtBQUNsRjtBQUNBLG1CQUFtQixjQUFjO0FBQ2pDO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSwyQkFBMkIsa0VBQWU7QUFDMUM7QUFDQSx3QkFBd0IsWUFBWTtBQUNwQywrQkFBK0Isb0VBQWtCLGtCQUFrQixTQUFTLGlFQUFFO0FBQzlFO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixpRUFBWTtBQUNwQztBQUNBLHdCQUF3QixZQUFZO0FBQ3BDO0FBQ0EsZ0JBQWdCLHlFQUFpQjtBQUNqQztBQUNBLCtCQUErQixrRUFBZTtBQUM5QztBQUNBLDRCQUE0QixZQUFZO0FBQ3hDLG1DQUFtQyxvRUFBa0Isa0JBQWtCLFNBQVMsMEVBQVc7QUFDM0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsOEVBQXlCLEdBQUcsUUFBUTtBQUN0RDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvYWJpdHlwZS9kaXN0L2VzbS9odW1hbi1yZWFkYWJsZS9wYXJzZUFiaVBhcmFtZXRlcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW52YWxpZEFiaVBhcmFtZXRlcnNFcnJvciB9IGZyb20gJy4vZXJyb3JzL2FiaVBhcmFtZXRlci5qcyc7XG5pbXBvcnQgeyBpc1N0cnVjdFNpZ25hdHVyZSwgbW9kaWZpZXJzIH0gZnJvbSAnLi9ydW50aW1lL3NpZ25hdHVyZXMuanMnO1xuaW1wb3J0IHsgcGFyc2VTdHJ1Y3RzIH0gZnJvbSAnLi9ydW50aW1lL3N0cnVjdHMuanMnO1xuaW1wb3J0IHsgc3BsaXRQYXJhbWV0ZXJzIH0gZnJvbSAnLi9ydW50aW1lL3V0aWxzLmpzJztcbmltcG9ydCB7IHBhcnNlQWJpUGFyYW1ldGVyIGFzIHBhcnNlQWJpUGFyYW1ldGVyXyB9IGZyb20gJy4vcnVudGltZS91dGlscy5qcyc7XG4vKipcbiAqIFBhcnNlcyBodW1hbi1yZWFkYWJsZSBBQkkgcGFyYW1ldGVycyBpbnRvIHtAbGluayBBYmlQYXJhbWV0ZXJ9c1xuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBIdW1hbi1yZWFkYWJsZSBBQkkgcGFyYW1ldGVyc1xuICogQHJldHVybnMgUGFyc2VkIHtAbGluayBBYmlQYXJhbWV0ZXJ9c1xuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBhYmlQYXJhbWV0ZXJzID0gcGFyc2VBYmlQYXJhbWV0ZXJzKCdhZGRyZXNzIGZyb20sIGFkZHJlc3MgdG8sIHVpbnQyNTYgYW1vdW50JylcbiAqIC8vICAgIF4/IGNvbnN0IGFiaVBhcmFtZXRlcnM6IFt7IHR5cGU6IFwiYWRkcmVzc1wiOyBuYW1lOiBcImZyb21cIjsgfSwgeyB0eXBlOiBcImFkZHJlc3NcIjsuLi5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgYWJpUGFyYW1ldGVycyA9IHBhcnNlQWJpUGFyYW1ldGVycyhbXG4gKiAgIC8vICBePyBjb25zdCBhYmlQYXJhbWV0ZXJzOiBbeyB0eXBlOiBcInR1cGxlXCI7IGNvbXBvbmVudHM6IFt7IHR5cGU6IFwic3RyaW5nXCI7IG5hbWU6Li4uXG4gKiAgICdCYXogYmFyJyxcbiAqICAgJ3N0cnVjdCBCYXogeyBzdHJpbmcgbmFtZTsgfScsXG4gKiBdKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VBYmlQYXJhbWV0ZXJzKHBhcmFtcykge1xuICAgIGNvbnN0IGFiaVBhcmFtZXRlcnMgPSBbXTtcbiAgICBpZiAodHlwZW9mIHBhcmFtcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgcGFyYW1ldGVycyA9IHNwbGl0UGFyYW1ldGVycyhwYXJhbXMpO1xuICAgICAgICBjb25zdCBsZW5ndGggPSBwYXJhbWV0ZXJzLmxlbmd0aDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgYWJpUGFyYW1ldGVycy5wdXNoKHBhcnNlQWJpUGFyYW1ldGVyXyhwYXJhbWV0ZXJzW2ldLCB7IG1vZGlmaWVycyB9KSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IHN0cnVjdHMgPSBwYXJzZVN0cnVjdHMocGFyYW1zKTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gcGFyYW1zLmxlbmd0aDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgc2lnbmF0dXJlID0gcGFyYW1zW2ldO1xuICAgICAgICAgICAgaWYgKGlzU3RydWN0U2lnbmF0dXJlKHNpZ25hdHVyZSkpXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJzID0gc3BsaXRQYXJhbWV0ZXJzKHNpZ25hdHVyZSk7XG4gICAgICAgICAgICBjb25zdCBsZW5ndGggPSBwYXJhbWV0ZXJzLmxlbmd0aDtcbiAgICAgICAgICAgIGZvciAobGV0IGsgPSAwOyBrIDwgbGVuZ3RoOyBrKyspIHtcbiAgICAgICAgICAgICAgICBhYmlQYXJhbWV0ZXJzLnB1c2gocGFyc2VBYmlQYXJhbWV0ZXJfKHBhcmFtZXRlcnNba10sIHsgbW9kaWZpZXJzLCBzdHJ1Y3RzIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoYWJpUGFyYW1ldGVycy5sZW5ndGggPT09IDApXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQWJpUGFyYW1ldGVyc0Vycm9yKHsgcGFyYW1zIH0pO1xuICAgIHJldHVybiBhYmlQYXJhbWV0ZXJzO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cGFyc2VBYmlQYXJhbWV0ZXJzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiParameters.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/cache.js": /*!*****************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/cache.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getParameterCacheKey: () => (/* binding */ getParameterCacheKey),\n/* harmony export */ parameterCache: () => (/* binding */ parameterCache)\n/* harmony export */ });\n/**\n * Gets {@link parameterCache} cache key namespaced by {@link type}. This prevents parameters from being accessible to types that don't allow them (e.g. `string indexed foo` not allowed outside of `type: 'event'`).\n * @param param ABI parameter string\n * @param type ABI parameter type\n * @returns Cache key for {@link parameterCache}\n */\nfunction getParameterCacheKey(param, type, structs) {\n let structKey = '';\n if (structs)\n for (const struct of Object.entries(structs)) {\n if (!struct)\n continue;\n let propertyKey = '';\n for (const property of struct[1]) {\n propertyKey += `[${property.type}${property.name ? `:${property.name}` : ''}]`;\n }\n structKey += `(${struct[0]}{${propertyKey}})`;\n }\n if (type)\n return `${type}:${param}${structKey}`;\n return param;\n}\n/**\n * Basic cache seeded with common ABI parameter strings.\n *\n * **Note: When seeding more parameters, make sure you benchmark performance. The current number is the ideal balance between performance and having an already existing cache.**\n */\nconst parameterCache = new Map([\n // Unnamed\n ['address', { type: 'address' }],\n ['bool', { type: 'bool' }],\n ['bytes', { type: 'bytes' }],\n ['bytes32', { type: 'bytes32' }],\n ['int', { type: 'int256' }],\n ['int256', { type: 'int256' }],\n ['string', { type: 'string' }],\n ['uint', { type: 'uint256' }],\n ['uint8', { type: 'uint8' }],\n ['uint16', { type: 'uint16' }],\n ['uint24', { type: 'uint24' }],\n ['uint32', { type: 'uint32' }],\n ['uint64', { type: 'uint64' }],\n ['uint96', { type: 'uint96' }],\n ['uint112', { type: 'uint112' }],\n ['uint160', { type: 'uint160' }],\n ['uint192', { type: 'uint192' }],\n ['uint256', { type: 'uint256' }],\n // Named\n ['address owner', { type: 'address', name: 'owner' }],\n ['address to', { type: 'address', name: 'to' }],\n ['bool approved', { type: 'bool', name: 'approved' }],\n ['bytes _data', { type: 'bytes', name: '_data' }],\n ['bytes data', { type: 'bytes', name: 'data' }],\n ['bytes signature', { type: 'bytes', name: 'signature' }],\n ['bytes32 hash', { type: 'bytes32', name: 'hash' }],\n ['bytes32 r', { type: 'bytes32', name: 'r' }],\n ['bytes32 root', { type: 'bytes32', name: 'root' }],\n ['bytes32 s', { type: 'bytes32', name: 's' }],\n ['string name', { type: 'string', name: 'name' }],\n ['string symbol', { type: 'string', name: 'symbol' }],\n ['string tokenURI', { type: 'string', name: 'tokenURI' }],\n ['uint tokenId', { type: 'uint256', name: 'tokenId' }],\n ['uint8 v', { type: 'uint8', name: 'v' }],\n ['uint256 balance', { type: 'uint256', name: 'balance' }],\n ['uint256 tokenId', { type: 'uint256', name: 'tokenId' }],\n ['uint256 value', { type: 'uint256', name: 'value' }],\n // Indexed\n [\n 'event:address indexed from',\n { type: 'address', name: 'from', indexed: true },\n ],\n ['event:address indexed to', { type: 'address', name: 'to', indexed: true }],\n [\n 'event:uint indexed tokenId',\n { type: 'uint256', name: 'tokenId', indexed: true },\n ],\n [\n 'event:uint256 indexed tokenId',\n { type: 'uint256', name: 'tokenId', indexed: true },\n ],\n]);\n//# sourceMappingURL=cache.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3J1bnRpbWUvY2FjaGUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBLFNBQVMsc0JBQXNCLHlCQUF5QixXQUFXO0FBQ25FO0FBQ0E7QUFDQSwyQkFBMkI7QUFDM0I7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLGNBQWMsRUFBRSxvQkFBb0IsY0FBYyxPQUFPO0FBQzVGO0FBQ0EsNkJBQTZCLFdBQVcsRUFBRSxhQUFhO0FBQ3ZEO0FBQ0E7QUFDQSxrQkFBa0IsS0FBSyxHQUFHLE1BQU0sRUFBRSxVQUFVO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLGtCQUFrQixpQkFBaUI7QUFDbkMsZUFBZSxjQUFjO0FBQzdCLGdCQUFnQixlQUFlO0FBQy9CLGtCQUFrQixpQkFBaUI7QUFDbkMsY0FBYyxnQkFBZ0I7QUFDOUIsaUJBQWlCLGdCQUFnQjtBQUNqQyxpQkFBaUIsZ0JBQWdCO0FBQ2pDLGVBQWUsaUJBQWlCO0FBQ2hDLGdCQUFnQixlQUFlO0FBQy9CLGlCQUFpQixnQkFBZ0I7QUFDakMsaUJBQWlCLGdCQUFnQjtBQUNqQyxpQkFBaUIsZ0JBQWdCO0FBQ2pDLGlCQUFpQixnQkFBZ0I7QUFDakMsaUJBQWlCLGdCQUFnQjtBQUNqQyxrQkFBa0IsaUJBQWlCO0FBQ25DLGtCQUFrQixpQkFBaUI7QUFDbkMsa0JBQWtCLGlCQUFpQjtBQUNuQyxrQkFBa0IsaUJBQWlCO0FBQ25DO0FBQ0Esd0JBQXdCLGdDQUFnQztBQUN4RCxxQkFBcUIsNkJBQTZCO0FBQ2xELHdCQUF3QixnQ0FBZ0M7QUFDeEQsc0JBQXNCLDhCQUE4QjtBQUNwRCxxQkFBcUIsNkJBQTZCO0FBQ2xELDBCQUEwQixrQ0FBa0M7QUFDNUQsdUJBQXVCLCtCQUErQjtBQUN0RCxvQkFBb0IsNEJBQTRCO0FBQ2hELHVCQUF1QiwrQkFBK0I7QUFDdEQsb0JBQW9CLDRCQUE0QjtBQUNoRCxzQkFBc0IsOEJBQThCO0FBQ3BELHdCQUF3QixnQ0FBZ0M7QUFDeEQsMEJBQTBCLGtDQUFrQztBQUM1RCx1QkFBdUIsa0NBQWtDO0FBQ3pELGtCQUFrQiwwQkFBMEI7QUFDNUMsMEJBQTBCLGtDQUFrQztBQUM1RCwwQkFBMEIsa0NBQWtDO0FBQzVELHdCQUF3QixnQ0FBZ0M7QUFDeEQ7QUFDQTtBQUNBO0FBQ0EsVUFBVSw4Q0FBOEM7QUFDeEQ7QUFDQSxtQ0FBbUMsNENBQTRDO0FBQy9FO0FBQ0E7QUFDQSxVQUFVLGlEQUFpRDtBQUMzRDtBQUNBO0FBQ0E7QUFDQSxVQUFVLGlEQUFpRDtBQUMzRDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvYWJpdHlwZS9kaXN0L2VzbS9odW1hbi1yZWFkYWJsZS9ydW50aW1lL2NhY2hlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2V0cyB7QGxpbmsgcGFyYW1ldGVyQ2FjaGV9IGNhY2hlIGtleSBuYW1lc3BhY2VkIGJ5IHtAbGluayB0eXBlfS4gVGhpcyBwcmV2ZW50cyBwYXJhbWV0ZXJzIGZyb20gYmVpbmcgYWNjZXNzaWJsZSB0byB0eXBlcyB0aGF0IGRvbid0IGFsbG93IHRoZW0gKGUuZy4gYHN0cmluZyBpbmRleGVkIGZvb2Agbm90IGFsbG93ZWQgb3V0c2lkZSBvZiBgdHlwZTogJ2V2ZW50J2ApLlxuICogQHBhcmFtIHBhcmFtIEFCSSBwYXJhbWV0ZXIgc3RyaW5nXG4gKiBAcGFyYW0gdHlwZSBBQkkgcGFyYW1ldGVyIHR5cGVcbiAqIEByZXR1cm5zIENhY2hlIGtleSBmb3Ige0BsaW5rIHBhcmFtZXRlckNhY2hlfVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UGFyYW1ldGVyQ2FjaGVLZXkocGFyYW0sIHR5cGUsIHN0cnVjdHMpIHtcbiAgICBsZXQgc3RydWN0S2V5ID0gJyc7XG4gICAgaWYgKHN0cnVjdHMpXG4gICAgICAgIGZvciAoY29uc3Qgc3RydWN0IG9mIE9iamVjdC5lbnRyaWVzKHN0cnVjdHMpKSB7XG4gICAgICAgICAgICBpZiAoIXN0cnVjdClcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGxldCBwcm9wZXJ0eUtleSA9ICcnO1xuICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBzdHJ1Y3RbMV0pIHtcbiAgICAgICAgICAgICAgICBwcm9wZXJ0eUtleSArPSBgWyR7cHJvcGVydHkudHlwZX0ke3Byb3BlcnR5Lm5hbWUgPyBgOiR7cHJvcGVydHkubmFtZX1gIDogJyd9XWA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdHJ1Y3RLZXkgKz0gYCgke3N0cnVjdFswXX17JHtwcm9wZXJ0eUtleX19KWA7XG4gICAgICAgIH1cbiAgICBpZiAodHlwZSlcbiAgICAgICAgcmV0dXJuIGAke3R5cGV9OiR7cGFyYW19JHtzdHJ1Y3RLZXl9YDtcbiAgICByZXR1cm4gcGFyYW07XG59XG4vKipcbiAqIEJhc2ljIGNhY2hlIHNlZWRlZCB3aXRoIGNvbW1vbiBBQkkgcGFyYW1ldGVyIHN0cmluZ3MuXG4gKlxuICogKipOb3RlOiBXaGVuIHNlZWRpbmcgbW9yZSBwYXJhbWV0ZXJzLCBtYWtlIHN1cmUgeW91IGJlbmNobWFyayBwZXJmb3JtYW5jZS4gVGhlIGN1cnJlbnQgbnVtYmVyIGlzIHRoZSBpZGVhbCBiYWxhbmNlIGJldHdlZW4gcGVyZm9ybWFuY2UgYW5kIGhhdmluZyBhbiBhbHJlYWR5IGV4aXN0aW5nIGNhY2hlLioqXG4gKi9cbmV4cG9ydCBjb25zdCBwYXJhbWV0ZXJDYWNoZSA9IG5ldyBNYXAoW1xuICAgIC8vIFVubmFtZWRcbiAgICBbJ2FkZHJlc3MnLCB7IHR5cGU6ICdhZGRyZXNzJyB9XSxcbiAgICBbJ2Jvb2wnLCB7IHR5cGU6ICdib29sJyB9XSxcbiAgICBbJ2J5dGVzJywgeyB0eXBlOiAnYnl0ZXMnIH1dLFxuICAgIFsnYnl0ZXMzMicsIHsgdHlwZTogJ2J5dGVzMzInIH1dLFxuICAgIFsnaW50JywgeyB0eXBlOiAnaW50MjU2JyB9XSxcbiAgICBbJ2ludDI1NicsIHsgdHlwZTogJ2ludDI1NicgfV0sXG4gICAgWydzdHJpbmcnLCB7IHR5cGU6ICdzdHJpbmcnIH1dLFxuICAgIFsndWludCcsIHsgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICAgIFsndWludDgnLCB7IHR5cGU6ICd1aW50OCcgfV0sXG4gICAgWyd1aW50MTYnLCB7IHR5cGU6ICd1aW50MTYnIH1dLFxuICAgIFsndWludDI0JywgeyB0eXBlOiAndWludDI0JyB9XSxcbiAgICBbJ3VpbnQzMicsIHsgdHlwZTogJ3VpbnQzMicgfV0sXG4gICAgWyd1aW50NjQnLCB7IHR5cGU6ICd1aW50NjQnIH1dLFxuICAgIFsndWludDk2JywgeyB0eXBlOiAndWludDk2JyB9XSxcbiAgICBbJ3VpbnQxMTInLCB7IHR5cGU6ICd1aW50MTEyJyB9XSxcbiAgICBbJ3VpbnQxNjAnLCB7IHR5cGU6ICd1aW50MTYwJyB9XSxcbiAgICBbJ3VpbnQxOTInLCB7IHR5cGU6ICd1aW50MTkyJyB9XSxcbiAgICBbJ3VpbnQyNTYnLCB7IHR5cGU6ICd1aW50MjU2JyB9XSxcbiAgICAvLyBOYW1lZFxuICAgIFsnYWRkcmVzcyBvd25lcicsIHsgdHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAnb3duZXInIH1dLFxuICAgIFsnYWRkcmVzcyB0bycsIHsgdHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAndG8nIH1dLFxuICAgIFsnYm9vbCBhcHByb3ZlZCcsIHsgdHlwZTogJ2Jvb2wnLCBuYW1lOiAnYXBwcm92ZWQnIH1dLFxuICAgIFsnYnl0ZXMgX2RhdGEnLCB7IHR5cGU6ICdieXRlcycsIG5hbWU6ICdfZGF0YScgfV0sXG4gICAgWydieXRlcyBkYXRhJywgeyB0eXBlOiAnYnl0ZXMnLCBuYW1lOiAnZGF0YScgfV0sXG4gICAgWydieXRlcyBzaWduYXR1cmUnLCB7IHR5cGU6ICdieXRlcycsIG5hbWU6ICdzaWduYXR1cmUnIH1dLFxuICAgIFsnYnl0ZXMzMiBoYXNoJywgeyB0eXBlOiAnYnl0ZXMzMicsIG5hbWU6ICdoYXNoJyB9XSxcbiAgICBbJ2J5dGVzMzIgcicsIHsgdHlwZTogJ2J5dGVzMzInLCBuYW1lOiAncicgfV0sXG4gICAgWydieXRlczMyIHJvb3QnLCB7IHR5cGU6ICdieXRlczMyJywgbmFtZTogJ3Jvb3QnIH1dLFxuICAgIFsnYnl0ZXMzMiBzJywgeyB0eXBlOiAnYnl0ZXMzMicsIG5hbWU6ICdzJyB9XSxcbiAgICBbJ3N0cmluZyBuYW1lJywgeyB0eXBlOiAnc3RyaW5nJywgbmFtZTogJ25hbWUnIH1dLFxuICAgIFsnc3RyaW5nIHN5bWJvbCcsIHsgdHlwZTogJ3N0cmluZycsIG5hbWU6ICdzeW1ib2wnIH1dLFxuICAgIFsnc3RyaW5nIHRva2VuVVJJJywgeyB0eXBlOiAnc3RyaW5nJywgbmFtZTogJ3Rva2VuVVJJJyB9XSxcbiAgICBbJ3VpbnQgdG9rZW5JZCcsIHsgdHlwZTogJ3VpbnQyNTYnLCBuYW1lOiAndG9rZW5JZCcgfV0sXG4gICAgWyd1aW50OCB2JywgeyB0eXBlOiAndWludDgnLCBuYW1lOiAndicgfV0sXG4gICAgWyd1aW50MjU2IGJhbGFuY2UnLCB7IHR5cGU6ICd1aW50MjU2JywgbmFtZTogJ2JhbGFuY2UnIH1dLFxuICAgIFsndWludDI1NiB0b2tlbklkJywgeyB0eXBlOiAndWludDI1NicsIG5hbWU6ICd0b2tlbklkJyB9XSxcbiAgICBbJ3VpbnQyNTYgdmFsdWUnLCB7IHR5cGU6ICd1aW50MjU2JywgbmFtZTogJ3ZhbHVlJyB9XSxcbiAgICAvLyBJbmRleGVkXG4gICAgW1xuICAgICAgICAnZXZlbnQ6YWRkcmVzcyBpbmRleGVkIGZyb20nLFxuICAgICAgICB7IHR5cGU6ICdhZGRyZXNzJywgbmFtZTogJ2Zyb20nLCBpbmRleGVkOiB0cnVlIH0sXG4gICAgXSxcbiAgICBbJ2V2ZW50OmFkZHJlc3MgaW5kZXhlZCB0bycsIHsgdHlwZTogJ2FkZHJlc3MnLCBuYW1lOiAndG8nLCBpbmRleGVkOiB0cnVlIH1dLFxuICAgIFtcbiAgICAgICAgJ2V2ZW50OnVpbnQgaW5kZXhlZCB0b2tlbklkJyxcbiAgICAgICAgeyB0eXBlOiAndWludDI1NicsIG5hbWU6ICd0b2tlbklkJywgaW5kZXhlZDogdHJ1ZSB9LFxuICAgIF0sXG4gICAgW1xuICAgICAgICAnZXZlbnQ6dWludDI1NiBpbmRleGVkIHRva2VuSWQnLFxuICAgICAgICB7IHR5cGU6ICd1aW50MjU2JywgbmFtZTogJ3Rva2VuSWQnLCBpbmRleGVkOiB0cnVlIH0sXG4gICAgXSxcbl0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FjaGUuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/cache.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js": /*!**********************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js ***! \**********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ eventModifiers: () => (/* binding */ eventModifiers),\n/* harmony export */ execConstructorSignature: () => (/* binding */ execConstructorSignature),\n/* harmony export */ execErrorSignature: () => (/* binding */ execErrorSignature),\n/* harmony export */ execEventSignature: () => (/* binding */ execEventSignature),\n/* harmony export */ execFallbackSignature: () => (/* binding */ execFallbackSignature),\n/* harmony export */ execFunctionSignature: () => (/* binding */ execFunctionSignature),\n/* harmony export */ execStructSignature: () => (/* binding */ execStructSignature),\n/* harmony export */ functionModifiers: () => (/* binding */ functionModifiers),\n/* harmony export */ isConstructorSignature: () => (/* binding */ isConstructorSignature),\n/* harmony export */ isErrorSignature: () => (/* binding */ isErrorSignature),\n/* harmony export */ isEventSignature: () => (/* binding */ isEventSignature),\n/* harmony export */ isFallbackSignature: () => (/* binding */ isFallbackSignature),\n/* harmony export */ isFunctionSignature: () => (/* binding */ isFunctionSignature),\n/* harmony export */ isReceiveSignature: () => (/* binding */ isReceiveSignature),\n/* harmony export */ isStructSignature: () => (/* binding */ isStructSignature),\n/* harmony export */ modifiers: () => (/* binding */ modifiers)\n/* harmony export */ });\n/* harmony import */ var _regex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../regex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/regex.js\");\n\n// https://regexr.com/7gmok\nconst errorSignatureRegex = /^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/;\nfunction isErrorSignature(signature) {\n return errorSignatureRegex.test(signature);\n}\nfunction execErrorSignature(signature) {\n return (0,_regex_js__WEBPACK_IMPORTED_MODULE_0__.execTyped)(errorSignatureRegex, signature);\n}\n// https://regexr.com/7gmoq\nconst eventSignatureRegex = /^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/;\nfunction isEventSignature(signature) {\n return eventSignatureRegex.test(signature);\n}\nfunction execEventSignature(signature) {\n return (0,_regex_js__WEBPACK_IMPORTED_MODULE_0__.execTyped)(eventSignatureRegex, signature);\n}\n// https://regexr.com/7gmot\nconst functionSignatureRegex = /^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/;\nfunction isFunctionSignature(signature) {\n return functionSignatureRegex.test(signature);\n}\nfunction execFunctionSignature(signature) {\n return (0,_regex_js__WEBPACK_IMPORTED_MODULE_0__.execTyped)(functionSignatureRegex, signature);\n}\n// https://regexr.com/7gmp3\nconst structSignatureRegex = /^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;\nfunction isStructSignature(signature) {\n return structSignatureRegex.test(signature);\n}\nfunction execStructSignature(signature) {\n return (0,_regex_js__WEBPACK_IMPORTED_MODULE_0__.execTyped)(structSignatureRegex, signature);\n}\n// https://regexr.com/78u01\nconst constructorSignatureRegex = /^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/;\nfunction isConstructorSignature(signature) {\n return constructorSignatureRegex.test(signature);\n}\nfunction execConstructorSignature(signature) {\n return (0,_regex_js__WEBPACK_IMPORTED_MODULE_0__.execTyped)(constructorSignatureRegex, signature);\n}\n// https://regexr.com/7srtn\nconst fallbackSignatureRegex = /^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/;\nfunction isFallbackSignature(signature) {\n return fallbackSignatureRegex.test(signature);\n}\nfunction execFallbackSignature(signature) {\n return (0,_regex_js__WEBPACK_IMPORTED_MODULE_0__.execTyped)(fallbackSignatureRegex, signature);\n}\n// https://regexr.com/78u1k\nconst receiveSignatureRegex = /^receive\\(\\) external payable$/;\nfunction isReceiveSignature(signature) {\n return receiveSignatureRegex.test(signature);\n}\nconst modifiers = new Set([\n 'memory',\n 'indexed',\n 'storage',\n 'calldata',\n]);\nconst eventModifiers = new Set(['indexed']);\nconst functionModifiers = new Set([\n 'calldata',\n 'memory',\n 'storage',\n]);\n//# sourceMappingURL=signatures.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3J1bnRpbWUvc2lnbmF0dXJlcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUEyQztBQUMzQztBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDUCxXQUFXLG9EQUFTO0FBQ3BCO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNPO0FBQ1AsV0FBVyxvREFBUztBQUNwQjtBQUNBO0FBQ0EsOEhBQThILEVBQUUsdURBQXVELEVBQUU7QUFDbEw7QUFDUDtBQUNBO0FBQ087QUFDUCxXQUFXLG9EQUFTO0FBQ3BCO0FBQ0E7QUFDQSwwRUFBMEUsb0JBQW9CO0FBQ3ZGO0FBQ1A7QUFDQTtBQUNPO0FBQ1AsV0FBVyxvREFBUztBQUNwQjtBQUNBO0FBQ0EscUdBQXFHLEVBQUU7QUFDaEc7QUFDUDtBQUNBO0FBQ087QUFDUCxXQUFXLG9EQUFTO0FBQ3BCO0FBQ0E7QUFDQSxzRkFBc0YsRUFBRTtBQUNqRjtBQUNQO0FBQ0E7QUFDTztBQUNQLFdBQVcsb0RBQVM7QUFDcEI7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDQTtBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvYWJpdHlwZS9kaXN0L2VzbS9odW1hbi1yZWFkYWJsZS9ydW50aW1lL3NpZ25hdHVyZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhlY1R5cGVkIH0gZnJvbSAnLi4vLi4vcmVnZXguanMnO1xuLy8gaHR0cHM6Ly9yZWdleHIuY29tLzdnbW9rXG5jb25zdCBlcnJvclNpZ25hdHVyZVJlZ2V4ID0gL15lcnJvciAoPzxuYW1lPlthLXpBLVokX11bYS16QS1aMC05JF9dKilcXCgoPzxwYXJhbWV0ZXJzPi4qPylcXCkkLztcbmV4cG9ydCBmdW5jdGlvbiBpc0Vycm9yU2lnbmF0dXJlKHNpZ25hdHVyZSkge1xuICAgIHJldHVybiBlcnJvclNpZ25hdHVyZVJlZ2V4LnRlc3Qoc2lnbmF0dXJlKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBleGVjRXJyb3JTaWduYXR1cmUoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGV4ZWNUeXBlZChlcnJvclNpZ25hdHVyZVJlZ2V4LCBzaWduYXR1cmUpO1xufVxuLy8gaHR0cHM6Ly9yZWdleHIuY29tLzdnbW9xXG5jb25zdCBldmVudFNpZ25hdHVyZVJlZ2V4ID0gL15ldmVudCAoPzxuYW1lPlthLXpBLVokX11bYS16QS1aMC05JF9dKilcXCgoPzxwYXJhbWV0ZXJzPi4qPylcXCkkLztcbmV4cG9ydCBmdW5jdGlvbiBpc0V2ZW50U2lnbmF0dXJlKHNpZ25hdHVyZSkge1xuICAgIHJldHVybiBldmVudFNpZ25hdHVyZVJlZ2V4LnRlc3Qoc2lnbmF0dXJlKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBleGVjRXZlbnRTaWduYXR1cmUoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGV4ZWNUeXBlZChldmVudFNpZ25hdHVyZVJlZ2V4LCBzaWduYXR1cmUpO1xufVxuLy8gaHR0cHM6Ly9yZWdleHIuY29tLzdnbW90XG5jb25zdCBmdW5jdGlvblNpZ25hdHVyZVJlZ2V4ID0gL15mdW5jdGlvbiAoPzxuYW1lPlthLXpBLVokX11bYS16QS1aMC05JF9dKilcXCgoPzxwYXJhbWV0ZXJzPi4qPylcXCkoPzogKD88c2NvcGU+ZXh0ZXJuYWx8cHVibGljezF9KSk/KD86ICg/PHN0YXRlTXV0YWJpbGl0eT5wdXJlfHZpZXd8bm9ucGF5YWJsZXxwYXlhYmxlezF9KSk/KD86IHJldHVybnNcXHM/XFwoKD88cmV0dXJucz4uKj8pXFwpKT8kLztcbmV4cG9ydCBmdW5jdGlvbiBpc0Z1bmN0aW9uU2lnbmF0dXJlKHNpZ25hdHVyZSkge1xuICAgIHJldHVybiBmdW5jdGlvblNpZ25hdHVyZVJlZ2V4LnRlc3Qoc2lnbmF0dXJlKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBleGVjRnVuY3Rpb25TaWduYXR1cmUoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGV4ZWNUeXBlZChmdW5jdGlvblNpZ25hdHVyZVJlZ2V4LCBzaWduYXR1cmUpO1xufVxuLy8gaHR0cHM6Ly9yZWdleHIuY29tLzdnbXAzXG5jb25zdCBzdHJ1Y3RTaWduYXR1cmVSZWdleCA9IC9ec3RydWN0ICg/PG5hbWU+W2EtekEtWiRfXVthLXpBLVowLTkkX10qKSBcXHsoPzxwcm9wZXJ0aWVzPi4qPylcXH0kLztcbmV4cG9ydCBmdW5jdGlvbiBpc1N0cnVjdFNpZ25hdHVyZShzaWduYXR1cmUpIHtcbiAgICByZXR1cm4gc3RydWN0U2lnbmF0dXJlUmVnZXgudGVzdChzaWduYXR1cmUpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGV4ZWNTdHJ1Y3RTaWduYXR1cmUoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGV4ZWNUeXBlZChzdHJ1Y3RTaWduYXR1cmVSZWdleCwgc2lnbmF0dXJlKTtcbn1cbi8vIGh0dHBzOi8vcmVnZXhyLmNvbS83OHUwMVxuY29uc3QgY29uc3RydWN0b3JTaWduYXR1cmVSZWdleCA9IC9eY29uc3RydWN0b3JcXCgoPzxwYXJhbWV0ZXJzPi4qPylcXCkoPzpcXHMoPzxzdGF0ZU11dGFiaWxpdHk+cGF5YWJsZXsxfSkpPyQvO1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ29uc3RydWN0b3JTaWduYXR1cmUoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGNvbnN0cnVjdG9yU2lnbmF0dXJlUmVnZXgudGVzdChzaWduYXR1cmUpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGV4ZWNDb25zdHJ1Y3RvclNpZ25hdHVyZShzaWduYXR1cmUpIHtcbiAgICByZXR1cm4gZXhlY1R5cGVkKGNvbnN0cnVjdG9yU2lnbmF0dXJlUmVnZXgsIHNpZ25hdHVyZSk7XG59XG4vLyBodHRwczovL3JlZ2V4ci5jb20vN3NydG5cbmNvbnN0IGZhbGxiYWNrU2lnbmF0dXJlUmVnZXggPSAvXmZhbGxiYWNrXFwoXFwpIGV4dGVybmFsKD86XFxzKD88c3RhdGVNdXRhYmlsaXR5PnBheWFibGV7MX0pKT8kLztcbmV4cG9ydCBmdW5jdGlvbiBpc0ZhbGxiYWNrU2lnbmF0dXJlKHNpZ25hdHVyZSkge1xuICAgIHJldHVybiBmYWxsYmFja1NpZ25hdHVyZVJlZ2V4LnRlc3Qoc2lnbmF0dXJlKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBleGVjRmFsbGJhY2tTaWduYXR1cmUoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGV4ZWNUeXBlZChmYWxsYmFja1NpZ25hdHVyZVJlZ2V4LCBzaWduYXR1cmUpO1xufVxuLy8gaHR0cHM6Ly9yZWdleHIuY29tLzc4dTFrXG5jb25zdCByZWNlaXZlU2lnbmF0dXJlUmVnZXggPSAvXnJlY2VpdmVcXChcXCkgZXh0ZXJuYWwgcGF5YWJsZSQvO1xuZXhwb3J0IGZ1bmN0aW9uIGlzUmVjZWl2ZVNpZ25hdHVyZShzaWduYXR1cmUpIHtcbiAgICByZXR1cm4gcmVjZWl2ZVNpZ25hdHVyZVJlZ2V4LnRlc3Qoc2lnbmF0dXJlKTtcbn1cbmV4cG9ydCBjb25zdCBtb2RpZmllcnMgPSBuZXcgU2V0KFtcbiAgICAnbWVtb3J5JyxcbiAgICAnaW5kZXhlZCcsXG4gICAgJ3N0b3JhZ2UnLFxuICAgICdjYWxsZGF0YScsXG5dKTtcbmV4cG9ydCBjb25zdCBldmVudE1vZGlmaWVycyA9IG5ldyBTZXQoWydpbmRleGVkJ10pO1xuZXhwb3J0IGNvbnN0IGZ1bmN0aW9uTW9kaWZpZXJzID0gbmV3IFNldChbXG4gICAgJ2NhbGxkYXRhJyxcbiAgICAnbWVtb3J5JyxcbiAgICAnc3RvcmFnZScsXG5dKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNpZ25hdHVyZXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/structs.js": /*!*******************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/structs.js ***! \*******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseStructs: () => (/* binding */ parseStructs)\n/* harmony export */ });\n/* harmony import */ var _regex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../regex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/regex.js\");\n/* harmony import */ var _errors_abiItem_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../errors/abiItem.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiItem.js\");\n/* harmony import */ var _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../errors/abiParameter.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiParameter.js\");\n/* harmony import */ var _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../errors/signature.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/signature.js\");\n/* harmony import */ var _errors_struct_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../errors/struct.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/struct.js\");\n/* harmony import */ var _signatures_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./signatures.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/utils.js\");\n\n\n\n\n\n\n\nfunction parseStructs(signatures) {\n // Create \"shallow\" version of each struct (and filter out non-structs or invalid structs)\n const shallowStructs = {};\n const signaturesLength = signatures.length;\n for (let i = 0; i < signaturesLength; i++) {\n const signature = signatures[i];\n if (!(0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.isStructSignature)(signature))\n continue;\n const match = (0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.execStructSignature)(signature);\n if (!match)\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.InvalidSignatureError({ signature, type: 'struct' });\n const properties = match.properties.split(';');\n const components = [];\n const propertiesLength = properties.length;\n for (let k = 0; k < propertiesLength; k++) {\n const property = properties[k];\n const trimmed = property.trim();\n if (!trimmed)\n continue;\n const abiParameter = (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.parseAbiParameter)(trimmed, {\n type: 'struct',\n });\n components.push(abiParameter);\n }\n if (!components.length)\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.InvalidStructSignatureError({ signature });\n shallowStructs[match.name] = components;\n }\n // Resolve nested structs inside each parameter\n const resolvedStructs = {};\n const entries = Object.entries(shallowStructs);\n const entriesLength = entries.length;\n for (let i = 0; i < entriesLength; i++) {\n const [name, parameters] = entries[i];\n resolvedStructs[name] = resolveStructs(parameters, shallowStructs);\n }\n return resolvedStructs;\n}\nconst typeWithoutTupleRegex = /^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;\nfunction resolveStructs(abiParameters, structs, ancestors = new Set()) {\n const components = [];\n const length = abiParameters.length;\n for (let i = 0; i < length; i++) {\n const abiParameter = abiParameters[i];\n const isTuple = _regex_js__WEBPACK_IMPORTED_MODULE_3__.isTupleRegex.test(abiParameter.type);\n if (isTuple)\n components.push(abiParameter);\n else {\n const match = (0,_regex_js__WEBPACK_IMPORTED_MODULE_3__.execTyped)(typeWithoutTupleRegex, abiParameter.type);\n if (!match?.type)\n throw new _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_4__.InvalidAbiTypeParameterError({ abiParameter });\n const { array, type } = match;\n if (type in structs) {\n if (ancestors.has(type))\n throw new _errors_struct_js__WEBPACK_IMPORTED_MODULE_5__.CircularReferenceError({ type });\n components.push({\n ...abiParameter,\n type: `tuple${array ?? ''}`,\n components: resolveStructs(structs[type] ?? [], structs, new Set([...ancestors, type])),\n });\n }\n else {\n if ((0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.isSolidityType)(type))\n components.push(abiParameter);\n else\n throw new _errors_abiItem_js__WEBPACK_IMPORTED_MODULE_6__.UnknownTypeError({ type });\n }\n }\n }\n return components;\n}\n//# sourceMappingURL=structs.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3J1bnRpbWUvc3RydWN0cy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUF5RDtBQUNEO0FBQ2lCO0FBQ29CO0FBQ2hDO0FBQ1k7QUFDVjtBQUN4RDtBQUNQO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDQSxhQUFhLGlFQUFpQjtBQUM5QjtBQUNBLHNCQUFzQixtRUFBbUI7QUFDekM7QUFDQSxzQkFBc0IsdUVBQXFCLEdBQUcsMkJBQTJCO0FBQ3pFLG9EQUFvRDtBQUNwRDtBQUNBO0FBQ0Esd0JBQXdCLHNCQUFzQjtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyw0REFBaUI7QUFDbEQ7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDZFQUEyQixHQUFHLFdBQVc7QUFDL0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG1CQUFtQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsWUFBWTtBQUNoQztBQUNBLHdCQUF3QixtREFBWTtBQUNwQztBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsb0RBQVM7QUFDbkM7QUFDQSwwQkFBMEIsaUZBQTRCLEdBQUcsY0FBYztBQUN2RSxvQkFBb0IsY0FBYztBQUNsQztBQUNBO0FBQ0EsOEJBQThCLHFFQUFzQixHQUFHLE1BQU07QUFDN0Q7QUFDQTtBQUNBLGtDQUFrQyxZQUFZO0FBQzlDO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSxvQkFBb0IseURBQWM7QUFDbEM7QUFDQTtBQUNBLDhCQUE4QixnRUFBZ0IsR0FBRyxNQUFNO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3J1bnRpbWUvc3RydWN0cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleGVjVHlwZWQsIGlzVHVwbGVSZWdleCB9IGZyb20gJy4uLy4uL3JlZ2V4LmpzJztcbmltcG9ydCB7IFVua25vd25UeXBlRXJyb3IgfSBmcm9tICcuLi9lcnJvcnMvYWJpSXRlbS5qcyc7XG5pbXBvcnQgeyBJbnZhbGlkQWJpVHlwZVBhcmFtZXRlckVycm9yIH0gZnJvbSAnLi4vZXJyb3JzL2FiaVBhcmFtZXRlci5qcyc7XG5pbXBvcnQgeyBJbnZhbGlkU2lnbmF0dXJlRXJyb3IsIEludmFsaWRTdHJ1Y3RTaWduYXR1cmVFcnJvciwgfSBmcm9tICcuLi9lcnJvcnMvc2lnbmF0dXJlLmpzJztcbmltcG9ydCB7IENpcmN1bGFyUmVmZXJlbmNlRXJyb3IgfSBmcm9tICcuLi9lcnJvcnMvc3RydWN0LmpzJztcbmltcG9ydCB7IGV4ZWNTdHJ1Y3RTaWduYXR1cmUsIGlzU3RydWN0U2lnbmF0dXJlIH0gZnJvbSAnLi9zaWduYXR1cmVzLmpzJztcbmltcG9ydCB7IGlzU29saWRpdHlUeXBlLCBwYXJzZUFiaVBhcmFtZXRlciB9IGZyb20gJy4vdXRpbHMuanMnO1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlU3RydWN0cyhzaWduYXR1cmVzKSB7XG4gICAgLy8gQ3JlYXRlIFwic2hhbGxvd1wiIHZlcnNpb24gb2YgZWFjaCBzdHJ1Y3QgKGFuZCBmaWx0ZXIgb3V0IG5vbi1zdHJ1Y3RzIG9yIGludmFsaWQgc3RydWN0cylcbiAgICBjb25zdCBzaGFsbG93U3RydWN0cyA9IHt9O1xuICAgIGNvbnN0IHNpZ25hdHVyZXNMZW5ndGggPSBzaWduYXR1cmVzLmxlbmd0aDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpZ25hdHVyZXNMZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBzaWduYXR1cmUgPSBzaWduYXR1cmVzW2ldO1xuICAgICAgICBpZiAoIWlzU3RydWN0U2lnbmF0dXJlKHNpZ25hdHVyZSkpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBleGVjU3RydWN0U2lnbmF0dXJlKHNpZ25hdHVyZSk7XG4gICAgICAgIGlmICghbWF0Y2gpXG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFNpZ25hdHVyZUVycm9yKHsgc2lnbmF0dXJlLCB0eXBlOiAnc3RydWN0JyB9KTtcbiAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IG1hdGNoLnByb3BlcnRpZXMuc3BsaXQoJzsnKTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50cyA9IFtdO1xuICAgICAgICBjb25zdCBwcm9wZXJ0aWVzTGVuZ3RoID0gcHJvcGVydGllcy5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IGsgPSAwOyBrIDwgcHJvcGVydGllc0xlbmd0aDsgaysrKSB7XG4gICAgICAgICAgICBjb25zdCBwcm9wZXJ0eSA9IHByb3BlcnRpZXNba107XG4gICAgICAgICAgICBjb25zdCB0cmltbWVkID0gcHJvcGVydHkudHJpbSgpO1xuICAgICAgICAgICAgaWYgKCF0cmltbWVkKVxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgY29uc3QgYWJpUGFyYW1ldGVyID0gcGFyc2VBYmlQYXJhbWV0ZXIodHJpbW1lZCwge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJ1Y3QnLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb21wb25lbnRzLnB1c2goYWJpUGFyYW1ldGVyKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWNvbXBvbmVudHMubGVuZ3RoKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRTdHJ1Y3RTaWduYXR1cmVFcnJvcih7IHNpZ25hdHVyZSB9KTtcbiAgICAgICAgc2hhbGxvd1N0cnVjdHNbbWF0Y2gubmFtZV0gPSBjb21wb25lbnRzO1xuICAgIH1cbiAgICAvLyBSZXNvbHZlIG5lc3RlZCBzdHJ1Y3RzIGluc2lkZSBlYWNoIHBhcmFtZXRlclxuICAgIGNvbnN0IHJlc29sdmVkU3RydWN0cyA9IHt9O1xuICAgIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyhzaGFsbG93U3RydWN0cyk7XG4gICAgY29uc3QgZW50cmllc0xlbmd0aCA9IGVudHJpZXMubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllc0xlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IFtuYW1lLCBwYXJhbWV0ZXJzXSA9IGVudHJpZXNbaV07XG4gICAgICAgIHJlc29sdmVkU3RydWN0c1tuYW1lXSA9IHJlc29sdmVTdHJ1Y3RzKHBhcmFtZXRlcnMsIHNoYWxsb3dTdHJ1Y3RzKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc29sdmVkU3RydWN0cztcbn1cbmNvbnN0IHR5cGVXaXRob3V0VHVwbGVSZWdleCA9IC9eKD88dHlwZT5bYS16QS1aJF9dW2EtekEtWjAtOSRfXSopKD88YXJyYXk+KD86XFxbXFxkKj9cXF0pKz8pPyQvO1xuZnVuY3Rpb24gcmVzb2x2ZVN0cnVjdHMoYWJpUGFyYW1ldGVycywgc3RydWN0cywgYW5jZXN0b3JzID0gbmV3IFNldCgpKSB7XG4gICAgY29uc3QgY29tcG9uZW50cyA9IFtdO1xuICAgIGNvbnN0IGxlbmd0aCA9IGFiaVBhcmFtZXRlcnMubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgYWJpUGFyYW1ldGVyID0gYWJpUGFyYW1ldGVyc1tpXTtcbiAgICAgICAgY29uc3QgaXNUdXBsZSA9IGlzVHVwbGVSZWdleC50ZXN0KGFiaVBhcmFtZXRlci50eXBlKTtcbiAgICAgICAgaWYgKGlzVHVwbGUpXG4gICAgICAgICAgICBjb21wb25lbnRzLnB1c2goYWJpUGFyYW1ldGVyKTtcbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBtYXRjaCA9IGV4ZWNUeXBlZCh0eXBlV2l0aG91dFR1cGxlUmVnZXgsIGFiaVBhcmFtZXRlci50eXBlKTtcbiAgICAgICAgICAgIGlmICghbWF0Y2g/LnR5cGUpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBYmlUeXBlUGFyYW1ldGVyRXJyb3IoeyBhYmlQYXJhbWV0ZXIgfSk7XG4gICAgICAgICAgICBjb25zdCB7IGFycmF5LCB0eXBlIH0gPSBtYXRjaDtcbiAgICAgICAgICAgIGlmICh0eXBlIGluIHN0cnVjdHMpIHtcbiAgICAgICAgICAgICAgICBpZiAoYW5jZXN0b3JzLmhhcyh0eXBlKSlcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IENpcmN1bGFyUmVmZXJlbmNlRXJyb3IoeyB0eXBlIH0pO1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudHMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmFiaVBhcmFtZXRlcixcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogYHR1cGxlJHthcnJheSA/PyAnJ31gLFxuICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRzOiByZXNvbHZlU3RydWN0cyhzdHJ1Y3RzW3R5cGVdID8/IFtdLCBzdHJ1Y3RzLCBuZXcgU2V0KFsuLi5hbmNlc3RvcnMsIHR5cGVdKSksXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNTb2xpZGl0eVR5cGUodHlwZSkpXG4gICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudHMucHVzaChhYmlQYXJhbWV0ZXIpO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25UeXBlRXJyb3IoeyB0eXBlIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjb21wb25lbnRzO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3RydWN0cy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/structs.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/utils.js": /*!*****************************************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/utils.js ***! \*****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isSolidityKeyword: () => (/* binding */ isSolidityKeyword),\n/* harmony export */ isSolidityType: () => (/* binding */ isSolidityType),\n/* harmony export */ isValidDataLocation: () => (/* binding */ isValidDataLocation),\n/* harmony export */ parseAbiParameter: () => (/* binding */ parseAbiParameter),\n/* harmony export */ parseConstructorSignature: () => (/* binding */ parseConstructorSignature),\n/* harmony export */ parseErrorSignature: () => (/* binding */ parseErrorSignature),\n/* harmony export */ parseEventSignature: () => (/* binding */ parseEventSignature),\n/* harmony export */ parseFallbackSignature: () => (/* binding */ parseFallbackSignature),\n/* harmony export */ parseFunctionSignature: () => (/* binding */ parseFunctionSignature),\n/* harmony export */ parseSignature: () => (/* binding */ parseSignature),\n/* harmony export */ splitParameters: () => (/* binding */ splitParameters)\n/* harmony export */ });\n/* harmony import */ var _regex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../regex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/regex.js\");\n/* harmony import */ var _errors_abiItem_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../errors/abiItem.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiItem.js\");\n/* harmony import */ var _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../errors/abiParameter.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/abiParameter.js\");\n/* harmony import */ var _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../errors/signature.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/signature.js\");\n/* harmony import */ var _errors_splitParameters_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../errors/splitParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/errors/splitParameters.js\");\n/* harmony import */ var _cache_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./cache.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/cache.js\");\n/* harmony import */ var _signatures_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./signatures.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/signatures.js\");\n\n\n\n\n\n\n\nfunction parseSignature(signature, structs = {}) {\n if ((0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.isFunctionSignature)(signature))\n return parseFunctionSignature(signature, structs);\n if ((0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.isEventSignature)(signature))\n return parseEventSignature(signature, structs);\n if ((0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.isErrorSignature)(signature))\n return parseErrorSignature(signature, structs);\n if ((0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.isConstructorSignature)(signature))\n return parseConstructorSignature(signature, structs);\n if ((0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.isFallbackSignature)(signature))\n return parseFallbackSignature(signature);\n if ((0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.isReceiveSignature)(signature))\n return {\n type: 'receive',\n stateMutability: 'payable',\n };\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.UnknownSignatureError({ signature });\n}\nfunction parseFunctionSignature(signature, structs = {}) {\n const match = (0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.execFunctionSignature)(signature);\n if (!match)\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.InvalidSignatureError({ signature, type: 'function' });\n const inputParams = splitParameters(match.parameters);\n const inputs = [];\n const inputLength = inputParams.length;\n for (let i = 0; i < inputLength; i++) {\n inputs.push(parseAbiParameter(inputParams[i], {\n modifiers: _signatures_js__WEBPACK_IMPORTED_MODULE_0__.functionModifiers,\n structs,\n type: 'function',\n }));\n }\n const outputs = [];\n if (match.returns) {\n const outputParams = splitParameters(match.returns);\n const outputLength = outputParams.length;\n for (let i = 0; i < outputLength; i++) {\n outputs.push(parseAbiParameter(outputParams[i], {\n modifiers: _signatures_js__WEBPACK_IMPORTED_MODULE_0__.functionModifiers,\n structs,\n type: 'function',\n }));\n }\n }\n return {\n name: match.name,\n type: 'function',\n stateMutability: match.stateMutability ?? 'nonpayable',\n inputs,\n outputs,\n };\n}\nfunction parseEventSignature(signature, structs = {}) {\n const match = (0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.execEventSignature)(signature);\n if (!match)\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.InvalidSignatureError({ signature, type: 'event' });\n const params = splitParameters(match.parameters);\n const abiParameters = [];\n const length = params.length;\n for (let i = 0; i < length; i++)\n abiParameters.push(parseAbiParameter(params[i], {\n modifiers: _signatures_js__WEBPACK_IMPORTED_MODULE_0__.eventModifiers,\n structs,\n type: 'event',\n }));\n return { name: match.name, type: 'event', inputs: abiParameters };\n}\nfunction parseErrorSignature(signature, structs = {}) {\n const match = (0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.execErrorSignature)(signature);\n if (!match)\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.InvalidSignatureError({ signature, type: 'error' });\n const params = splitParameters(match.parameters);\n const abiParameters = [];\n const length = params.length;\n for (let i = 0; i < length; i++)\n abiParameters.push(parseAbiParameter(params[i], { structs, type: 'error' }));\n return { name: match.name, type: 'error', inputs: abiParameters };\n}\nfunction parseConstructorSignature(signature, structs = {}) {\n const match = (0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.execConstructorSignature)(signature);\n if (!match)\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.InvalidSignatureError({ signature, type: 'constructor' });\n const params = splitParameters(match.parameters);\n const abiParameters = [];\n const length = params.length;\n for (let i = 0; i < length; i++)\n abiParameters.push(parseAbiParameter(params[i], { structs, type: 'constructor' }));\n return {\n type: 'constructor',\n stateMutability: match.stateMutability ?? 'nonpayable',\n inputs: abiParameters,\n };\n}\nfunction parseFallbackSignature(signature) {\n const match = (0,_signatures_js__WEBPACK_IMPORTED_MODULE_0__.execFallbackSignature)(signature);\n if (!match)\n throw new _errors_signature_js__WEBPACK_IMPORTED_MODULE_1__.InvalidSignatureError({ signature, type: 'fallback' });\n return {\n type: 'fallback',\n stateMutability: match.stateMutability ?? 'nonpayable',\n };\n}\nconst abiParameterWithoutTupleRegex = /^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/;\nconst abiParameterWithTupleRegex = /^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/;\nconst dynamicIntegerRegex = /^u?int$/;\nfunction parseAbiParameter(param, options) {\n // optional namespace cache by `type`\n const parameterCacheKey = (0,_cache_js__WEBPACK_IMPORTED_MODULE_2__.getParameterCacheKey)(param, options?.type, options?.structs);\n if (_cache_js__WEBPACK_IMPORTED_MODULE_2__.parameterCache.has(parameterCacheKey))\n return _cache_js__WEBPACK_IMPORTED_MODULE_2__.parameterCache.get(parameterCacheKey);\n const isTuple = _regex_js__WEBPACK_IMPORTED_MODULE_3__.isTupleRegex.test(param);\n const match = (0,_regex_js__WEBPACK_IMPORTED_MODULE_3__.execTyped)(isTuple ? abiParameterWithTupleRegex : abiParameterWithoutTupleRegex, param);\n if (!match)\n throw new _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_4__.InvalidParameterError({ param });\n if (match.name && isSolidityKeyword(match.name))\n throw new _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_4__.SolidityProtectedKeywordError({ param, name: match.name });\n const name = match.name ? { name: match.name } : {};\n const indexed = match.modifier === 'indexed' ? { indexed: true } : {};\n const structs = options?.structs ?? {};\n let type;\n let components = {};\n if (isTuple) {\n type = 'tuple';\n const params = splitParameters(match.type);\n const components_ = [];\n const length = params.length;\n for (let i = 0; i < length; i++) {\n // remove `modifiers` from `options` to prevent from being added to tuple components\n components_.push(parseAbiParameter(params[i], { structs }));\n }\n components = { components: components_ };\n }\n else if (match.type in structs) {\n type = 'tuple';\n components = { components: structs[match.type] };\n }\n else if (dynamicIntegerRegex.test(match.type)) {\n type = `${match.type}256`;\n }\n else if (match.type === 'address payable') {\n type = 'address';\n }\n else {\n type = match.type;\n if (!(options?.type === 'struct') && !isSolidityType(type))\n throw new _errors_abiItem_js__WEBPACK_IMPORTED_MODULE_5__.UnknownSolidityTypeError({ type });\n }\n if (match.modifier) {\n // Check if modifier exists, but is not allowed (e.g. `indexed` in `functionModifiers`)\n if (!options?.modifiers?.has?.(match.modifier))\n throw new _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_4__.InvalidModifierError({\n param,\n type: options?.type,\n modifier: match.modifier,\n });\n // Check if resolved `type` is valid if there is a function modifier\n if (_signatures_js__WEBPACK_IMPORTED_MODULE_0__.functionModifiers.has(match.modifier) &&\n !isValidDataLocation(type, !!match.array))\n throw new _errors_abiParameter_js__WEBPACK_IMPORTED_MODULE_4__.InvalidFunctionModifierError({\n param,\n type: options?.type,\n modifier: match.modifier,\n });\n }\n const abiParameter = {\n type: `${type}${match.array ?? ''}`,\n ...name,\n ...indexed,\n ...components,\n };\n _cache_js__WEBPACK_IMPORTED_MODULE_2__.parameterCache.set(parameterCacheKey, abiParameter);\n return abiParameter;\n}\n// s/o latika for this\nfunction splitParameters(params, result = [], current = '', depth = 0) {\n const length = params.trim().length;\n // biome-ignore lint/correctness/noUnreachable: recursive\n for (let i = 0; i < length; i++) {\n const char = params[i];\n const tail = params.slice(i + 1);\n switch (char) {\n case ',':\n return depth === 0\n ? splitParameters(tail, [...result, current.trim()])\n : splitParameters(tail, result, `${current}${char}`, depth);\n case '(':\n return splitParameters(tail, result, `${current}${char}`, depth + 1);\n case ')':\n return splitParameters(tail, result, `${current}${char}`, depth - 1);\n default:\n return splitParameters(tail, result, `${current}${char}`, depth);\n }\n }\n if (current === '')\n return result;\n if (depth !== 0)\n throw new _errors_splitParameters_js__WEBPACK_IMPORTED_MODULE_6__.InvalidParenthesisError({ current, depth });\n result.push(current.trim());\n return result;\n}\nfunction isSolidityType(type) {\n return (type === 'address' ||\n type === 'bool' ||\n type === 'function' ||\n type === 'string' ||\n _regex_js__WEBPACK_IMPORTED_MODULE_3__.bytesRegex.test(type) ||\n _regex_js__WEBPACK_IMPORTED_MODULE_3__.integerRegex.test(type));\n}\nconst protectedKeywordsRegex = /^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;\n/** @internal */\nfunction isSolidityKeyword(name) {\n return (name === 'address' ||\n name === 'bool' ||\n name === 'function' ||\n name === 'string' ||\n name === 'tuple' ||\n _regex_js__WEBPACK_IMPORTED_MODULE_3__.bytesRegex.test(name) ||\n _regex_js__WEBPACK_IMPORTED_MODULE_3__.integerRegex.test(name) ||\n protectedKeywordsRegex.test(name));\n}\n/** @internal */\nfunction isValidDataLocation(type, isArray) {\n return isArray || type === 'bytes' || type === 'string' || type === 'tuple';\n}\n//# sourceMappingURL=utils.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL2h1bWFuLXJlYWRhYmxlL3J1bnRpbWUvdXRpbHMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQW9GO0FBQ3BCO0FBQ3NGO0FBQy9EO0FBQ2hCO0FBQ0w7QUFDNk87QUFDeFMsK0NBQStDO0FBQ3RELFFBQVEsbUVBQW1CO0FBQzNCO0FBQ0EsUUFBUSxnRUFBZ0I7QUFDeEI7QUFDQSxRQUFRLGdFQUFnQjtBQUN4QjtBQUNBLFFBQVEsc0VBQXNCO0FBQzlCO0FBQ0EsUUFBUSxtRUFBbUI7QUFDM0I7QUFDQSxRQUFRLGtFQUFrQjtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsdUVBQXFCLEdBQUcsV0FBVztBQUNqRDtBQUNPLHVEQUF1RDtBQUM5RCxrQkFBa0IscUVBQXFCO0FBQ3ZDO0FBQ0Esa0JBQWtCLHVFQUFxQixHQUFHLDZCQUE2QjtBQUN2RTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsaUJBQWlCO0FBQ3JDO0FBQ0EsdUJBQXVCLDZEQUFpQjtBQUN4QztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isa0JBQWtCO0FBQzFDO0FBQ0EsMkJBQTJCLDZEQUFpQjtBQUM1QztBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sb0RBQW9EO0FBQzNELGtCQUFrQixrRUFBa0I7QUFDcEM7QUFDQSxrQkFBa0IsdUVBQXFCLEdBQUcsMEJBQTBCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixZQUFZO0FBQ2hDO0FBQ0EsdUJBQXVCLDBEQUFjO0FBQ3JDO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsYUFBYTtBQUNiO0FBQ08sb0RBQW9EO0FBQzNELGtCQUFrQixrRUFBa0I7QUFDcEM7QUFDQSxrQkFBa0IsdUVBQXFCLEdBQUcsMEJBQTBCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixZQUFZO0FBQ2hDLDBEQUEwRCx3QkFBd0I7QUFDbEYsYUFBYTtBQUNiO0FBQ08sMERBQTBEO0FBQ2pFLGtCQUFrQix3RUFBd0I7QUFDMUM7QUFDQSxrQkFBa0IsdUVBQXFCLEdBQUcsZ0NBQWdDO0FBQzFFO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixZQUFZO0FBQ2hDLDBEQUEwRCw4QkFBOEI7QUFDeEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxrQkFBa0IscUVBQXFCO0FBQ3ZDO0FBQ0Esa0JBQWtCLHVFQUFxQixHQUFHLDZCQUE2QjtBQUN2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUtBQWlLLEVBQUU7QUFDbkssK0hBQStILEVBQUU7QUFDakk7QUFDTztBQUNQO0FBQ0EsOEJBQThCLCtEQUFvQjtBQUNsRCxRQUFRLHFEQUFjO0FBQ3RCLGVBQWUscURBQWM7QUFDN0Isb0JBQW9CLG1EQUFZO0FBQ2hDLGtCQUFrQixvREFBUztBQUMzQjtBQUNBLGtCQUFrQiwwRUFBcUIsR0FBRyxPQUFPO0FBQ2pEO0FBQ0Esa0JBQWtCLGtGQUE2QixHQUFHLHlCQUF5QjtBQUMzRSxnQ0FBZ0MsbUJBQW1CO0FBQ25ELHFEQUFxRCxnQkFBZ0I7QUFDckU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixZQUFZO0FBQ3BDO0FBQ0EsNERBQTRELFNBQVM7QUFDckU7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCO0FBQ3ZCO0FBQ0E7QUFDQSxrQkFBa0IsV0FBVztBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQix3RUFBd0IsR0FBRyxNQUFNO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHlFQUFvQjtBQUMxQztBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxZQUFZLDZEQUFpQjtBQUM3QjtBQUNBLHNCQUFzQixpRkFBNEI7QUFDbEQ7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQSxpQkFBaUIsS0FBSyxFQUFFLGtCQUFrQjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUkscURBQWM7QUFDbEI7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0Esb0JBQW9CLFlBQVk7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdURBQXVELFFBQVEsRUFBRSxLQUFLO0FBQ3RFO0FBQ0Esd0RBQXdELFFBQVEsRUFBRSxLQUFLO0FBQ3ZFO0FBQ0Esd0RBQXdELFFBQVEsRUFBRSxLQUFLO0FBQ3ZFO0FBQ0Esd0RBQXdELFFBQVEsRUFBRSxLQUFLO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsK0VBQXVCLEdBQUcsZ0JBQWdCO0FBQzVEO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLGlEQUFVO0FBQ2xCLFFBQVEsbURBQVk7QUFDcEI7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxpREFBVTtBQUNsQixRQUFRLG1EQUFZO0FBQ3BCO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL2FiaXR5cGUvZGlzdC9lc20vaHVtYW4tcmVhZGFibGUvcnVudGltZS91dGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBieXRlc1JlZ2V4LCBleGVjVHlwZWQsIGludGVnZXJSZWdleCwgaXNUdXBsZVJlZ2V4LCB9IGZyb20gJy4uLy4uL3JlZ2V4LmpzJztcbmltcG9ydCB7IFVua25vd25Tb2xpZGl0eVR5cGVFcnJvciB9IGZyb20gJy4uL2Vycm9ycy9hYmlJdGVtLmpzJztcbmltcG9ydCB7IEludmFsaWRGdW5jdGlvbk1vZGlmaWVyRXJyb3IsIEludmFsaWRNb2RpZmllckVycm9yLCBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsIFNvbGlkaXR5UHJvdGVjdGVkS2V5d29yZEVycm9yLCB9IGZyb20gJy4uL2Vycm9ycy9hYmlQYXJhbWV0ZXIuanMnO1xuaW1wb3J0IHsgSW52YWxpZFNpZ25hdHVyZUVycm9yLCBVbmtub3duU2lnbmF0dXJlRXJyb3IsIH0gZnJvbSAnLi4vZXJyb3JzL3NpZ25hdHVyZS5qcyc7XG5pbXBvcnQgeyBJbnZhbGlkUGFyZW50aGVzaXNFcnJvciB9IGZyb20gJy4uL2Vycm9ycy9zcGxpdFBhcmFtZXRlcnMuanMnO1xuaW1wb3J0IHsgZ2V0UGFyYW1ldGVyQ2FjaGVLZXksIHBhcmFtZXRlckNhY2hlIH0gZnJvbSAnLi9jYWNoZS5qcyc7XG5pbXBvcnQgeyBldmVudE1vZGlmaWVycywgZXhlY0NvbnN0cnVjdG9yU2lnbmF0dXJlLCBleGVjRXJyb3JTaWduYXR1cmUsIGV4ZWNFdmVudFNpZ25hdHVyZSwgZXhlY0ZhbGxiYWNrU2lnbmF0dXJlLCBleGVjRnVuY3Rpb25TaWduYXR1cmUsIGZ1bmN0aW9uTW9kaWZpZXJzLCBpc0NvbnN0cnVjdG9yU2lnbmF0dXJlLCBpc0Vycm9yU2lnbmF0dXJlLCBpc0V2ZW50U2lnbmF0dXJlLCBpc0ZhbGxiYWNrU2lnbmF0dXJlLCBpc0Z1bmN0aW9uU2lnbmF0dXJlLCBpc1JlY2VpdmVTaWduYXR1cmUsIH0gZnJvbSAnLi9zaWduYXR1cmVzLmpzJztcbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVNpZ25hdHVyZShzaWduYXR1cmUsIHN0cnVjdHMgPSB7fSkge1xuICAgIGlmIChpc0Z1bmN0aW9uU2lnbmF0dXJlKHNpZ25hdHVyZSkpXG4gICAgICAgIHJldHVybiBwYXJzZUZ1bmN0aW9uU2lnbmF0dXJlKHNpZ25hdHVyZSwgc3RydWN0cyk7XG4gICAgaWYgKGlzRXZlbnRTaWduYXR1cmUoc2lnbmF0dXJlKSlcbiAgICAgICAgcmV0dXJuIHBhcnNlRXZlbnRTaWduYXR1cmUoc2lnbmF0dXJlLCBzdHJ1Y3RzKTtcbiAgICBpZiAoaXNFcnJvclNpZ25hdHVyZShzaWduYXR1cmUpKVxuICAgICAgICByZXR1cm4gcGFyc2VFcnJvclNpZ25hdHVyZShzaWduYXR1cmUsIHN0cnVjdHMpO1xuICAgIGlmIChpc0NvbnN0cnVjdG9yU2lnbmF0dXJlKHNpZ25hdHVyZSkpXG4gICAgICAgIHJldHVybiBwYXJzZUNvbnN0cnVjdG9yU2lnbmF0dXJlKHNpZ25hdHVyZSwgc3RydWN0cyk7XG4gICAgaWYgKGlzRmFsbGJhY2tTaWduYXR1cmUoc2lnbmF0dXJlKSlcbiAgICAgICAgcmV0dXJuIHBhcnNlRmFsbGJhY2tTaWduYXR1cmUoc2lnbmF0dXJlKTtcbiAgICBpZiAoaXNSZWNlaXZlU2lnbmF0dXJlKHNpZ25hdHVyZSkpXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0eXBlOiAncmVjZWl2ZScsXG4gICAgICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdwYXlhYmxlJyxcbiAgICAgICAgfTtcbiAgICB0aHJvdyBuZXcgVW5rbm93blNpZ25hdHVyZUVycm9yKHsgc2lnbmF0dXJlIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlRnVuY3Rpb25TaWduYXR1cmUoc2lnbmF0dXJlLCBzdHJ1Y3RzID0ge30pIHtcbiAgICBjb25zdCBtYXRjaCA9IGV4ZWNGdW5jdGlvblNpZ25hdHVyZShzaWduYXR1cmUpO1xuICAgIGlmICghbWF0Y2gpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2lnbmF0dXJlRXJyb3IoeyBzaWduYXR1cmUsIHR5cGU6ICdmdW5jdGlvbicgfSk7XG4gICAgY29uc3QgaW5wdXRQYXJhbXMgPSBzcGxpdFBhcmFtZXRlcnMobWF0Y2gucGFyYW1ldGVycyk7XG4gICAgY29uc3QgaW5wdXRzID0gW107XG4gICAgY29uc3QgaW5wdXRMZW5ndGggPSBpbnB1dFBhcmFtcy5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dExlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlucHV0cy5wdXNoKHBhcnNlQWJpUGFyYW1ldGVyKGlucHV0UGFyYW1zW2ldLCB7XG4gICAgICAgICAgICBtb2RpZmllcnM6IGZ1bmN0aW9uTW9kaWZpZXJzLFxuICAgICAgICAgICAgc3RydWN0cyxcbiAgICAgICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIH0pKTtcbiAgICB9XG4gICAgY29uc3Qgb3V0cHV0cyA9IFtdO1xuICAgIGlmIChtYXRjaC5yZXR1cm5zKSB7XG4gICAgICAgIGNvbnN0IG91dHB1dFBhcmFtcyA9IHNwbGl0UGFyYW1ldGVycyhtYXRjaC5yZXR1cm5zKTtcbiAgICAgICAgY29uc3Qgb3V0cHV0TGVuZ3RoID0gb3V0cHV0UGFyYW1zLmxlbmd0aDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvdXRwdXRMZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgb3V0cHV0cy5wdXNoKHBhcnNlQWJpUGFyYW1ldGVyKG91dHB1dFBhcmFtc1tpXSwge1xuICAgICAgICAgICAgICAgIG1vZGlmaWVyczogZnVuY3Rpb25Nb2RpZmllcnMsXG4gICAgICAgICAgICAgICAgc3RydWN0cyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IG1hdGNoLm5hbWUsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogbWF0Y2guc3RhdGVNdXRhYmlsaXR5ID8/ICdub25wYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzLFxuICAgICAgICBvdXRwdXRzLFxuICAgIH07XG59XG5leHBvcnQgZnVuY3Rpb24gcGFyc2VFdmVudFNpZ25hdHVyZShzaWduYXR1cmUsIHN0cnVjdHMgPSB7fSkge1xuICAgIGNvbnN0IG1hdGNoID0gZXhlY0V2ZW50U2lnbmF0dXJlKHNpZ25hdHVyZSk7XG4gICAgaWYgKCFtYXRjaClcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRTaWduYXR1cmVFcnJvcih7IHNpZ25hdHVyZSwgdHlwZTogJ2V2ZW50JyB9KTtcbiAgICBjb25zdCBwYXJhbXMgPSBzcGxpdFBhcmFtZXRlcnMobWF0Y2gucGFyYW1ldGVycyk7XG4gICAgY29uc3QgYWJpUGFyYW1ldGVycyA9IFtdO1xuICAgIGNvbnN0IGxlbmd0aCA9IHBhcmFtcy5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKylcbiAgICAgICAgYWJpUGFyYW1ldGVycy5wdXNoKHBhcnNlQWJpUGFyYW1ldGVyKHBhcmFtc1tpXSwge1xuICAgICAgICAgICAgbW9kaWZpZXJzOiBldmVudE1vZGlmaWVycyxcbiAgICAgICAgICAgIHN0cnVjdHMsXG4gICAgICAgICAgICB0eXBlOiAnZXZlbnQnLFxuICAgICAgICB9KSk7XG4gICAgcmV0dXJuIHsgbmFtZTogbWF0Y2gubmFtZSwgdHlwZTogJ2V2ZW50JywgaW5wdXRzOiBhYmlQYXJhbWV0ZXJzIH07XG59XG5leHBvcnQgZnVuY3Rpb24gcGFyc2VFcnJvclNpZ25hdHVyZShzaWduYXR1cmUsIHN0cnVjdHMgPSB7fSkge1xuICAgIGNvbnN0IG1hdGNoID0gZXhlY0Vycm9yU2lnbmF0dXJlKHNpZ25hdHVyZSk7XG4gICAgaWYgKCFtYXRjaClcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRTaWduYXR1cmVFcnJvcih7IHNpZ25hdHVyZSwgdHlwZTogJ2Vycm9yJyB9KTtcbiAgICBjb25zdCBwYXJhbXMgPSBzcGxpdFBhcmFtZXRlcnMobWF0Y2gucGFyYW1ldGVycyk7XG4gICAgY29uc3QgYWJpUGFyYW1ldGVycyA9IFtdO1xuICAgIGNvbnN0IGxlbmd0aCA9IHBhcmFtcy5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKylcbiAgICAgICAgYWJpUGFyYW1ldGVycy5wdXNoKHBhcnNlQWJpUGFyYW1ldGVyKHBhcmFtc1tpXSwgeyBzdHJ1Y3RzLCB0eXBlOiAnZXJyb3InIH0pKTtcbiAgICByZXR1cm4geyBuYW1lOiBtYXRjaC5uYW1lLCB0eXBlOiAnZXJyb3InLCBpbnB1dHM6IGFiaVBhcmFtZXRlcnMgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUNvbnN0cnVjdG9yU2lnbmF0dXJlKHNpZ25hdHVyZSwgc3RydWN0cyA9IHt9KSB7XG4gICAgY29uc3QgbWF0Y2ggPSBleGVjQ29uc3RydWN0b3JTaWduYXR1cmUoc2lnbmF0dXJlKTtcbiAgICBpZiAoIW1hdGNoKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFNpZ25hdHVyZUVycm9yKHsgc2lnbmF0dXJlLCB0eXBlOiAnY29uc3RydWN0b3InIH0pO1xuICAgIGNvbnN0IHBhcmFtcyA9IHNwbGl0UGFyYW1ldGVycyhtYXRjaC5wYXJhbWV0ZXJzKTtcbiAgICBjb25zdCBhYmlQYXJhbWV0ZXJzID0gW107XG4gICAgY29uc3QgbGVuZ3RoID0gcGFyYW1zLmxlbmd0aDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKVxuICAgICAgICBhYmlQYXJhbWV0ZXJzLnB1c2gocGFyc2VBYmlQYXJhbWV0ZXIocGFyYW1zW2ldLCB7IHN0cnVjdHMsIHR5cGU6ICdjb25zdHJ1Y3RvcicgfSkpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6ICdjb25zdHJ1Y3RvcicsXG4gICAgICAgIHN0YXRlTXV0YWJpbGl0eTogbWF0Y2guc3RhdGVNdXRhYmlsaXR5ID8/ICdub25wYXlhYmxlJyxcbiAgICAgICAgaW5wdXRzOiBhYmlQYXJhbWV0ZXJzLFxuICAgIH07XG59XG5leHBvcnQgZnVuY3Rpb24gcGFyc2VGYWxsYmFja1NpZ25hdHVyZShzaWduYXR1cmUpIHtcbiAgICBjb25zdCBtYXRjaCA9IGV4ZWNGYWxsYmFja1NpZ25hdHVyZShzaWduYXR1cmUpO1xuICAgIGlmICghbWF0Y2gpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2lnbmF0dXJlRXJyb3IoeyBzaWduYXR1cmUsIHR5cGU6ICdmYWxsYmFjaycgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogJ2ZhbGxiYWNrJyxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiBtYXRjaC5zdGF0ZU11dGFiaWxpdHkgPz8gJ25vbnBheWFibGUnLFxuICAgIH07XG59XG5jb25zdCBhYmlQYXJhbWV0ZXJXaXRob3V0VHVwbGVSZWdleCA9IC9eKD88dHlwZT5bYS16QS1aJF9dW2EtekEtWjAtOSRfXSooPzpcXHNwYXlhYmxlKT8pKD88YXJyYXk+KD86XFxbXFxkKj9cXF0pKz8pPyg/Olxccyg/PG1vZGlmaWVyPmNhbGxkYXRhfGluZGV4ZWR8bWVtb3J5fHN0b3JhZ2V7MX0pKT8oPzpcXHMoPzxuYW1lPlthLXpBLVokX11bYS16QS1aMC05JF9dKikpPyQvO1xuY29uc3QgYWJpUGFyYW1ldGVyV2l0aFR1cGxlUmVnZXggPSAvXlxcKCg/PHR5cGU+Lis/KVxcKSg/PGFycmF5Pig/OlxcW1xcZCo/XFxdKSs/KT8oPzpcXHMoPzxtb2RpZmllcj5jYWxsZGF0YXxpbmRleGVkfG1lbW9yeXxzdG9yYWdlezF9KSk/KD86XFxzKD88bmFtZT5bYS16QS1aJF9dW2EtekEtWjAtOSRfXSopKT8kLztcbmNvbnN0IGR5bmFtaWNJbnRlZ2VyUmVnZXggPSAvXnU/aW50JC87XG5leHBvcnQgZnVuY3Rpb24gcGFyc2VBYmlQYXJhbWV0ZXIocGFyYW0sIG9wdGlvbnMpIHtcbiAgICAvLyBvcHRpb25hbCBuYW1lc3BhY2UgY2FjaGUgYnkgYHR5cGVgXG4gICAgY29uc3QgcGFyYW1ldGVyQ2FjaGVLZXkgPSBnZXRQYXJhbWV0ZXJDYWNoZUtleShwYXJhbSwgb3B0aW9ucz8udHlwZSwgb3B0aW9ucz8uc3RydWN0cyk7XG4gICAgaWYgKHBhcmFtZXRlckNhY2hlLmhhcyhwYXJhbWV0ZXJDYWNoZUtleSkpXG4gICAgICAgIHJldHVybiBwYXJhbWV0ZXJDYWNoZS5nZXQocGFyYW1ldGVyQ2FjaGVLZXkpO1xuICAgIGNvbnN0IGlzVHVwbGUgPSBpc1R1cGxlUmVnZXgudGVzdChwYXJhbSk7XG4gICAgY29uc3QgbWF0Y2ggPSBleGVjVHlwZWQoaXNUdXBsZSA/IGFiaVBhcmFtZXRlcldpdGhUdXBsZVJlZ2V4IDogYWJpUGFyYW1ldGVyV2l0aG91dFR1cGxlUmVnZXgsIHBhcmFtKTtcbiAgICBpZiAoIW1hdGNoKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlckVycm9yKHsgcGFyYW0gfSk7XG4gICAgaWYgKG1hdGNoLm5hbWUgJiYgaXNTb2xpZGl0eUtleXdvcmQobWF0Y2gubmFtZSkpXG4gICAgICAgIHRocm93IG5ldyBTb2xpZGl0eVByb3RlY3RlZEtleXdvcmRFcnJvcih7IHBhcmFtLCBuYW1lOiBtYXRjaC5uYW1lIH0pO1xuICAgIGNvbnN0IG5hbWUgPSBtYXRjaC5uYW1lID8geyBuYW1lOiBtYXRjaC5uYW1lIH0gOiB7fTtcbiAgICBjb25zdCBpbmRleGVkID0gbWF0Y2gubW9kaWZpZXIgPT09ICdpbmRleGVkJyA/IHsgaW5kZXhlZDogdHJ1ZSB9IDoge307XG4gICAgY29uc3Qgc3RydWN0cyA9IG9wdGlvbnM/LnN0cnVjdHMgPz8ge307XG4gICAgbGV0IHR5cGU7XG4gICAgbGV0IGNvbXBvbmVudHMgPSB7fTtcbiAgICBpZiAoaXNUdXBsZSkge1xuICAgICAgICB0eXBlID0gJ3R1cGxlJztcbiAgICAgICAgY29uc3QgcGFyYW1zID0gc3BsaXRQYXJhbWV0ZXJzKG1hdGNoLnR5cGUpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRzXyA9IFtdO1xuICAgICAgICBjb25zdCBsZW5ndGggPSBwYXJhbXMubGVuZ3RoO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAvLyByZW1vdmUgYG1vZGlmaWVyc2AgZnJvbSBgb3B0aW9uc2AgdG8gcHJldmVudCBmcm9tIGJlaW5nIGFkZGVkIHRvIHR1cGxlIGNvbXBvbmVudHNcbiAgICAgICAgICAgIGNvbXBvbmVudHNfLnB1c2gocGFyc2VBYmlQYXJhbWV0ZXIocGFyYW1zW2ldLCB7IHN0cnVjdHMgfSkpO1xuICAgICAgICB9XG4gICAgICAgIGNvbXBvbmVudHMgPSB7IGNvbXBvbmVudHM6IGNvbXBvbmVudHNfIH07XG4gICAgfVxuICAgIGVsc2UgaWYgKG1hdGNoLnR5cGUgaW4gc3RydWN0cykge1xuICAgICAgICB0eXBlID0gJ3R1cGxlJztcbiAgICAgICAgY29tcG9uZW50cyA9IHsgY29tcG9uZW50czogc3RydWN0c1ttYXRjaC50eXBlXSB9O1xuICAgIH1cbiAgICBlbHNlIGlmIChkeW5hbWljSW50ZWdlclJlZ2V4LnRlc3QobWF0Y2gudHlwZSkpIHtcbiAgICAgICAgdHlwZSA9IGAke21hdGNoLnR5cGV9MjU2YDtcbiAgICB9XG4gICAgZWxzZSBpZiAobWF0Y2gudHlwZSA9PT0gJ2FkZHJlc3MgcGF5YWJsZScpIHtcbiAgICAgICAgdHlwZSA9ICdhZGRyZXNzJztcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHR5cGUgPSBtYXRjaC50eXBlO1xuICAgICAgICBpZiAoIShvcHRpb25zPy50eXBlID09PSAnc3RydWN0JykgJiYgIWlzU29saWRpdHlUeXBlKHR5cGUpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IFVua25vd25Tb2xpZGl0eVR5cGVFcnJvcih7IHR5cGUgfSk7XG4gICAgfVxuICAgIGlmIChtYXRjaC5tb2RpZmllcikge1xuICAgICAgICAvLyBDaGVjayBpZiBtb2RpZmllciBleGlzdHMsIGJ1dCBpcyBub3QgYWxsb3dlZCAoZS5nLiBgaW5kZXhlZGAgaW4gYGZ1bmN0aW9uTW9kaWZpZXJzYClcbiAgICAgICAgaWYgKCFvcHRpb25zPy5tb2RpZmllcnM/Lmhhcz8uKG1hdGNoLm1vZGlmaWVyKSlcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkTW9kaWZpZXJFcnJvcih7XG4gICAgICAgICAgICAgICAgcGFyYW0sXG4gICAgICAgICAgICAgICAgdHlwZTogb3B0aW9ucz8udHlwZSxcbiAgICAgICAgICAgICAgICBtb2RpZmllcjogbWF0Y2gubW9kaWZpZXIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgLy8gQ2hlY2sgaWYgcmVzb2x2ZWQgYHR5cGVgIGlzIHZhbGlkIGlmIHRoZXJlIGlzIGEgZnVuY3Rpb24gbW9kaWZpZXJcbiAgICAgICAgaWYgKGZ1bmN0aW9uTW9kaWZpZXJzLmhhcyhtYXRjaC5tb2RpZmllcikgJiZcbiAgICAgICAgICAgICFpc1ZhbGlkRGF0YUxvY2F0aW9uKHR5cGUsICEhbWF0Y2guYXJyYXkpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRGdW5jdGlvbk1vZGlmaWVyRXJyb3Ioe1xuICAgICAgICAgICAgICAgIHBhcmFtLFxuICAgICAgICAgICAgICAgIHR5cGU6IG9wdGlvbnM/LnR5cGUsXG4gICAgICAgICAgICAgICAgbW9kaWZpZXI6IG1hdGNoLm1vZGlmaWVyLFxuICAgICAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IGFiaVBhcmFtZXRlciA9IHtcbiAgICAgICAgdHlwZTogYCR7dHlwZX0ke21hdGNoLmFycmF5ID8/ICcnfWAsXG4gICAgICAgIC4uLm5hbWUsXG4gICAgICAgIC4uLmluZGV4ZWQsXG4gICAgICAgIC4uLmNvbXBvbmVudHMsXG4gICAgfTtcbiAgICBwYXJhbWV0ZXJDYWNoZS5zZXQocGFyYW1ldGVyQ2FjaGVLZXksIGFiaVBhcmFtZXRlcik7XG4gICAgcmV0dXJuIGFiaVBhcmFtZXRlcjtcbn1cbi8vIHMvbyBsYXRpa2EgZm9yIHRoaXNcbmV4cG9ydCBmdW5jdGlvbiBzcGxpdFBhcmFtZXRlcnMocGFyYW1zLCByZXN1bHQgPSBbXSwgY3VycmVudCA9ICcnLCBkZXB0aCA9IDApIHtcbiAgICBjb25zdCBsZW5ndGggPSBwYXJhbXMudHJpbSgpLmxlbmd0aDtcbiAgICAvLyBiaW9tZS1pZ25vcmUgbGludC9jb3JyZWN0bmVzcy9ub1VucmVhY2hhYmxlOiByZWN1cnNpdmVcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGNoYXIgPSBwYXJhbXNbaV07XG4gICAgICAgIGNvbnN0IHRhaWwgPSBwYXJhbXMuc2xpY2UoaSArIDEpO1xuICAgICAgICBzd2l0Y2ggKGNoYXIpIHtcbiAgICAgICAgICAgIGNhc2UgJywnOlxuICAgICAgICAgICAgICAgIHJldHVybiBkZXB0aCA9PT0gMFxuICAgICAgICAgICAgICAgICAgICA/IHNwbGl0UGFyYW1ldGVycyh0YWlsLCBbLi4ucmVzdWx0LCBjdXJyZW50LnRyaW0oKV0pXG4gICAgICAgICAgICAgICAgICAgIDogc3BsaXRQYXJhbWV0ZXJzKHRhaWwsIHJlc3VsdCwgYCR7Y3VycmVudH0ke2NoYXJ9YCwgZGVwdGgpO1xuICAgICAgICAgICAgY2FzZSAnKCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNwbGl0UGFyYW1ldGVycyh0YWlsLCByZXN1bHQsIGAke2N1cnJlbnR9JHtjaGFyfWAsIGRlcHRoICsgMSk7XG4gICAgICAgICAgICBjYXNlICcpJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3BsaXRQYXJhbWV0ZXJzKHRhaWwsIHJlc3VsdCwgYCR7Y3VycmVudH0ke2NoYXJ9YCwgZGVwdGggLSAxKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNwbGl0UGFyYW1ldGVycyh0YWlsLCByZXN1bHQsIGAke2N1cnJlbnR9JHtjaGFyfWAsIGRlcHRoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoY3VycmVudCA9PT0gJycpXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgaWYgKGRlcHRoICE9PSAwKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmVudGhlc2lzRXJyb3IoeyBjdXJyZW50LCBkZXB0aCB9KTtcbiAgICByZXN1bHQucHVzaChjdXJyZW50LnRyaW0oKSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc1NvbGlkaXR5VHlwZSh0eXBlKSB7XG4gICAgcmV0dXJuICh0eXBlID09PSAnYWRkcmVzcycgfHxcbiAgICAgICAgdHlwZSA9PT0gJ2Jvb2wnIHx8XG4gICAgICAgIHR5cGUgPT09ICdmdW5jdGlvbicgfHxcbiAgICAgICAgdHlwZSA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgYnl0ZXNSZWdleC50ZXN0KHR5cGUpIHx8XG4gICAgICAgIGludGVnZXJSZWdleC50ZXN0KHR5cGUpKTtcbn1cbmNvbnN0IHByb3RlY3RlZEtleXdvcmRzUmVnZXggPSAvXig/OmFmdGVyfGFsaWFzfGFub255bW91c3xhcHBseXxhdXRvfGJ5dGV8Y2FsbGRhdGF8Y2FzZXxjYXRjaHxjb25zdGFudHxjb3B5b2Z8ZGVmYXVsdHxkZWZpbmVkfGVycm9yfGV2ZW50fGV4dGVybmFsfGZhbHNlfGZpbmFsfGZ1bmN0aW9ufGltbXV0YWJsZXxpbXBsZW1lbnRzfGlufGluZGV4ZWR8aW5saW5lfGludGVybmFsfGxldHxtYXBwaW5nfG1hdGNofG1lbW9yeXxtdXRhYmxlfG51bGx8b2Z8b3ZlcnJpZGV8cGFydGlhbHxwcml2YXRlfHByb21pc2V8cHVibGljfHB1cmV8cmVmZXJlbmNlfHJlbG9jYXRhYmxlfHJldHVybnxyZXR1cm5zfHNpemVvZnxzdGF0aWN8c3RvcmFnZXxzdHJ1Y3R8c3VwZXJ8c3VwcG9ydHN8c3dpdGNofHRoaXN8dHJ1ZXx0cnl8dHlwZWRlZnx0eXBlb2Z8dmFyfHZpZXd8dmlydHVhbCkkLztcbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1NvbGlkaXR5S2V5d29yZChuYW1lKSB7XG4gICAgcmV0dXJuIChuYW1lID09PSAnYWRkcmVzcycgfHxcbiAgICAgICAgbmFtZSA9PT0gJ2Jvb2wnIHx8XG4gICAgICAgIG5hbWUgPT09ICdmdW5jdGlvbicgfHxcbiAgICAgICAgbmFtZSA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgbmFtZSA9PT0gJ3R1cGxlJyB8fFxuICAgICAgICBieXRlc1JlZ2V4LnRlc3QobmFtZSkgfHxcbiAgICAgICAgaW50ZWdlclJlZ2V4LnRlc3QobmFtZSkgfHxcbiAgICAgICAgcHJvdGVjdGVkS2V5d29yZHNSZWdleC50ZXN0KG5hbWUpKTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkRGF0YUxvY2F0aW9uKHR5cGUsIGlzQXJyYXkpIHtcbiAgICByZXR1cm4gaXNBcnJheSB8fCB0eXBlID09PSAnYnl0ZXMnIHx8IHR5cGUgPT09ICdzdHJpbmcnIHx8IHR5cGUgPT09ICd0dXBsZSc7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD11dGlscy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/runtime/utils.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/regex.js": /*!******************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/regex.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ bytesRegex: () => (/* binding */ bytesRegex),\n/* harmony export */ execTyped: () => (/* binding */ execTyped),\n/* harmony export */ integerRegex: () => (/* binding */ integerRegex),\n/* harmony export */ isTupleRegex: () => (/* binding */ isTupleRegex)\n/* harmony export */ });\n// TODO: This looks cool. Need to check the performance of `new RegExp` versus defined inline though.\n// https://twitter.com/GabrielVergnaud/status/1622906834343366657\nfunction execTyped(regex, string) {\n const match = regex.exec(string);\n return match?.groups;\n}\n// `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n// https://regexr.com/6va55\nconst bytesRegex = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/;\n// `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n// https://regexr.com/6v8hp\nconst integerRegex = /^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;\nconst isTupleRegex = /^\\(.+?\\).*?$/;\n//# sourceMappingURL=regex.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL3JlZ2V4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDQTtBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL2FiaXR5cGUvZGlzdC9lc20vcmVnZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogVGhpcyBsb29rcyBjb29sLiBOZWVkIHRvIGNoZWNrIHRoZSBwZXJmb3JtYW5jZSBvZiBgbmV3IFJlZ0V4cGAgdmVyc3VzIGRlZmluZWQgaW5saW5lIHRob3VnaC5cbi8vIGh0dHBzOi8vdHdpdHRlci5jb20vR2FicmllbFZlcmduYXVkL3N0YXR1cy8xNjIyOTA2ODM0MzQzMzY2NjU3XG5leHBvcnQgZnVuY3Rpb24gZXhlY1R5cGVkKHJlZ2V4LCBzdHJpbmcpIHtcbiAgICBjb25zdCBtYXRjaCA9IHJlZ2V4LmV4ZWMoc3RyaW5nKTtcbiAgICByZXR1cm4gbWF0Y2g/Lmdyb3Vwcztcbn1cbi8vIGBieXRlczxNPmA6IGJpbmFyeSB0eXBlIG9mIGBNYCBieXRlcywgYDAgPCBNIDw9IDMyYFxuLy8gaHR0cHM6Ly9yZWdleHIuY29tLzZ2YTU1XG5leHBvcnQgY29uc3QgYnl0ZXNSZWdleCA9IC9eYnl0ZXMoWzEtOV18MVswLTldfDJbMC05XXwzWzAtMl0pPyQvO1xuLy8gYCh1KWludDxNPmA6ICh1bilzaWduZWQgaW50ZWdlciB0eXBlIG9mIGBNYCBiaXRzLCBgMCA8IE0gPD0gMjU2YCwgYE0gJSA4ID09IDBgXG4vLyBodHRwczovL3JlZ2V4ci5jb20vNnY4aHBcbmV4cG9ydCBjb25zdCBpbnRlZ2VyUmVnZXggPSAvXnU/aW50KDh8MTZ8MjR8MzJ8NDB8NDh8NTZ8NjR8NzJ8ODB8ODh8OTZ8MTA0fDExMnwxMjB8MTI4fDEzNnwxNDR8MTUyfDE2MHwxNjh8MTc2fDE4NHwxOTJ8MjAwfDIwOHwyMTZ8MjI0fDIzMnwyNDB8MjQ4fDI1Nik/JC87XG5leHBvcnQgY29uc3QgaXNUdXBsZVJlZ2V4ID0gL15cXCguKz9cXCkuKj8kLztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXJlZ2V4LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/regex.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/version.js": /*!********************************************************************!*\ !*** ./node_modules/viem/node_modules/abitype/dist/esm/version.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ version: () => (/* binding */ version)\n/* harmony export */ });\nconst version = '1.1.0';\n//# sourceMappingURL=version.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9hYml0eXBlL2Rpc3QvZXNtL3ZlcnNpb24uanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFPO0FBQ1AiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvYWJpdHlwZS9kaXN0L2VzbS92ZXJzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCB2ZXJzaW9uID0gJzEuMS4wJztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXZlcnNpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/version.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiConstructor.js": /*!***********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/AbiConstructor.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decode: () => (/* binding */ decode),\n/* harmony export */ encode: () => (/* binding */ encode),\n/* harmony export */ format: () => (/* binding */ format),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromAbi: () => (/* binding */ fromAbi)\n/* harmony export */ });\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiItem.js\");\n/* harmony import */ var _AbiItem_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AbiItem.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiItem.js\");\n/* harmony import */ var _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n\n\n\n\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction decode(...parameters) {\n const [abiConstructor, options] = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, options] = parameters;\n return [fromAbi(abi), options];\n }\n return parameters;\n })();\n const { bytecode } = options;\n if (abiConstructor.inputs.length === 0)\n return undefined;\n const data = options.data.replace(bytecode, '0x');\n return _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.decode(abiConstructor.inputs, data);\n}\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction encode(...parameters) {\n const [abiConstructor, options] = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, options] = parameters;\n return [fromAbi(abi), options];\n }\n return parameters;\n })();\n const { bytecode, args } = options;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_1__.concat(bytecode, abiConstructor.inputs?.length && args?.length\n ? _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.encode(abiConstructor.inputs, args)\n : '0x');\n}\n/** @internal */\nfunction format(abiConstructor) {\n return abitype__WEBPACK_IMPORTED_MODULE_2__.formatAbiItem(abiConstructor);\n}\n/** @internal */\nfunction from(abiConstructor) {\n return _AbiItem_js__WEBPACK_IMPORTED_MODULE_3__.from(abiConstructor);\n}\n/** @internal */\nfunction fromAbi(abi) {\n const item = abi.find((item) => item.type === 'constructor');\n if (!item)\n throw new _AbiItem_js__WEBPACK_IMPORTED_MODULE_3__.NotFoundError({ name: 'constructor' });\n return item;\n}\n//# sourceMappingURL=AbiConstructor.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQWJpQ29uc3RydWN0b3IuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQW1DO0FBQ0s7QUFDWTtBQUNwQjtBQUNoQztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLFlBQVksV0FBVztBQUN2QjtBQUNBO0FBQ0E7QUFDQSxXQUFXLHFEQUFvQjtBQUMvQjtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsWUFBWSxpQkFBaUI7QUFDN0IsV0FBVywyQ0FBVTtBQUNyQixVQUFVLHFEQUFvQjtBQUM5QjtBQUNBO0FBQ0E7QUFDTztBQUNQLFdBQVcsa0RBQXFCO0FBQ2hDO0FBQ0E7QUFDTztBQUNQLFdBQVcsNkNBQVk7QUFDdkI7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLGtCQUFrQixzREFBcUIsR0FBRyxxQkFBcUI7QUFDL0Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9BYmlDb25zdHJ1Y3Rvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhYml0eXBlIGZyb20gJ2FiaXR5cGUnO1xuaW1wb3J0ICogYXMgQWJpSXRlbSBmcm9tICcuL0FiaUl0ZW0uanMnO1xuaW1wb3J0ICogYXMgQWJpUGFyYW1ldGVycyBmcm9tICcuL0FiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4vSGV4LmpzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlKC4uLnBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCBbYWJpQ29uc3RydWN0b3IsIG9wdGlvbnNdID0gKCgpID0+IHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVyc1swXSkpIHtcbiAgICAgICAgICAgIGNvbnN0IFthYmksIG9wdGlvbnNdID0gcGFyYW1ldGVycztcbiAgICAgICAgICAgIHJldHVybiBbZnJvbUFiaShhYmkpLCBvcHRpb25zXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcGFyYW1ldGVycztcbiAgICB9KSgpO1xuICAgIGNvbnN0IHsgYnl0ZWNvZGUgfSA9IG9wdGlvbnM7XG4gICAgaWYgKGFiaUNvbnN0cnVjdG9yLmlucHV0cy5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZGF0YSA9IG9wdGlvbnMuZGF0YS5yZXBsYWNlKGJ5dGVjb2RlLCAnMHgnKTtcbiAgICByZXR1cm4gQWJpUGFyYW1ldGVycy5kZWNvZGUoYWJpQ29uc3RydWN0b3IuaW5wdXRzLCBkYXRhKTtcbn1cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlKC4uLnBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCBbYWJpQ29uc3RydWN0b3IsIG9wdGlvbnNdID0gKCgpID0+IHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVyc1swXSkpIHtcbiAgICAgICAgICAgIGNvbnN0IFthYmksIG9wdGlvbnNdID0gcGFyYW1ldGVycztcbiAgICAgICAgICAgIHJldHVybiBbZnJvbUFiaShhYmkpLCBvcHRpb25zXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcGFyYW1ldGVycztcbiAgICB9KSgpO1xuICAgIGNvbnN0IHsgYnl0ZWNvZGUsIGFyZ3MgfSA9IG9wdGlvbnM7XG4gICAgcmV0dXJuIEhleC5jb25jYXQoYnl0ZWNvZGUsIGFiaUNvbnN0cnVjdG9yLmlucHV0cz8ubGVuZ3RoICYmIGFyZ3M/Lmxlbmd0aFxuICAgICAgICA/IEFiaVBhcmFtZXRlcnMuZW5jb2RlKGFiaUNvbnN0cnVjdG9yLmlucHV0cywgYXJncylcbiAgICAgICAgOiAnMHgnKTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXQoYWJpQ29uc3RydWN0b3IpIHtcbiAgICByZXR1cm4gYWJpdHlwZS5mb3JtYXRBYmlJdGVtKGFiaUNvbnN0cnVjdG9yKTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKGFiaUNvbnN0cnVjdG9yKSB7XG4gICAgcmV0dXJuIEFiaUl0ZW0uZnJvbShhYmlDb25zdHJ1Y3Rvcik7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUFiaShhYmkpIHtcbiAgICBjb25zdCBpdGVtID0gYWJpLmZpbmQoKGl0ZW0pID0+IGl0ZW0udHlwZSA9PT0gJ2NvbnN0cnVjdG9yJyk7XG4gICAgaWYgKCFpdGVtKVxuICAgICAgICB0aHJvdyBuZXcgQWJpSXRlbS5Ob3RGb3VuZEVycm9yKHsgbmFtZTogJ2NvbnN0cnVjdG9yJyB9KTtcbiAgICByZXR1cm4gaXRlbTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUFiaUNvbnN0cnVjdG9yLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiConstructor.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiFunction.js": /*!********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/AbiFunction.js ***! \********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeData: () => (/* binding */ decodeData),\n/* harmony export */ decodeResult: () => (/* binding */ decodeResult),\n/* harmony export */ encodeData: () => (/* binding */ encodeData),\n/* harmony export */ encodeResult: () => (/* binding */ encodeResult),\n/* harmony export */ format: () => (/* binding */ format),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromAbi: () => (/* binding */ fromAbi),\n/* harmony export */ getSelector: () => (/* binding */ getSelector)\n/* harmony export */ });\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiItem.js\");\n/* harmony import */ var _AbiItem_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AbiItem.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiItem.js\");\n/* harmony import */ var _AbiParameters_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n\n\n\n\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction decodeData(...parameters) {\n const [abiFunction, data] = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, name, data] = parameters;\n return [fromAbi(abi, name), data];\n }\n return parameters;\n })();\n const { overloads } = abiFunction;\n if (_Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(data) < 4)\n throw new _AbiItem_js__WEBPACK_IMPORTED_MODULE_1__.InvalidSelectorSizeError({ data });\n if (abiFunction.inputs.length === 0)\n return undefined;\n const item = overloads\n ? fromAbi([abiFunction, ...overloads], data)\n : abiFunction;\n if (_Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(data) <= 4)\n return undefined;\n return _AbiParameters_js__WEBPACK_IMPORTED_MODULE_2__.decode(item.inputs, _Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(data, 4));\n}\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction decodeResult(...parameters) {\n const [abiFunction, data, options = {}] = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, name, data, options] = parameters;\n return [fromAbi(abi, name), data, options];\n }\n return parameters;\n })();\n const values = _AbiParameters_js__WEBPACK_IMPORTED_MODULE_2__.decode(abiFunction.outputs, data, options);\n if (values && Object.keys(values).length === 0)\n return undefined;\n if (values && Object.keys(values).length === 1) {\n if (Array.isArray(values))\n return values[0];\n return Object.values(values)[0];\n }\n return values;\n}\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction encodeData(...parameters) {\n const [abiFunction, args = []] = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, name, args] = parameters;\n return [fromAbi(abi, name, { args }), args];\n }\n const [abiFunction, args] = parameters;\n return [abiFunction, args];\n })();\n const { overloads } = abiFunction;\n const item = overloads\n ? fromAbi([abiFunction, ...overloads], abiFunction.name, {\n args,\n })\n : abiFunction;\n const selector = getSelector(item);\n const data = args.length > 0 ? _AbiParameters_js__WEBPACK_IMPORTED_MODULE_2__.encode(item.inputs, args) : undefined;\n return data ? _Hex_js__WEBPACK_IMPORTED_MODULE_0__.concat(selector, data) : selector;\n}\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction encodeResult(...parameters) {\n const [abiFunction, output, options = {}] = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, name, output, options] = parameters;\n return [fromAbi(abi, name), output, options];\n }\n return parameters;\n })();\n const { as = 'Array' } = options;\n const values = (() => {\n if (abiFunction.outputs.length === 1)\n return [output];\n if (Array.isArray(output))\n return output;\n if (as === 'Object')\n return Object.values(output);\n return [output];\n })();\n return _AbiParameters_js__WEBPACK_IMPORTED_MODULE_2__.encode(abiFunction.outputs, values);\n}\n/**\n * Formats an {@link ox#AbiFunction.AbiFunction} into a **Human Readable ABI Function**.\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const formatted = AbiFunction.format({\n * type: 'function',\n * name: 'approve',\n * stateMutability: 'nonpayable',\n * inputs: [\n * {\n * name: 'spender',\n * type: 'address',\n * },\n * {\n * name: 'amount',\n * type: 'uint256',\n * },\n * ],\n * outputs: [{ type: 'bool' }],\n * })\n *\n * formatted\n * // ^?\n *\n *\n * ```\n *\n * @param abiFunction - The ABI Function to format.\n * @returns The formatted ABI Function.\n */\nfunction format(abiFunction) {\n return abitype__WEBPACK_IMPORTED_MODULE_3__.formatAbiItem(abiFunction);\n}\n/**\n * Parses an arbitrary **JSON ABI Function** or **Human Readable ABI Function** into a typed {@link ox#AbiFunction.AbiFunction}.\n *\n * @example\n * ### JSON ABIs\n *\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from({\n * type: 'function',\n * name: 'approve',\n * stateMutability: 'nonpayable',\n * inputs: [\n * {\n * name: 'spender',\n * type: 'address',\n * },\n * {\n * name: 'amount',\n * type: 'uint256',\n * },\n * ],\n * outputs: [{ type: 'bool' }],\n * })\n *\n * approve\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Human Readable ABIs\n *\n * A Human Readable ABI can be parsed into a typed ABI object:\n *\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from(\n * 'function approve(address spender, uint256 amount) returns (bool)' // [!code hl]\n * )\n *\n * approve\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * It is possible to specify `struct`s along with your definitions:\n *\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const approve = AbiFunction.from([\n * 'struct Foo { address spender; uint256 amount; }', // [!code hl]\n * 'function approve(Foo foo) returns (bool)',\n * ])\n *\n * approve\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n *\n *\n * @param abiFunction - The ABI Function to parse.\n * @returns Typed ABI Function.\n */\nfunction from(abiFunction, options = {}) {\n return _AbiItem_js__WEBPACK_IMPORTED_MODULE_1__.from(abiFunction, options);\n}\n/**\n * Extracts an {@link ox#AbiFunction.AbiFunction} from an {@link ox#Abi.Abi} given a name and optional arguments.\n *\n * @example\n * ### Extracting by Name\n *\n * ABI Functions can be extracted by their name using the `name` option:\n *\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const abi = Abi.from([\n * 'function foo()',\n * 'event Transfer(address owner, address to, uint256 tokenId)',\n * 'function bar(string a) returns (uint256 x)',\n * ])\n *\n * const item = AbiFunction.fromAbi(abi, 'foo') // [!code focus]\n * // ^?\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Extracting by Selector\n *\n * ABI Functions can be extract by their selector when {@link ox#Hex.Hex} is provided to `name`.\n *\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const abi = Abi.from([\n * 'function foo()',\n * 'event Transfer(address owner, address to, uint256 tokenId)',\n * 'function bar(string a) returns (uint256 x)',\n * ])\n * const item = AbiFunction.fromAbi(abi, '0x095ea7b3') // [!code focus]\n * // ^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * :::note\n *\n * Extracting via a hex selector is useful when extracting an ABI Function from an `eth_call` RPC response or\n * from a Transaction `input`.\n *\n * :::\n *\n * @param abi - The ABI to extract from.\n * @param name - The name (or selector) of the ABI item to extract.\n * @param options - Extraction options.\n * @returns The ABI item.\n */\nfunction fromAbi(abi, name, options) {\n const item = _AbiItem_js__WEBPACK_IMPORTED_MODULE_1__.fromAbi(abi, name, options);\n if (item.type !== 'function')\n throw new _AbiItem_js__WEBPACK_IMPORTED_MODULE_1__.NotFoundError({ name, type: 'function' });\n return item;\n}\n/**\n * Computes the [4-byte selector](https://solidity-by-example.org/function-selector/) for an {@link ox#AbiFunction.AbiFunction}.\n *\n * Useful for computing function selectors for calldata.\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const selector = AbiFunction.getSelector('function ownerOf(uint256 tokenId)')\n * // @log: '0x6352211e'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { AbiFunction } from 'ox'\n *\n * const selector = AbiFunction.getSelector({\n * inputs: [{ type: 'uint256' }],\n * name: 'ownerOf',\n * outputs: [],\n * stateMutability: 'view',\n * type: 'function'\n * })\n * // @log: '0x6352211e'\n * ```\n *\n * @param abiItem - The ABI item to compute the selector for.\n * @returns The first 4 bytes of the {@link ox#Hash.(keccak256:function)} hash of the function signature.\n */\nfunction getSelector(abiItem) {\n return _AbiItem_js__WEBPACK_IMPORTED_MODULE_1__.getSelector(abiItem);\n}\n//# sourceMappingURL=AbiFunction.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQWJpRnVuY3Rpb24uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQW1DO0FBQ0s7QUFDWTtBQUNwQjtBQUNoQztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLFlBQVksWUFBWTtBQUN4QixRQUFRLHlDQUFRO0FBQ2hCLGtCQUFrQixpRUFBZ0MsR0FBRyxNQUFNO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLHlDQUFRO0FBQ2hCO0FBQ0EsV0FBVyxxREFBb0IsY0FBYywwQ0FBUztBQUN0RDtBQUNBO0FBQ087QUFDUCwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxtQkFBbUIscURBQW9CO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsTUFBTTtBQUMvQztBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsbUNBQW1DLHFEQUFvQjtBQUN2RCxrQkFBa0IsMkNBQVU7QUFDNUI7QUFDQTtBQUNPO0FBQ1AsNENBQTRDO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsV0FBVyxxREFBb0I7QUFDL0I7QUFDQTtBQUNBLGVBQWUsa0NBQWtDO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLFlBQVksY0FBYztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsaUJBQWlCLGNBQWM7QUFDL0IsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxXQUFXLGtEQUFxQjtBQUNoQztBQUNBO0FBQ0EsOEZBQThGLGlDQUFpQztBQUMvSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxjQUFjO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxpQkFBaUIsY0FBYztBQUMvQixJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksY0FBYztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxjQUFjO0FBQzFCO0FBQ0E7QUFDQSxtQkFBbUIsaUJBQWlCLGlCQUFpQjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyx1Q0FBdUM7QUFDOUMsV0FBVyw2Q0FBWTtBQUN2QjtBQUNBO0FBQ0EsZ0JBQWdCLGtDQUFrQyxTQUFTLGtCQUFrQjtBQUM3RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksbUJBQW1CO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3REFBd0Qsa0JBQWtCO0FBQzFFO0FBQ0E7QUFDQSxZQUFZLG1CQUFtQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsaUJBQWlCLGdEQUFlO0FBQ2hDO0FBQ0Esa0JBQWtCLHNEQUFxQixHQUFHLHdCQUF3QjtBQUNsRTtBQUNBO0FBQ0E7QUFDQSw4RkFBOEYsaUNBQWlDO0FBQy9IO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGNBQWM7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGNBQWM7QUFDMUI7QUFDQTtBQUNBLGdCQUFnQixpQkFBaUI7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0Msb0NBQW9DO0FBQzFFO0FBQ087QUFDUCxXQUFXLG9EQUFtQjtBQUM5QjtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9BYmlGdW5jdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhYml0eXBlIGZyb20gJ2FiaXR5cGUnO1xuaW1wb3J0ICogYXMgQWJpSXRlbSBmcm9tICcuL0FiaUl0ZW0uanMnO1xuaW1wb3J0ICogYXMgQWJpUGFyYW1ldGVycyBmcm9tICcuL0FiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4vSGV4LmpzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlRGF0YSguLi5wYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgW2FiaUZ1bmN0aW9uLCBkYXRhXSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnNbMF0pKSB7XG4gICAgICAgICAgICBjb25zdCBbYWJpLCBuYW1lLCBkYXRhXSA9IHBhcmFtZXRlcnM7XG4gICAgICAgICAgICByZXR1cm4gW2Zyb21BYmkoYWJpLCBuYW1lKSwgZGF0YV07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gICAgfSkoKTtcbiAgICBjb25zdCB7IG92ZXJsb2FkcyB9ID0gYWJpRnVuY3Rpb247XG4gICAgaWYgKEhleC5zaXplKGRhdGEpIDwgNClcbiAgICAgICAgdGhyb3cgbmV3IEFiaUl0ZW0uSW52YWxpZFNlbGVjdG9yU2l6ZUVycm9yKHsgZGF0YSB9KTtcbiAgICBpZiAoYWJpRnVuY3Rpb24uaW5wdXRzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBjb25zdCBpdGVtID0gb3ZlcmxvYWRzXG4gICAgICAgID8gZnJvbUFiaShbYWJpRnVuY3Rpb24sIC4uLm92ZXJsb2Fkc10sIGRhdGEpXG4gICAgICAgIDogYWJpRnVuY3Rpb247XG4gICAgaWYgKEhleC5zaXplKGRhdGEpIDw9IDQpXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIEFiaVBhcmFtZXRlcnMuZGVjb2RlKGl0ZW0uaW5wdXRzLCBIZXguc2xpY2UoZGF0YSwgNCkpO1xufVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVSZXN1bHQoLi4ucGFyYW1ldGVycykge1xuICAgIGNvbnN0IFthYmlGdW5jdGlvbiwgZGF0YSwgb3B0aW9ucyA9IHt9XSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnNbMF0pKSB7XG4gICAgICAgICAgICBjb25zdCBbYWJpLCBuYW1lLCBkYXRhLCBvcHRpb25zXSA9IHBhcmFtZXRlcnM7XG4gICAgICAgICAgICByZXR1cm4gW2Zyb21BYmkoYWJpLCBuYW1lKSwgZGF0YSwgb3B0aW9uc107XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gICAgfSkoKTtcbiAgICBjb25zdCB2YWx1ZXMgPSBBYmlQYXJhbWV0ZXJzLmRlY29kZShhYmlGdW5jdGlvbi5vdXRwdXRzLCBkYXRhLCBvcHRpb25zKTtcbiAgICBpZiAodmFsdWVzICYmIE9iamVjdC5rZXlzKHZhbHVlcykubGVuZ3RoID09PSAwKVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGlmICh2YWx1ZXMgJiYgT2JqZWN0LmtleXModmFsdWVzKS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWVzKSlcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZXNbMF07XG4gICAgICAgIHJldHVybiBPYmplY3QudmFsdWVzKHZhbHVlcylbMF07XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZXM7XG59XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZURhdGEoLi4ucGFyYW1ldGVycykge1xuICAgIGNvbnN0IFthYmlGdW5jdGlvbiwgYXJncyA9IFtdXSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnNbMF0pKSB7XG4gICAgICAgICAgICBjb25zdCBbYWJpLCBuYW1lLCBhcmdzXSA9IHBhcmFtZXRlcnM7XG4gICAgICAgICAgICByZXR1cm4gW2Zyb21BYmkoYWJpLCBuYW1lLCB7IGFyZ3MgfSksIGFyZ3NdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IFthYmlGdW5jdGlvbiwgYXJnc10gPSBwYXJhbWV0ZXJzO1xuICAgICAgICByZXR1cm4gW2FiaUZ1bmN0aW9uLCBhcmdzXTtcbiAgICB9KSgpO1xuICAgIGNvbnN0IHsgb3ZlcmxvYWRzIH0gPSBhYmlGdW5jdGlvbjtcbiAgICBjb25zdCBpdGVtID0gb3ZlcmxvYWRzXG4gICAgICAgID8gZnJvbUFiaShbYWJpRnVuY3Rpb24sIC4uLm92ZXJsb2Fkc10sIGFiaUZ1bmN0aW9uLm5hbWUsIHtcbiAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgIH0pXG4gICAgICAgIDogYWJpRnVuY3Rpb247XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBnZXRTZWxlY3RvcihpdGVtKTtcbiAgICBjb25zdCBkYXRhID0gYXJncy5sZW5ndGggPiAwID8gQWJpUGFyYW1ldGVycy5lbmNvZGUoaXRlbS5pbnB1dHMsIGFyZ3MpIDogdW5kZWZpbmVkO1xuICAgIHJldHVybiBkYXRhID8gSGV4LmNvbmNhdChzZWxlY3RvciwgZGF0YSkgOiBzZWxlY3Rvcjtcbn1cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlUmVzdWx0KC4uLnBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCBbYWJpRnVuY3Rpb24sIG91dHB1dCwgb3B0aW9ucyA9IHt9XSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnNbMF0pKSB7XG4gICAgICAgICAgICBjb25zdCBbYWJpLCBuYW1lLCBvdXRwdXQsIG9wdGlvbnNdID0gcGFyYW1ldGVycztcbiAgICAgICAgICAgIHJldHVybiBbZnJvbUFiaShhYmksIG5hbWUpLCBvdXRwdXQsIG9wdGlvbnNdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICAgIH0pKCk7XG4gICAgY29uc3QgeyBhcyA9ICdBcnJheScgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgdmFsdWVzID0gKCgpID0+IHtcbiAgICAgICAgaWYgKGFiaUZ1bmN0aW9uLm91dHB1dHMubGVuZ3RoID09PSAxKVxuICAgICAgICAgICAgcmV0dXJuIFtvdXRwdXRdO1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvdXRwdXQpKVxuICAgICAgICAgICAgcmV0dXJuIG91dHB1dDtcbiAgICAgICAgaWYgKGFzID09PSAnT2JqZWN0JylcbiAgICAgICAgICAgIHJldHVybiBPYmplY3QudmFsdWVzKG91dHB1dCk7XG4gICAgICAgIHJldHVybiBbb3V0cHV0XTtcbiAgICB9KSgpO1xuICAgIHJldHVybiBBYmlQYXJhbWV0ZXJzLmVuY29kZShhYmlGdW5jdGlvbi5vdXRwdXRzLCB2YWx1ZXMpO1xufVxuLyoqXG4gKiBGb3JtYXRzIGFuIHtAbGluayBveCNBYmlGdW5jdGlvbi5BYmlGdW5jdGlvbn0gaW50byBhICoqSHVtYW4gUmVhZGFibGUgQUJJIEZ1bmN0aW9uKiouXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBYmlGdW5jdGlvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGZvcm1hdHRlZCA9IEFiaUZ1bmN0aW9uLmZvcm1hdCh7XG4gKiAgIHR5cGU6ICdmdW5jdGlvbicsXG4gKiAgIG5hbWU6ICdhcHByb3ZlJyxcbiAqICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gKiAgIGlucHV0czogW1xuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAqICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICogICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICogICAgIH0sXG4gKiAgIF0sXG4gKiAgIG91dHB1dHM6IFt7IHR5cGU6ICdib29sJyB9XSxcbiAqIH0pXG4gKlxuICogZm9ybWF0dGVkXG4gKiAvLyAgICBeP1xuICpcbiAqXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYWJpRnVuY3Rpb24gLSBUaGUgQUJJIEZ1bmN0aW9uIHRvIGZvcm1hdC5cbiAqIEByZXR1cm5zIFRoZSBmb3JtYXR0ZWQgQUJJIEZ1bmN0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0KGFiaUZ1bmN0aW9uKSB7XG4gICAgcmV0dXJuIGFiaXR5cGUuZm9ybWF0QWJpSXRlbShhYmlGdW5jdGlvbik7XG59XG4vKipcbiAqIFBhcnNlcyBhbiBhcmJpdHJhcnkgKipKU09OIEFCSSBGdW5jdGlvbioqIG9yICoqSHVtYW4gUmVhZGFibGUgQUJJIEZ1bmN0aW9uKiogaW50byBhIHR5cGVkIHtAbGluayBveCNBYmlGdW5jdGlvbi5BYmlGdW5jdGlvbn0uXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBKU09OIEFCSXNcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhcHByb3ZlID0gQWJpRnVuY3Rpb24uZnJvbSh7XG4gKiAgIHR5cGU6ICdmdW5jdGlvbicsXG4gKiAgIG5hbWU6ICdhcHByb3ZlJyxcbiAqICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gKiAgIGlucHV0czogW1xuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAqICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICogICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICogICAgIH0sXG4gKiAgIF0sXG4gKiAgIG91dHB1dHM6IFt7IHR5cGU6ICdib29sJyB9XSxcbiAqIH0pXG4gKlxuICogYXBwcm92ZVxuICogLy9eP1xuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBIdW1hbiBSZWFkYWJsZSBBQklzXG4gKlxuICogQSBIdW1hbiBSZWFkYWJsZSBBQkkgY2FuIGJlIHBhcnNlZCBpbnRvIGEgdHlwZWQgQUJJIG9iamVjdDpcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhcHByb3ZlID0gQWJpRnVuY3Rpb24uZnJvbShcbiAqICAgJ2Z1bmN0aW9uIGFwcHJvdmUoYWRkcmVzcyBzcGVuZGVyLCB1aW50MjU2IGFtb3VudCkgcmV0dXJucyAoYm9vbCknIC8vIFshY29kZSBobF1cbiAqIClcbiAqXG4gKiBhcHByb3ZlXG4gKiAvL14/XG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIEl0IGlzIHBvc3NpYmxlIHRvIHNwZWNpZnkgYHN0cnVjdGBzIGFsb25nIHdpdGggeW91ciBkZWZpbml0aW9uczpcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhcHByb3ZlID0gQWJpRnVuY3Rpb24uZnJvbShbXG4gKiAgICdzdHJ1Y3QgRm9vIHsgYWRkcmVzcyBzcGVuZGVyOyB1aW50MjU2IGFtb3VudDsgfScsIC8vIFshY29kZSBobF1cbiAqICAgJ2Z1bmN0aW9uIGFwcHJvdmUoRm9vIGZvbykgcmV0dXJucyAoYm9vbCknLFxuICogXSlcbiAqXG4gKiBhcHByb3ZlXG4gKiAvL14/XG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKiBgYGBcbiAqXG4gKlxuICpcbiAqIEBwYXJhbSBhYmlGdW5jdGlvbiAtIFRoZSBBQkkgRnVuY3Rpb24gdG8gcGFyc2UuXG4gKiBAcmV0dXJucyBUeXBlZCBBQkkgRnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKGFiaUZ1bmN0aW9uLCBvcHRpb25zID0ge30pIHtcbiAgICByZXR1cm4gQWJpSXRlbS5mcm9tKGFiaUZ1bmN0aW9uLCBvcHRpb25zKTtcbn1cbi8qKlxuICogRXh0cmFjdHMgYW4ge0BsaW5rIG94I0FiaUZ1bmN0aW9uLkFiaUZ1bmN0aW9ufSBmcm9tIGFuIHtAbGluayBveCNBYmkuQWJpfSBnaXZlbiBhIG5hbWUgYW5kIG9wdGlvbmFsIGFyZ3VtZW50cy5cbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIEV4dHJhY3RpbmcgYnkgTmFtZVxuICpcbiAqIEFCSSBGdW5jdGlvbnMgY2FuIGJlIGV4dHJhY3RlZCBieSB0aGVpciBuYW1lIHVzaW5nIHRoZSBgbmFtZWAgb3B0aW9uOlxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBYmksIEFiaUZ1bmN0aW9uIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgYWJpID0gQWJpLmZyb20oW1xuICogICAnZnVuY3Rpb24gZm9vKCknLFxuICogICAnZXZlbnQgVHJhbnNmZXIoYWRkcmVzcyBvd25lciwgYWRkcmVzcyB0bywgdWludDI1NiB0b2tlbklkKScsXG4gKiAgICdmdW5jdGlvbiBiYXIoc3RyaW5nIGEpIHJldHVybnMgKHVpbnQyNTYgeCknLFxuICogXSlcbiAqXG4gKiBjb25zdCBpdGVtID0gQWJpRnVuY3Rpb24uZnJvbUFiaShhYmksICdmb28nKSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyAgICBeP1xuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBFeHRyYWN0aW5nIGJ5IFNlbGVjdG9yXG4gKlxuICogQUJJIEZ1bmN0aW9ucyBjYW4gYmUgZXh0cmFjdCBieSB0aGVpciBzZWxlY3RvciB3aGVuIHtAbGluayBveCNIZXguSGV4fSBpcyBwcm92aWRlZCB0byBgbmFtZWAuXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaSwgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhYmkgPSBBYmkuZnJvbShbXG4gKiAgICdmdW5jdGlvbiBmb28oKScsXG4gKiAgICdldmVudCBUcmFuc2ZlcihhZGRyZXNzIG93bmVyLCBhZGRyZXNzIHRvLCB1aW50MjU2IHRva2VuSWQpJyxcbiAqICAgJ2Z1bmN0aW9uIGJhcihzdHJpbmcgYSkgcmV0dXJucyAodWludDI1NiB4KScsXG4gKiBdKVxuICogY29uc3QgaXRlbSA9IEFiaUZ1bmN0aW9uLmZyb21BYmkoYWJpLCAnMHgwOTVlYTdiMycpIC8vIFshY29kZSBmb2N1c11cbiAqIC8vICAgIF4/XG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKiBgYGBcbiAqXG4gKiA6Ojpub3RlXG4gKlxuICogRXh0cmFjdGluZyB2aWEgYSBoZXggc2VsZWN0b3IgaXMgdXNlZnVsIHdoZW4gZXh0cmFjdGluZyBhbiBBQkkgRnVuY3Rpb24gZnJvbSBhbiBgZXRoX2NhbGxgIFJQQyByZXNwb25zZSBvclxuICogZnJvbSBhIFRyYW5zYWN0aW9uIGBpbnB1dGAuXG4gKlxuICogOjo6XG4gKlxuICogQHBhcmFtIGFiaSAtIFRoZSBBQkkgdG8gZXh0cmFjdCBmcm9tLlxuICogQHBhcmFtIG5hbWUgLSBUaGUgbmFtZSAob3Igc2VsZWN0b3IpIG9mIHRoZSBBQkkgaXRlbSB0byBleHRyYWN0LlxuICogQHBhcmFtIG9wdGlvbnMgLSBFeHRyYWN0aW9uIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgQUJJIGl0ZW0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tQWJpKGFiaSwgbmFtZSwgb3B0aW9ucykge1xuICAgIGNvbnN0IGl0ZW0gPSBBYmlJdGVtLmZyb21BYmkoYWJpLCBuYW1lLCBvcHRpb25zKTtcbiAgICBpZiAoaXRlbS50eXBlICE9PSAnZnVuY3Rpb24nKVxuICAgICAgICB0aHJvdyBuZXcgQWJpSXRlbS5Ob3RGb3VuZEVycm9yKHsgbmFtZSwgdHlwZTogJ2Z1bmN0aW9uJyB9KTtcbiAgICByZXR1cm4gaXRlbTtcbn1cbi8qKlxuICogQ29tcHV0ZXMgdGhlIFs0LWJ5dGUgc2VsZWN0b3JdKGh0dHBzOi8vc29saWRpdHktYnktZXhhbXBsZS5vcmcvZnVuY3Rpb24tc2VsZWN0b3IvKSBmb3IgYW4ge0BsaW5rIG94I0FiaUZ1bmN0aW9uLkFiaUZ1bmN0aW9ufS5cbiAqXG4gKiBVc2VmdWwgZm9yIGNvbXB1dGluZyBmdW5jdGlvbiBzZWxlY3RvcnMgZm9yIGNhbGxkYXRhLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzZWxlY3RvciA9IEFiaUZ1bmN0aW9uLmdldFNlbGVjdG9yKCdmdW5jdGlvbiBvd25lck9mKHVpbnQyNTYgdG9rZW5JZCknKVxuICogLy8gQGxvZzogJzB4NjM1MjIxMWUnXG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaUZ1bmN0aW9uIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2VsZWN0b3IgPSBBYmlGdW5jdGlvbi5nZXRTZWxlY3Rvcih7XG4gKiAgIGlucHV0czogW3sgdHlwZTogJ3VpbnQyNTYnIH1dLFxuICogICBuYW1lOiAnb3duZXJPZicsXG4gKiAgIG91dHB1dHM6IFtdLFxuICogICBzdGF0ZU11dGFiaWxpdHk6ICd2aWV3JyxcbiAqICAgdHlwZTogJ2Z1bmN0aW9uJ1xuICogfSlcbiAqIC8vIEBsb2c6ICcweDYzNTIyMTFlJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIGFiaUl0ZW0gLSBUaGUgQUJJIGl0ZW0gdG8gY29tcHV0ZSB0aGUgc2VsZWN0b3IgZm9yLlxuICogQHJldHVybnMgVGhlIGZpcnN0IDQgYnl0ZXMgb2YgdGhlIHtAbGluayBveCNIYXNoLihrZWNjYWsyNTY6ZnVuY3Rpb24pfSBoYXNoIG9mIHRoZSBmdW5jdGlvbiBzaWduYXR1cmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWxlY3RvcihhYmlJdGVtKSB7XG4gICAgcmV0dXJuIEFiaUl0ZW0uZ2V0U2VsZWN0b3IoYWJpSXRlbSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1BYmlGdW5jdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiFunction.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiItem.js": /*!****************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/AbiItem.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AmbiguityError: () => (/* binding */ AmbiguityError),\n/* harmony export */ InvalidSelectorSizeError: () => (/* binding */ InvalidSelectorSizeError),\n/* harmony export */ NotFoundError: () => (/* binding */ NotFoundError),\n/* harmony export */ format: () => (/* binding */ format),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromAbi: () => (/* binding */ fromAbi),\n/* harmony export */ getSelector: () => (/* binding */ getSelector),\n/* harmony export */ getSignature: () => (/* binding */ getSignature),\n/* harmony export */ getSignatureHash: () => (/* binding */ getSignatureHash)\n/* harmony export */ });\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiItem.js\");\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiItem.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hash_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Hash.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hash.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _internal_abiItem_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internal/abiItem.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/abiItem.js\");\n\n\n\n\n\n/**\n * Formats an {@link ox#AbiItem.AbiItem} into a **Human Readable ABI Item**.\n *\n * @example\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const formatted = AbiItem.format({\n * type: 'function',\n * name: 'approve',\n * stateMutability: 'nonpayable',\n * inputs: [\n * {\n * name: 'spender',\n * type: 'address',\n * },\n * {\n * name: 'amount',\n * type: 'uint256',\n * },\n * ],\n * outputs: [{ type: 'bool' }],\n * })\n *\n * formatted\n * // ^?\n *\n *\n * ```\n *\n * @param abiItem - The ABI Item to format.\n * @returns The formatted ABI Item .\n */\nfunction format(abiItem) {\n return abitype__WEBPACK_IMPORTED_MODULE_0__.formatAbiItem(abiItem);\n}\n/**\n * Parses an arbitrary **JSON ABI Item** or **Human Readable ABI Item** into a typed {@link ox#AbiItem.AbiItem}.\n *\n * @example\n * ### JSON ABIs\n *\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const abiItem = AbiItem.from({\n * type: 'function',\n * name: 'approve',\n * stateMutability: 'nonpayable',\n * inputs: [\n * {\n * name: 'spender',\n * type: 'address',\n * },\n * {\n * name: 'amount',\n * type: 'uint256',\n * },\n * ],\n * outputs: [{ type: 'bool' }],\n * })\n *\n * abiItem\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Human Readable ABIs\n *\n * A Human Readable ABI can be parsed into a typed ABI object:\n *\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const abiItem = AbiItem.from(\n * 'function approve(address spender, uint256 amount) returns (bool)' // [!code hl]\n * )\n *\n * abiItem\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * It is possible to specify `struct`s along with your definitions:\n *\n * ```ts twoslash\n * import { AbiItem } from 'ox'\n *\n * const abiItem = AbiItem.from([\n * 'struct Foo { address spender; uint256 amount; }', // [!code hl]\n * 'function approve(Foo foo) returns (bool)',\n * ])\n *\n * abiItem\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n *\n *\n * @param abiItem - The ABI Item to parse.\n * @returns The typed ABI Item.\n */\nfunction from(abiItem, options = {}) {\n const { prepare = true } = options;\n const item = (() => {\n if (Array.isArray(abiItem))\n return abitype__WEBPACK_IMPORTED_MODULE_1__.parseAbiItem(abiItem);\n if (typeof abiItem === 'string')\n return abitype__WEBPACK_IMPORTED_MODULE_1__.parseAbiItem(abiItem);\n return abiItem;\n })();\n return {\n ...item,\n ...(prepare ? { hash: getSignatureHash(item) } : {}),\n };\n}\n/**\n * Extracts an {@link ox#AbiItem.AbiItem} from an {@link ox#Abi.Abi} given a name and optional arguments.\n *\n * @example\n * ABI Items can be extracted by their name using the `name` option:\n *\n * ```ts twoslash\n * import { Abi, AbiItem } from 'ox'\n *\n * const abi = Abi.from([\n * 'function foo()',\n * 'event Transfer(address owner, address to, uint256 tokenId)',\n * 'function bar(string a) returns (uint256 x)',\n * ])\n *\n * const item = AbiItem.fromAbi(abi, 'Transfer') // [!code focus]\n * // ^?\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Extracting by Selector\n *\n * ABI Items can be extract by their selector when {@link ox#Hex.Hex} is provided to `name`.\n *\n * ```ts twoslash\n * import { Abi, AbiItem } from 'ox'\n *\n * const abi = Abi.from([\n * 'function foo()',\n * 'event Transfer(address owner, address to, uint256 tokenId)',\n * 'function bar(string a) returns (uint256 x)',\n * ])\n * const item = AbiItem.fromAbi(abi, '0x095ea7b3') // [!code focus]\n * // ^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * :::note\n *\n * Extracting via a hex selector is useful when extracting an ABI Item from an `eth_call` RPC response,\n * a Transaction `input`, or from Event Log `topics`.\n *\n * :::\n *\n * @param abi - The ABI to extract from.\n * @param name - The name (or selector) of the ABI item to extract.\n * @param options - Extraction options.\n * @returns The ABI item.\n */\nfunction fromAbi(abi, name, options) {\n const { args = [], prepare = true } = (options ??\n {});\n const isSelector = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.validate(name, { strict: false });\n const abiItems = abi.filter((abiItem) => {\n if (isSelector) {\n if (abiItem.type === 'function' || abiItem.type === 'error')\n return getSelector(abiItem) === _Hex_js__WEBPACK_IMPORTED_MODULE_2__.slice(name, 0, 4);\n if (abiItem.type === 'event')\n return getSignatureHash(abiItem) === name;\n return false;\n }\n return 'name' in abiItem && abiItem.name === name;\n });\n if (abiItems.length === 0)\n throw new NotFoundError({ name: name });\n if (abiItems.length === 1)\n return {\n ...abiItems[0],\n ...(prepare ? { hash: getSignatureHash(abiItems[0]) } : {}),\n };\n let matchedAbiItem;\n for (const abiItem of abiItems) {\n if (!('inputs' in abiItem))\n continue;\n if (!args || args.length === 0) {\n if (!abiItem.inputs || abiItem.inputs.length === 0)\n return {\n ...abiItem,\n ...(prepare ? { hash: getSignatureHash(abiItem) } : {}),\n };\n continue;\n }\n if (!abiItem.inputs)\n continue;\n if (abiItem.inputs.length === 0)\n continue;\n if (abiItem.inputs.length !== args.length)\n continue;\n const matched = args.every((arg, index) => {\n const abiParameter = 'inputs' in abiItem && abiItem.inputs[index];\n if (!abiParameter)\n return false;\n return _internal_abiItem_js__WEBPACK_IMPORTED_MODULE_3__.isArgOfType(arg, abiParameter);\n });\n if (matched) {\n // Check for ambiguity against already matched parameters (e.g. `address` vs `bytes20`).\n if (matchedAbiItem &&\n 'inputs' in matchedAbiItem &&\n matchedAbiItem.inputs) {\n const ambiguousTypes = _internal_abiItem_js__WEBPACK_IMPORTED_MODULE_3__.getAmbiguousTypes(abiItem.inputs, matchedAbiItem.inputs, args);\n if (ambiguousTypes)\n throw new AmbiguityError({\n abiItem,\n type: ambiguousTypes[0],\n }, {\n abiItem: matchedAbiItem,\n type: ambiguousTypes[1],\n });\n }\n matchedAbiItem = abiItem;\n }\n }\n const abiItem = (() => {\n if (matchedAbiItem)\n return matchedAbiItem;\n const [abiItem, ...overloads] = abiItems;\n return { ...abiItem, overloads };\n })();\n if (!abiItem)\n throw new NotFoundError({ name: name });\n return {\n ...abiItem,\n ...(prepare ? { hash: getSignatureHash(abiItem) } : {}),\n };\n}\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction getSelector(...parameters) {\n const abiItem = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, name] = parameters;\n return fromAbi(abi, name);\n }\n return parameters[0];\n })();\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.slice(getSignatureHash(abiItem), 0, 4);\n}\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction getSignature(...parameters) {\n const abiItem = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, name] = parameters;\n return fromAbi(abi, name);\n }\n return parameters[0];\n })();\n const signature = (() => {\n if (typeof abiItem === 'string')\n return abiItem;\n return abitype__WEBPACK_IMPORTED_MODULE_0__.formatAbiItem(abiItem);\n })();\n return _internal_abiItem_js__WEBPACK_IMPORTED_MODULE_3__.normalizeSignature(signature);\n}\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction getSignatureHash(...parameters) {\n const abiItem = (() => {\n if (Array.isArray(parameters[0])) {\n const [abi, name] = parameters;\n return fromAbi(abi, name);\n }\n return parameters[0];\n })();\n if (typeof abiItem !== 'string' && 'hash' in abiItem && abiItem.hash)\n return abiItem.hash;\n return _Hash_js__WEBPACK_IMPORTED_MODULE_4__.keccak256(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromString(getSignature(abiItem)));\n}\n/**\n * Throws when ambiguous types are found on overloaded ABI items.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from(['function foo(address)', 'function foo(bytes20)'])\n * AbiFunction.fromAbi(foo, 'foo', {\n * args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n * })\n * // @error: AbiItem.AmbiguityError: Found ambiguous types in overloaded ABI Items.\n * // @error: `bytes20` in `foo(bytes20)`, and\n * // @error: `address` in `foo(address)`\n * // @error: These types encode differently and cannot be distinguished at runtime.\n * // @error: Remove one of the ambiguous items in the ABI.\n * ```\n *\n * ### Solution\n *\n * Remove one of the ambiguous types from the ABI.\n *\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n * 'function foo(address)',\n * 'function foo(bytes20)' // [!code --]\n * ])\n * AbiFunction.fromAbi(foo, 'foo', {\n * args: ['0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'],\n * })\n * // @error: AbiItem.AmbiguityError: Found ambiguous types in overloaded ABI Items.\n * // @error: `bytes20` in `foo(bytes20)`, and\n * // @error: `address` in `foo(address)`\n * // @error: These types encode differently and cannot be distinguished at runtime.\n * // @error: Remove one of the ambiguous items in the ABI.\n * ```\n */\nclass AmbiguityError extends _Errors_js__WEBPACK_IMPORTED_MODULE_5__.BaseError {\n constructor(x, y) {\n super('Found ambiguous types in overloaded ABI Items.', {\n metaMessages: [\n // TODO: abitype to add support for signature-formatted ABI items.\n `\\`${x.type}\\` in \\`${_internal_abiItem_js__WEBPACK_IMPORTED_MODULE_3__.normalizeSignature(abitype__WEBPACK_IMPORTED_MODULE_0__.formatAbiItem(x.abiItem))}\\`, and`,\n `\\`${y.type}\\` in \\`${_internal_abiItem_js__WEBPACK_IMPORTED_MODULE_3__.normalizeSignature(abitype__WEBPACK_IMPORTED_MODULE_0__.formatAbiItem(y.abiItem))}\\``,\n '',\n 'These types encode differently and cannot be distinguished at runtime.',\n 'Remove one of the ambiguous items in the ABI.',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiItem.AmbiguityError'\n });\n }\n}\n/**\n * Throws when an ABI item is not found in the ABI.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n * 'function foo(address)',\n * 'function bar(uint)'\n * ])\n * AbiFunction.fromAbi(foo, 'baz')\n * // @error: AbiItem.NotFoundError: ABI function with name \"baz\" not found.\n * ```\n *\n * ### Solution\n *\n * Ensure the ABI item exists on the ABI.\n *\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n * 'function foo(address)',\n * 'function bar(uint)',\n * 'function baz(bool)' // [!code ++]\n * ])\n * AbiFunction.fromAbi(foo, 'baz')\n * ```\n */\nclass NotFoundError extends _Errors_js__WEBPACK_IMPORTED_MODULE_5__.BaseError {\n constructor({ name, data, type = 'item', }) {\n const selector = (() => {\n if (name)\n return ` with name \"${name}\"`;\n if (data)\n return ` with data \"${data}\"`;\n return '';\n })();\n super(`ABI ${type}${selector} not found.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiItem.NotFoundError'\n });\n }\n}\n/**\n * Throws when the selector size is invalid.\n *\n * @example\n * ```ts twoslash\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n * 'function foo(address)',\n * 'function bar(uint)'\n * ])\n * AbiFunction.fromAbi(foo, '0xaaa')\n * // @error: AbiItem.InvalidSelectorSizeError: Selector size is invalid. Expected 4 bytes. Received 2 bytes (\"0xaaa\").\n * ```\n *\n * ### Solution\n *\n * Ensure the selector size is 4 bytes.\n *\n * ```ts twoslash\n * // @noErrors\n * import { Abi, AbiFunction } from 'ox'\n *\n * const foo = Abi.from([\n * 'function foo(address)',\n * 'function bar(uint)'\n * ])\n * AbiFunction.fromAbi(foo, '0x7af82b1a')\n * ```\n */\nclass InvalidSelectorSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_5__.BaseError {\n constructor({ data }) {\n super(`Selector size is invalid. Expected 4 bytes. Received ${_Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(data)} bytes (\"${data}\").`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiItem.InvalidSelectorSizeError'\n });\n }\n}\n//# sourceMappingURL=AbiItem.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQWJpSXRlbS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBbUM7QUFDRztBQUNKO0FBQ0Y7QUFDa0I7QUFDbEQ7QUFDQSxlQUFlLDBCQUEwQjtBQUN6QztBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLGlCQUFpQixjQUFjO0FBQy9CLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsV0FBVyxrREFBcUI7QUFDaEM7QUFDQTtBQUNBLHNGQUFzRix5QkFBeUI7QUFDL0c7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsaUJBQWlCLGNBQWM7QUFDL0IsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0EsbUJBQW1CLGlCQUFpQixpQkFBaUI7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUNBQW1DO0FBQzFDLFlBQVksaUJBQWlCO0FBQzdCO0FBQ0E7QUFDQSxtQkFBbUIsaURBQW9CO0FBQ3ZDO0FBQ0EsbUJBQW1CLGlEQUFvQjtBQUN2QztBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0Esd0JBQXdCLCtCQUErQixJQUFJO0FBQzNEO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiwwQkFBMEIsU0FBUyxrQkFBa0I7QUFDckU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0RBQW9ELGtCQUFrQjtBQUN0RTtBQUNBO0FBQ0EsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksNEJBQTRCO0FBQ3hDLFVBQVU7QUFDVix1QkFBdUIsNkNBQVksU0FBUyxlQUFlO0FBQzNEO0FBQ0E7QUFDQTtBQUNBLGdEQUFnRCwwQ0FBUztBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0Esa0NBQWtDLFlBQVk7QUFDOUM7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLHNDQUFzQyxJQUFJO0FBQ3RFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxrQ0FBa0MsSUFBSTtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQiw2REFBb0I7QUFDdkMsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsbUVBQTBCO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSxxQkFBcUI7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQixLQUFLO0FBQ0w7QUFDQSxrQ0FBa0MsWUFBWTtBQUM5QztBQUNBO0FBQ0Esd0JBQXdCLGtDQUFrQyxJQUFJO0FBQzlEO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLFdBQVcsMENBQVM7QUFDcEI7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLGVBQWUsa0RBQXFCO0FBQ3BDLEtBQUs7QUFDTCxXQUFXLG9FQUEyQjtBQUN0QztBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLFdBQVcsK0NBQWMsQ0FBQywrQ0FBYztBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLG1CQUFtQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLG1CQUFtQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDZCQUE2QixpREFBZ0I7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsT0FBTyxVQUFVLG9FQUEyQixDQUFDLGtEQUFxQixhQUFhO0FBQ3BHLHFCQUFxQixPQUFPLFVBQVUsb0VBQTJCLENBQUMsa0RBQXFCLGFBQWE7QUFDcEc7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sNEJBQTRCLGlEQUFnQjtBQUNuRCxrQkFBa0IsNEJBQTRCO0FBQzlDO0FBQ0E7QUFDQSxzQ0FBc0MsS0FBSztBQUMzQztBQUNBLHNDQUFzQyxLQUFLO0FBQzNDO0FBQ0EsU0FBUztBQUNULHFCQUFxQixLQUFLLEVBQUUsVUFBVTtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHVDQUF1QyxpREFBZ0I7QUFDOUQsa0JBQWtCLE1BQU07QUFDeEIsc0VBQXNFLHlDQUFRLFFBQVEsVUFBVSxLQUFLO0FBQ3JHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9BYmlJdGVtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFiaXR5cGUgZnJvbSAnYWJpdHlwZSc7XG5pbXBvcnQgKiBhcyBFcnJvcnMgZnJvbSAnLi9FcnJvcnMuanMnO1xuaW1wb3J0ICogYXMgSGFzaCBmcm9tICcuL0hhc2guanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4vSGV4LmpzJztcbmltcG9ydCAqIGFzIGludGVybmFsIGZyb20gJy4vaW50ZXJuYWwvYWJpSXRlbS5qcyc7XG4vKipcbiAqIEZvcm1hdHMgYW4ge0BsaW5rIG94I0FiaUl0ZW0uQWJpSXRlbX0gaW50byBhICoqSHVtYW4gUmVhZGFibGUgQUJJIEl0ZW0qKi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaUl0ZW0gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBmb3JtYXR0ZWQgPSBBYmlJdGVtLmZvcm1hdCh7XG4gKiAgIHR5cGU6ICdmdW5jdGlvbicsXG4gKiAgIG5hbWU6ICdhcHByb3ZlJyxcbiAqICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gKiAgIGlucHV0czogW1xuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAqICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICogICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICogICAgIH0sXG4gKiAgIF0sXG4gKiAgIG91dHB1dHM6IFt7IHR5cGU6ICdib29sJyB9XSxcbiAqIH0pXG4gKlxuICogZm9ybWF0dGVkXG4gKiAvLyAgICBeP1xuICpcbiAqXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYWJpSXRlbSAtIFRoZSBBQkkgSXRlbSB0byBmb3JtYXQuXG4gKiBAcmV0dXJucyBUaGUgZm9ybWF0dGVkIEFCSSBJdGVtICAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXQoYWJpSXRlbSkge1xuICAgIHJldHVybiBhYml0eXBlLmZvcm1hdEFiaUl0ZW0oYWJpSXRlbSk7XG59XG4vKipcbiAqIFBhcnNlcyBhbiBhcmJpdHJhcnkgKipKU09OIEFCSSBJdGVtKiogb3IgKipIdW1hbiBSZWFkYWJsZSBBQkkgSXRlbSoqIGludG8gYSB0eXBlZCB7QGxpbmsgb3gjQWJpSXRlbS5BYmlJdGVtfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIEpTT04gQUJJc1xuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBYmlJdGVtIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgYWJpSXRlbSA9IEFiaUl0ZW0uZnJvbSh7XG4gKiAgIHR5cGU6ICdmdW5jdGlvbicsXG4gKiAgIG5hbWU6ICdhcHByb3ZlJyxcbiAqICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gKiAgIGlucHV0czogW1xuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAqICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAqICAgICB9LFxuICogICAgIHtcbiAqICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICogICAgICAgdHlwZTogJ3VpbnQyNTYnLFxuICogICAgIH0sXG4gKiAgIF0sXG4gKiAgIG91dHB1dHM6IFt7IHR5cGU6ICdib29sJyB9XSxcbiAqIH0pXG4gKlxuICogYWJpSXRlbVxuICogLy9eP1xuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBIdW1hbiBSZWFkYWJsZSBBQklzXG4gKlxuICogQSBIdW1hbiBSZWFkYWJsZSBBQkkgY2FuIGJlIHBhcnNlZCBpbnRvIGEgdHlwZWQgQUJJIG9iamVjdDpcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpSXRlbSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGFiaUl0ZW0gPSBBYmlJdGVtLmZyb20oXG4gKiAgICdmdW5jdGlvbiBhcHByb3ZlKGFkZHJlc3Mgc3BlbmRlciwgdWludDI1NiBhbW91bnQpIHJldHVybnMgKGJvb2wpJyAvLyBbIWNvZGUgaGxdXG4gKiApXG4gKlxuICogYWJpSXRlbVxuICogLy9eP1xuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBJdCBpcyBwb3NzaWJsZSB0byBzcGVjaWZ5IGBzdHJ1Y3RgcyBhbG9uZyB3aXRoIHlvdXIgZGVmaW5pdGlvbnM6XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaUl0ZW0gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhYmlJdGVtID0gQWJpSXRlbS5mcm9tKFtcbiAqICAgJ3N0cnVjdCBGb28geyBhZGRyZXNzIHNwZW5kZXI7IHVpbnQyNTYgYW1vdW50OyB9JywgLy8gWyFjb2RlIGhsXVxuICogICAnZnVuY3Rpb24gYXBwcm92ZShGb28gZm9vKSByZXR1cm5zIChib29sKScsXG4gKiBdKVxuICpcbiAqIGFiaUl0ZW1cbiAqIC8vXj9cbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqIGBgYFxuICpcbiAqXG4gKlxuICogQHBhcmFtIGFiaUl0ZW0gLSBUaGUgQUJJIEl0ZW0gdG8gcGFyc2UuXG4gKiBAcmV0dXJucyBUaGUgdHlwZWQgQUJJIEl0ZW0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKGFiaUl0ZW0sIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgcHJlcGFyZSA9IHRydWUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgaXRlbSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFiaUl0ZW0pKVxuICAgICAgICAgICAgcmV0dXJuIGFiaXR5cGUucGFyc2VBYmlJdGVtKGFiaUl0ZW0pO1xuICAgICAgICBpZiAodHlwZW9mIGFiaUl0ZW0gPT09ICdzdHJpbmcnKVxuICAgICAgICAgICAgcmV0dXJuIGFiaXR5cGUucGFyc2VBYmlJdGVtKGFiaUl0ZW0pO1xuICAgICAgICByZXR1cm4gYWJpSXRlbTtcbiAgICB9KSgpO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLml0ZW0sXG4gICAgICAgIC4uLihwcmVwYXJlID8geyBoYXNoOiBnZXRTaWduYXR1cmVIYXNoKGl0ZW0pIH0gOiB7fSksXG4gICAgfTtcbn1cbi8qKlxuICogRXh0cmFjdHMgYW4ge0BsaW5rIG94I0FiaUl0ZW0uQWJpSXRlbX0gZnJvbSBhbiB7QGxpbmsgb3gjQWJpLkFiaX0gZ2l2ZW4gYSBuYW1lIGFuZCBvcHRpb25hbCBhcmd1bWVudHMuXG4gKlxuICogQGV4YW1wbGVcbiAqIEFCSSBJdGVtcyBjYW4gYmUgZXh0cmFjdGVkIGJ5IHRoZWlyIG5hbWUgdXNpbmcgdGhlIGBuYW1lYCBvcHRpb246XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaSwgQWJpSXRlbSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGFiaSA9IEFiaS5mcm9tKFtcbiAqICAgJ2Z1bmN0aW9uIGZvbygpJyxcbiAqICAgJ2V2ZW50IFRyYW5zZmVyKGFkZHJlc3Mgb3duZXIsIGFkZHJlc3MgdG8sIHVpbnQyNTYgdG9rZW5JZCknLFxuICogICAnZnVuY3Rpb24gYmFyKHN0cmluZyBhKSByZXR1cm5zICh1aW50MjU2IHgpJyxcbiAqIF0pXG4gKlxuICogY29uc3QgaXRlbSA9IEFiaUl0ZW0uZnJvbUFiaShhYmksICdUcmFuc2ZlcicpIC8vIFshY29kZSBmb2N1c11cbiAqIC8vICAgIF4/XG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIEV4dHJhY3RpbmcgYnkgU2VsZWN0b3JcbiAqXG4gKiBBQkkgSXRlbXMgY2FuIGJlIGV4dHJhY3QgYnkgdGhlaXIgc2VsZWN0b3Igd2hlbiB7QGxpbmsgb3gjSGV4LkhleH0gaXMgcHJvdmlkZWQgdG8gYG5hbWVgLlxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBYmksIEFiaUl0ZW0gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhYmkgPSBBYmkuZnJvbShbXG4gKiAgICdmdW5jdGlvbiBmb28oKScsXG4gKiAgICdldmVudCBUcmFuc2ZlcihhZGRyZXNzIG93bmVyLCBhZGRyZXNzIHRvLCB1aW50MjU2IHRva2VuSWQpJyxcbiAqICAgJ2Z1bmN0aW9uIGJhcihzdHJpbmcgYSkgcmV0dXJucyAodWludDI1NiB4KScsXG4gKiBdKVxuICogY29uc3QgaXRlbSA9IEFiaUl0ZW0uZnJvbUFiaShhYmksICcweDA5NWVhN2IzJykgLy8gWyFjb2RlIGZvY3VzXVxuICogLy8gICAgXj9cbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKiBgYGBcbiAqXG4gKiA6Ojpub3RlXG4gKlxuICogRXh0cmFjdGluZyB2aWEgYSBoZXggc2VsZWN0b3IgaXMgdXNlZnVsIHdoZW4gZXh0cmFjdGluZyBhbiBBQkkgSXRlbSBmcm9tIGFuIGBldGhfY2FsbGAgUlBDIHJlc3BvbnNlLFxuICogYSBUcmFuc2FjdGlvbiBgaW5wdXRgLCBvciBmcm9tIEV2ZW50IExvZyBgdG9waWNzYC5cbiAqXG4gKiA6OjpcbiAqXG4gKiBAcGFyYW0gYWJpIC0gVGhlIEFCSSB0byBleHRyYWN0IGZyb20uXG4gKiBAcGFyYW0gbmFtZSAtIFRoZSBuYW1lIChvciBzZWxlY3Rvcikgb2YgdGhlIEFCSSBpdGVtIHRvIGV4dHJhY3QuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEV4dHJhY3Rpb24gb3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBBQkkgaXRlbS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21BYmkoYWJpLCBuYW1lLCBvcHRpb25zKSB7XG4gICAgY29uc3QgeyBhcmdzID0gW10sIHByZXBhcmUgPSB0cnVlIH0gPSAob3B0aW9ucyA/P1xuICAgICAgICB7fSk7XG4gICAgY29uc3QgaXNTZWxlY3RvciA9IEhleC52YWxpZGF0ZShuYW1lLCB7IHN0cmljdDogZmFsc2UgfSk7XG4gICAgY29uc3QgYWJpSXRlbXMgPSBhYmkuZmlsdGVyKChhYmlJdGVtKSA9PiB7XG4gICAgICAgIGlmIChpc1NlbGVjdG9yKSB7XG4gICAgICAgICAgICBpZiAoYWJpSXRlbS50eXBlID09PSAnZnVuY3Rpb24nIHx8IGFiaUl0ZW0udHlwZSA9PT0gJ2Vycm9yJylcbiAgICAgICAgICAgICAgICByZXR1cm4gZ2V0U2VsZWN0b3IoYWJpSXRlbSkgPT09IEhleC5zbGljZShuYW1lLCAwLCA0KTtcbiAgICAgICAgICAgIGlmIChhYmlJdGVtLnR5cGUgPT09ICdldmVudCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGdldFNpZ25hdHVyZUhhc2goYWJpSXRlbSkgPT09IG5hbWU7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICduYW1lJyBpbiBhYmlJdGVtICYmIGFiaUl0ZW0ubmFtZSA9PT0gbmFtZTtcbiAgICB9KTtcbiAgICBpZiAoYWJpSXRlbXMubGVuZ3RoID09PSAwKVxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcih7IG5hbWU6IG5hbWUgfSk7XG4gICAgaWYgKGFiaUl0ZW1zLmxlbmd0aCA9PT0gMSlcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmFiaUl0ZW1zWzBdLFxuICAgICAgICAgICAgLi4uKHByZXBhcmUgPyB7IGhhc2g6IGdldFNpZ25hdHVyZUhhc2goYWJpSXRlbXNbMF0pIH0gOiB7fSksXG4gICAgICAgIH07XG4gICAgbGV0IG1hdGNoZWRBYmlJdGVtO1xuICAgIGZvciAoY29uc3QgYWJpSXRlbSBvZiBhYmlJdGVtcykge1xuICAgICAgICBpZiAoISgnaW5wdXRzJyBpbiBhYmlJdGVtKSlcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBpZiAoIWFyZ3MgfHwgYXJncy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIGlmICghYWJpSXRlbS5pbnB1dHMgfHwgYWJpSXRlbS5pbnB1dHMubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLmFiaUl0ZW0sXG4gICAgICAgICAgICAgICAgICAgIC4uLihwcmVwYXJlID8geyBoYXNoOiBnZXRTaWduYXR1cmVIYXNoKGFiaUl0ZW0pIH0gOiB7fSksXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghYWJpSXRlbS5pbnB1dHMpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgaWYgKGFiaUl0ZW0uaW5wdXRzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBpZiAoYWJpSXRlbS5pbnB1dHMubGVuZ3RoICE9PSBhcmdzLmxlbmd0aClcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBjb25zdCBtYXRjaGVkID0gYXJncy5ldmVyeSgoYXJnLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWJpUGFyYW1ldGVyID0gJ2lucHV0cycgaW4gYWJpSXRlbSAmJiBhYmlJdGVtLmlucHV0c1tpbmRleF07XG4gICAgICAgICAgICBpZiAoIWFiaVBhcmFtZXRlcilcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gaW50ZXJuYWwuaXNBcmdPZlR5cGUoYXJnLCBhYmlQYXJhbWV0ZXIpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKG1hdGNoZWQpIHtcbiAgICAgICAgICAgIC8vIENoZWNrIGZvciBhbWJpZ3VpdHkgYWdhaW5zdCBhbHJlYWR5IG1hdGNoZWQgcGFyYW1ldGVycyAoZS5nLiBgYWRkcmVzc2AgdnMgYGJ5dGVzMjBgKS5cbiAgICAgICAgICAgIGlmIChtYXRjaGVkQWJpSXRlbSAmJlxuICAgICAgICAgICAgICAgICdpbnB1dHMnIGluIG1hdGNoZWRBYmlJdGVtICYmXG4gICAgICAgICAgICAgICAgbWF0Y2hlZEFiaUl0ZW0uaW5wdXRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYW1iaWd1b3VzVHlwZXMgPSBpbnRlcm5hbC5nZXRBbWJpZ3VvdXNUeXBlcyhhYmlJdGVtLmlucHV0cywgbWF0Y2hlZEFiaUl0ZW0uaW5wdXRzLCBhcmdzKTtcbiAgICAgICAgICAgICAgICBpZiAoYW1iaWd1b3VzVHlwZXMpXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBBbWJpZ3VpdHlFcnJvcih7XG4gICAgICAgICAgICAgICAgICAgICAgICBhYmlJdGVtLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogYW1iaWd1b3VzVHlwZXNbMF0sXG4gICAgICAgICAgICAgICAgICAgIH0sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFiaUl0ZW06IG1hdGNoZWRBYmlJdGVtLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogYW1iaWd1b3VzVHlwZXNbMV0sXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbWF0Y2hlZEFiaUl0ZW0gPSBhYmlJdGVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGFiaUl0ZW0gPSAoKCkgPT4ge1xuICAgICAgICBpZiAobWF0Y2hlZEFiaUl0ZW0pXG4gICAgICAgICAgICByZXR1cm4gbWF0Y2hlZEFiaUl0ZW07XG4gICAgICAgIGNvbnN0IFthYmlJdGVtLCAuLi5vdmVybG9hZHNdID0gYWJpSXRlbXM7XG4gICAgICAgIHJldHVybiB7IC4uLmFiaUl0ZW0sIG92ZXJsb2FkcyB9O1xuICAgIH0pKCk7XG4gICAgaWYgKCFhYmlJdGVtKVxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcih7IG5hbWU6IG5hbWUgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLi4uYWJpSXRlbSxcbiAgICAgICAgLi4uKHByZXBhcmUgPyB7IGhhc2g6IGdldFNpZ25hdHVyZUhhc2goYWJpSXRlbSkgfSA6IHt9KSxcbiAgICB9O1xufVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWxlY3RvciguLi5wYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgYWJpSXRlbSA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnNbMF0pKSB7XG4gICAgICAgICAgICBjb25zdCBbYWJpLCBuYW1lXSA9IHBhcmFtZXRlcnM7XG4gICAgICAgICAgICByZXR1cm4gZnJvbUFiaShhYmksIG5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwYXJhbWV0ZXJzWzBdO1xuICAgIH0pKCk7XG4gICAgcmV0dXJuIEhleC5zbGljZShnZXRTaWduYXR1cmVIYXNoKGFiaUl0ZW0pLCAwLCA0KTtcbn1cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2lnbmF0dXJlKC4uLnBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCBhYmlJdGVtID0gKCgpID0+IHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVyc1swXSkpIHtcbiAgICAgICAgICAgIGNvbnN0IFthYmksIG5hbWVdID0gcGFyYW1ldGVycztcbiAgICAgICAgICAgIHJldHVybiBmcm9tQWJpKGFiaSwgbmFtZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnNbMF07XG4gICAgfSkoKTtcbiAgICBjb25zdCBzaWduYXR1cmUgPSAoKCkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIGFiaUl0ZW0gPT09ICdzdHJpbmcnKVxuICAgICAgICAgICAgcmV0dXJuIGFiaUl0ZW07XG4gICAgICAgIHJldHVybiBhYml0eXBlLmZvcm1hdEFiaUl0ZW0oYWJpSXRlbSk7XG4gICAgfSkoKTtcbiAgICByZXR1cm4gaW50ZXJuYWwubm9ybWFsaXplU2lnbmF0dXJlKHNpZ25hdHVyZSk7XG59XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNpZ25hdHVyZUhhc2goLi4ucGFyYW1ldGVycykge1xuICAgIGNvbnN0IGFiaUl0ZW0gPSAoKCkgPT4ge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXJzWzBdKSkge1xuICAgICAgICAgICAgY29uc3QgW2FiaSwgbmFtZV0gPSBwYXJhbWV0ZXJzO1xuICAgICAgICAgICAgcmV0dXJuIGZyb21BYmkoYWJpLCBuYW1lKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcGFyYW1ldGVyc1swXTtcbiAgICB9KSgpO1xuICAgIGlmICh0eXBlb2YgYWJpSXRlbSAhPT0gJ3N0cmluZycgJiYgJ2hhc2gnIGluIGFiaUl0ZW0gJiYgYWJpSXRlbS5oYXNoKVxuICAgICAgICByZXR1cm4gYWJpSXRlbS5oYXNoO1xuICAgIHJldHVybiBIYXNoLmtlY2NhazI1NihIZXguZnJvbVN0cmluZyhnZXRTaWduYXR1cmUoYWJpSXRlbSkpKTtcbn1cbi8qKlxuICogVGhyb3dzIHdoZW4gYW1iaWd1b3VzIHR5cGVzIGFyZSBmb3VuZCBvbiBvdmVybG9hZGVkIEFCSSBpdGVtcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaSwgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBmb28gPSBBYmkuZnJvbShbJ2Z1bmN0aW9uIGZvbyhhZGRyZXNzKScsICdmdW5jdGlvbiBmb28oYnl0ZXMyMCknXSlcbiAqIEFiaUZ1bmN0aW9uLmZyb21BYmkoZm9vLCAnZm9vJywge1xuICogICBhcmdzOiBbJzB4QTBDZjc5ODgxNkQ0YjliOTg2NmI1MzMwRUVhNDZhMTgzODJmMjUxZSddLFxuICogfSlcbiAqIC8vIEBlcnJvcjogQWJpSXRlbS5BbWJpZ3VpdHlFcnJvcjogRm91bmQgYW1iaWd1b3VzIHR5cGVzIGluIG92ZXJsb2FkZWQgQUJJIEl0ZW1zLlxuICogLy8gQGVycm9yOiBgYnl0ZXMyMGAgaW4gYGZvbyhieXRlczIwKWAsIGFuZFxuICogLy8gQGVycm9yOiBgYWRkcmVzc2AgaW4gYGZvbyhhZGRyZXNzKWBcbiAqIC8vIEBlcnJvcjogVGhlc2UgdHlwZXMgZW5jb2RlIGRpZmZlcmVudGx5IGFuZCBjYW5ub3QgYmUgZGlzdGluZ3Vpc2hlZCBhdCBydW50aW1lLlxuICogLy8gQGVycm9yOiBSZW1vdmUgb25lIG9mIHRoZSBhbWJpZ3VvdXMgaXRlbXMgaW4gdGhlIEFCSS5cbiAqIGBgYFxuICpcbiAqICMjIyBTb2x1dGlvblxuICpcbiAqIFJlbW92ZSBvbmUgb2YgdGhlIGFtYmlndW91cyB0eXBlcyBmcm9tIHRoZSBBQkkuXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaSwgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBmb28gPSBBYmkuZnJvbShbXG4gKiAgICdmdW5jdGlvbiBmb28oYWRkcmVzcyknLFxuICogICAnZnVuY3Rpb24gZm9vKGJ5dGVzMjApJyAvLyBbIWNvZGUgLS1dXG4gKiBdKVxuICogQWJpRnVuY3Rpb24uZnJvbUFiaShmb28sICdmb28nLCB7XG4gKiAgIGFyZ3M6IFsnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJ10sXG4gKiB9KVxuICogLy8gQGVycm9yOiBBYmlJdGVtLkFtYmlndWl0eUVycm9yOiBGb3VuZCBhbWJpZ3VvdXMgdHlwZXMgaW4gb3ZlcmxvYWRlZCBBQkkgSXRlbXMuXG4gKiAvLyBAZXJyb3I6IGBieXRlczIwYCBpbiBgZm9vKGJ5dGVzMjApYCwgYW5kXG4gKiAvLyBAZXJyb3I6IGBhZGRyZXNzYCBpbiBgZm9vKGFkZHJlc3MpYFxuICogLy8gQGVycm9yOiBUaGVzZSB0eXBlcyBlbmNvZGUgZGlmZmVyZW50bHkgYW5kIGNhbm5vdCBiZSBkaXN0aW5ndWlzaGVkIGF0IHJ1bnRpbWUuXG4gKiAvLyBAZXJyb3I6IFJlbW92ZSBvbmUgb2YgdGhlIGFtYmlndW91cyBpdGVtcyBpbiB0aGUgQUJJLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBBbWJpZ3VpdHlFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHgsIHkpIHtcbiAgICAgICAgc3VwZXIoJ0ZvdW5kIGFtYmlndW91cyB0eXBlcyBpbiBvdmVybG9hZGVkIEFCSSBJdGVtcy4nLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAvLyBUT0RPOiBhYml0eXBlIHRvIGFkZCBzdXBwb3J0IGZvciBzaWduYXR1cmUtZm9ybWF0dGVkIEFCSSBpdGVtcy5cbiAgICAgICAgICAgICAgICBgXFxgJHt4LnR5cGV9XFxgIGluIFxcYCR7aW50ZXJuYWwubm9ybWFsaXplU2lnbmF0dXJlKGFiaXR5cGUuZm9ybWF0QWJpSXRlbSh4LmFiaUl0ZW0pKX1cXGAsIGFuZGAsXG4gICAgICAgICAgICAgICAgYFxcYCR7eS50eXBlfVxcYCBpbiBcXGAke2ludGVybmFsLm5vcm1hbGl6ZVNpZ25hdHVyZShhYml0eXBlLmZvcm1hdEFiaUl0ZW0oeS5hYmlJdGVtKSl9XFxgYCxcbiAgICAgICAgICAgICAgICAnJyxcbiAgICAgICAgICAgICAgICAnVGhlc2UgdHlwZXMgZW5jb2RlIGRpZmZlcmVudGx5IGFuZCBjYW5ub3QgYmUgZGlzdGluZ3Vpc2hlZCBhdCBydW50aW1lLicsXG4gICAgICAgICAgICAgICAgJ1JlbW92ZSBvbmUgb2YgdGhlIGFtYmlndW91cyBpdGVtcyBpbiB0aGUgQUJJLicsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0FiaUl0ZW0uQW1iaWd1aXR5RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3dzIHdoZW4gYW4gQUJJIGl0ZW0gaXMgbm90IGZvdW5kIGluIHRoZSBBQkkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiAvLyBAbm9FcnJvcnNcbiAqIGltcG9ydCB7IEFiaSwgQWJpRnVuY3Rpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBmb28gPSBBYmkuZnJvbShbXG4gKiAgICdmdW5jdGlvbiBmb28oYWRkcmVzcyknLFxuICogICAnZnVuY3Rpb24gYmFyKHVpbnQpJ1xuICogXSlcbiAqIEFiaUZ1bmN0aW9uLmZyb21BYmkoZm9vLCAnYmF6JylcbiAqIC8vIEBlcnJvcjogQWJpSXRlbS5Ob3RGb3VuZEVycm9yOiBBQkkgZnVuY3Rpb24gd2l0aCBuYW1lIFwiYmF6XCIgbm90IGZvdW5kLlxuICogYGBgXG4gKlxuICogIyMjIFNvbHV0aW9uXG4gKlxuICogRW5zdXJlIHRoZSBBQkkgaXRlbSBleGlzdHMgb24gdGhlIEFCSS5cbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBBYmksIEFiaUZ1bmN0aW9uIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgZm9vID0gQWJpLmZyb20oW1xuICogICAnZnVuY3Rpb24gZm9vKGFkZHJlc3MpJyxcbiAqICAgJ2Z1bmN0aW9uIGJhcih1aW50KScsXG4gKiAgICdmdW5jdGlvbiBiYXooYm9vbCknIC8vIFshY29kZSArK11cbiAqIF0pXG4gKiBBYmlGdW5jdGlvbi5mcm9tQWJpKGZvbywgJ2JheicpXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIE5vdEZvdW5kRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IG5hbWUsIGRhdGEsIHR5cGUgPSAnaXRlbScsIH0pIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0b3IgPSAoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKG5hbWUpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGAgd2l0aCBuYW1lIFwiJHtuYW1lfVwiYDtcbiAgICAgICAgICAgIGlmIChkYXRhKVxuICAgICAgICAgICAgICAgIHJldHVybiBgIHdpdGggZGF0YSBcIiR7ZGF0YX1cImA7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH0pKCk7XG4gICAgICAgIHN1cGVyKGBBQkkgJHt0eXBlfSR7c2VsZWN0b3J9IG5vdCBmb3VuZC5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0FiaUl0ZW0uTm90Rm91bmRFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd3Mgd2hlbiB0aGUgc2VsZWN0b3Igc2l6ZSBpcyBpbnZhbGlkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpLCBBYmlGdW5jdGlvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGZvbyA9IEFiaS5mcm9tKFtcbiAqICAgJ2Z1bmN0aW9uIGZvbyhhZGRyZXNzKScsXG4gKiAgICdmdW5jdGlvbiBiYXIodWludCknXG4gKiBdKVxuICogQWJpRnVuY3Rpb24uZnJvbUFiaShmb28sICcweGFhYScpXG4gKiAvLyBAZXJyb3I6IEFiaUl0ZW0uSW52YWxpZFNlbGVjdG9yU2l6ZUVycm9yOiBTZWxlY3RvciBzaXplIGlzIGludmFsaWQuIEV4cGVjdGVkIDQgYnl0ZXMuIFJlY2VpdmVkIDIgYnl0ZXMgKFwiMHhhYWFcIikuXG4gKiBgYGBcbiAqXG4gKiAjIyMgU29sdXRpb25cbiAqXG4gKiBFbnN1cmUgdGhlIHNlbGVjdG9yIHNpemUgaXMgNCBieXRlcy5cbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBBYmksIEFiaUZ1bmN0aW9uIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgZm9vID0gQWJpLmZyb20oW1xuICogICAnZnVuY3Rpb24gZm9vKGFkZHJlc3MpJyxcbiAqICAgJ2Z1bmN0aW9uIGJhcih1aW50KSdcbiAqIF0pXG4gKiBBYmlGdW5jdGlvbi5mcm9tQWJpKGZvbywgJzB4N2FmODJiMWEnKVxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU2VsZWN0b3JTaXplRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGRhdGEgfSkge1xuICAgICAgICBzdXBlcihgU2VsZWN0b3Igc2l6ZSBpcyBpbnZhbGlkLiBFeHBlY3RlZCA0IGJ5dGVzLiBSZWNlaXZlZCAke0hleC5zaXplKGRhdGEpfSBieXRlcyAoXCIke2RhdGF9XCIpLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnQWJpSXRlbS5JbnZhbGlkU2VsZWN0b3JTaXplRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUFiaUl0ZW0uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiItem.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ArrayLengthMismatchError: () => (/* binding */ ArrayLengthMismatchError),\n/* harmony export */ BytesSizeMismatchError: () => (/* binding */ BytesSizeMismatchError),\n/* harmony export */ DataSizeTooSmallError: () => (/* binding */ DataSizeTooSmallError),\n/* harmony export */ InvalidArrayError: () => (/* binding */ InvalidArrayError),\n/* harmony export */ InvalidTypeError: () => (/* binding */ InvalidTypeError),\n/* harmony export */ LengthMismatchError: () => (/* binding */ LengthMismatchError),\n/* harmony export */ ZeroDataError: () => (/* binding */ ZeroDataError),\n/* harmony export */ decode: () => (/* binding */ decode),\n/* harmony export */ encode: () => (/* binding */ encode),\n/* harmony export */ encodePacked: () => (/* binding */ encodePacked),\n/* harmony export */ format: () => (/* binding */ format),\n/* harmony export */ from: () => (/* binding */ from)\n/* harmony export */ });\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/formatAbiParameters.js\");\n/* harmony import */ var abitype__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! abitype */ \"(app-pages-browser)/./node_modules/viem/node_modules/abitype/dist/esm/human-readable/parseAbiParameters.js\");\n/* harmony import */ var _Address_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Address.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Address.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _internal_abiParameters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internal/abiParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/abiParameters.js\");\n/* harmony import */ var _internal_cursor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/cursor.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/cursor.js\");\n/* harmony import */ var _Solidity_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Solidity.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Solidity.js\");\n\n\n\n\n\n\n\n\n// eslint-disable-next-line jsdoc/require-jsdoc\nfunction decode(parameters, data, options = {}) {\n const { as = 'Array', checksumAddress = false } = options;\n const bytes = typeof data === 'string' ? _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.fromHex(data) : data;\n const cursor = _internal_cursor_js__WEBPACK_IMPORTED_MODULE_1__.create(bytes);\n if (_Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes) === 0 && parameters.length > 0)\n throw new ZeroDataError();\n if (_Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes) && _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes) < 32)\n throw new DataSizeTooSmallError({\n data: typeof data === 'string' ? data : _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(data),\n parameters: parameters,\n size: _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes),\n });\n let consumed = 0;\n const values = as === 'Array' ? [] : {};\n for (let i = 0; i < parameters.length; ++i) {\n const param = parameters[i];\n cursor.setPosition(consumed);\n const [data, consumed_] = _internal_abiParameters_js__WEBPACK_IMPORTED_MODULE_3__.decodeParameter(cursor, param, {\n checksumAddress,\n staticPosition: 0,\n });\n consumed += consumed_;\n if (as === 'Array')\n values.push(data);\n else\n values[param.name ?? i] = data;\n }\n return values;\n}\n/**\n * Encodes primitive values into ABI encoded data as per the [Application Binary Interface (ABI) Specification](https://docs.soliditylang.org/en/latest/abi-spec).\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const data = AbiParameters.encode(\n * AbiParameters.from(['string', 'uint', 'bool']),\n * ['wagmi', 420n, true],\n * )\n * ```\n *\n * @example\n * ### JSON Parameters\n *\n * Specify **JSON ABI** Parameters as schema:\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const data = AbiParameters.encode(\n * [\n * { type: 'string', name: 'name' },\n * { type: 'uint', name: 'age' },\n * { type: 'bool', name: 'isOwner' },\n * ],\n * ['wagmi', 420n, true],\n * )\n * ```\n *\n * @param parameters - The set of ABI parameters to encode, in the shape of the `inputs` or `outputs` attribute of an ABI Item. These parameters must include valid [ABI types](https://docs.soliditylang.org/en/latest/types.html).\n * @param values - The set of primitive values that correspond to the ABI types defined in `parameters`.\n * @returns ABI encoded data.\n */\nfunction encode(parameters, values, options) {\n const { checksumAddress = false } = options ?? {};\n if (parameters.length !== values.length)\n throw new LengthMismatchError({\n expectedLength: parameters.length,\n givenLength: values.length,\n });\n // Prepare the parameters to determine dynamic types to encode.\n const preparedParameters = _internal_abiParameters_js__WEBPACK_IMPORTED_MODULE_3__.prepareParameters({\n checksumAddress,\n parameters: parameters,\n values: values,\n });\n const data = _internal_abiParameters_js__WEBPACK_IMPORTED_MODULE_3__.encode(preparedParameters);\n if (data.length === 0)\n return '0x';\n return data;\n}\n/**\n * Encodes an array of primitive values to a [packed ABI encoding](https://docs.soliditylang.org/en/latest/abi-spec.html#non-standard-packed-mode).\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const encoded = AbiParameters.encodePacked(\n * ['address', 'string'],\n * ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 'hello world'],\n * )\n * // @log: '0xd8da6bf26964af9d7eed9e03e53415d37aa9604568656c6c6f20776f726c64'\n * ```\n *\n * @param types - Set of ABI types to pack encode.\n * @param values - The set of primitive values that correspond to the ABI types defined in `types`.\n * @returns The encoded packed data.\n */\nfunction encodePacked(types, values) {\n if (types.length !== values.length)\n throw new LengthMismatchError({\n expectedLength: types.length,\n givenLength: values.length,\n });\n const data = [];\n for (let i = 0; i < types.length; i++) {\n const type = types[i];\n const value = values[i];\n data.push(encodePacked.encode(type, value));\n }\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(...data);\n}\n(function (encodePacked) {\n // eslint-disable-next-line jsdoc/require-jsdoc\n function encode(type, value, isArray = false) {\n if (type === 'address') {\n const address = value;\n _Address_js__WEBPACK_IMPORTED_MODULE_4__.assert(address);\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padLeft(address.toLowerCase(), isArray ? 32 : 0);\n }\n if (type === 'string')\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromString(value);\n if (type === 'bytes')\n return value;\n if (type === 'bool')\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padLeft(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBoolean(value), isArray ? 32 : 1);\n const intMatch = type.match(_Solidity_js__WEBPACK_IMPORTED_MODULE_5__.integerRegex);\n if (intMatch) {\n const [_type, baseType, bits = '256'] = intMatch;\n const size = Number.parseInt(bits, 10) / 8;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(value, {\n size: isArray ? 32 : size,\n signed: baseType === 'int',\n });\n }\n const bytesMatch = type.match(_Solidity_js__WEBPACK_IMPORTED_MODULE_5__.bytesRegex);\n if (bytesMatch) {\n const [_type, size] = bytesMatch;\n if (Number.parseInt(size, 10) !== (value.length - 2) / 2)\n throw new BytesSizeMismatchError({\n expectedSize: Number.parseInt(size, 10),\n value: value,\n });\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padRight(value, isArray ? 32 : 0);\n }\n const arrayMatch = type.match(_Solidity_js__WEBPACK_IMPORTED_MODULE_5__.arrayRegex);\n if (arrayMatch && Array.isArray(value)) {\n const [_type, childType] = arrayMatch;\n const data = [];\n for (let i = 0; i < value.length; i++) {\n data.push(encode(childType, value[i], true));\n }\n if (data.length === 0)\n return '0x';\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(...data);\n }\n throw new InvalidTypeError(type);\n }\n encodePacked.encode = encode;\n})(encodePacked || (encodePacked = {}));\n/**\n * Formats {@link ox#AbiParameters.AbiParameters} into **Human Readable ABI Parameters**.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const formatted = AbiParameters.format([\n * {\n * name: 'spender',\n * type: 'address',\n * },\n * {\n * name: 'amount',\n * type: 'uint256',\n * },\n * ])\n *\n * formatted\n * // ^?\n *\n *\n * ```\n *\n * @param parameters - The ABI Parameters to format.\n * @returns The formatted ABI Parameters .\n */\nfunction format(parameters) {\n return abitype__WEBPACK_IMPORTED_MODULE_6__.formatAbiParameters(parameters);\n}\n/**\n * Parses arbitrary **JSON ABI Parameters** or **Human Readable ABI Parameters** into typed {@link ox#AbiParameters.AbiParameters}.\n *\n * @example\n * ### JSON Parameters\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const parameters = AbiParameters.from([\n * {\n * name: 'spender',\n * type: 'address',\n * },\n * {\n * name: 'amount',\n * type: 'uint256',\n * },\n * ])\n *\n * parameters\n * //^?\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * ### Human Readable Parameters\n *\n * Human Readable ABI Parameters can be parsed into a typed {@link ox#AbiParameters.AbiParameters}:\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const parameters = AbiParameters.from('address spender, uint256 amount')\n *\n * parameters\n * //^?\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n * @example\n * It is possible to specify `struct`s along with your definitions:\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * const parameters = AbiParameters.from([\n * 'struct Foo { address spender; uint256 amount; }', // [!code hl]\n * 'Foo foo, address bar',\n * ])\n *\n * parameters\n * //^?\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n *\n * ```\n *\n *\n *\n * @param parameters - The ABI Parameters to parse.\n * @returns The typed ABI Parameters.\n */\nfunction from(parameters) {\n if (Array.isArray(parameters) && typeof parameters[0] === 'string')\n return abitype__WEBPACK_IMPORTED_MODULE_7__.parseAbiParameters(parameters);\n if (typeof parameters === 'string')\n return abitype__WEBPACK_IMPORTED_MODULE_7__.parseAbiParameters(parameters);\n return parameters;\n}\n/**\n * Throws when the data size is too small for the given parameters.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x010f')\n * // ↑ ❌ 2 bytes\n * // @error: AbiParameters.DataSizeTooSmallError: Data size of 2 bytes is too small for given parameters.\n * // @error: Params: (uint256)\n * // @error: Data: 0x010f (2 bytes)\n * ```\n *\n * ### Solution\n *\n * Pass a valid data size.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x00000000000000000000000000000000000000000000000000000000000010f')\n * // ↑ ✅ 32 bytes\n * ```\n */\nclass DataSizeTooSmallError extends _Errors_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor({ data, parameters, size, }) {\n super(`Data size of ${size} bytes is too small for given parameters.`, {\n metaMessages: [\n `Params: (${abitype__WEBPACK_IMPORTED_MODULE_6__.formatAbiParameters(parameters)})`,\n `Data: ${data} (${size} bytes)`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiParameters.DataSizeTooSmallError'\n });\n }\n}\n/**\n * Throws when zero data is provided, but data is expected.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x')\n * // ↑ ❌ zero data\n * // @error: AbiParameters.DataSizeTooSmallError: Data size of 2 bytes is too small for given parameters.\n * // @error: Params: (uint256)\n * // @error: Data: 0x010f (2 bytes)\n * ```\n *\n * ### Solution\n *\n * Pass valid data.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'uint256' }], '0x00000000000000000000000000000000000000000000000000000000000010f')\n * // ↑ ✅ 32 bytes\n * ```\n */\nclass ZeroDataError extends _Errors_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor() {\n super('Cannot decode zero data (\"0x\") with ABI parameters.');\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiParameters.ZeroDataError'\n });\n }\n}\n/**\n * The length of the array value does not match the length specified in the corresponding ABI parameter.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from('uint256[3]'), [[69n, 420n]])\n * // ↑ expected: 3 ↑ ❌ length: 2\n * // @error: AbiParameters.ArrayLengthMismatchError: ABI encoding array length mismatch\n * // @error: for type `uint256[3]`. Expected: `3`. Given: `2`.\n * ```\n *\n * ### Solution\n *\n * Pass an array of the correct length.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['uint256[3]']), [[69n, 420n, 69n]])\n * // ↑ ✅ length: 3\n * ```\n */\nclass ArrayLengthMismatchError extends _Errors_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor({ expectedLength, givenLength, type, }) {\n super(`Array length mismatch for type \\`${type}\\`. Expected: \\`${expectedLength}\\`. Given: \\`${givenLength}\\`.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiParameters.ArrayLengthMismatchError'\n });\n }\n}\n/**\n * The size of the bytes value does not match the size specified in the corresponding ABI parameter.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from('bytes8'), [['0xdeadbeefdeadbeefdeadbeef']])\n * // ↑ expected: 8 bytes ↑ ❌ size: 12 bytes\n * // @error: BytesSizeMismatchError: Size of bytes \"0xdeadbeefdeadbeefdeadbeef\"\n * // @error: (bytes12) does not match expected size (bytes8).\n * ```\n *\n * ### Solution\n *\n * Pass a bytes value of the correct size.\n *\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['bytes8']), ['0xdeadbeefdeadbeef'])\n * // ↑ ✅ size: 8 bytes\n * ```\n */\nclass BytesSizeMismatchError extends _Errors_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor({ expectedSize, value, }) {\n super(`Size of bytes \"${value}\" (bytes${_Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(value)}) does not match expected size (bytes${expectedSize}).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiParameters.BytesSizeMismatchError'\n });\n }\n}\n/**\n * The length of the values to encode does not match the length of the ABI parameters.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['string', 'uint256']), ['hello'])\n * // @error: LengthMismatchError: ABI encoding params/values length mismatch.\n * // @error: Expected length (params): 2\n * // @error: Given length (values): 1\n * ```\n *\n * ### Solution\n *\n * Pass the correct number of values to encode.\n *\n * ### Solution\n *\n * Pass a [valid ABI type](https://docs.soliditylang.org/en/develop/abi-spec.html#types).\n */\nclass LengthMismatchError extends _Errors_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor({ expectedLength, givenLength, }) {\n super([\n 'ABI encoding parameters/values length mismatch.',\n `Expected length (parameters): ${expectedLength}`,\n `Given length (values): ${givenLength}`,\n ].join('\\n'));\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiParameters.LengthMismatchError'\n });\n }\n}\n/**\n * The value provided is not a valid array as specified in the corresponding ABI parameter.\n *\n * ### Example\n *\n * ```ts twoslash\n * // @noErrors\n * import { AbiParameters } from 'ox'\n * // ---cut---\n * AbiParameters.encode(AbiParameters.from(['uint256[3]']), [69])\n * ```\n *\n * ### Solution\n *\n * Pass an array value.\n */\nclass InvalidArrayError extends _Errors_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor(value) {\n super(`Value \\`${value}\\` is not a valid array.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiParameters.InvalidArrayError'\n });\n }\n}\n/**\n * Throws when the ABI parameter type is invalid.\n *\n * @example\n * ```ts twoslash\n * import { AbiParameters } from 'ox'\n *\n * AbiParameters.decode([{ type: 'lol' }], '0x00000000000000000000000000000000000000000000000000000000000010f')\n * // ↑ ❌ invalid type\n * // @error: AbiParameters.InvalidTypeError: Type `lol` is not a valid ABI Type.\n * ```\n */\nclass InvalidTypeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_8__.BaseError {\n constructor(type) {\n super(`Type \\`${type}\\` is not a valid ABI Type.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'AbiParameters.InvalidTypeError'\n });\n }\n}\n//# sourceMappingURL=AbiParameters.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQWJpUGFyYW1ldGVycy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBbUM7QUFDSztBQUNKO0FBQ0U7QUFDTjtBQUN3QjtBQUNUO0FBQ0w7QUFDMUM7QUFDTyw4Q0FBOEM7QUFDckQsWUFBWSx3Q0FBd0M7QUFDcEQsNkNBQTZDLDhDQUFhO0FBQzFELG1CQUFtQix1REFBYTtBQUNoQyxRQUFRLDJDQUFVO0FBQ2xCO0FBQ0EsUUFBUSwyQ0FBVSxXQUFXLDJDQUFVO0FBQ3ZDO0FBQ0Esb0RBQW9ELDhDQUFhO0FBQ2pFO0FBQ0Esa0JBQWtCLDJDQUFVO0FBQzVCLFNBQVM7QUFDVDtBQUNBO0FBQ0Esb0JBQW9CLHVCQUF1QjtBQUMzQztBQUNBO0FBQ0Esa0NBQWtDLHVFQUF3QjtBQUMxRDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQSxTQUFTLDhCQUE4QjtBQUN2QyxTQUFTLDJCQUEyQjtBQUNwQyxTQUFTLCtCQUErQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksMEJBQTBCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsK0JBQStCLHlFQUEwQjtBQUN6RDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsaUJBQWlCLDhEQUFlO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVywyQ0FBVTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLCtDQUFjO0FBQzFCLG1CQUFtQiw0Q0FBVztBQUM5QjtBQUNBO0FBQ0EsbUJBQW1CLCtDQUFjO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQiw0Q0FBVyxDQUFDLGdEQUFlO0FBQzlDLG9DQUFvQyxzREFBcUI7QUFDekQ7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLCtDQUFjO0FBQ2pDO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQSxzQ0FBc0Msb0RBQW1CO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQixtQkFBbUIsNkNBQVk7QUFDL0I7QUFDQSxzQ0FBc0Msb0RBQW1CO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixrQkFBa0I7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsMkNBQVU7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDLG9DQUFvQztBQUNyQztBQUNBLFlBQVksc0NBQXNDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFdBQVcsd0RBQTJCO0FBQ3RDO0FBQ0E7QUFDQSw2RkFBNkYscUNBQXFDO0FBQ2xJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZEQUE2RCxxQ0FBcUM7QUFDbEc7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQSxtQkFBbUIsaUJBQWlCLGlCQUFpQjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0EsZUFBZSx1REFBMEI7QUFDekM7QUFDQSxlQUFlLHVEQUEwQjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EsMkJBQTJCLGlCQUFpQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQSwyQkFBMkIsaUJBQWlCO0FBQzVDO0FBQ0E7QUFDQTtBQUNPLG9DQUFvQyxpREFBZ0I7QUFDM0Qsa0JBQWtCLHlCQUF5QjtBQUMzQyw4QkFBOEIsTUFBTTtBQUNwQztBQUNBLDRCQUE0Qix3REFBMkIsYUFBYTtBQUNwRSwyQkFBMkIsTUFBTSxHQUFHLE1BQU07QUFDMUM7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EsMkJBQTJCLGlCQUFpQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQSwyQkFBMkIsaUJBQWlCO0FBQzVDO0FBQ0E7QUFDQTtBQUNPLDRCQUE0QixpREFBZ0I7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHVDQUF1QyxpREFBZ0I7QUFDOUQsa0JBQWtCLG9DQUFvQztBQUN0RCxrREFBa0QsS0FBSyxrQkFBa0IsZUFBZSxlQUFlLFlBQVk7QUFDbkg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08scUNBQXFDLGlEQUFnQjtBQUM1RCxrQkFBa0Isc0JBQXNCO0FBQ3hDLGdDQUFnQyxNQUFNLFVBQVUseUNBQVEsUUFBUSx1Q0FBdUMsYUFBYTtBQUNwSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLGtDQUFrQyxpREFBZ0I7QUFDekQsa0JBQWtCLDhCQUE4QjtBQUNoRDtBQUNBO0FBQ0EsNkNBQTZDLGVBQWU7QUFDNUQsc0NBQXNDLFlBQVk7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxnQ0FBZ0MsaURBQWdCO0FBQ3ZEO0FBQ0EseUJBQXlCLE1BQU07QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0EsMkJBQTJCLGFBQWE7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDTywrQkFBK0IsaURBQWdCO0FBQ3REO0FBQ0Esd0JBQXdCLEtBQUs7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0FiaVBhcmFtZXRlcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYWJpdHlwZSBmcm9tICdhYml0eXBlJztcbmltcG9ydCAqIGFzIEFkZHJlc3MgZnJvbSAnLi9BZGRyZXNzLmpzJztcbmltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgRXJyb3JzIGZyb20gJy4vRXJyb3JzLmpzJztcbmltcG9ydCAqIGFzIEhleCBmcm9tICcuL0hleC5qcyc7XG5pbXBvcnQgKiBhcyBpbnRlcm5hbCBmcm9tICcuL2ludGVybmFsL2FiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0ICogYXMgQ3Vyc29yIGZyb20gJy4vaW50ZXJuYWwvY3Vyc29yLmpzJztcbmltcG9ydCAqIGFzIFNvbGlkaXR5IGZyb20gJy4vU29saWRpdHkuanMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGUocGFyYW1ldGVycywgZGF0YSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBhcyA9ICdBcnJheScsIGNoZWNrc3VtQWRkcmVzcyA9IGZhbHNlIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGJ5dGVzID0gdHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnID8gQnl0ZXMuZnJvbUhleChkYXRhKSA6IGRhdGE7XG4gICAgY29uc3QgY3Vyc29yID0gQ3Vyc29yLmNyZWF0ZShieXRlcyk7XG4gICAgaWYgKEJ5dGVzLnNpemUoYnl0ZXMpID09PSAwICYmIHBhcmFtZXRlcnMubGVuZ3RoID4gMClcbiAgICAgICAgdGhyb3cgbmV3IFplcm9EYXRhRXJyb3IoKTtcbiAgICBpZiAoQnl0ZXMuc2l6ZShieXRlcykgJiYgQnl0ZXMuc2l6ZShieXRlcykgPCAzMilcbiAgICAgICAgdGhyb3cgbmV3IERhdGFTaXplVG9vU21hbGxFcnJvcih7XG4gICAgICAgICAgICBkYXRhOiB0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycgPyBkYXRhIDogSGV4LmZyb21CeXRlcyhkYXRhKSxcbiAgICAgICAgICAgIHBhcmFtZXRlcnM6IHBhcmFtZXRlcnMsXG4gICAgICAgICAgICBzaXplOiBCeXRlcy5zaXplKGJ5dGVzKSxcbiAgICAgICAgfSk7XG4gICAgbGV0IGNvbnN1bWVkID0gMDtcbiAgICBjb25zdCB2YWx1ZXMgPSBhcyA9PT0gJ0FycmF5JyA/IFtdIDoge307XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IHBhcmFtID0gcGFyYW1ldGVyc1tpXTtcbiAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKGNvbnN1bWVkKTtcbiAgICAgICAgY29uc3QgW2RhdGEsIGNvbnN1bWVkX10gPSBpbnRlcm5hbC5kZWNvZGVQYXJhbWV0ZXIoY3Vyc29yLCBwYXJhbSwge1xuICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgc3RhdGljUG9zaXRpb246IDAsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdW1lZCArPSBjb25zdW1lZF87XG4gICAgICAgIGlmIChhcyA9PT0gJ0FycmF5JylcbiAgICAgICAgICAgIHZhbHVlcy5wdXNoKGRhdGEpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICB2YWx1ZXNbcGFyYW0ubmFtZSA/PyBpXSA9IGRhdGE7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZXM7XG59XG4vKipcbiAqIEVuY29kZXMgcHJpbWl0aXZlIHZhbHVlcyBpbnRvIEFCSSBlbmNvZGVkIGRhdGEgYXMgcGVyIHRoZSBbQXBwbGljYXRpb24gQmluYXJ5IEludGVyZmFjZSAoQUJJKSBTcGVjaWZpY2F0aW9uXShodHRwczovL2RvY3Muc29saWRpdHlsYW5nLm9yZy9lbi9sYXRlc3QvYWJpLXNwZWMpLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGRhdGEgPSBBYmlQYXJhbWV0ZXJzLmVuY29kZShcbiAqICAgQWJpUGFyYW1ldGVycy5mcm9tKFsnc3RyaW5nJywgJ3VpbnQnLCAnYm9vbCddKSxcbiAqICAgWyd3YWdtaScsIDQyMG4sIHRydWVdLFxuICogKVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBKU09OIFBhcmFtZXRlcnNcbiAqXG4gKiBTcGVjaWZ5ICoqSlNPTiBBQkkqKiBQYXJhbWV0ZXJzIGFzIHNjaGVtYTpcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGRhdGEgPSBBYmlQYXJhbWV0ZXJzLmVuY29kZShcbiAqICAgW1xuICogICAgIHsgdHlwZTogJ3N0cmluZycsIG5hbWU6ICduYW1lJyB9LFxuICogICAgIHsgdHlwZTogJ3VpbnQnLCBuYW1lOiAnYWdlJyB9LFxuICogICAgIHsgdHlwZTogJ2Jvb2wnLCBuYW1lOiAnaXNPd25lcicgfSxcbiAqICAgXSxcbiAqICAgWyd3YWdtaScsIDQyMG4sIHRydWVdLFxuICogKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSBUaGUgc2V0IG9mIEFCSSBwYXJhbWV0ZXJzIHRvIGVuY29kZSwgaW4gdGhlIHNoYXBlIG9mIHRoZSBgaW5wdXRzYCBvciBgb3V0cHV0c2AgYXR0cmlidXRlIG9mIGFuIEFCSSBJdGVtLiBUaGVzZSBwYXJhbWV0ZXJzIG11c3QgaW5jbHVkZSB2YWxpZCBbQUJJIHR5cGVzXShodHRwczovL2RvY3Muc29saWRpdHlsYW5nLm9yZy9lbi9sYXRlc3QvdHlwZXMuaHRtbCkuXG4gKiBAcGFyYW0gdmFsdWVzIC0gVGhlIHNldCBvZiBwcmltaXRpdmUgdmFsdWVzIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgQUJJIHR5cGVzIGRlZmluZWQgaW4gYHBhcmFtZXRlcnNgLlxuICogQHJldHVybnMgQUJJIGVuY29kZWQgZGF0YS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZShwYXJhbWV0ZXJzLCB2YWx1ZXMsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGNoZWNrc3VtQWRkcmVzcyA9IGZhbHNlIH0gPSBvcHRpb25zID8/IHt9O1xuICAgIGlmIChwYXJhbWV0ZXJzLmxlbmd0aCAhPT0gdmFsdWVzLmxlbmd0aClcbiAgICAgICAgdGhyb3cgbmV3IExlbmd0aE1pc21hdGNoRXJyb3Ioe1xuICAgICAgICAgICAgZXhwZWN0ZWRMZW5ndGg6IHBhcmFtZXRlcnMubGVuZ3RoLFxuICAgICAgICAgICAgZ2l2ZW5MZW5ndGg6IHZhbHVlcy5sZW5ndGgsXG4gICAgICAgIH0pO1xuICAgIC8vIFByZXBhcmUgdGhlIHBhcmFtZXRlcnMgdG8gZGV0ZXJtaW5lIGR5bmFtaWMgdHlwZXMgdG8gZW5jb2RlLlxuICAgIGNvbnN0IHByZXBhcmVkUGFyYW1ldGVycyA9IGludGVybmFsLnByZXBhcmVQYXJhbWV0ZXJzKHtcbiAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICBwYXJhbWV0ZXJzOiBwYXJhbWV0ZXJzLFxuICAgICAgICB2YWx1ZXM6IHZhbHVlcyxcbiAgICB9KTtcbiAgICBjb25zdCBkYXRhID0gaW50ZXJuYWwuZW5jb2RlKHByZXBhcmVkUGFyYW1ldGVycyk7XG4gICAgaWYgKGRhdGEubGVuZ3RoID09PSAwKVxuICAgICAgICByZXR1cm4gJzB4JztcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8qKlxuICogRW5jb2RlcyBhbiBhcnJheSBvZiBwcmltaXRpdmUgdmFsdWVzIHRvIGEgW3BhY2tlZCBBQkkgZW5jb2RpbmddKGh0dHBzOi8vZG9jcy5zb2xpZGl0eWxhbmcub3JnL2VuL2xhdGVzdC9hYmktc3BlYy5odG1sI25vbi1zdGFuZGFyZC1wYWNrZWQtbW9kZSkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBYmlQYXJhbWV0ZXJzIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgZW5jb2RlZCA9IEFiaVBhcmFtZXRlcnMuZW5jb2RlUGFja2VkKFxuICogICBbJ2FkZHJlc3MnLCAnc3RyaW5nJ10sXG4gKiAgIFsnMHhkOGRhNmJmMjY5NjRhZjlkN2VlZDllMDNlNTM0MTVkMzdhYTk2MDQ1JywgJ2hlbGxvIHdvcmxkJ10sXG4gKiApXG4gKiAvLyBAbG9nOiAnMHhkOGRhNmJmMjY5NjRhZjlkN2VlZDllMDNlNTM0MTVkMzdhYTk2MDQ1Njg2NTZjNmM2ZjIwNzc2ZjcyNmM2NCdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB0eXBlcyAtIFNldCBvZiBBQkkgdHlwZXMgdG8gcGFjayBlbmNvZGUuXG4gKiBAcGFyYW0gdmFsdWVzIC0gVGhlIHNldCBvZiBwcmltaXRpdmUgdmFsdWVzIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgQUJJIHR5cGVzIGRlZmluZWQgaW4gYHR5cGVzYC5cbiAqIEByZXR1cm5zIFRoZSBlbmNvZGVkIHBhY2tlZCBkYXRhLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlUGFja2VkKHR5cGVzLCB2YWx1ZXMpIHtcbiAgICBpZiAodHlwZXMubGVuZ3RoICE9PSB2YWx1ZXMubGVuZ3RoKVxuICAgICAgICB0aHJvdyBuZXcgTGVuZ3RoTWlzbWF0Y2hFcnJvcih7XG4gICAgICAgICAgICBleHBlY3RlZExlbmd0aDogdHlwZXMubGVuZ3RoLFxuICAgICAgICAgICAgZ2l2ZW5MZW5ndGg6IHZhbHVlcy5sZW5ndGgsXG4gICAgICAgIH0pO1xuICAgIGNvbnN0IGRhdGEgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHR5cGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSB0eXBlc1tpXTtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXNbaV07XG4gICAgICAgIGRhdGEucHVzaChlbmNvZGVQYWNrZWQuZW5jb2RlKHR5cGUsIHZhbHVlKSk7XG4gICAgfVxuICAgIHJldHVybiBIZXguY29uY2F0KC4uLmRhdGEpO1xufVxuKGZ1bmN0aW9uIChlbmNvZGVQYWNrZWQpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGZ1bmN0aW9uIGVuY29kZSh0eXBlLCB2YWx1ZSwgaXNBcnJheSA9IGZhbHNlKSB7XG4gICAgICAgIGlmICh0eXBlID09PSAnYWRkcmVzcycpIHtcbiAgICAgICAgICAgIGNvbnN0IGFkZHJlc3MgPSB2YWx1ZTtcbiAgICAgICAgICAgIEFkZHJlc3MuYXNzZXJ0KGFkZHJlc3MpO1xuICAgICAgICAgICAgcmV0dXJuIEhleC5wYWRMZWZ0KGFkZHJlc3MudG9Mb3dlckNhc2UoKSwgaXNBcnJheSA/IDMyIDogMCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGUgPT09ICdzdHJpbmcnKVxuICAgICAgICAgICAgcmV0dXJuIEhleC5mcm9tU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgaWYgKHR5cGUgPT09ICdieXRlcycpXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGlmICh0eXBlID09PSAnYm9vbCcpXG4gICAgICAgICAgICByZXR1cm4gSGV4LnBhZExlZnQoSGV4LmZyb21Cb29sZWFuKHZhbHVlKSwgaXNBcnJheSA/IDMyIDogMSk7XG4gICAgICAgIGNvbnN0IGludE1hdGNoID0gdHlwZS5tYXRjaChTb2xpZGl0eS5pbnRlZ2VyUmVnZXgpO1xuICAgICAgICBpZiAoaW50TWF0Y2gpIHtcbiAgICAgICAgICAgIGNvbnN0IFtfdHlwZSwgYmFzZVR5cGUsIGJpdHMgPSAnMjU2J10gPSBpbnRNYXRjaDtcbiAgICAgICAgICAgIGNvbnN0IHNpemUgPSBOdW1iZXIucGFyc2VJbnQoYml0cywgMTApIC8gODtcbiAgICAgICAgICAgIHJldHVybiBIZXguZnJvbU51bWJlcih2YWx1ZSwge1xuICAgICAgICAgICAgICAgIHNpemU6IGlzQXJyYXkgPyAzMiA6IHNpemUsXG4gICAgICAgICAgICAgICAgc2lnbmVkOiBiYXNlVHlwZSA9PT0gJ2ludCcsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBieXRlc01hdGNoID0gdHlwZS5tYXRjaChTb2xpZGl0eS5ieXRlc1JlZ2V4KTtcbiAgICAgICAgaWYgKGJ5dGVzTWF0Y2gpIHtcbiAgICAgICAgICAgIGNvbnN0IFtfdHlwZSwgc2l6ZV0gPSBieXRlc01hdGNoO1xuICAgICAgICAgICAgaWYgKE51bWJlci5wYXJzZUludChzaXplLCAxMCkgIT09ICh2YWx1ZS5sZW5ndGggLSAyKSAvIDIpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEJ5dGVzU2l6ZU1pc21hdGNoRXJyb3Ioe1xuICAgICAgICAgICAgICAgICAgICBleHBlY3RlZFNpemU6IE51bWJlci5wYXJzZUludChzaXplLCAxMCksXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiBIZXgucGFkUmlnaHQodmFsdWUsIGlzQXJyYXkgPyAzMiA6IDApO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFycmF5TWF0Y2ggPSB0eXBlLm1hdGNoKFNvbGlkaXR5LmFycmF5UmVnZXgpO1xuICAgICAgICBpZiAoYXJyYXlNYXRjaCAmJiBBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgY29uc3QgW190eXBlLCBjaGlsZFR5cGVdID0gYXJyYXlNYXRjaDtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBbXTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBkYXRhLnB1c2goZW5jb2RlKGNoaWxkVHlwZSwgdmFsdWVbaV0sIHRydWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChkYXRhLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgICAgICByZXR1cm4gJzB4JztcbiAgICAgICAgICAgIHJldHVybiBIZXguY29uY2F0KC4uLmRhdGEpO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHlwZUVycm9yKHR5cGUpO1xuICAgIH1cbiAgICBlbmNvZGVQYWNrZWQuZW5jb2RlID0gZW5jb2RlO1xufSkoZW5jb2RlUGFja2VkIHx8IChlbmNvZGVQYWNrZWQgPSB7fSkpO1xuLyoqXG4gKiBGb3JtYXRzIHtAbGluayBveCNBYmlQYXJhbWV0ZXJzLkFiaVBhcmFtZXRlcnN9IGludG8gKipIdW1hbiBSZWFkYWJsZSBBQkkgUGFyYW1ldGVycyoqLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGZvcm1hdHRlZCA9IEFiaVBhcmFtZXRlcnMuZm9ybWF0KFtcbiAqICAge1xuICogICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAqICAgICB0eXBlOiAnYWRkcmVzcycsXG4gKiAgIH0sXG4gKiAgIHtcbiAqICAgICBuYW1lOiAnYW1vdW50JyxcbiAqICAgICB0eXBlOiAndWludDI1NicsXG4gKiAgIH0sXG4gKiBdKVxuICpcbiAqIGZvcm1hdHRlZFxuICogLy8gICAgXj9cbiAqXG4gKlxuICogYGBgXG4gKlxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSBUaGUgQUJJIFBhcmFtZXRlcnMgdG8gZm9ybWF0LlxuICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCBBQkkgUGFyYW1ldGVycyAgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0KHBhcmFtZXRlcnMpIHtcbiAgICByZXR1cm4gYWJpdHlwZS5mb3JtYXRBYmlQYXJhbWV0ZXJzKHBhcmFtZXRlcnMpO1xufVxuLyoqXG4gKiBQYXJzZXMgYXJiaXRyYXJ5ICoqSlNPTiBBQkkgUGFyYW1ldGVycyoqIG9yICoqSHVtYW4gUmVhZGFibGUgQUJJIFBhcmFtZXRlcnMqKiBpbnRvIHR5cGVkIHtAbGluayBveCNBYmlQYXJhbWV0ZXJzLkFiaVBhcmFtZXRlcnN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgSlNPTiBQYXJhbWV0ZXJzXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaVBhcmFtZXRlcnMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwYXJhbWV0ZXJzID0gQWJpUGFyYW1ldGVycy5mcm9tKFtcbiAqICAge1xuICogICAgIG5hbWU6ICdzcGVuZGVyJyxcbiAqICAgICB0eXBlOiAnYWRkcmVzcycsXG4gKiAgIH0sXG4gKiAgIHtcbiAqICAgICBuYW1lOiAnYW1vdW50JyxcbiAqICAgICB0eXBlOiAndWludDI1NicsXG4gKiAgIH0sXG4gKiBdKVxuICpcbiAqIHBhcmFtZXRlcnNcbiAqIC8vXj9cbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIEh1bWFuIFJlYWRhYmxlIFBhcmFtZXRlcnNcbiAqXG4gKiBIdW1hbiBSZWFkYWJsZSBBQkkgUGFyYW1ldGVycyBjYW4gYmUgcGFyc2VkIGludG8gYSB0eXBlZCB7QGxpbmsgb3gjQWJpUGFyYW1ldGVycy5BYmlQYXJhbWV0ZXJzfTpcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHBhcmFtZXRlcnMgPSBBYmlQYXJhbWV0ZXJzLmZyb20oJ2FkZHJlc3Mgc3BlbmRlciwgdWludDI1NiBhbW91bnQnKVxuICpcbiAqIHBhcmFtZXRlcnNcbiAqIC8vXj9cbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogSXQgaXMgcG9zc2libGUgdG8gc3BlY2lmeSBgc3RydWN0YHMgYWxvbmcgd2l0aCB5b3VyIGRlZmluaXRpb25zOlxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBYmlQYXJhbWV0ZXJzIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcGFyYW1ldGVycyA9IEFiaVBhcmFtZXRlcnMuZnJvbShbXG4gKiAgICdzdHJ1Y3QgRm9vIHsgYWRkcmVzcyBzcGVuZGVyOyB1aW50MjU2IGFtb3VudDsgfScsIC8vIFshY29kZSBobF1cbiAqICAgJ0ZvbyBmb28sIGFkZHJlc3MgYmFyJyxcbiAqIF0pXG4gKlxuICogcGFyYW1ldGVyc1xuICogLy9eP1xuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICpcbiAqXG4gKlxuICogYGBgXG4gKlxuICpcbiAqXG4gKiBAcGFyYW0gcGFyYW1ldGVycyAtIFRoZSBBQkkgUGFyYW1ldGVycyB0byBwYXJzZS5cbiAqIEByZXR1cm5zIFRoZSB0eXBlZCBBQkkgUGFyYW1ldGVycy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb20ocGFyYW1ldGVycykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnMpICYmIHR5cGVvZiBwYXJhbWV0ZXJzWzBdID09PSAnc3RyaW5nJylcbiAgICAgICAgcmV0dXJuIGFiaXR5cGUucGFyc2VBYmlQYXJhbWV0ZXJzKHBhcmFtZXRlcnMpO1xuICAgIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gJ3N0cmluZycpXG4gICAgICAgIHJldHVybiBhYml0eXBlLnBhcnNlQWJpUGFyYW1ldGVycyhwYXJhbWV0ZXJzKTtcbiAgICByZXR1cm4gcGFyYW1ldGVycztcbn1cbi8qKlxuICogVGhyb3dzIHdoZW4gdGhlIGRhdGEgc2l6ZSBpcyB0b28gc21hbGwgZm9yIHRoZSBnaXZlbiBwYXJhbWV0ZXJzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICpcbiAqIEFiaVBhcmFtZXRlcnMuZGVjb2RlKFt7IHR5cGU6ICd1aW50MjU2JyB9XSwgJzB4MDEwZicpXG4gKiAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKGkSDinYwgMiBieXRlc1xuICogLy8gQGVycm9yOiBBYmlQYXJhbWV0ZXJzLkRhdGFTaXplVG9vU21hbGxFcnJvcjogRGF0YSBzaXplIG9mIDIgYnl0ZXMgaXMgdG9vIHNtYWxsIGZvciBnaXZlbiBwYXJhbWV0ZXJzLlxuICogLy8gQGVycm9yOiBQYXJhbXM6ICh1aW50MjU2KVxuICogLy8gQGVycm9yOiBEYXRhOiAgIDB4MDEwZiAoMiBieXRlcylcbiAqIGBgYFxuICpcbiAqICMjIyBTb2x1dGlvblxuICpcbiAqIFBhc3MgYSB2YWxpZCBkYXRhIHNpemUuXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaVBhcmFtZXRlcnMgfSBmcm9tICdveCdcbiAqXG4gKiBBYmlQYXJhbWV0ZXJzLmRlY29kZShbeyB0eXBlOiAndWludDI1NicgfV0sICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEwZicpXG4gKiAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKGkSDinIUgMzIgYnl0ZXNcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgRGF0YVNpemVUb29TbWFsbEVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBkYXRhLCBwYXJhbWV0ZXJzLCBzaXplLCB9KSB7XG4gICAgICAgIHN1cGVyKGBEYXRhIHNpemUgb2YgJHtzaXplfSBieXRlcyBpcyB0b28gc21hbGwgZm9yIGdpdmVuIHBhcmFtZXRlcnMuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAgICAgYFBhcmFtczogKCR7YWJpdHlwZS5mb3JtYXRBYmlQYXJhbWV0ZXJzKHBhcmFtZXRlcnMpfSlgLFxuICAgICAgICAgICAgICAgIGBEYXRhOiAgICR7ZGF0YX0gKCR7c2l6ZX0gYnl0ZXMpYCxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnQWJpUGFyYW1ldGVycy5EYXRhU2l6ZVRvb1NtYWxsRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3dzIHdoZW4gemVybyBkYXRhIGlzIHByb3ZpZGVkLCBidXQgZGF0YSBpcyBleHBlY3RlZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaVBhcmFtZXRlcnMgfSBmcm9tICdveCdcbiAqXG4gKiBBYmlQYXJhbWV0ZXJzLmRlY29kZShbeyB0eXBlOiAndWludDI1NicgfV0sICcweCcpXG4gKiAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDihpEg4p2MIHplcm8gZGF0YVxuICogLy8gQGVycm9yOiBBYmlQYXJhbWV0ZXJzLkRhdGFTaXplVG9vU21hbGxFcnJvcjogRGF0YSBzaXplIG9mIDIgYnl0ZXMgaXMgdG9vIHNtYWxsIGZvciBnaXZlbiBwYXJhbWV0ZXJzLlxuICogLy8gQGVycm9yOiBQYXJhbXM6ICh1aW50MjU2KVxuICogLy8gQGVycm9yOiBEYXRhOiAgIDB4MDEwZiAoMiBieXRlcylcbiAqIGBgYFxuICpcbiAqICMjIyBTb2x1dGlvblxuICpcbiAqIFBhc3MgdmFsaWQgZGF0YS5cbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICpcbiAqIEFiaVBhcmFtZXRlcnMuZGVjb2RlKFt7IHR5cGU6ICd1aW50MjU2JyB9XSwgJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTBmJylcbiAqIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4oaRIOKchSAzMiBieXRlc1xuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBaZXJvRGF0YUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCdDYW5ub3QgZGVjb2RlIHplcm8gZGF0YSAoXCIweFwiKSB3aXRoIEFCSSBwYXJhbWV0ZXJzLicpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnQWJpUGFyYW1ldGVycy5aZXJvRGF0YUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRoZSBsZW5ndGggb2YgdGhlIGFycmF5IHZhbHVlIGRvZXMgbm90IG1hdGNoIHRoZSBsZW5ndGggc3BlY2lmaWVkIGluIHRoZSBjb3JyZXNwb25kaW5nIEFCSSBwYXJhbWV0ZXIuXG4gKlxuICogIyMjIEV4YW1wbGVcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBBYmlQYXJhbWV0ZXJzIH0gZnJvbSAnb3gnXG4gKiAvLyAtLS1jdXQtLS1cbiAqIEFiaVBhcmFtZXRlcnMuZW5jb2RlKEFiaVBhcmFtZXRlcnMuZnJvbSgndWludDI1NlszXScpLCBbWzY5biwgNDIwbl1dKVxuICogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKGkSBleHBlY3RlZDogMyAg4oaRIOKdjCBsZW5ndGg6IDJcbiAqIC8vIEBlcnJvcjogQWJpUGFyYW1ldGVycy5BcnJheUxlbmd0aE1pc21hdGNoRXJyb3I6IEFCSSBlbmNvZGluZyBhcnJheSBsZW5ndGggbWlzbWF0Y2hcbiAqIC8vIEBlcnJvcjogZm9yIHR5cGUgYHVpbnQyNTZbM11gLiBFeHBlY3RlZDogYDNgLiBHaXZlbjogYDJgLlxuICogYGBgXG4gKlxuICogIyMjIFNvbHV0aW9uXG4gKlxuICogUGFzcyBhbiBhcnJheSBvZiB0aGUgY29ycmVjdCBsZW5ndGguXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFiaVBhcmFtZXRlcnMgfSBmcm9tICdveCdcbiAqIC8vIC0tLWN1dC0tLVxuICogQWJpUGFyYW1ldGVycy5lbmNvZGUoQWJpUGFyYW1ldGVycy5mcm9tKFsndWludDI1NlszXSddKSwgW1s2OW4sIDQyMG4sIDY5bl1dKVxuICogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDihpEg4pyFIGxlbmd0aDogM1xuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBBcnJheUxlbmd0aE1pc21hdGNoRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGV4cGVjdGVkTGVuZ3RoLCBnaXZlbkxlbmd0aCwgdHlwZSwgfSkge1xuICAgICAgICBzdXBlcihgQXJyYXkgbGVuZ3RoIG1pc21hdGNoIGZvciB0eXBlIFxcYCR7dHlwZX1cXGAuIEV4cGVjdGVkOiBcXGAke2V4cGVjdGVkTGVuZ3RofVxcYC4gR2l2ZW46IFxcYCR7Z2l2ZW5MZW5ndGh9XFxgLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnQWJpUGFyYW1ldGVycy5BcnJheUxlbmd0aE1pc21hdGNoRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhlIHNpemUgb2YgdGhlIGJ5dGVzIHZhbHVlIGRvZXMgbm90IG1hdGNoIHRoZSBzaXplIHNwZWNpZmllZCBpbiB0aGUgY29ycmVzcG9uZGluZyBBQkkgcGFyYW1ldGVyLlxuICpcbiAqICMjIyBFeGFtcGxlXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIC8vIEBub0Vycm9yc1xuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICogLy8gLS0tY3V0LS0tXG4gKiBBYmlQYXJhbWV0ZXJzLmVuY29kZShBYmlQYXJhbWV0ZXJzLmZyb20oJ2J5dGVzOCcpLCBbWycweGRlYWRiZWVmZGVhZGJlZWZkZWFkYmVlZiddXSlcbiAqIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDihpEgZXhwZWN0ZWQ6IDggYnl0ZXMgIOKGkSDinYwgc2l6ZTogMTIgYnl0ZXNcbiAqIC8vIEBlcnJvcjogQnl0ZXNTaXplTWlzbWF0Y2hFcnJvcjogU2l6ZSBvZiBieXRlcyBcIjB4ZGVhZGJlZWZkZWFkYmVlZmRlYWRiZWVmXCJcbiAqIC8vIEBlcnJvcjogKGJ5dGVzMTIpIGRvZXMgbm90IG1hdGNoIGV4cGVjdGVkIHNpemUgKGJ5dGVzOCkuXG4gKiBgYGBcbiAqXG4gKiAjIyMgU29sdXRpb25cbiAqXG4gKiBQYXNzIGEgYnl0ZXMgdmFsdWUgb2YgdGhlIGNvcnJlY3Qgc2l6ZS5cbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICogLy8gLS0tY3V0LS0tXG4gKiBBYmlQYXJhbWV0ZXJzLmVuY29kZShBYmlQYXJhbWV0ZXJzLmZyb20oWydieXRlczgnXSksIFsnMHhkZWFkYmVlZmRlYWRiZWVmJ10pXG4gKiAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDihpEg4pyFIHNpemU6IDggYnl0ZXNcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgQnl0ZXNTaXplTWlzbWF0Y2hFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgZXhwZWN0ZWRTaXplLCB2YWx1ZSwgfSkge1xuICAgICAgICBzdXBlcihgU2l6ZSBvZiBieXRlcyBcIiR7dmFsdWV9XCIgKGJ5dGVzJHtIZXguc2l6ZSh2YWx1ZSl9KSBkb2VzIG5vdCBtYXRjaCBleHBlY3RlZCBzaXplIChieXRlcyR7ZXhwZWN0ZWRTaXplfSkuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdBYmlQYXJhbWV0ZXJzLkJ5dGVzU2l6ZU1pc21hdGNoRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhlIGxlbmd0aCBvZiB0aGUgdmFsdWVzIHRvIGVuY29kZSBkb2VzIG5vdCBtYXRjaCB0aGUgbGVuZ3RoIG9mIHRoZSBBQkkgcGFyYW1ldGVycy5cbiAqXG4gKiAjIyMgRXhhbXBsZVxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiAvLyBAbm9FcnJvcnNcbiAqIGltcG9ydCB7IEFiaVBhcmFtZXRlcnMgfSBmcm9tICdveCdcbiAqIC8vIC0tLWN1dC0tLVxuICogQWJpUGFyYW1ldGVycy5lbmNvZGUoQWJpUGFyYW1ldGVycy5mcm9tKFsnc3RyaW5nJywgJ3VpbnQyNTYnXSksIFsnaGVsbG8nXSlcbiAqIC8vIEBlcnJvcjogTGVuZ3RoTWlzbWF0Y2hFcnJvcjogQUJJIGVuY29kaW5nIHBhcmFtcy92YWx1ZXMgbGVuZ3RoIG1pc21hdGNoLlxuICogLy8gQGVycm9yOiBFeHBlY3RlZCBsZW5ndGggKHBhcmFtcyk6IDJcbiAqIC8vIEBlcnJvcjogR2l2ZW4gbGVuZ3RoICh2YWx1ZXMpOiAxXG4gKiBgYGBcbiAqXG4gKiAjIyMgU29sdXRpb25cbiAqXG4gKiBQYXNzIHRoZSBjb3JyZWN0IG51bWJlciBvZiB2YWx1ZXMgdG8gZW5jb2RlLlxuICpcbiAqICMjIyBTb2x1dGlvblxuICpcbiAqIFBhc3MgYSBbdmFsaWQgQUJJIHR5cGVdKGh0dHBzOi8vZG9jcy5zb2xpZGl0eWxhbmcub3JnL2VuL2RldmVsb3AvYWJpLXNwZWMuaHRtbCN0eXBlcykuXG4gKi9cbmV4cG9ydCBjbGFzcyBMZW5ndGhNaXNtYXRjaEVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBleHBlY3RlZExlbmd0aCwgZ2l2ZW5MZW5ndGgsIH0pIHtcbiAgICAgICAgc3VwZXIoW1xuICAgICAgICAgICAgJ0FCSSBlbmNvZGluZyBwYXJhbWV0ZXJzL3ZhbHVlcyBsZW5ndGggbWlzbWF0Y2guJyxcbiAgICAgICAgICAgIGBFeHBlY3RlZCBsZW5ndGggKHBhcmFtZXRlcnMpOiAke2V4cGVjdGVkTGVuZ3RofWAsXG4gICAgICAgICAgICBgR2l2ZW4gbGVuZ3RoICh2YWx1ZXMpOiAke2dpdmVuTGVuZ3RofWAsXG4gICAgICAgIF0uam9pbignXFxuJykpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnQWJpUGFyYW1ldGVycy5MZW5ndGhNaXNtYXRjaEVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRoZSB2YWx1ZSBwcm92aWRlZCBpcyBub3QgYSB2YWxpZCBhcnJheSBhcyBzcGVjaWZpZWQgaW4gdGhlIGNvcnJlc3BvbmRpbmcgQUJJIHBhcmFtZXRlci5cbiAqXG4gKiAjIyMgRXhhbXBsZVxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiAvLyBAbm9FcnJvcnNcbiAqIGltcG9ydCB7IEFiaVBhcmFtZXRlcnMgfSBmcm9tICdveCdcbiAqIC8vIC0tLWN1dC0tLVxuICogQWJpUGFyYW1ldGVycy5lbmNvZGUoQWJpUGFyYW1ldGVycy5mcm9tKFsndWludDI1NlszXSddKSwgWzY5XSlcbiAqIGBgYFxuICpcbiAqICMjIyBTb2x1dGlvblxuICpcbiAqIFBhc3MgYW4gYXJyYXkgdmFsdWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQXJyYXlFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHZhbHVlKSB7XG4gICAgICAgIHN1cGVyKGBWYWx1ZSBcXGAke3ZhbHVlfVxcYCBpcyBub3QgYSB2YWxpZCBhcnJheS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0FiaVBhcmFtZXRlcnMuSW52YWxpZEFycmF5RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3dzIHdoZW4gdGhlIEFCSSBwYXJhbWV0ZXIgdHlwZSBpcyBpbnZhbGlkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWJpUGFyYW1ldGVycyB9IGZyb20gJ294J1xuICpcbiAqIEFiaVBhcmFtZXRlcnMuZGVjb2RlKFt7IHR5cGU6ICdsb2wnIH1dLCAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxMGYnKVxuICogLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKGkSDinYwgaW52YWxpZCB0eXBlXG4gKiAvLyBAZXJyb3I6IEFiaVBhcmFtZXRlcnMuSW52YWxpZFR5cGVFcnJvcjogVHlwZSBgbG9sYCBpcyBub3QgYSB2YWxpZCBBQkkgVHlwZS5cbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZFR5cGVFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHR5cGUpIHtcbiAgICAgICAgc3VwZXIoYFR5cGUgXFxgJHt0eXBlfVxcYCBpcyBub3QgYSB2YWxpZCBBQkkgVHlwZS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0FiaVBhcmFtZXRlcnMuSW52YWxpZFR5cGVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9QWJpUGFyYW1ldGVycy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Address.js": /*!****************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Address.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidAddressError: () => (/* binding */ InvalidAddressError),\n/* harmony export */ InvalidChecksumError: () => (/* binding */ InvalidChecksumError),\n/* harmony export */ InvalidInputError: () => (/* binding */ InvalidInputError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ checksum: () => (/* binding */ checksum),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromPublicKey: () => (/* binding */ fromPublicKey),\n/* harmony export */ isEqual: () => (/* binding */ isEqual),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Caches_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Caches.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Caches.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hash.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hash.js\");\n/* harmony import */ var _PublicKey_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./PublicKey.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/PublicKey.js\");\n\n\n\n\n\nconst addressRegex = /^0x[a-fA-F0-9]{40}$/;\n/**\n * Asserts that the given value is a valid {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.assert('0xA0Cf798816D4b9b9866b5330EEa46a18382f251e')\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.assert('0xdeadbeef')\n * // @error: InvalidAddressError: Address \"0xdeadbeef\" is invalid.\n * ```\n *\n * @param value - Value to assert if it is a valid address.\n * @param options - Assertion options.\n */\nfunction assert(value, options = {}) {\n const { strict = true } = options;\n if (!addressRegex.test(value))\n throw new InvalidAddressError({\n address: value,\n cause: new InvalidInputError(),\n });\n if (strict) {\n if (value.toLowerCase() === value)\n return;\n if (checksum(value) !== value)\n throw new InvalidAddressError({\n address: value,\n cause: new InvalidChecksumError(),\n });\n }\n}\n/**\n * Computes the checksum address for the given {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.checksum('0xa0cf798816d4b9b9866b5330eea46a18382f251e')\n * // @log: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'\n * ```\n *\n * @param address - The address to compute the checksum for.\n * @returns The checksummed address.\n */\nfunction checksum(address) {\n if (_Caches_js__WEBPACK_IMPORTED_MODULE_0__.checksum.has(address))\n return _Caches_js__WEBPACK_IMPORTED_MODULE_0__.checksum.get(address);\n assert(address, { strict: false });\n const hexAddress = address.substring(2).toLowerCase();\n const hash = _Hash_js__WEBPACK_IMPORTED_MODULE_1__.keccak256(_Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromString(hexAddress), { as: 'Bytes' });\n const characters = hexAddress.split('');\n for (let i = 0; i < 40; i += 2) {\n if (hash[i >> 1] >> 4 >= 8 && characters[i]) {\n characters[i] = characters[i].toUpperCase();\n }\n if ((hash[i >> 1] & 0x0f) >= 8 && characters[i + 1]) {\n characters[i + 1] = characters[i + 1].toUpperCase();\n }\n }\n const result = `0x${characters.join('')}`;\n _Caches_js__WEBPACK_IMPORTED_MODULE_0__.checksum.set(address, result);\n return result;\n}\n/**\n * Converts a stringified address to a typed (checksummed) {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('0xa0cf798816d4b9b9866b5330eea46a18382f251e')\n * // @log: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('0xa0cf798816d4b9b9866b5330eea46a18382f251e', {\n * checksum: false\n * })\n * // @log: '0xa0cf798816d4b9b9866b5330eea46a18382f251e'\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('hello')\n * // @error: InvalidAddressError: Address \"0xa\" is invalid.\n * ```\n *\n * @param address - An address string to convert to a typed Address.\n * @param options - Conversion options.\n * @returns The typed Address.\n */\nfunction from(address, options = {}) {\n const { checksum: checksumVal = false } = options;\n assert(address);\n if (checksumVal)\n return checksum(address);\n return address;\n}\n/**\n * Converts an ECDSA public key to an {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address, PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from(\n * '0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5',\n * )\n * const address = Address.fromPublicKey(publicKey)\n * // @log: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266'\n * ```\n *\n * @param publicKey - The ECDSA public key to convert to an {@link ox#Address.Address}.\n * @param options - Conversion options.\n * @returns The {@link ox#Address.Address} corresponding to the public key.\n */\nfunction fromPublicKey(publicKey, options = {}) {\n const address = _Hash_js__WEBPACK_IMPORTED_MODULE_1__.keccak256(`0x${_PublicKey_js__WEBPACK_IMPORTED_MODULE_3__.toHex(publicKey).slice(4)}`).substring(26);\n return from(`0x${address}`, options);\n}\n/**\n * Checks if two {@link ox#Address.Address} are equal.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.isEqual(\n * '0xa0cf798816d4b9b9866b5330eea46a18382f251e',\n * '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e'\n * )\n * // @log: true\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.isEqual(\n * '0xa0cf798816d4b9b9866b5330eea46a18382f251e',\n * '0xA0Cf798816D4b9b9866b5330EEa46a18382f251f'\n * )\n * // @log: false\n * ```\n *\n * @param addressA - The first address to compare.\n * @param addressB - The second address to compare.\n * @returns Whether the addresses are equal.\n */\nfunction isEqual(addressA, addressB) {\n assert(addressA, { strict: false });\n assert(addressB, { strict: false });\n return addressA.toLowerCase() === addressB.toLowerCase();\n}\n/**\n * Checks if the given address is a valid {@link ox#Address.Address}.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.validate('0xA0Cf798816D4b9b9866b5330EEa46a18382f251e')\n * // @log: true\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.validate('0xdeadbeef')\n * // @log: false\n * ```\n *\n * @param address - Value to check if it is a valid address.\n * @param options - Check options.\n * @returns Whether the address is a valid address.\n */\nfunction validate(address, options = {}) {\n const { strict = true } = options ?? {};\n try {\n assert(address, { strict });\n return true;\n }\n catch {\n return false;\n }\n}\n/**\n * Thrown when an address is invalid.\n *\n * @example\n * ```ts twoslash\n * import { Address } from 'ox'\n *\n * Address.from('0x123')\n * // @error: Address.InvalidAddressError: Address `0x123` is invalid.\n * ```\n */\nclass InvalidAddressError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ address, cause }) {\n super(`Address \"${address}\" is invalid.`, {\n cause,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Address.InvalidAddressError'\n });\n }\n}\n/** Thrown when an address is not a 20 byte (40 hexadecimal character) value. */\nclass InvalidInputError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor() {\n super('Address is not a 20 byte (40 hexadecimal character) value.');\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Address.InvalidInputError'\n });\n }\n}\n/** Thrown when an address does not match its checksum counterpart. */\nclass InvalidChecksumError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor() {\n super('Address does not match its checksum counterpart.');\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Address.InvalidChecksumError'\n });\n }\n}\n//# sourceMappingURL=Address.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQWRkcmVzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFvQztBQUNFO0FBQ0E7QUFDSjtBQUNVO0FBQzVDLHFDQUFxQyxHQUFHO0FBQ3hDO0FBQ0EsNENBQTRDLHlCQUF5QjtBQUNyRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxVQUFVO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxtQ0FBbUM7QUFDMUMsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELHlCQUF5QjtBQUN6RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsUUFBUSxnREFBZTtBQUN2QixlQUFlLGdEQUFlO0FBQzlCLHNCQUFzQixlQUFlO0FBQ3JDO0FBQ0EsaUJBQWlCLCtDQUFjLENBQUMsaURBQWdCLGdCQUFnQixhQUFhO0FBQzdFO0FBQ0Esb0JBQW9CLFFBQVE7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isb0JBQW9CO0FBQzVDLElBQUksZ0RBQWU7QUFDbkI7QUFDQTtBQUNBO0FBQ0EsNERBQTRELHlCQUF5QjtBQUNyRjtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sbUNBQW1DO0FBQzFDLFlBQVksZ0NBQWdDO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1Qyx5QkFBeUI7QUFDaEU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxxQkFBcUI7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZEQUE2RCx5QkFBeUI7QUFDdEY7QUFDQSxpQkFBaUIsMEJBQTBCO0FBQzNDO0FBQ08sOENBQThDO0FBQ3JELG9CQUFvQiwrQ0FBYyxNQUFNLGdEQUFlLHFCQUFxQjtBQUM1RSxxQkFBcUIsUUFBUTtBQUM3QjtBQUNBO0FBQ0Esa0JBQWtCLDBCQUEwQjtBQUM1QztBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFVBQVU7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCx1QkFBdUIsZUFBZTtBQUN0Qyx1QkFBdUIsZUFBZTtBQUN0QztBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMseUJBQXlCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBLFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyx1Q0FBdUM7QUFDOUMsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQSwwQkFBMEIsUUFBUTtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxVQUFVO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxrQ0FBa0MsaURBQWdCO0FBQ3pELGtCQUFrQixnQkFBZ0I7QUFDbEMsMEJBQTBCLFFBQVE7QUFDbEM7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTyxnQ0FBZ0MsaURBQWdCO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLG1DQUFtQyxpREFBZ0I7QUFDMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9BZGRyZXNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgQ2FjaGVzIGZyb20gJy4vQ2FjaGVzLmpzJztcbmltcG9ydCAqIGFzIEVycm9ycyBmcm9tICcuL0Vycm9ycy5qcyc7XG5pbXBvcnQgKiBhcyBIYXNoIGZyb20gJy4vSGFzaC5qcyc7XG5pbXBvcnQgKiBhcyBQdWJsaWNLZXkgZnJvbSAnLi9QdWJsaWNLZXkuanMnO1xuY29uc3QgYWRkcmVzc1JlZ2V4ID0gL14weFthLWZBLUYwLTldezQwfSQvO1xuLyoqXG4gKiBBc3NlcnRzIHRoYXQgdGhlIGdpdmVuIHZhbHVlIGlzIGEgdmFsaWQge0BsaW5rIG94I0FkZHJlc3MuQWRkcmVzc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBZGRyZXNzIH0gZnJvbSAnb3gnXG4gKlxuICogQWRkcmVzcy5hc3NlcnQoJzB4QTBDZjc5ODgxNkQ0YjliOTg2NmI1MzMwRUVhNDZhMTgzODJmMjUxZScpXG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFkZHJlc3MgfSBmcm9tICdveCdcbiAqXG4gKiBBZGRyZXNzLmFzc2VydCgnMHhkZWFkYmVlZicpXG4gKiAvLyBAZXJyb3I6IEludmFsaWRBZGRyZXNzRXJyb3I6IEFkZHJlc3MgXCIweGRlYWRiZWVmXCIgaXMgaW52YWxpZC5cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIGFzc2VydCBpZiBpdCBpcyBhIHZhbGlkIGFkZHJlc3MuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEFzc2VydGlvbiBvcHRpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHN0cmljdCA9IHRydWUgfSA9IG9wdGlvbnM7XG4gICAgaWYgKCFhZGRyZXNzUmVnZXgudGVzdCh2YWx1ZSkpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQWRkcmVzc0Vycm9yKHtcbiAgICAgICAgICAgIGFkZHJlc3M6IHZhbHVlLFxuICAgICAgICAgICAgY2F1c2U6IG5ldyBJbnZhbGlkSW5wdXRFcnJvcigpLFxuICAgICAgICB9KTtcbiAgICBpZiAoc3RyaWN0KSB7XG4gICAgICAgIGlmICh2YWx1ZS50b0xvd2VyQ2FzZSgpID09PSB2YWx1ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKGNoZWNrc3VtKHZhbHVlKSAhPT0gdmFsdWUpXG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFkZHJlc3NFcnJvcih7XG4gICAgICAgICAgICAgICAgYWRkcmVzczogdmFsdWUsXG4gICAgICAgICAgICAgICAgY2F1c2U6IG5ldyBJbnZhbGlkQ2hlY2tzdW1FcnJvcigpLFxuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBDb21wdXRlcyB0aGUgY2hlY2tzdW0gYWRkcmVzcyBmb3IgdGhlIGdpdmVuIHtAbGluayBveCNBZGRyZXNzLkFkZHJlc3N9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWRkcmVzcyB9IGZyb20gJ294J1xuICpcbiAqIEFkZHJlc3MuY2hlY2tzdW0oJzB4YTBjZjc5ODgxNmQ0YjliOTg2NmI1MzMwZWVhNDZhMTgzODJmMjUxZScpXG4gKiAvLyBAbG9nOiAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIGFkZHJlc3MgLSBUaGUgYWRkcmVzcyB0byBjb21wdXRlIHRoZSBjaGVja3N1bSBmb3IuXG4gKiBAcmV0dXJucyBUaGUgY2hlY2tzdW1tZWQgYWRkcmVzcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrc3VtKGFkZHJlc3MpIHtcbiAgICBpZiAoQ2FjaGVzLmNoZWNrc3VtLmhhcyhhZGRyZXNzKSlcbiAgICAgICAgcmV0dXJuIENhY2hlcy5jaGVja3N1bS5nZXQoYWRkcmVzcyk7XG4gICAgYXNzZXJ0KGFkZHJlc3MsIHsgc3RyaWN0OiBmYWxzZSB9KTtcbiAgICBjb25zdCBoZXhBZGRyZXNzID0gYWRkcmVzcy5zdWJzdHJpbmcoMikudG9Mb3dlckNhc2UoKTtcbiAgICBjb25zdCBoYXNoID0gSGFzaC5rZWNjYWsyNTYoQnl0ZXMuZnJvbVN0cmluZyhoZXhBZGRyZXNzKSwgeyBhczogJ0J5dGVzJyB9KTtcbiAgICBjb25zdCBjaGFyYWN0ZXJzID0gaGV4QWRkcmVzcy5zcGxpdCgnJyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA0MDsgaSArPSAyKSB7XG4gICAgICAgIGlmIChoYXNoW2kgPj4gMV0gPj4gNCA+PSA4ICYmIGNoYXJhY3RlcnNbaV0pIHtcbiAgICAgICAgICAgIGNoYXJhY3RlcnNbaV0gPSBjaGFyYWN0ZXJzW2ldLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKChoYXNoW2kgPj4gMV0gJiAweDBmKSA+PSA4ICYmIGNoYXJhY3RlcnNbaSArIDFdKSB7XG4gICAgICAgICAgICBjaGFyYWN0ZXJzW2kgKyAxXSA9IGNoYXJhY3RlcnNbaSArIDFdLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gYDB4JHtjaGFyYWN0ZXJzLmpvaW4oJycpfWA7XG4gICAgQ2FjaGVzLmNoZWNrc3VtLnNldChhZGRyZXNzLCByZXN1bHQpO1xuICAgIHJldHVybiByZXN1bHQ7XG59XG4vKipcbiAqIENvbnZlcnRzIGEgc3RyaW5naWZpZWQgYWRkcmVzcyB0byBhIHR5cGVkIChjaGVja3N1bW1lZCkge0BsaW5rIG94I0FkZHJlc3MuQWRkcmVzc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBZGRyZXNzIH0gZnJvbSAnb3gnXG4gKlxuICogQWRkcmVzcy5mcm9tKCcweGEwY2Y3OTg4MTZkNGI5Yjk4NjZiNTMzMGVlYTQ2YTE4MzgyZjI1MWUnKVxuICogLy8gQGxvZzogJzB4QTBDZjc5ODgxNkQ0YjliOTg2NmI1MzMwRUVhNDZhMTgzODJmMjUxZSdcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWRkcmVzcyB9IGZyb20gJ294J1xuICpcbiAqIEFkZHJlc3MuZnJvbSgnMHhhMGNmNzk4ODE2ZDRiOWI5ODY2YjUzMzBlZWE0NmExODM4MmYyNTFlJywge1xuICogICBjaGVja3N1bTogZmFsc2VcbiAqIH0pXG4gKiAvLyBAbG9nOiAnMHhhMGNmNzk4ODE2ZDRiOWI5ODY2YjUzMzBlZWE0NmExODM4MmYyNTFlJ1xuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBZGRyZXNzIH0gZnJvbSAnb3gnXG4gKlxuICogQWRkcmVzcy5mcm9tKCdoZWxsbycpXG4gKiAvLyBAZXJyb3I6IEludmFsaWRBZGRyZXNzRXJyb3I6IEFkZHJlc3MgXCIweGFcIiBpcyBpbnZhbGlkLlxuICogYGBgXG4gKlxuICogQHBhcmFtIGFkZHJlc3MgLSBBbiBhZGRyZXNzIHN0cmluZyB0byBjb252ZXJ0IHRvIGEgdHlwZWQgQWRkcmVzcy5cbiAqIEBwYXJhbSBvcHRpb25zIC0gQ29udmVyc2lvbiBvcHRpb25zLlxuICogQHJldHVybnMgVGhlIHR5cGVkIEFkZHJlc3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKGFkZHJlc3MsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgY2hlY2tzdW06IGNoZWNrc3VtVmFsID0gZmFsc2UgfSA9IG9wdGlvbnM7XG4gICAgYXNzZXJ0KGFkZHJlc3MpO1xuICAgIGlmIChjaGVja3N1bVZhbClcbiAgICAgICAgcmV0dXJuIGNoZWNrc3VtKGFkZHJlc3MpO1xuICAgIHJldHVybiBhZGRyZXNzO1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhbiBFQ0RTQSBwdWJsaWMga2V5IHRvIGFuIHtAbGluayBveCNBZGRyZXNzLkFkZHJlc3N9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWRkcmVzcywgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb20oXG4gKiAgICcweDA0ODMxODUzNWI1NDEwNWQ0YTdhYWU2MGMwOGZjNDVmOTY4NzE4MWI0ZmRmYzYyNWJkMWE3NTNmYTczOTdmZWQ3NTM1NDdmMTFjYTg2OTY2NDZmMmYzYWNiMDhlMzEwMTZhZmFjMjNlNjMwYzVkMTFmNTlmNjFmZWY1N2IwZDJhYTUnLFxuICogKVxuICogY29uc3QgYWRkcmVzcyA9IEFkZHJlc3MuZnJvbVB1YmxpY0tleShwdWJsaWNLZXkpXG4gKiAvLyBAbG9nOiAnMHhmMzlmZDZlNTFhYWQ4OGY2ZjRjZTZhYjg4MjcyNzljZmZmYjkyMjY2J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHB1YmxpY0tleSAtIFRoZSBFQ0RTQSBwdWJsaWMga2V5IHRvIGNvbnZlcnQgdG8gYW4ge0BsaW5rIG94I0FkZHJlc3MuQWRkcmVzc30uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIENvbnZlcnNpb24gb3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSB7QGxpbmsgb3gjQWRkcmVzcy5BZGRyZXNzfSBjb3JyZXNwb25kaW5nIHRvIHRoZSBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbVB1YmxpY0tleShwdWJsaWNLZXksIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IGFkZHJlc3MgPSBIYXNoLmtlY2NhazI1NihgMHgke1B1YmxpY0tleS50b0hleChwdWJsaWNLZXkpLnNsaWNlKDQpfWApLnN1YnN0cmluZygyNik7XG4gICAgcmV0dXJuIGZyb20oYDB4JHthZGRyZXNzfWAsIG9wdGlvbnMpO1xufVxuLyoqXG4gKiBDaGVja3MgaWYgdHdvIHtAbGluayBveCNBZGRyZXNzLkFkZHJlc3N9IGFyZSBlcXVhbC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEFkZHJlc3MgfSBmcm9tICdveCdcbiAqXG4gKiBBZGRyZXNzLmlzRXF1YWwoXG4gKiAgICcweGEwY2Y3OTg4MTZkNGI5Yjk4NjZiNTMzMGVlYTQ2YTE4MzgyZjI1MWUnLFxuICogICAnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJ1xuICogKVxuICogLy8gQGxvZzogdHJ1ZVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBZGRyZXNzIH0gZnJvbSAnb3gnXG4gKlxuICogQWRkcmVzcy5pc0VxdWFsKFxuICogICAnMHhhMGNmNzk4ODE2ZDRiOWI5ODY2YjUzMzBlZWE0NmExODM4MmYyNTFlJyxcbiAqICAgJzB4QTBDZjc5ODgxNkQ0YjliOTg2NmI1MzMwRUVhNDZhMTgzODJmMjUxZidcbiAqIClcbiAqIC8vIEBsb2c6IGZhbHNlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYWRkcmVzc0EgLSBUaGUgZmlyc3QgYWRkcmVzcyB0byBjb21wYXJlLlxuICogQHBhcmFtIGFkZHJlc3NCIC0gVGhlIHNlY29uZCBhZGRyZXNzIHRvIGNvbXBhcmUuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhZGRyZXNzZXMgYXJlIGVxdWFsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNFcXVhbChhZGRyZXNzQSwgYWRkcmVzc0IpIHtcbiAgICBhc3NlcnQoYWRkcmVzc0EsIHsgc3RyaWN0OiBmYWxzZSB9KTtcbiAgICBhc3NlcnQoYWRkcmVzc0IsIHsgc3RyaWN0OiBmYWxzZSB9KTtcbiAgICByZXR1cm4gYWRkcmVzc0EudG9Mb3dlckNhc2UoKSA9PT0gYWRkcmVzc0IudG9Mb3dlckNhc2UoKTtcbn1cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBhZGRyZXNzIGlzIGEgdmFsaWQge0BsaW5rIG94I0FkZHJlc3MuQWRkcmVzc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBZGRyZXNzIH0gZnJvbSAnb3gnXG4gKlxuICogQWRkcmVzcy52YWxpZGF0ZSgnMHhBMENmNzk4ODE2RDRiOWI5ODY2YjUzMzBFRWE0NmExODM4MmYyNTFlJylcbiAqIC8vIEBsb2c6IHRydWVcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQWRkcmVzcyB9IGZyb20gJ294J1xuICpcbiAqIEFkZHJlc3MudmFsaWRhdGUoJzB4ZGVhZGJlZWYnKVxuICogLy8gQGxvZzogZmFsc2VcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBhZGRyZXNzIC0gVmFsdWUgdG8gY2hlY2sgaWYgaXQgaXMgYSB2YWxpZCBhZGRyZXNzLlxuICogQHBhcmFtIG9wdGlvbnMgLSBDaGVjayBvcHRpb25zLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYWRkcmVzcyBpcyBhIHZhbGlkIGFkZHJlc3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZShhZGRyZXNzLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHN0cmljdCA9IHRydWUgfSA9IG9wdGlvbnMgPz8ge307XG4gICAgdHJ5IHtcbiAgICAgICAgYXNzZXJ0KGFkZHJlc3MsIHsgc3RyaWN0IH0pO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY2F0Y2gge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiBhbiBhZGRyZXNzIGlzIGludmFsaWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBZGRyZXNzIH0gZnJvbSAnb3gnXG4gKlxuICogQWRkcmVzcy5mcm9tKCcweDEyMycpXG4gKiAvLyBAZXJyb3I6IEFkZHJlc3MuSW52YWxpZEFkZHJlc3NFcnJvcjogQWRkcmVzcyBgMHgxMjNgIGlzIGludmFsaWQuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRBZGRyZXNzRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGFkZHJlc3MsIGNhdXNlIH0pIHtcbiAgICAgICAgc3VwZXIoYEFkZHJlc3MgXCIke2FkZHJlc3N9XCIgaXMgaW52YWxpZC5gLCB7XG4gICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdBZGRyZXNzLkludmFsaWRBZGRyZXNzRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiBhbiBhZGRyZXNzIGlzIG5vdCBhIDIwIGJ5dGUgKDQwIGhleGFkZWNpbWFsIGNoYXJhY3RlcikgdmFsdWUuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZElucHV0RXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoJ0FkZHJlc3MgaXMgbm90IGEgMjAgYnl0ZSAoNDAgaGV4YWRlY2ltYWwgY2hhcmFjdGVyKSB2YWx1ZS4nKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0FkZHJlc3MuSW52YWxpZElucHV0RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiBhbiBhZGRyZXNzIGRvZXMgbm90IG1hdGNoIGl0cyBjaGVja3N1bSBjb3VudGVycGFydC4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQ2hlY2tzdW1FcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcignQWRkcmVzcyBkb2VzIG5vdCBtYXRjaCBpdHMgY2hlY2tzdW0gY291bnRlcnBhcnQuJyk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdBZGRyZXNzLkludmFsaWRDaGVja3N1bUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1BZGRyZXNzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Address.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Authorization.js": /*!**********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Authorization.js ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromRpc: () => (/* binding */ fromRpc),\n/* harmony export */ fromRpcList: () => (/* binding */ fromRpcList),\n/* harmony export */ fromTuple: () => (/* binding */ fromTuple),\n/* harmony export */ fromTupleList: () => (/* binding */ fromTupleList),\n/* harmony export */ getSignPayload: () => (/* binding */ getSignPayload),\n/* harmony export */ hash: () => (/* binding */ hash),\n/* harmony export */ toRpc: () => (/* binding */ toRpc),\n/* harmony export */ toRpcList: () => (/* binding */ toRpcList),\n/* harmony export */ toTuple: () => (/* binding */ toTuple),\n/* harmony export */ toTupleList: () => (/* binding */ toTupleList)\n/* harmony export */ });\n/* harmony import */ var _Hash_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hash.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hash.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Rlp_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Rlp.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Rlp.js\");\n/* harmony import */ var _Signature_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Signature.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Signature.js\");\n\n\n\n\n/**\n * Converts an [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization object into a typed {@link ox#Authorization.Authorization}.\n *\n * @example\n * An Authorization can be instantiated from an [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization tuple in object format.\n *\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.from({\n * address: '0x1234567890abcdef1234567890abcdef12345678',\n * chainId: 1,\n * nonce: 69n,\n * })\n * ```\n *\n * @example\n * ### Attaching Signatures\n *\n * A {@link ox#Signature.Signature} can be attached with the `signature` option. The example below demonstrates signing\n * an Authorization with {@link ox#Secp256k1.(sign:function)}.\n *\n * ```ts twoslash\n * import { Authorization, Secp256k1 } from 'ox'\n *\n * const authorization = Authorization.from({\n * address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * chainId: 1,\n * nonce: 40n,\n * })\n *\n * const signature = Secp256k1.sign({\n * payload: Authorization.getSignPayload(authorization),\n * privateKey: '0x...',\n * })\n *\n * const authorization_signed = Authorization.from(authorization, { signature }) // [!code focus]\n * ```\n *\n * @param authorization - An [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization tuple in object format.\n * @param options - Authorization options.\n * @returns The {@link ox#Authorization.Authorization}.\n */\nfunction from(authorization, options = {}) {\n if (typeof authorization.chainId === 'string')\n return fromRpc(authorization);\n return { ...authorization, ...options.signature };\n}\n/**\n * Converts an {@link ox#Authorization.Rpc} to an {@link ox#Authorization.Authorization}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.fromRpc({\n * address: '0x0000000000000000000000000000000000000000',\n * chainId: '0x1',\n * nonce: '0x1',\n * r: '0x635dc2033e60185bb36709c29c75d64ea51dfbd91c32ef4be198e4ceb169fb4d',\n * s: '0x50c2667ac4c771072746acfdcf1f1483336dcca8bd2df47cd83175dbe60f0540',\n * yParity: '0x0',\n * })\n * ```\n *\n * @param authorization - The RPC-formatted Authorization.\n * @returns A signed {@link ox#Authorization.Authorization}.\n */\nfunction fromRpc(authorization) {\n const { address, chainId, nonce } = authorization;\n const signature = _Signature_js__WEBPACK_IMPORTED_MODULE_0__.extract(authorization);\n return {\n address,\n chainId: Number(chainId),\n nonce: BigInt(nonce),\n ...signature,\n };\n}\n/**\n * Converts an {@link ox#Authorization.ListRpc} to an {@link ox#Authorization.List}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorizationList = Authorization.fromRpcList([{\n * address: '0x0000000000000000000000000000000000000000',\n * chainId: '0x1',\n * nonce: '0x1',\n * r: '0x635dc2033e60185bb36709c29c75d64ea51dfbd91c32ef4be198e4ceb169fb4d',\n * s: '0x50c2667ac4c771072746acfdcf1f1483336dcca8bd2df47cd83175dbe60f0540',\n * yParity: '0x0',\n * }])\n * ```\n *\n * @param authorizationList - The RPC-formatted Authorization list.\n * @returns A signed {@link ox#Authorization.List}.\n */\nfunction fromRpcList(authorizationList) {\n return authorizationList.map(fromRpc);\n}\n/**\n * Converts an {@link ox#Authorization.Tuple} to an {@link ox#Authorization.Authorization}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.fromTuple([\n * '0x1',\n * '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * '0x3'\n * ])\n * // @log: {\n * // @log: address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * // @log: chainId: 1,\n * // @log: nonce: 3n\n * // @log: }\n * ```\n *\n * @example\n * It is also possible to append a Signature tuple to the end of an Authorization tuple.\n *\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.fromTuple([\n * '0x1',\n * '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * '0x3',\n * '0x1',\n * '0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90',\n * '0x7e865ad05c4035ab5792787d4a0297a43617ae897930a6fe4d822b8faea52064',\n * ])\n * // @log: {\n * // @log: address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * // @log: chainId: 1,\n * // @log: nonce: 3n\n * // @log: r: BigInt('0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90'),\n * // @log: s: BigInt('0x7e865ad05c4035ab5792787d4a0297a43617ae897930a6fe4d822b8faea52064'),\n * // @log: yParity: 0,\n * // @log: }\n * ```\n *\n * @param tuple - The [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization tuple.\n * @returns The {@link ox#Authorization.Authorization}.\n */\nfunction fromTuple(tuple) {\n const [chainId, address, nonce, yParity, r, s] = tuple;\n let args = {\n address,\n chainId: chainId === '0x' ? 0 : Number(chainId),\n nonce: nonce === '0x' ? 0n : BigInt(nonce),\n };\n if (yParity && r && s)\n args = { ...args, ..._Signature_js__WEBPACK_IMPORTED_MODULE_0__.fromTuple([yParity, r, s]) };\n return from(args);\n}\n/**\n * Converts an {@link ox#Authorization.TupleList} to an {@link ox#Authorization.List}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorizationList = Authorization.fromTupleList([\n * ['0x1', '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c', '0x3'],\n * ['0x3', '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c', '0x14'],\n * ])\n * // @log: [\n * // @log: {\n * // @log: address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * // @log: chainId: 1,\n * // @log: nonce: 3n,\n * // @log: },\n * // @log: {\n * // @log: address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * // @log: chainId: 3,\n * // @log: nonce: 20n,\n * // @log: },\n * // @log: ]\n * ```\n *\n * @example\n * It is also possible to append a Signature tuple to the end of an Authorization tuple.\n *\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorizationList = Authorization.fromTupleList([\n * ['0x1', '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c', '0x3', '0x1', '0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90', '0x7e865ad05c4035ab5792787d4a0297a43617ae897930a6fe4d822b8faea52064'],\n * ['0x3', '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c', '0x14', '0x1', '0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90', '0x7e865ad05c4035ab5792787d4a0297a43617ae897930a6fe4d822b8faea52064'],\n * ])\n * // @log: [\n * // @log: {\n * // @log: address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * // @log: chainId: 1,\n * // @log: nonce: 3n,\n * // @log: r: BigInt('0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90'),\n * // @log: s: BigInt('0x7e865ad05c4035ab5792787d4a0297a43617ae897930a6fe4d822b8faea52064'),\n * // @log: yParity: 0,\n * // @log: },\n * // @log: {\n * // @log: address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',\n * // @log: chainId: 3,\n * // @log: nonce: 20n,\n * // @log: r: BigInt('0x68a020a209d3d56c46f38cc50a33f704f4a9a10a59377f8dd762ac66910e9b90'),\n * // @log: s: BigInt('0x7e865ad05c4035ab5792787d4a0297a43617ae897930a6fe4d822b8faea52064'),\n * // @log: yParity: 0,\n * // @log: },\n * // @log: ]\n * ```\n *\n * @param tupleList - The [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization tuple list.\n * @returns An {@link ox#Authorization.List}.\n */\nfunction fromTupleList(tupleList) {\n const list = [];\n for (const tuple of tupleList)\n list.push(fromTuple(tuple));\n return list;\n}\n/**\n * Computes the sign payload for an {@link ox#Authorization.Authorization} in [EIP-7702 format](https://eips.ethereum.org/EIPS/eip-7702): `keccak256('0x05' || rlp([chain_id, address, nonce]))`.\n *\n * @example\n * The example below demonstrates computing the sign payload for an {@link ox#Authorization.Authorization}. This payload\n * can then be passed to signing functions like {@link ox#Secp256k1.(sign:function)}.\n *\n * ```ts twoslash\n * import { Authorization, Secp256k1 } from 'ox'\n *\n * const authorization = Authorization.from({\n * address: '0x1234567890abcdef1234567890abcdef12345678',\n * chainId: 1,\n * nonce: 69n,\n * })\n *\n * const payload = Authorization.getSignPayload(authorization) // [!code focus]\n *\n * const signature = Secp256k1.sign({\n * payload,\n * privateKey: '0x...',\n * })\n * ```\n *\n * @param authorization - The {@link ox#Authorization.Authorization}.\n * @returns The sign payload.\n */\nfunction getSignPayload(authorization) {\n return hash(authorization, { presign: true });\n}\n/**\n * Computes the hash for an {@link ox#Authorization.Authorization} in [EIP-7702 format](https://eips.ethereum.org/EIPS/eip-7702): `keccak256('0x05' || rlp([chain_id, address, nonce]))`.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.from({\n * address: '0x1234567890abcdef1234567890abcdef12345678',\n * chainId: 1,\n * nonce: 69n,\n * })\n *\n * const hash = Authorization.hash(authorization) // [!code focus]\n * ```\n *\n * @param authorization - The {@link ox#Authorization.Authorization}.\n * @returns The hash.\n */\nfunction hash(authorization, options = {}) {\n const { presign } = options;\n return _Hash_js__WEBPACK_IMPORTED_MODULE_1__.keccak256(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat('0x05', _Rlp_js__WEBPACK_IMPORTED_MODULE_3__.fromHex(toTuple(presign\n ? {\n address: authorization.address,\n chainId: authorization.chainId,\n nonce: authorization.nonce,\n }\n : authorization))));\n}\n/**\n * Converts an {@link ox#Authorization.Authorization} to an {@link ox#Authorization.Rpc}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.toRpc({\n * address: '0x0000000000000000000000000000000000000000',\n * chainId: 1,\n * nonce: 1n,\n * r: 44944627813007772897391531230081695102703289123332187696115181104739239197517n,\n * s: 36528503505192438307355164441104001310566505351980369085208178712678799181120n,\n * yParity: 0,\n * })\n * ```\n *\n * @param authorization - An Authorization.\n * @returns An RPC-formatted Authorization.\n */\nfunction toRpc(authorization) {\n const { address, chainId, nonce, ...signature } = authorization;\n return {\n address,\n chainId: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(chainId),\n nonce: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(nonce),\n ..._Signature_js__WEBPACK_IMPORTED_MODULE_0__.toRpc(signature),\n };\n}\n/**\n * Converts an {@link ox#Authorization.List} to an {@link ox#Authorization.ListRpc}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.toRpcList([{\n * address: '0x0000000000000000000000000000000000000000',\n * chainId: 1,\n * nonce: 1n,\n * r: 44944627813007772897391531230081695102703289123332187696115181104739239197517n,\n * s: 36528503505192438307355164441104001310566505351980369085208178712678799181120n,\n * yParity: 0,\n * }])\n * ```\n *\n * @param authorizationList - An Authorization List.\n * @returns An RPC-formatted Authorization List.\n */\nfunction toRpcList(authorizationList) {\n return authorizationList.map(toRpc);\n}\n/**\n * Converts an {@link ox#Authorization.Authorization} to an {@link ox#Authorization.Tuple}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization = Authorization.from({\n * address: '0x1234567890abcdef1234567890abcdef12345678',\n * chainId: 1,\n * nonce: 69n,\n * })\n *\n * const tuple = Authorization.toTuple(authorization) // [!code focus]\n * // @log: [\n * // @log: address: '0x1234567890abcdef1234567890abcdef12345678',\n * // @log: chainId: 1,\n * // @log: nonce: 69n,\n * // @log: ]\n * ```\n *\n * @param authorization - The {@link ox#Authorization.Authorization}.\n * @returns An [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization tuple.\n */\nfunction toTuple(authorization) {\n const { address, chainId, nonce } = authorization;\n const signature = _Signature_js__WEBPACK_IMPORTED_MODULE_0__.extract(authorization);\n return [\n chainId ? _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(chainId) : '0x',\n address,\n nonce ? _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(nonce) : '0x',\n ...(signature ? _Signature_js__WEBPACK_IMPORTED_MODULE_0__.toTuple(signature) : []),\n ];\n}\n/**\n * Converts an {@link ox#Authorization.List} to an {@link ox#Authorization.TupleList}.\n *\n * @example\n * ```ts twoslash\n * import { Authorization } from 'ox'\n *\n * const authorization_1 = Authorization.from({\n * address: '0x1234567890abcdef1234567890abcdef12345678',\n * chainId: 1,\n * nonce: 69n,\n * })\n * const authorization_2 = Authorization.from({\n * address: '0x1234567890abcdef1234567890abcdef12345678',\n * chainId: 3,\n * nonce: 20n,\n * })\n *\n * const tuple = Authorization.toTupleList([authorization_1, authorization_2]) // [!code focus]\n * // @log: [\n * // @log: [\n * // @log: address: '0x1234567890abcdef1234567890abcdef12345678',\n * // @log: chainId: 1,\n * // @log: nonce: 69n,\n * // @log: ],\n * // @log: [\n * // @log: address: '0x1234567890abcdef1234567890abcdef12345678',\n * // @log: chainId: 3,\n * // @log: nonce: 20n,\n * // @log: ],\n * // @log: ]\n * ```\n *\n * @param list - An {@link ox#Authorization.List}.\n * @returns An [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) Authorization tuple list.\n */\nfunction toTupleList(list) {\n if (!list || list.length === 0)\n return [];\n const tupleList = [];\n for (const authorization of list)\n tupleList.push(toTuple(authorization));\n return tupleList;\n}\n//# sourceMappingURL=Authorization.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQXV0aG9yaXphdGlvbi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBa0M7QUFDRjtBQUNBO0FBQ1k7QUFDNUM7QUFDQSxzR0FBc0cscUNBQXFDO0FBQzNJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNLDhCQUE4QjtBQUNwQywwQkFBMEIsbUNBQW1DO0FBQzdEO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0Esb0VBQW9FLFdBQVc7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIscUNBQXFDO0FBQ3REO0FBQ08seUNBQXlDO0FBQ2hEO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBLGdCQUFnQiw0QkFBNEIsT0FBTyxxQ0FBcUM7QUFDeEY7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IscUNBQXFDO0FBQzNEO0FBQ087QUFDUCxZQUFZLDBCQUEwQjtBQUN0QyxzQkFBc0Isa0RBQWlCO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsZ0NBQWdDLE9BQU8sNEJBQTRCO0FBQ25GO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDRCQUE0QjtBQUNsRDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLDhCQUE4QixPQUFPLHFDQUFxQztBQUMxRjtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQixxQ0FBcUM7QUFDdEQ7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLFlBQVksb0RBQW1CO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixrQ0FBa0MsT0FBTyw0QkFBNEI7QUFDckY7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiw0QkFBNEI7QUFDNUM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyxzQ0FBc0M7QUFDM0U7QUFDQTtBQUNBLHFFQUFxRSxxQ0FBcUM7QUFDMUcsaURBQWlELG1DQUFtQztBQUNwRjtBQUNBO0FBQ0EsWUFBWSwyQkFBMkI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLCtCQUErQixxQ0FBcUM7QUFDcEU7QUFDQTtBQUNPO0FBQ1AsaUNBQWlDLGVBQWU7QUFDaEQ7QUFDQTtBQUNBLDZCQUE2QixzQ0FBc0M7QUFDbkU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixxQ0FBcUM7QUFDcEU7QUFDQTtBQUNPLHlDQUF5QztBQUNoRCxZQUFZLFVBQVU7QUFDdEIsV0FBVywrQ0FBYyxDQUFDLDJDQUFVLFNBQVMsNENBQVc7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixzQ0FBc0MsT0FBTywyQkFBMkI7QUFDeEY7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLHdDQUF3QztBQUNwRDtBQUNBO0FBQ0EsaUJBQWlCLCtDQUFjO0FBQy9CLGVBQWUsK0NBQWM7QUFDN0IsV0FBVyxnREFBZTtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsNkJBQTZCLE9BQU8sK0JBQStCO0FBQ25GO0FBQ0E7QUFDQTtBQUNBLFlBQVksZ0JBQWdCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLHNDQUFzQyxPQUFPLDZCQUE2QjtBQUMxRjtBQUNBO0FBQ0E7QUFDQSxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixxQ0FBcUM7QUFDcEU7QUFDQTtBQUNPO0FBQ1AsWUFBWSwwQkFBMEI7QUFDdEMsc0JBQXNCLGtEQUFpQjtBQUN2QztBQUNBLGtCQUFrQiwrQ0FBYztBQUNoQztBQUNBLGdCQUFnQiwrQ0FBYztBQUM5Qix3QkFBd0Isa0RBQWlCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiw2QkFBNkIsT0FBTyxpQ0FBaUM7QUFDckY7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQiw0QkFBNEI7QUFDakQ7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQXV0aG9yaXphdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBIYXNoIGZyb20gJy4vSGFzaC5qcyc7XG5pbXBvcnQgKiBhcyBIZXggZnJvbSAnLi9IZXguanMnO1xuaW1wb3J0ICogYXMgUmxwIGZyb20gJy4vUmxwLmpzJztcbmltcG9ydCAqIGFzIFNpZ25hdHVyZSBmcm9tICcuL1NpZ25hdHVyZS5qcyc7XG4vKipcbiAqIENvbnZlcnRzIGFuIFtFSVAtNzcwMl0oaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC03NzAyKSBBdXRob3JpemF0aW9uIG9iamVjdCBpbnRvIGEgdHlwZWQge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uXG4gKlxuICogQGV4YW1wbGVcbiAqIEFuIEF1dGhvcml6YXRpb24gY2FuIGJlIGluc3RhbnRpYXRlZCBmcm9tIGFuIFtFSVAtNzcwMl0oaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC03NzAyKSBBdXRob3JpemF0aW9uIHR1cGxlIGluIG9iamVjdCBmb3JtYXQuXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEF1dGhvcml6YXRpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uID0gQXV0aG9yaXphdGlvbi5mcm9tKHtcbiAqICAgYWRkcmVzczogJzB4MTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3OCcsXG4gKiAgIGNoYWluSWQ6IDEsXG4gKiAgIG5vbmNlOiA2OW4sXG4gKiB9KVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBBdHRhY2hpbmcgU2lnbmF0dXJlc1xuICpcbiAqIEEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IGNhbiBiZSBhdHRhY2hlZCB3aXRoIHRoZSBgc2lnbmF0dXJlYCBvcHRpb24uIFRoZSBleGFtcGxlIGJlbG93IGRlbW9uc3RyYXRlcyBzaWduaW5nXG4gKiBhbiBBdXRob3JpemF0aW9uIHdpdGgge0BsaW5rIG94I1NlY3AyNTZrMS4oc2lnbjpmdW5jdGlvbil9LlxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBdXRob3JpemF0aW9uLCBTZWNwMjU2azEgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uID0gQXV0aG9yaXphdGlvbi5mcm9tKHtcbiAqICAgYWRkcmVzczogJzB4YmU5NWMzZjU1NGU5ZmM4NWVjNTFiZTY5YTNkODA3YTBkNTViY2YyYycsXG4gKiAgIGNoYWluSWQ6IDEsXG4gKiAgIG5vbmNlOiA0MG4sXG4gKiB9KVxuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNlY3AyNTZrMS5zaWduKHtcbiAqICAgcGF5bG9hZDogQXV0aG9yaXphdGlvbi5nZXRTaWduUGF5bG9hZChhdXRob3JpemF0aW9uKSxcbiAqICAgcHJpdmF0ZUtleTogJzB4Li4uJyxcbiAqIH0pXG4gKlxuICogY29uc3QgYXV0aG9yaXphdGlvbl9zaWduZWQgPSBBdXRob3JpemF0aW9uLmZyb20oYXV0aG9yaXphdGlvbiwgeyBzaWduYXR1cmUgfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogYGBgXG4gKlxuICogQHBhcmFtIGF1dGhvcml6YXRpb24gLSBBbiBbRUlQLTc3MDJdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNzcwMikgQXV0aG9yaXphdGlvbiB0dXBsZSBpbiBvYmplY3QgZm9ybWF0LlxuICogQHBhcmFtIG9wdGlvbnMgLSBBdXRob3JpemF0aW9uIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKGF1dGhvcml6YXRpb24sIG9wdGlvbnMgPSB7fSkge1xuICAgIGlmICh0eXBlb2YgYXV0aG9yaXphdGlvbi5jaGFpbklkID09PSAnc3RyaW5nJylcbiAgICAgICAgcmV0dXJuIGZyb21ScGMoYXV0aG9yaXphdGlvbik7XG4gICAgcmV0dXJuIHsgLi4uYXV0aG9yaXphdGlvbiwgLi4ub3B0aW9ucy5zaWduYXR1cmUgfTtcbn1cbi8qKlxuICogQ29udmVydHMgYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uUnBjfSB0byBhbiB7QGxpbmsgb3gjQXV0aG9yaXphdGlvbi5BdXRob3JpemF0aW9ufS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEF1dGhvcml6YXRpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uID0gQXV0aG9yaXphdGlvbi5mcm9tUnBjKHtcbiAqICAgYWRkcmVzczogJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gKiAgIGNoYWluSWQ6ICcweDEnLFxuICogICBub25jZTogJzB4MScsXG4gKiAgIHI6ICcweDYzNWRjMjAzM2U2MDE4NWJiMzY3MDljMjljNzVkNjRlYTUxZGZiZDkxYzMyZWY0YmUxOThlNGNlYjE2OWZiNGQnLFxuICogICBzOiAnMHg1MGMyNjY3YWM0Yzc3MTA3Mjc0NmFjZmRjZjFmMTQ4MzMzNmRjY2E4YmQyZGY0N2NkODMxNzVkYmU2MGYwNTQwJyxcbiAqICAgeVBhcml0eTogJzB4MCcsXG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIGF1dGhvcml6YXRpb24gLSBUaGUgUlBDLWZvcm1hdHRlZCBBdXRob3JpemF0aW9uLlxuICogQHJldHVybnMgQSBzaWduZWQge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tUnBjKGF1dGhvcml6YXRpb24pIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGNoYWluSWQsIG5vbmNlIH0gPSBhdXRob3JpemF0aW9uO1xuICAgIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5leHRyYWN0KGF1dGhvcml6YXRpb24pO1xuICAgIHJldHVybiB7XG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIGNoYWluSWQ6IE51bWJlcihjaGFpbklkKSxcbiAgICAgICAgbm9uY2U6IEJpZ0ludChub25jZSksXG4gICAgICAgIC4uLnNpZ25hdHVyZSxcbiAgICB9O1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhbiB7QGxpbmsgb3gjQXV0aG9yaXphdGlvbi5MaXN0UnBjfSB0byBhbiB7QGxpbmsgb3gjQXV0aG9yaXphdGlvbi5MaXN0fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEF1dGhvcml6YXRpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uTGlzdCA9IEF1dGhvcml6YXRpb24uZnJvbVJwY0xpc3QoW3tcbiAqICAgYWRkcmVzczogJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gKiAgIGNoYWluSWQ6ICcweDEnLFxuICogICBub25jZTogJzB4MScsXG4gKiAgIHI6ICcweDYzNWRjMjAzM2U2MDE4NWJiMzY3MDljMjljNzVkNjRlYTUxZGZiZDkxYzMyZWY0YmUxOThlNGNlYjE2OWZiNGQnLFxuICogICBzOiAnMHg1MGMyNjY3YWM0Yzc3MTA3Mjc0NmFjZmRjZjFmMTQ4MzMzNmRjY2E4YmQyZGY0N2NkODMxNzVkYmU2MGYwNTQwJyxcbiAqICAgeVBhcml0eTogJzB4MCcsXG4gKiB9XSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBhdXRob3JpemF0aW9uTGlzdCAtIFRoZSBSUEMtZm9ybWF0dGVkIEF1dGhvcml6YXRpb24gbGlzdC5cbiAqIEByZXR1cm5zIEEgc2lnbmVkIHtAbGluayBveCNBdXRob3JpemF0aW9uLkxpc3R9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbVJwY0xpc3QoYXV0aG9yaXphdGlvbkxpc3QpIHtcbiAgICByZXR1cm4gYXV0aG9yaXphdGlvbkxpc3QubWFwKGZyb21ScGMpO1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhbiB7QGxpbmsgb3gjQXV0aG9yaXphdGlvbi5UdXBsZX0gdG8gYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBdXRob3JpemF0aW9uIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgYXV0aG9yaXphdGlvbiA9IEF1dGhvcml6YXRpb24uZnJvbVR1cGxlKFtcbiAqICAgJzB4MScsXG4gKiAgICcweGJlOTVjM2Y1NTRlOWZjODVlYzUxYmU2OWEzZDgwN2EwZDU1YmNmMmMnLFxuICogICAnMHgzJ1xuICogXSlcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgYWRkcmVzczogJzB4YmU5NWMzZjU1NGU5ZmM4NWVjNTFiZTY5YTNkODA3YTBkNTViY2YyYycsXG4gKiAvLyBAbG9nOiAgIGNoYWluSWQ6IDEsXG4gKiAvLyBAbG9nOiAgIG5vbmNlOiAzblxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIEl0IGlzIGFsc28gcG9zc2libGUgdG8gYXBwZW5kIGEgU2lnbmF0dXJlIHR1cGxlIHRvIHRoZSBlbmQgb2YgYW4gQXV0aG9yaXphdGlvbiB0dXBsZS5cbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQXV0aG9yaXphdGlvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGF1dGhvcml6YXRpb24gPSBBdXRob3JpemF0aW9uLmZyb21UdXBsZShbXG4gKiAgICcweDEnLFxuICogICAnMHhiZTk1YzNmNTU0ZTlmYzg1ZWM1MWJlNjlhM2Q4MDdhMGQ1NWJjZjJjJyxcbiAqICAgJzB4MycsXG4gKiAgICcweDEnLFxuICogICAnMHg2OGEwMjBhMjA5ZDNkNTZjNDZmMzhjYzUwYTMzZjcwNGY0YTlhMTBhNTkzNzdmOGRkNzYyYWM2NjkxMGU5YjkwJyxcbiAqICAgJzB4N2U4NjVhZDA1YzQwMzVhYjU3OTI3ODdkNGEwMjk3YTQzNjE3YWU4OTc5MzBhNmZlNGQ4MjJiOGZhZWE1MjA2NCcsXG4gKiBdKVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBhZGRyZXNzOiAnMHhiZTk1YzNmNTU0ZTlmYzg1ZWM1MWJlNjlhM2Q4MDdhMGQ1NWJjZjJjJyxcbiAqIC8vIEBsb2c6ICAgY2hhaW5JZDogMSxcbiAqIC8vIEBsb2c6ICAgbm9uY2U6IDNuXG4gKiAvLyBAbG9nOiAgIHI6IEJpZ0ludCgnMHg2OGEwMjBhMjA5ZDNkNTZjNDZmMzhjYzUwYTMzZjcwNGY0YTlhMTBhNTkzNzdmOGRkNzYyYWM2NjkxMGU5YjkwJyksXG4gKiAvLyBAbG9nOiAgIHM6IEJpZ0ludCgnMHg3ZTg2NWFkMDVjNDAzNWFiNTc5Mjc4N2Q0YTAyOTdhNDM2MTdhZTg5NzkzMGE2ZmU0ZDgyMmI4ZmFlYTUyMDY0JyksXG4gKiAvLyBAbG9nOiAgIHlQYXJpdHk6IDAsXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdHVwbGUgLSBUaGUgW0VJUC03NzAyXShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTc3MDIpIEF1dGhvcml6YXRpb24gdHVwbGUuXG4gKiBAcmV0dXJucyBUaGUge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tVHVwbGUodHVwbGUpIHtcbiAgICBjb25zdCBbY2hhaW5JZCwgYWRkcmVzcywgbm9uY2UsIHlQYXJpdHksIHIsIHNdID0gdHVwbGU7XG4gICAgbGV0IGFyZ3MgPSB7XG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIGNoYWluSWQ6IGNoYWluSWQgPT09ICcweCcgPyAwIDogTnVtYmVyKGNoYWluSWQpLFxuICAgICAgICBub25jZTogbm9uY2UgPT09ICcweCcgPyAwbiA6IEJpZ0ludChub25jZSksXG4gICAgfTtcbiAgICBpZiAoeVBhcml0eSAmJiByICYmIHMpXG4gICAgICAgIGFyZ3MgPSB7IC4uLmFyZ3MsIC4uLlNpZ25hdHVyZS5mcm9tVHVwbGUoW3lQYXJpdHksIHIsIHNdKSB9O1xuICAgIHJldHVybiBmcm9tKGFyZ3MpO1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhbiB7QGxpbmsgb3gjQXV0aG9yaXphdGlvbi5UdXBsZUxpc3R9IHRvIGFuIHtAbGluayBveCNBdXRob3JpemF0aW9uLkxpc3R9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQXV0aG9yaXphdGlvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGF1dGhvcml6YXRpb25MaXN0ID0gQXV0aG9yaXphdGlvbi5mcm9tVHVwbGVMaXN0KFtcbiAqICAgWycweDEnLCAnMHhiZTk1YzNmNTU0ZTlmYzg1ZWM1MWJlNjlhM2Q4MDdhMGQ1NWJjZjJjJywgJzB4MyddLFxuICogICBbJzB4MycsICcweGJlOTVjM2Y1NTRlOWZjODVlYzUxYmU2OWEzZDgwN2EwZDU1YmNmMmMnLCAnMHgxNCddLFxuICogXSlcbiAqIC8vIEBsb2c6IFtcbiAqIC8vIEBsb2c6ICAge1xuICogLy8gQGxvZzogICAgIGFkZHJlc3M6ICcweGJlOTVjM2Y1NTRlOWZjODVlYzUxYmU2OWEzZDgwN2EwZDU1YmNmMmMnLFxuICogLy8gQGxvZzogICAgIGNoYWluSWQ6IDEsXG4gKiAvLyBAbG9nOiAgICAgbm9uY2U6IDNuLFxuICogLy8gQGxvZzogICB9LFxuICogLy8gQGxvZzogICB7XG4gKiAvLyBAbG9nOiAgICAgYWRkcmVzczogJzB4YmU5NWMzZjU1NGU5ZmM4NWVjNTFiZTY5YTNkODA3YTBkNTViY2YyYycsXG4gKiAvLyBAbG9nOiAgICAgY2hhaW5JZDogMyxcbiAqIC8vIEBsb2c6ICAgICBub25jZTogMjBuLFxuICogLy8gQGxvZzogICB9LFxuICogLy8gQGxvZzogXVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIEl0IGlzIGFsc28gcG9zc2libGUgdG8gYXBwZW5kIGEgU2lnbmF0dXJlIHR1cGxlIHRvIHRoZSBlbmQgb2YgYW4gQXV0aG9yaXphdGlvbiB0dXBsZS5cbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQXV0aG9yaXphdGlvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGF1dGhvcml6YXRpb25MaXN0ID0gQXV0aG9yaXphdGlvbi5mcm9tVHVwbGVMaXN0KFtcbiAqICAgWycweDEnLCAnMHhiZTk1YzNmNTU0ZTlmYzg1ZWM1MWJlNjlhM2Q4MDdhMGQ1NWJjZjJjJywgJzB4MycsICcweDEnLCAnMHg2OGEwMjBhMjA5ZDNkNTZjNDZmMzhjYzUwYTMzZjcwNGY0YTlhMTBhNTkzNzdmOGRkNzYyYWM2NjkxMGU5YjkwJywgJzB4N2U4NjVhZDA1YzQwMzVhYjU3OTI3ODdkNGEwMjk3YTQzNjE3YWU4OTc5MzBhNmZlNGQ4MjJiOGZhZWE1MjA2NCddLFxuICogICBbJzB4MycsICcweGJlOTVjM2Y1NTRlOWZjODVlYzUxYmU2OWEzZDgwN2EwZDU1YmNmMmMnLCAnMHgxNCcsICcweDEnLCAnMHg2OGEwMjBhMjA5ZDNkNTZjNDZmMzhjYzUwYTMzZjcwNGY0YTlhMTBhNTkzNzdmOGRkNzYyYWM2NjkxMGU5YjkwJywgJzB4N2U4NjVhZDA1YzQwMzVhYjU3OTI3ODdkNGEwMjk3YTQzNjE3YWU4OTc5MzBhNmZlNGQ4MjJiOGZhZWE1MjA2NCddLFxuICogXSlcbiAqIC8vIEBsb2c6IFtcbiAqIC8vIEBsb2c6ICAge1xuICogLy8gQGxvZzogICAgIGFkZHJlc3M6ICcweGJlOTVjM2Y1NTRlOWZjODVlYzUxYmU2OWEzZDgwN2EwZDU1YmNmMmMnLFxuICogLy8gQGxvZzogICAgIGNoYWluSWQ6IDEsXG4gKiAvLyBAbG9nOiAgICAgbm9uY2U6IDNuLFxuICogLy8gQGxvZzogICAgIHI6IEJpZ0ludCgnMHg2OGEwMjBhMjA5ZDNkNTZjNDZmMzhjYzUwYTMzZjcwNGY0YTlhMTBhNTkzNzdmOGRkNzYyYWM2NjkxMGU5YjkwJyksXG4gKiAvLyBAbG9nOiAgICAgczogQmlnSW50KCcweDdlODY1YWQwNWM0MDM1YWI1NzkyNzg3ZDRhMDI5N2E0MzYxN2FlODk3OTMwYTZmZTRkODIyYjhmYWVhNTIwNjQnKSxcbiAqIC8vIEBsb2c6ICAgICB5UGFyaXR5OiAwLFxuICogLy8gQGxvZzogICB9LFxuICogLy8gQGxvZzogICB7XG4gKiAvLyBAbG9nOiAgICAgYWRkcmVzczogJzB4YmU5NWMzZjU1NGU5ZmM4NWVjNTFiZTY5YTNkODA3YTBkNTViY2YyYycsXG4gKiAvLyBAbG9nOiAgICAgY2hhaW5JZDogMyxcbiAqIC8vIEBsb2c6ICAgICBub25jZTogMjBuLFxuICogLy8gQGxvZzogICAgIHI6IEJpZ0ludCgnMHg2OGEwMjBhMjA5ZDNkNTZjNDZmMzhjYzUwYTMzZjcwNGY0YTlhMTBhNTkzNzdmOGRkNzYyYWM2NjkxMGU5YjkwJyksXG4gKiAvLyBAbG9nOiAgICAgczogQmlnSW50KCcweDdlODY1YWQwNWM0MDM1YWI1NzkyNzg3ZDRhMDI5N2E0MzYxN2FlODk3OTMwYTZmZTRkODIyYjhmYWVhNTIwNjQnKSxcbiAqIC8vIEBsb2c6ICAgICB5UGFyaXR5OiAwLFxuICogLy8gQGxvZzogICB9LFxuICogLy8gQGxvZzogXVxuICogYGBgXG4gKlxuICogQHBhcmFtIHR1cGxlTGlzdCAtIFRoZSBbRUlQLTc3MDJdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNzcwMikgQXV0aG9yaXphdGlvbiB0dXBsZSBsaXN0LlxuICogQHJldHVybnMgQW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uTGlzdH0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tVHVwbGVMaXN0KHR1cGxlTGlzdCkge1xuICAgIGNvbnN0IGxpc3QgPSBbXTtcbiAgICBmb3IgKGNvbnN0IHR1cGxlIG9mIHR1cGxlTGlzdClcbiAgICAgICAgbGlzdC5wdXNoKGZyb21UdXBsZSh0dXBsZSkpO1xuICAgIHJldHVybiBsaXN0O1xufVxuLyoqXG4gKiBDb21wdXRlcyB0aGUgc2lnbiBwYXlsb2FkIGZvciBhbiB7QGxpbmsgb3gjQXV0aG9yaXphdGlvbi5BdXRob3JpemF0aW9ufSBpbiBbRUlQLTc3MDIgZm9ybWF0XShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTc3MDIpOiBga2VjY2FrMjU2KCcweDA1JyB8fCBybHAoW2NoYWluX2lkLCBhZGRyZXNzLCBub25jZV0pKWAuXG4gKlxuICogQGV4YW1wbGVcbiAqIFRoZSBleGFtcGxlIGJlbG93IGRlbW9uc3RyYXRlcyBjb21wdXRpbmcgdGhlIHNpZ24gcGF5bG9hZCBmb3IgYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uIFRoaXMgcGF5bG9hZFxuICogY2FuIHRoZW4gYmUgcGFzc2VkIHRvIHNpZ25pbmcgZnVuY3Rpb25zIGxpa2Uge0BsaW5rIG94I1NlY3AyNTZrMS4oc2lnbjpmdW5jdGlvbil9LlxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBBdXRob3JpemF0aW9uLCBTZWNwMjU2azEgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uID0gQXV0aG9yaXphdGlvbi5mcm9tKHtcbiAqICAgYWRkcmVzczogJzB4MTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3OCcsXG4gKiAgIGNoYWluSWQ6IDEsXG4gKiAgIG5vbmNlOiA2OW4sXG4gKiB9KVxuICpcbiAqIGNvbnN0IHBheWxvYWQgPSBBdXRob3JpemF0aW9uLmdldFNpZ25QYXlsb2FkKGF1dGhvcml6YXRpb24pIC8vIFshY29kZSBmb2N1c11cbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTZWNwMjU2azEuc2lnbih7XG4gKiAgIHBheWxvYWQsXG4gKiAgIHByaXZhdGVLZXk6ICcweC4uLicsXG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIGF1dGhvcml6YXRpb24gLSBUaGUge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uXG4gKiBAcmV0dXJucyBUaGUgc2lnbiBwYXlsb2FkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2lnblBheWxvYWQoYXV0aG9yaXphdGlvbikge1xuICAgIHJldHVybiBoYXNoKGF1dGhvcml6YXRpb24sIHsgcHJlc2lnbjogdHJ1ZSB9KTtcbn1cbi8qKlxuICogQ29tcHV0ZXMgdGhlIGhhc2ggZm9yIGFuIHtAbGluayBveCNBdXRob3JpemF0aW9uLkF1dGhvcml6YXRpb259IGluIFtFSVAtNzcwMiBmb3JtYXRdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNzcwMik6IGBrZWNjYWsyNTYoJzB4MDUnIHx8IHJscChbY2hhaW5faWQsIGFkZHJlc3MsIG5vbmNlXSkpYC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEF1dGhvcml6YXRpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uID0gQXV0aG9yaXphdGlvbi5mcm9tKHtcbiAqICAgYWRkcmVzczogJzB4MTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3OCcsXG4gKiAgIGNoYWluSWQ6IDEsXG4gKiAgIG5vbmNlOiA2OW4sXG4gKiB9KVxuICpcbiAqIGNvbnN0IGhhc2ggPSBBdXRob3JpemF0aW9uLmhhc2goYXV0aG9yaXphdGlvbikgLy8gWyFjb2RlIGZvY3VzXVxuICogYGBgXG4gKlxuICogQHBhcmFtIGF1dGhvcml6YXRpb24gLSBUaGUge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0uXG4gKiBAcmV0dXJucyBUaGUgaGFzaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc2goYXV0aG9yaXphdGlvbiwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBwcmVzaWduIH0gPSBvcHRpb25zO1xuICAgIHJldHVybiBIYXNoLmtlY2NhazI1NihIZXguY29uY2F0KCcweDA1JywgUmxwLmZyb21IZXgodG9UdXBsZShwcmVzaWduXG4gICAgICAgID8ge1xuICAgICAgICAgICAgYWRkcmVzczogYXV0aG9yaXphdGlvbi5hZGRyZXNzLFxuICAgICAgICAgICAgY2hhaW5JZDogYXV0aG9yaXphdGlvbi5jaGFpbklkLFxuICAgICAgICAgICAgbm9uY2U6IGF1dGhvcml6YXRpb24ubm9uY2UsXG4gICAgICAgIH1cbiAgICAgICAgOiBhdXRob3JpemF0aW9uKSkpKTtcbn1cbi8qKlxuICogQ29udmVydHMgYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0gdG8gYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uUnBjfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEF1dGhvcml6YXRpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uID0gQXV0aG9yaXphdGlvbi50b1JwYyh7XG4gKiAgIGFkZHJlc3M6ICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICogICBjaGFpbklkOiAxLFxuICogICBub25jZTogMW4sXG4gKiAgIHI6IDQ0OTQ0NjI3ODEzMDA3NzcyODk3MzkxNTMxMjMwMDgxNjk1MTAyNzAzMjg5MTIzMzMyMTg3Njk2MTE1MTgxMTA0NzM5MjM5MTk3NTE3bixcbiAqICAgczogMzY1Mjg1MDM1MDUxOTI0MzgzMDczNTUxNjQ0NDExMDQwMDEzMTA1NjY1MDUzNTE5ODAzNjkwODUyMDgxNzg3MTI2Nzg3OTkxODExMjBuLFxuICogICB5UGFyaXR5OiAwLFxuICogfSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBhdXRob3JpemF0aW9uIC0gQW4gQXV0aG9yaXphdGlvbi5cbiAqIEByZXR1cm5zIEFuIFJQQy1mb3JtYXR0ZWQgQXV0aG9yaXphdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvUnBjKGF1dGhvcml6YXRpb24pIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGNoYWluSWQsIG5vbmNlLCAuLi5zaWduYXR1cmUgfSA9IGF1dGhvcml6YXRpb247XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgY2hhaW5JZDogSGV4LmZyb21OdW1iZXIoY2hhaW5JZCksXG4gICAgICAgIG5vbmNlOiBIZXguZnJvbU51bWJlcihub25jZSksXG4gICAgICAgIC4uLlNpZ25hdHVyZS50b1JwYyhzaWduYXR1cmUpLFxuICAgIH07XG59XG4vKipcbiAqIENvbnZlcnRzIGFuIHtAbGluayBveCNBdXRob3JpemF0aW9uLkxpc3R9IHRvIGFuIHtAbGluayBveCNBdXRob3JpemF0aW9uLkxpc3RScGN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQXV0aG9yaXphdGlvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGF1dGhvcml6YXRpb24gPSBBdXRob3JpemF0aW9uLnRvUnBjTGlzdChbe1xuICogICBhZGRyZXNzOiAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAqICAgY2hhaW5JZDogMSxcbiAqICAgbm9uY2U6IDFuLFxuICogICByOiA0NDk0NDYyNzgxMzAwNzc3Mjg5NzM5MTUzMTIzMDA4MTY5NTEwMjcwMzI4OTEyMzMzMjE4NzY5NjExNTE4MTEwNDczOTIzOTE5NzUxN24sXG4gKiAgIHM6IDM2NTI4NTAzNTA1MTkyNDM4MzA3MzU1MTY0NDQxMTA0MDAxMzEwNTY2NTA1MzUxOTgwMzY5MDg1MjA4MTc4NzEyNjc4Nzk5MTgxMTIwbixcbiAqICAgeVBhcml0eTogMCxcbiAqIH1dKVxuICogYGBgXG4gKlxuICogQHBhcmFtIGF1dGhvcml6YXRpb25MaXN0IC0gQW4gQXV0aG9yaXphdGlvbiBMaXN0LlxuICogQHJldHVybnMgQW4gUlBDLWZvcm1hdHRlZCBBdXRob3JpemF0aW9uIExpc3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1JwY0xpc3QoYXV0aG9yaXphdGlvbkxpc3QpIHtcbiAgICByZXR1cm4gYXV0aG9yaXphdGlvbkxpc3QubWFwKHRvUnBjKTtcbn1cbi8qKlxuICogQ29udmVydHMgYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uQXV0aG9yaXphdGlvbn0gdG8gYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uVHVwbGV9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQXV0aG9yaXphdGlvbiB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGF1dGhvcml6YXRpb24gPSBBdXRob3JpemF0aW9uLmZyb20oe1xuICogICBhZGRyZXNzOiAnMHgxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4JyxcbiAqICAgY2hhaW5JZDogMSxcbiAqICAgbm9uY2U6IDY5bixcbiAqIH0pXG4gKlxuICogY29uc3QgdHVwbGUgPSBBdXRob3JpemF0aW9uLnRvVHVwbGUoYXV0aG9yaXphdGlvbikgLy8gWyFjb2RlIGZvY3VzXVxuICogLy8gQGxvZzogW1xuICogLy8gQGxvZzogICBhZGRyZXNzOiAnMHgxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4JyxcbiAqIC8vIEBsb2c6ICAgY2hhaW5JZDogMSxcbiAqIC8vIEBsb2c6ICAgbm9uY2U6IDY5bixcbiAqIC8vIEBsb2c6IF1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBhdXRob3JpemF0aW9uIC0gVGhlIHtAbGluayBveCNBdXRob3JpemF0aW9uLkF1dGhvcml6YXRpb259LlxuICogQHJldHVybnMgQW4gW0VJUC03NzAyXShodHRwczovL2VpcHMuZXRoZXJldW0ub3JnL0VJUFMvZWlwLTc3MDIpIEF1dGhvcml6YXRpb24gdHVwbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1R1cGxlKGF1dGhvcml6YXRpb24pIHtcbiAgICBjb25zdCB7IGFkZHJlc3MsIGNoYWluSWQsIG5vbmNlIH0gPSBhdXRob3JpemF0aW9uO1xuICAgIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5leHRyYWN0KGF1dGhvcml6YXRpb24pO1xuICAgIHJldHVybiBbXG4gICAgICAgIGNoYWluSWQgPyBIZXguZnJvbU51bWJlcihjaGFpbklkKSA6ICcweCcsXG4gICAgICAgIGFkZHJlc3MsXG4gICAgICAgIG5vbmNlID8gSGV4LmZyb21OdW1iZXIobm9uY2UpIDogJzB4JyxcbiAgICAgICAgLi4uKHNpZ25hdHVyZSA/IFNpZ25hdHVyZS50b1R1cGxlKHNpZ25hdHVyZSkgOiBbXSksXG4gICAgXTtcbn1cbi8qKlxuICogQ29udmVydHMgYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uTGlzdH0gdG8gYW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uVHVwbGVMaXN0fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEF1dGhvcml6YXRpb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBhdXRob3JpemF0aW9uXzEgPSBBdXRob3JpemF0aW9uLmZyb20oe1xuICogICBhZGRyZXNzOiAnMHgxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4JyxcbiAqICAgY2hhaW5JZDogMSxcbiAqICAgbm9uY2U6IDY5bixcbiAqIH0pXG4gKiBjb25zdCBhdXRob3JpemF0aW9uXzIgPSBBdXRob3JpemF0aW9uLmZyb20oe1xuICogICBhZGRyZXNzOiAnMHgxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5MGFiY2RlZjEyMzQ1Njc4JyxcbiAqICAgY2hhaW5JZDogMyxcbiAqICAgbm9uY2U6IDIwbixcbiAqIH0pXG4gKlxuICogY29uc3QgdHVwbGUgPSBBdXRob3JpemF0aW9uLnRvVHVwbGVMaXN0KFthdXRob3JpemF0aW9uXzEsIGF1dGhvcml6YXRpb25fMl0pIC8vIFshY29kZSBmb2N1c11cbiAqIC8vIEBsb2c6IFtcbiAqIC8vIEBsb2c6ICAgW1xuICogLy8gQGxvZzogICAgIGFkZHJlc3M6ICcweDEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3ODkwYWJjZGVmMTIzNDU2NzgnLFxuICogLy8gQGxvZzogICAgIGNoYWluSWQ6IDEsXG4gKiAvLyBAbG9nOiAgICAgbm9uY2U6IDY5bixcbiAqIC8vIEBsb2c6ICAgXSxcbiAqIC8vIEBsb2c6ICAgW1xuICogLy8gQGxvZzogICAgIGFkZHJlc3M6ICcweDEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3ODkwYWJjZGVmMTIzNDU2NzgnLFxuICogLy8gQGxvZzogICAgIGNoYWluSWQ6IDMsXG4gKiAvLyBAbG9nOiAgICAgbm9uY2U6IDIwbixcbiAqIC8vIEBsb2c6ICAgXSxcbiAqIC8vIEBsb2c6IF1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBsaXN0IC0gQW4ge0BsaW5rIG94I0F1dGhvcml6YXRpb24uTGlzdH0uXG4gKiBAcmV0dXJucyBBbiBbRUlQLTc3MDJdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNzcwMikgQXV0aG9yaXphdGlvbiB0dXBsZSBsaXN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9UdXBsZUxpc3QobGlzdCkge1xuICAgIGlmICghbGlzdCB8fCBsaXN0Lmxlbmd0aCA9PT0gMClcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIGNvbnN0IHR1cGxlTGlzdCA9IFtdO1xuICAgIGZvciAoY29uc3QgYXV0aG9yaXphdGlvbiBvZiBsaXN0KVxuICAgICAgICB0dXBsZUxpc3QucHVzaCh0b1R1cGxlKGF1dGhvcml6YXRpb24pKTtcbiAgICByZXR1cm4gdHVwbGVMaXN0O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9QXV0aG9yaXphdGlvbi5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Authorization.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/BlockOverrides.js": /*!***********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/BlockOverrides.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fromRpc: () => (/* binding */ fromRpc),\n/* harmony export */ toRpc: () => (/* binding */ toRpc)\n/* harmony export */ });\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Withdrawal_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Withdrawal.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Withdrawal.js\");\n\n\n/**\n * Converts an {@link ox#BlockOverrides.Rpc} to an {@link ox#BlockOverrides.BlockOverrides}.\n *\n * @example\n * ```ts twoslash\n * import { BlockOverrides } from 'ox'\n *\n * const blockOverrides = BlockOverrides.fromRpc({\n * baseFeePerGas: '0x1',\n * blobBaseFee: '0x2',\n * feeRecipient: '0x0000000000000000000000000000000000000000',\n * gasLimit: '0x4',\n * number: '0x5',\n * prevRandao: '0x6',\n * time: '0x1234567890',\n * withdrawals: [\n * {\n * address: '0x0000000000000000000000000000000000000000',\n * amount: '0x1',\n * index: '0x0',\n * validatorIndex: '0x1',\n * },\n * ],\n * })\n * ```\n *\n * @param rpcBlockOverrides - The RPC block overrides to convert.\n * @returns An instantiated {@link ox#BlockOverrides.BlockOverrides}.\n */\nfunction fromRpc(rpcBlockOverrides) {\n return {\n ...(rpcBlockOverrides.baseFeePerGas && {\n baseFeePerGas: BigInt(rpcBlockOverrides.baseFeePerGas),\n }),\n ...(rpcBlockOverrides.blobBaseFee && {\n blobBaseFee: BigInt(rpcBlockOverrides.blobBaseFee),\n }),\n ...(rpcBlockOverrides.feeRecipient && {\n feeRecipient: rpcBlockOverrides.feeRecipient,\n }),\n ...(rpcBlockOverrides.gasLimit && {\n gasLimit: BigInt(rpcBlockOverrides.gasLimit),\n }),\n ...(rpcBlockOverrides.number && {\n number: BigInt(rpcBlockOverrides.number),\n }),\n ...(rpcBlockOverrides.prevRandao && {\n prevRandao: BigInt(rpcBlockOverrides.prevRandao),\n }),\n ...(rpcBlockOverrides.time && {\n time: BigInt(rpcBlockOverrides.time),\n }),\n ...(rpcBlockOverrides.withdrawals && {\n withdrawals: rpcBlockOverrides.withdrawals.map(_Withdrawal_js__WEBPACK_IMPORTED_MODULE_0__.fromRpc),\n }),\n };\n}\n/**\n * Converts an {@link ox#BlockOverrides.BlockOverrides} to an {@link ox#BlockOverrides.Rpc}.\n *\n * @example\n * ```ts twoslash\n * import { BlockOverrides } from 'ox'\n *\n * const blockOverrides = BlockOverrides.toRpc({\n * baseFeePerGas: 1n,\n * blobBaseFee: 2n,\n * feeRecipient: '0x0000000000000000000000000000000000000000',\n * gasLimit: 4n,\n * number: 5n,\n * prevRandao: 6n,\n * time: 78187493520n,\n * withdrawals: [\n * {\n * address: '0x0000000000000000000000000000000000000000',\n * amount: 1n,\n * index: 0,\n * validatorIndex: 1,\n * },\n * ],\n * })\n * ```\n *\n * @param blockOverrides - The block overrides to convert.\n * @returns An instantiated {@link ox#BlockOverrides.Rpc}.\n */\nfunction toRpc(blockOverrides) {\n return {\n ...(typeof blockOverrides.baseFeePerGas === 'bigint' && {\n baseFeePerGas: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(blockOverrides.baseFeePerGas),\n }),\n ...(typeof blockOverrides.blobBaseFee === 'bigint' && {\n blobBaseFee: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(blockOverrides.blobBaseFee),\n }),\n ...(typeof blockOverrides.feeRecipient === 'string' && {\n feeRecipient: blockOverrides.feeRecipient,\n }),\n ...(typeof blockOverrides.gasLimit === 'bigint' && {\n gasLimit: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(blockOverrides.gasLimit),\n }),\n ...(typeof blockOverrides.number === 'bigint' && {\n number: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(blockOverrides.number),\n }),\n ...(typeof blockOverrides.prevRandao === 'bigint' && {\n prevRandao: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(blockOverrides.prevRandao),\n }),\n ...(typeof blockOverrides.time === 'bigint' && {\n time: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(blockOverrides.time),\n }),\n ...(blockOverrides.withdrawals && {\n withdrawals: blockOverrides.withdrawals.map(_Withdrawal_js__WEBPACK_IMPORTED_MODULE_0__.toRpc),\n }),\n };\n}\n//# sourceMappingURL=BlockOverrides.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQmxvY2tPdmVycmlkZXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFnQztBQUNjO0FBQzlDO0FBQ0EsZ0JBQWdCLDZCQUE2QixPQUFPLHVDQUF1QztBQUMzRjtBQUNBO0FBQ0E7QUFDQSxZQUFZLGlCQUFpQjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLHVDQUF1QztBQUNwRTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsMkRBQTJELG1EQUFrQjtBQUM3RSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLHdDQUF3QyxPQUFPLDRCQUE0QjtBQUMzRjtBQUNBO0FBQ0E7QUFDQSxZQUFZLGlCQUFpQjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLDRCQUE0QjtBQUN6RDtBQUNPO0FBQ1A7QUFDQTtBQUNBLDJCQUEyQiwrQ0FBYztBQUN6QyxTQUFTO0FBQ1Q7QUFDQSx5QkFBeUIsK0NBQWM7QUFDdkMsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxzQkFBc0IsK0NBQWM7QUFDcEMsU0FBUztBQUNUO0FBQ0Esb0JBQW9CLCtDQUFjO0FBQ2xDLFNBQVM7QUFDVDtBQUNBLHdCQUF3QiwrQ0FBYztBQUN0QyxTQUFTO0FBQ1Q7QUFDQSxrQkFBa0IsK0NBQWM7QUFDaEMsU0FBUztBQUNUO0FBQ0Esd0RBQXdELGlEQUFnQjtBQUN4RSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9CbG9ja092ZXJyaWRlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBIZXggZnJvbSAnLi9IZXguanMnO1xuaW1wb3J0ICogYXMgV2l0aGRyYXdhbCBmcm9tICcuL1dpdGhkcmF3YWwuanMnO1xuLyoqXG4gKiBDb252ZXJ0cyBhbiB7QGxpbmsgb3gjQmxvY2tPdmVycmlkZXMuUnBjfSB0byBhbiB7QGxpbmsgb3gjQmxvY2tPdmVycmlkZXMuQmxvY2tPdmVycmlkZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQmxvY2tPdmVycmlkZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBibG9ja092ZXJyaWRlcyA9IEJsb2NrT3ZlcnJpZGVzLmZyb21ScGMoe1xuICogICBiYXNlRmVlUGVyR2FzOiAnMHgxJyxcbiAqICAgYmxvYkJhc2VGZWU6ICcweDInLFxuICogICBmZWVSZWNpcGllbnQ6ICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICogICBnYXNMaW1pdDogJzB4NCcsXG4gKiAgIG51bWJlcjogJzB4NScsXG4gKiAgIHByZXZSYW5kYW86ICcweDYnLFxuICogICB0aW1lOiAnMHgxMjM0NTY3ODkwJyxcbiAqICAgd2l0aGRyYXdhbHM6IFtcbiAqICAgICB7XG4gKiAgICAgICBhZGRyZXNzOiAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAqICAgICAgIGFtb3VudDogJzB4MScsXG4gKiAgICAgICBpbmRleDogJzB4MCcsXG4gKiAgICAgICB2YWxpZGF0b3JJbmRleDogJzB4MScsXG4gKiAgICAgfSxcbiAqICAgXSxcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gcnBjQmxvY2tPdmVycmlkZXMgLSBUaGUgUlBDIGJsb2NrIG92ZXJyaWRlcyB0byBjb252ZXJ0LlxuICogQHJldHVybnMgQW4gaW5zdGFudGlhdGVkIHtAbGluayBveCNCbG9ja092ZXJyaWRlcy5CbG9ja092ZXJyaWRlc30uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tUnBjKHJwY0Jsb2NrT3ZlcnJpZGVzKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLi4uKHJwY0Jsb2NrT3ZlcnJpZGVzLmJhc2VGZWVQZXJHYXMgJiYge1xuICAgICAgICAgICAgYmFzZUZlZVBlckdhczogQmlnSW50KHJwY0Jsb2NrT3ZlcnJpZGVzLmJhc2VGZWVQZXJHYXMpLFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKHJwY0Jsb2NrT3ZlcnJpZGVzLmJsb2JCYXNlRmVlICYmIHtcbiAgICAgICAgICAgIGJsb2JCYXNlRmVlOiBCaWdJbnQocnBjQmxvY2tPdmVycmlkZXMuYmxvYkJhc2VGZWUpLFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKHJwY0Jsb2NrT3ZlcnJpZGVzLmZlZVJlY2lwaWVudCAmJiB7XG4gICAgICAgICAgICBmZWVSZWNpcGllbnQ6IHJwY0Jsb2NrT3ZlcnJpZGVzLmZlZVJlY2lwaWVudCxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLihycGNCbG9ja092ZXJyaWRlcy5nYXNMaW1pdCAmJiB7XG4gICAgICAgICAgICBnYXNMaW1pdDogQmlnSW50KHJwY0Jsb2NrT3ZlcnJpZGVzLmdhc0xpbWl0KSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLihycGNCbG9ja092ZXJyaWRlcy5udW1iZXIgJiYge1xuICAgICAgICAgICAgbnVtYmVyOiBCaWdJbnQocnBjQmxvY2tPdmVycmlkZXMubnVtYmVyKSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLihycGNCbG9ja092ZXJyaWRlcy5wcmV2UmFuZGFvICYmIHtcbiAgICAgICAgICAgIHByZXZSYW5kYW86IEJpZ0ludChycGNCbG9ja092ZXJyaWRlcy5wcmV2UmFuZGFvKSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLihycGNCbG9ja092ZXJyaWRlcy50aW1lICYmIHtcbiAgICAgICAgICAgIHRpbWU6IEJpZ0ludChycGNCbG9ja092ZXJyaWRlcy50aW1lKSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLihycGNCbG9ja092ZXJyaWRlcy53aXRoZHJhd2FscyAmJiB7XG4gICAgICAgICAgICB3aXRoZHJhd2FsczogcnBjQmxvY2tPdmVycmlkZXMud2l0aGRyYXdhbHMubWFwKFdpdGhkcmF3YWwuZnJvbVJwYyksXG4gICAgICAgIH0pLFxuICAgIH07XG59XG4vKipcbiAqIENvbnZlcnRzIGFuIHtAbGluayBveCNCbG9ja092ZXJyaWRlcy5CbG9ja092ZXJyaWRlc30gdG8gYW4ge0BsaW5rIG94I0Jsb2NrT3ZlcnJpZGVzLlJwY30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCbG9ja092ZXJyaWRlcyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGJsb2NrT3ZlcnJpZGVzID0gQmxvY2tPdmVycmlkZXMudG9ScGMoe1xuICogICBiYXNlRmVlUGVyR2FzOiAxbixcbiAqICAgYmxvYkJhc2VGZWU6IDJuLFxuICogICBmZWVSZWNpcGllbnQ6ICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICogICBnYXNMaW1pdDogNG4sXG4gKiAgIG51bWJlcjogNW4sXG4gKiAgIHByZXZSYW5kYW86IDZuLFxuICogICB0aW1lOiA3ODE4NzQ5MzUyMG4sXG4gKiAgIHdpdGhkcmF3YWxzOiBbXG4gKiAgICAge1xuICogICAgICAgYWRkcmVzczogJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gKiAgICAgICBhbW91bnQ6IDFuLFxuICogICAgICAgaW5kZXg6IDAsXG4gKiAgICAgICB2YWxpZGF0b3JJbmRleDogMSxcbiAqICAgICB9LFxuICogICBdLFxuICogfSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBibG9ja092ZXJyaWRlcyAtIFRoZSBibG9jayBvdmVycmlkZXMgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIEFuIGluc3RhbnRpYXRlZCB7QGxpbmsgb3gjQmxvY2tPdmVycmlkZXMuUnBjfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvUnBjKGJsb2NrT3ZlcnJpZGVzKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLi4uKHR5cGVvZiBibG9ja092ZXJyaWRlcy5iYXNlRmVlUGVyR2FzID09PSAnYmlnaW50JyAmJiB7XG4gICAgICAgICAgICBiYXNlRmVlUGVyR2FzOiBIZXguZnJvbU51bWJlcihibG9ja092ZXJyaWRlcy5iYXNlRmVlUGVyR2FzKSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLih0eXBlb2YgYmxvY2tPdmVycmlkZXMuYmxvYkJhc2VGZWUgPT09ICdiaWdpbnQnICYmIHtcbiAgICAgICAgICAgIGJsb2JCYXNlRmVlOiBIZXguZnJvbU51bWJlcihibG9ja092ZXJyaWRlcy5ibG9iQmFzZUZlZSksXG4gICAgICAgIH0pLFxuICAgICAgICAuLi4odHlwZW9mIGJsb2NrT3ZlcnJpZGVzLmZlZVJlY2lwaWVudCA9PT0gJ3N0cmluZycgJiYge1xuICAgICAgICAgICAgZmVlUmVjaXBpZW50OiBibG9ja092ZXJyaWRlcy5mZWVSZWNpcGllbnQsXG4gICAgICAgIH0pLFxuICAgICAgICAuLi4odHlwZW9mIGJsb2NrT3ZlcnJpZGVzLmdhc0xpbWl0ID09PSAnYmlnaW50JyAmJiB7XG4gICAgICAgICAgICBnYXNMaW1pdDogSGV4LmZyb21OdW1iZXIoYmxvY2tPdmVycmlkZXMuZ2FzTGltaXQpLFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKHR5cGVvZiBibG9ja092ZXJyaWRlcy5udW1iZXIgPT09ICdiaWdpbnQnICYmIHtcbiAgICAgICAgICAgIG51bWJlcjogSGV4LmZyb21OdW1iZXIoYmxvY2tPdmVycmlkZXMubnVtYmVyKSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLih0eXBlb2YgYmxvY2tPdmVycmlkZXMucHJldlJhbmRhbyA9PT0gJ2JpZ2ludCcgJiYge1xuICAgICAgICAgICAgcHJldlJhbmRhbzogSGV4LmZyb21OdW1iZXIoYmxvY2tPdmVycmlkZXMucHJldlJhbmRhbyksXG4gICAgICAgIH0pLFxuICAgICAgICAuLi4odHlwZW9mIGJsb2NrT3ZlcnJpZGVzLnRpbWUgPT09ICdiaWdpbnQnICYmIHtcbiAgICAgICAgICAgIHRpbWU6IEhleC5mcm9tTnVtYmVyKGJsb2NrT3ZlcnJpZGVzLnRpbWUpLFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKGJsb2NrT3ZlcnJpZGVzLndpdGhkcmF3YWxzICYmIHtcbiAgICAgICAgICAgIHdpdGhkcmF3YWxzOiBibG9ja092ZXJyaWRlcy53aXRoZHJhd2Fscy5tYXAoV2l0aGRyYXdhbC50b1JwYyksXG4gICAgICAgIH0pLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1CbG9ja092ZXJyaWRlcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/BlockOverrides.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js": /*!**************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Bytes.js ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidBytesBooleanError: () => (/* binding */ InvalidBytesBooleanError),\n/* harmony export */ InvalidBytesTypeError: () => (/* binding */ InvalidBytesTypeError),\n/* harmony export */ SizeExceedsPaddingSizeError: () => (/* binding */ SizeExceedsPaddingSizeError),\n/* harmony export */ SizeOverflowError: () => (/* binding */ SizeOverflowError),\n/* harmony export */ SliceOffsetOutOfBoundsError: () => (/* binding */ SliceOffsetOutOfBoundsError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ concat: () => (/* binding */ concat),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromArray: () => (/* binding */ fromArray),\n/* harmony export */ fromBoolean: () => (/* binding */ fromBoolean),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ fromNumber: () => (/* binding */ fromNumber),\n/* harmony export */ fromString: () => (/* binding */ fromString),\n/* harmony export */ isEqual: () => (/* binding */ isEqual),\n/* harmony export */ padLeft: () => (/* binding */ padLeft),\n/* harmony export */ padRight: () => (/* binding */ padRight),\n/* harmony export */ random: () => (/* binding */ random),\n/* harmony export */ size: () => (/* binding */ size),\n/* harmony export */ slice: () => (/* binding */ slice),\n/* harmony export */ toBigInt: () => (/* binding */ toBigInt),\n/* harmony export */ toBoolean: () => (/* binding */ toBoolean),\n/* harmony export */ toHex: () => (/* binding */ toHex),\n/* harmony export */ toNumber: () => (/* binding */ toNumber),\n/* harmony export */ toString: () => (/* binding */ toString),\n/* harmony export */ trimLeft: () => (/* binding */ trimLeft),\n/* harmony export */ trimRight: () => (/* binding */ trimRight),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @noble/curves/abstract/utils */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/bytes.js\");\n/* harmony import */ var _internal_hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internal/hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/hex.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Json.js\");\n\n\n\n\n\n\nconst decoder = /*#__PURE__*/ new TextDecoder();\nconst encoder = /*#__PURE__*/ new TextEncoder();\n/**\n * Asserts if the given value is {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.assert('abc')\n * // @error: Bytes.InvalidBytesTypeError:\n * // @error: Value `\"abc\"` of type `string` is an invalid Bytes value.\n * // @error: Bytes values must be of type `Uint8Array`.\n * ```\n *\n * @param value - Value to assert.\n */\nfunction assert(value) {\n if (value instanceof Uint8Array)\n return;\n if (!value)\n throw new InvalidBytesTypeError(value);\n if (typeof value !== 'object')\n throw new InvalidBytesTypeError(value);\n if (!('BYTES_PER_ELEMENT' in value))\n throw new InvalidBytesTypeError(value);\n if (value.BYTES_PER_ELEMENT !== 1 || value.constructor.name !== 'Uint8Array')\n throw new InvalidBytesTypeError(value);\n}\n/**\n * Concatenates two or more {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const bytes = Bytes.concat(\n * Bytes.from([1]),\n * Bytes.from([69]),\n * Bytes.from([420, 69]),\n * )\n * // @log: Uint8Array [ 1, 69, 420, 69 ]\n * ```\n *\n * @param values - Values to concatenate.\n * @returns Concatenated {@link ox#Bytes.Bytes}.\n */\nfunction concat(...values) {\n let length = 0;\n for (const arr of values) {\n length += arr.length;\n }\n const result = new Uint8Array(length);\n for (let i = 0, index = 0; i < values.length; i++) {\n const arr = values[i];\n result.set(arr, index);\n index += arr.length;\n }\n return result;\n}\n/**\n * Instantiates a {@link ox#Bytes.Bytes} value from a `Uint8Array`, a hex string, or an array of unsigned 8-bit integers.\n *\n * :::tip\n *\n * To instantiate from a **Boolean**, **String**, or **Number**, use one of the following:\n *\n * - `Bytes.fromBoolean`\n *\n * - `Bytes.fromString`\n *\n * - `Bytes.fromNumber`\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.from([255, 124, 5, 4])\n * // @log: Uint8Array([255, 124, 5, 4])\n *\n * const data = Bytes.from('0xdeadbeef')\n * // @log: Uint8Array([222, 173, 190, 239])\n * ```\n *\n * @param value - Value to convert.\n * @returns A {@link ox#Bytes.Bytes} instance.\n */\nfunction from(value) {\n if (value instanceof Uint8Array)\n return value;\n if (typeof value === 'string')\n return fromHex(value);\n return fromArray(value);\n}\n/**\n * Converts an array of unsigned 8-bit integers into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromArray([255, 124, 5, 4])\n * // @log: Uint8Array([255, 124, 5, 4])\n * ```\n *\n * @param value - Value to convert.\n * @returns A {@link ox#Bytes.Bytes} instance.\n */\nfunction fromArray(value) {\n return value instanceof Uint8Array ? value : new Uint8Array(value);\n}\n/**\n * Encodes a boolean value into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromBoolean(true)\n * // @log: Uint8Array([1])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromBoolean(true, { size: 32 })\n * // @log: Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1])\n * ```\n *\n * @param value - Boolean value to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromBoolean(value, options = {}) {\n const { size } = options;\n const bytes = new Uint8Array(1);\n bytes[0] = Number(value);\n if (typeof size === 'number') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n return padLeft(bytes, size);\n }\n return bytes;\n}\n/**\n * Encodes a {@link ox#Hex.Hex} value into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromHex('0x48656c6c6f20776f726c6421')\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromHex('0x48656c6c6f20776f726c6421', { size: 32 })\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])\n * ```\n *\n * @param value - {@link ox#Hex.Hex} value to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromHex(value, options = {}) {\n const { size } = options;\n let hex = value;\n if (size) {\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_1__.assertSize(value, size);\n hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padRight(value, size);\n }\n let hexString = hex.slice(2);\n if (hexString.length % 2)\n hexString = `0${hexString}`;\n const length = hexString.length / 2;\n const bytes = new Uint8Array(length);\n for (let index = 0, j = 0; index < length; index++) {\n const nibbleLeft = _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.charCodeToBase16(hexString.charCodeAt(j++));\n const nibbleRight = _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.charCodeToBase16(hexString.charCodeAt(j++));\n if (nibbleLeft === undefined || nibbleRight === undefined) {\n throw new _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError(`Invalid byte sequence (\"${hexString[j - 2]}${hexString[j - 1]}\" in \"${hexString}\").`);\n }\n bytes[index] = nibbleLeft * 16 + nibbleRight;\n }\n return bytes;\n}\n/**\n * Encodes a number value into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromNumber(420)\n * // @log: Uint8Array([1, 164])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromNumber(420, { size: 4 })\n * // @log: Uint8Array([0, 0, 1, 164])\n * ```\n *\n * @param value - Number value to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromNumber(value, options) {\n const hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(value, options);\n return fromHex(hex);\n}\n/**\n * Encodes a string into {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromString('Hello world!')\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33])\n * ```\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.fromString('Hello world!', { size: 32 })\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])\n * ```\n *\n * @param value - String to encode.\n * @param options - Encoding options.\n * @returns Encoded {@link ox#Bytes.Bytes}.\n */\nfunction fromString(value, options = {}) {\n const { size } = options;\n const bytes = encoder.encode(value);\n if (typeof size === 'number') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n return padRight(bytes, size);\n }\n return bytes;\n}\n/**\n * Checks if two {@link ox#Bytes.Bytes} values are equal.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.isEqual(Bytes.from([1]), Bytes.from([1]))\n * // @log: true\n *\n * Bytes.isEqual(Bytes.from([1]), Bytes.from([2]))\n * // @log: false\n * ```\n *\n * @param bytesA - First {@link ox#Bytes.Bytes} value.\n * @param bytesB - Second {@link ox#Bytes.Bytes} value.\n * @returns `true` if the two values are equal, otherwise `false`.\n */\nfunction isEqual(bytesA, bytesB) {\n return (0,_noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_4__.equalBytes)(bytesA, bytesB);\n}\n/**\n * Pads a {@link ox#Bytes.Bytes} value to the left with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.padLeft(Bytes.from([1]), 4)\n * // @log: Uint8Array([0, 0, 0, 1])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value to pad.\n * @param size - Size to pad the {@link ox#Bytes.Bytes} value to.\n * @returns Padded {@link ox#Bytes.Bytes} value.\n */\nfunction padLeft(value, size) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'left', size });\n}\n/**\n * Pads a {@link ox#Bytes.Bytes} value to the right with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.padRight(Bytes.from([1]), 4)\n * // @log: Uint8Array([1, 0, 0, 0])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value to pad.\n * @param size - Size to pad the {@link ox#Bytes.Bytes} value to.\n * @returns Padded {@link ox#Bytes.Bytes} value.\n */\nfunction padRight(value, size) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'right', size });\n}\n/**\n * Generates random {@link ox#Bytes.Bytes} of the specified length.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const bytes = Bytes.random(32)\n * // @log: Uint8Array([... x32])\n * ```\n *\n * @param length - Length of the random {@link ox#Bytes.Bytes} to generate.\n * @returns Random {@link ox#Bytes.Bytes} of the specified length.\n */\nfunction random(length) {\n return crypto.getRandomValues(new Uint8Array(length));\n}\n/**\n * Retrieves the size of a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.size(Bytes.from([1, 2, 3, 4]))\n * // @log: 4\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value.\n * @returns Size of the {@link ox#Bytes.Bytes} value.\n */\nfunction size(value) {\n return value.length;\n}\n/**\n * Returns a section of a {@link ox#Bytes.Bytes} value given a start/end bytes offset.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.slice(\n * Bytes.from([1, 2, 3, 4, 5, 6, 7, 8, 9]),\n * 1,\n * 4,\n * )\n * // @log: Uint8Array([2, 3, 4])\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} value.\n * @param start - Start offset.\n * @param end - End offset.\n * @param options - Slice options.\n * @returns Sliced {@link ox#Bytes.Bytes} value.\n */\nfunction slice(value, start, end, options = {}) {\n const { strict } = options;\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertStartOffset(value, start);\n const value_ = value.slice(start, end);\n if (strict)\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertEndOffset(value_, start, end);\n return value_;\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a bigint.\n *\n * @example\n * ```ts\n * import { Bytes } from 'ox'\n *\n * Bytes.toBigInt(Bytes.from([1, 164]))\n * // @log: 420n\n * ```\n *\n * @param bytes - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Decoding options.\n * @returns Decoded bigint.\n */\nfunction toBigInt(bytes, options = {}) {\n const { size } = options;\n if (typeof size !== 'undefined')\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n const hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes, options);\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.toBigInt(hex, options);\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a boolean.\n *\n * @example\n * ```ts\n * import { Bytes } from 'ox'\n *\n * Bytes.toBoolean(Bytes.from([1]))\n * // @log: true\n * ```\n *\n * @param bytes - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Decoding options.\n * @returns Decoded boolean.\n */\nfunction toBoolean(bytes, options = {}) {\n const { size } = options;\n let bytes_ = bytes;\n if (typeof size !== 'undefined') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes_, size);\n bytes_ = trimLeft(bytes_);\n }\n if (bytes_.length > 1 || bytes_[0] > 1)\n throw new InvalidBytesBooleanError(bytes_);\n return Boolean(bytes_[0]);\n}\n/**\n * Encodes a {@link ox#Bytes.Bytes} value into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.toHex(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // '0x48656c6c6f20576f726c6421'\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Options.\n * @returns Decoded {@link ox#Hex.Hex} value.\n */\nfunction toHex(value, options = {}) {\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(value, options);\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a number.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.toNumber(Bytes.from([1, 164]))\n * // @log: 420\n * ```\n */\nfunction toNumber(bytes, options = {}) {\n const { size } = options;\n if (typeof size !== 'undefined')\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes, size);\n const hex = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes, options);\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.toNumber(hex, options);\n}\n/**\n * Decodes a {@link ox#Bytes.Bytes} into a string.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * const data = Bytes.toString(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // @log: 'Hello world'\n * ```\n *\n * @param bytes - The {@link ox#Bytes.Bytes} to decode.\n * @param options - Options.\n * @returns Decoded string.\n */\nfunction toString(bytes, options = {}) {\n const { size } = options;\n let bytes_ = bytes;\n if (typeof size !== 'undefined') {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(bytes_, size);\n bytes_ = trimRight(bytes_);\n }\n return decoder.decode(bytes_);\n}\n/**\n * Trims leading zeros from a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.trimLeft(Bytes.from([0, 0, 0, 0, 1, 2, 3]))\n * // @log: Uint8Array([1, 2, 3])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value.\n * @returns Trimmed {@link ox#Bytes.Bytes} value.\n */\nfunction trimLeft(value) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'left' });\n}\n/**\n * Trims trailing zeros from a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.trimRight(Bytes.from([1, 2, 3, 0, 0, 0, 0]))\n * // @log: Uint8Array([1, 2, 3])\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} value.\n * @returns Trimmed {@link ox#Bytes.Bytes} value.\n */\nfunction trimRight(value) {\n return _internal_bytes_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'right' });\n}\n/**\n * Checks if the given value is {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.validate('0x')\n * // @log: false\n *\n * Bytes.validate(Bytes.from([1, 2, 3]))\n * // @log: true\n * ```\n *\n * @param value - Value to check.\n * @returns `true` if the value is {@link ox#Bytes.Bytes}, otherwise `false`.\n */\nfunction validate(value) {\n try {\n assert(value);\n return true;\n }\n catch {\n return false;\n }\n}\n/**\n * Thrown when the bytes value cannot be represented as a boolean.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.toBoolean(Bytes.from([5]))\n * // @error: Bytes.InvalidBytesBooleanError: Bytes value `[5]` is not a valid boolean.\n * // @error: The bytes array must contain a single byte of either a `0` or `1` value.\n * ```\n */\nclass InvalidBytesBooleanError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor(bytes) {\n super(`Bytes value \\`${bytes}\\` is not a valid boolean.`, {\n metaMessages: [\n 'The bytes array must contain a single byte of either a `0` or `1` value.',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.InvalidBytesBooleanError'\n });\n }\n}\n/**\n * Thrown when a value cannot be converted to bytes.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Bytes } from 'ox'\n *\n * Bytes.from('foo')\n * // @error: Bytes.InvalidBytesTypeError: Value `foo` of type `string` is an invalid Bytes value.\n * ```\n */\nclass InvalidBytesTypeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor(value) {\n super(`Value \\`${typeof value === 'object' ? _Json_js__WEBPACK_IMPORTED_MODULE_5__.stringify(value) : value}\\` of type \\`${typeof value}\\` is an invalid Bytes value.`, {\n metaMessages: ['Bytes values must be of type `Bytes`.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.InvalidBytesTypeError'\n });\n }\n}\n/**\n * Thrown when a size exceeds the maximum allowed size.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.fromString('Hello World!', { size: 8 })\n * // @error: Bytes.SizeOverflowError: Size cannot exceed `8` bytes. Given size: `12` bytes.\n * ```\n */\nclass SizeOverflowError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor({ givenSize, maxSize }) {\n super(`Size cannot exceed \\`${maxSize}\\` bytes. Given size: \\`${givenSize}\\` bytes.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.SizeOverflowError'\n });\n }\n}\n/**\n * Thrown when a slice offset is out-of-bounds.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.slice(Bytes.from([1, 2, 3]), 4)\n * // @error: Bytes.SliceOffsetOutOfBoundsError: Slice starting at offset `4` is out-of-bounds (size: `3`).\n * ```\n */\nclass SliceOffsetOutOfBoundsError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor({ offset, position, size, }) {\n super(`Slice ${position === 'start' ? 'starting' : 'ending'} at offset \\`${offset}\\` is out-of-bounds (size: \\`${size}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.SliceOffsetOutOfBoundsError'\n });\n }\n}\n/**\n * Thrown when a the padding size exceeds the maximum allowed size.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.padLeft(Bytes.fromString('Hello World!'), 8)\n * // @error: [Bytes.SizeExceedsPaddingSizeError: Bytes size (`12`) exceeds padding size (`8`).\n * ```\n */\nclass SizeExceedsPaddingSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError {\n constructor({ size, targetSize, type, }) {\n super(`${type.charAt(0).toUpperCase()}${type\n .slice(1)\n .toLowerCase()} size (\\`${size}\\`) exceeds padding size (\\`${targetSize}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Bytes.SizeExceedsPaddingSizeError'\n });\n }\n}\n//# sourceMappingURL=Bytes.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQnl0ZXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQTBEO0FBQ3BCO0FBQ047QUFDZ0I7QUFDRTtBQUNoQjtBQUNsQztBQUNBO0FBQ0E7QUFDQSxrQ0FBa0MscUJBQXFCO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixxQkFBcUI7QUFDbEQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHFCQUFxQjtBQUMvQztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixtQkFBbUI7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsc0JBQXNCO0FBQ3JDO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNEQUFzRCxxQkFBcUI7QUFDM0U7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsc0JBQXNCO0FBQ3JDO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMscUJBQXFCO0FBQ3REO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBLDBDQUEwQyxVQUFVO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIscUJBQXFCO0FBQzFDO0FBQ08sd0NBQXdDO0FBQy9DLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQSxRQUFRLDBEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxrQkFBa0IsWUFBWSxxQkFBcUI7QUFDakU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0EsOERBQThELFVBQVU7QUFDeEU7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLGtCQUFrQjtBQUNyQztBQUNBLHFCQUFxQixxQkFBcUI7QUFDMUM7QUFDTyxvQ0FBb0M7QUFDM0MsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQSxRQUFRLHdEQUF1QjtBQUMvQixjQUFjLDZDQUFZO0FBQzFCO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixVQUFVO0FBQ2xDO0FBQ0E7QUFDQSwrQkFBK0IsZ0JBQWdCO0FBQy9DLDJCQUEyQixnRUFBeUI7QUFDcEQsNEJBQTRCLGdFQUF5QjtBQUNyRDtBQUNBLHNCQUFzQixpREFBZ0IsNEJBQTRCLGlCQUFpQixFQUFFLGlCQUFpQixRQUFRLFVBQVU7QUFDeEg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLHFCQUFxQjtBQUNyRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQSx3Q0FBd0MsU0FBUztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHFCQUFxQjtBQUMxQztBQUNPO0FBQ1AsZ0JBQWdCLCtDQUFjO0FBQzlCO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixxQkFBcUI7QUFDL0M7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0EsbURBQW1ELFVBQVU7QUFDN0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixxQkFBcUI7QUFDMUM7QUFDTyx1Q0FBdUM7QUFDOUMsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQSxRQUFRLDBEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLHNCQUFzQjtBQUN4QztBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixzQkFBc0I7QUFDaEQsMkJBQTJCLHNCQUFzQjtBQUNqRDtBQUNBO0FBQ087QUFDUCxXQUFXLHdFQUFVO0FBQ3JCO0FBQ0E7QUFDQSxXQUFXLHNCQUFzQjtBQUNqQztBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0I7QUFDekMsa0NBQWtDLHNCQUFzQjtBQUN4RCxvQkFBb0Isc0JBQXNCO0FBQzFDO0FBQ087QUFDUCxXQUFXLG1EQUFZLFVBQVUsbUJBQW1CO0FBQ3BEO0FBQ0E7QUFDQSxXQUFXLHNCQUFzQjtBQUNqQztBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0I7QUFDekMsa0NBQWtDLHNCQUFzQjtBQUN4RCxvQkFBb0Isc0JBQXNCO0FBQzFDO0FBQ087QUFDUCxXQUFXLG1EQUFZLFVBQVUsb0JBQW9CO0FBQ3JEO0FBQ0E7QUFDQSxxQkFBcUIsc0JBQXNCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLHNCQUFzQjtBQUMvRCxvQkFBb0Isc0JBQXNCO0FBQzFDO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsc0JBQXNCO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHNCQUFzQjtBQUN6Qyx5QkFBeUIsc0JBQXNCO0FBQy9DO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsc0JBQXNCO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsc0JBQXNCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDTyw4Q0FBOEM7QUFDckQsWUFBWSxTQUFTO0FBQ3JCLElBQUksaUVBQTBCO0FBQzlCO0FBQ0E7QUFDQSxRQUFRLCtEQUF3QjtBQUNoQztBQUNBO0FBQ0E7QUFDQSxjQUFjLHNCQUFzQjtBQUNwQztBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixzQkFBc0I7QUFDN0M7QUFDQTtBQUNBO0FBQ08scUNBQXFDO0FBQzVDLFlBQVksT0FBTztBQUNuQjtBQUNBLFFBQVEsMERBQW1CO0FBQzNCLGdCQUFnQiw4Q0FBYTtBQUM3QixXQUFXLDZDQUFZO0FBQ3ZCO0FBQ0E7QUFDQSxjQUFjLHNCQUFzQjtBQUNwQztBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixzQkFBc0I7QUFDN0M7QUFDQTtBQUNBO0FBQ08sc0NBQXNDO0FBQzdDLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0EsUUFBUSwwREFBbUI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHNCQUFzQixjQUFjLGtCQUFrQjtBQUNwRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixzQkFBc0I7QUFDN0M7QUFDQSxxQkFBcUIsa0JBQWtCO0FBQ3ZDO0FBQ08sa0NBQWtDO0FBQ3pDLFdBQVcsOENBQWE7QUFDeEI7QUFDQTtBQUNBLGNBQWMsc0JBQXNCO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08scUNBQXFDO0FBQzVDLFlBQVksT0FBTztBQUNuQjtBQUNBLFFBQVEsMERBQW1CO0FBQzNCLGdCQUFnQiw4Q0FBYTtBQUM3QixXQUFXLDZDQUFZO0FBQ3ZCO0FBQ0E7QUFDQSxjQUFjLHNCQUFzQjtBQUNwQztBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixzQkFBc0I7QUFDN0M7QUFDQTtBQUNBO0FBQ08scUNBQXFDO0FBQzVDLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0EsUUFBUSwwREFBbUI7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixzQkFBc0I7QUFDckQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsc0JBQXNCO0FBQ3pDLHFCQUFxQixzQkFBc0I7QUFDM0M7QUFDTztBQUNQLFdBQVcsb0RBQWEsVUFBVSxhQUFhO0FBQy9DO0FBQ0E7QUFDQSxnQ0FBZ0Msc0JBQXNCO0FBQ3REO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHNCQUFzQjtBQUN6QyxxQkFBcUIsc0JBQXNCO0FBQzNDO0FBQ087QUFDUCxXQUFXLG9EQUFhLFVBQVUsY0FBYztBQUNoRDtBQUNBO0FBQ0EsaUNBQWlDLHFCQUFxQjtBQUN0RDtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLHFCQUFxQjtBQUN6RDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sdUNBQXVDLGlEQUFnQjtBQUM5RDtBQUNBLCtCQUErQixNQUFNO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLG9DQUFvQyxpREFBZ0I7QUFDM0Q7QUFDQSx5QkFBeUIsNEJBQTRCLCtDQUFjLGdCQUFnQixlQUFlLGFBQWE7QUFDL0c7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBLHNDQUFzQyxTQUFTO0FBQy9DO0FBQ0E7QUFDQTtBQUNPLGdDQUFnQyxpREFBZ0I7QUFDdkQsa0JBQWtCLG9CQUFvQjtBQUN0QyxzQ0FBc0MsUUFBUSwwQkFBMEIsVUFBVTtBQUNsRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxRQUFRO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTywwQ0FBMEMsaURBQWdCO0FBQ2pFLGtCQUFrQix5QkFBeUI7QUFDM0MsdUJBQXVCLDhDQUE4QyxjQUFjLE9BQU8sK0JBQStCLEtBQUs7QUFDOUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sMENBQTBDLGlEQUFnQjtBQUNqRSxrQkFBa0IseUJBQXlCO0FBQzNDLGlCQUFpQiw2QkFBNkIsRUFBRTtBQUNoRDtBQUNBLDRCQUE0QixVQUFVLEtBQUssOEJBQThCLFdBQVc7QUFDcEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL0J5dGVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVxdWFsQnl0ZXMgfSBmcm9tICdAbm9ibGUvY3VydmVzL2Fic3RyYWN0L3V0aWxzJztcbmltcG9ydCAqIGFzIEVycm9ycyBmcm9tICcuL0Vycm9ycy5qcyc7XG5pbXBvcnQgKiBhcyBIZXggZnJvbSAnLi9IZXguanMnO1xuaW1wb3J0ICogYXMgaW50ZXJuYWwgZnJvbSAnLi9pbnRlcm5hbC9ieXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBpbnRlcm5hbF9oZXggZnJvbSAnLi9pbnRlcm5hbC9oZXguanMnO1xuaW1wb3J0ICogYXMgSnNvbiBmcm9tICcuL0pzb24uanMnO1xuY29uc3QgZGVjb2RlciA9IC8qI19fUFVSRV9fKi8gbmV3IFRleHREZWNvZGVyKCk7XG5jb25zdCBlbmNvZGVyID0gLyojX19QVVJFX18qLyBuZXcgVGV4dEVuY29kZXIoKTtcbi8qKlxuICogQXNzZXJ0cyBpZiB0aGUgZ2l2ZW4gdmFsdWUgaXMge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogQnl0ZXMuYXNzZXJ0KCdhYmMnKVxuICogLy8gQGVycm9yOiBCeXRlcy5JbnZhbGlkQnl0ZXNUeXBlRXJyb3I6XG4gKiAvLyBAZXJyb3I6IFZhbHVlIGBcImFiY1wiYCBvZiB0eXBlIGBzdHJpbmdgIGlzIGFuIGludmFsaWQgQnl0ZXMgdmFsdWUuXG4gKiAvLyBAZXJyb3I6IEJ5dGVzIHZhbHVlcyBtdXN0IGJlIG9mIHR5cGUgYFVpbnQ4QXJyYXlgLlxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVmFsdWUgdG8gYXNzZXJ0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KHZhbHVlKSB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgVWludDhBcnJheSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGlmICghdmFsdWUpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQnl0ZXNUeXBlRXJyb3IodmFsdWUpO1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEJ5dGVzVHlwZUVycm9yKHZhbHVlKTtcbiAgICBpZiAoISgnQllURVNfUEVSX0VMRU1FTlQnIGluIHZhbHVlKSlcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRCeXRlc1R5cGVFcnJvcih2YWx1ZSk7XG4gICAgaWYgKHZhbHVlLkJZVEVTX1BFUl9FTEVNRU5UICE9PSAxIHx8IHZhbHVlLmNvbnN0cnVjdG9yLm5hbWUgIT09ICdVaW50OEFycmF5JylcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRCeXRlc1R5cGVFcnJvcih2YWx1ZSk7XG59XG4vKipcbiAqIENvbmNhdGVuYXRlcyB0d28gb3IgbW9yZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBieXRlcyA9IEJ5dGVzLmNvbmNhdChcbiAqICAgQnl0ZXMuZnJvbShbMV0pLFxuICogICBCeXRlcy5mcm9tKFs2OV0pLFxuICogICBCeXRlcy5mcm9tKFs0MjAsIDY5XSksXG4gKiApXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5IFsgMSwgNjksIDQyMCwgNjkgXVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlcyAtIFZhbHVlcyB0byBjb25jYXRlbmF0ZS5cbiAqIEByZXR1cm5zIENvbmNhdGVuYXRlZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29uY2F0KC4uLnZhbHVlcykge1xuICAgIGxldCBsZW5ndGggPSAwO1xuICAgIGZvciAoY29uc3QgYXJyIG9mIHZhbHVlcykge1xuICAgICAgICBsZW5ndGggKz0gYXJyLmxlbmd0aDtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IFVpbnQ4QXJyYXkobGVuZ3RoKTtcbiAgICBmb3IgKGxldCBpID0gMCwgaW5kZXggPSAwOyBpIDwgdmFsdWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGFyciA9IHZhbHVlc1tpXTtcbiAgICAgICAgcmVzdWx0LnNldChhcnIsIGluZGV4KTtcbiAgICAgICAgaW5kZXggKz0gYXJyLmxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbi8qKlxuICogSW5zdGFudGlhdGVzIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSBmcm9tIGEgYFVpbnQ4QXJyYXlgLCBhIGhleCBzdHJpbmcsIG9yIGFuIGFycmF5IG9mIHVuc2lnbmVkIDgtYml0IGludGVnZXJzLlxuICpcbiAqIDo6OnRpcFxuICpcbiAqIFRvIGluc3RhbnRpYXRlIGZyb20gYSAqKkJvb2xlYW4qKiwgKipTdHJpbmcqKiwgb3IgKipOdW1iZXIqKiwgdXNlIG9uZSBvZiB0aGUgZm9sbG93aW5nOlxuICpcbiAqIC0gYEJ5dGVzLmZyb21Cb29sZWFuYFxuICpcbiAqIC0gYEJ5dGVzLmZyb21TdHJpbmdgXG4gKlxuICogLSBgQnl0ZXMuZnJvbU51bWJlcmBcbiAqXG4gKiA6OjpcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIC8vIEBub0Vycm9yc1xuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbShbMjU1LCAxMjQsIDUsIDRdKVxuICogLy8gQGxvZzogVWludDhBcnJheShbMjU1LCAxMjQsIDUsIDRdKVxuICpcbiAqIGNvbnN0IGRhdGEgPSBCeXRlcy5mcm9tKCcweGRlYWRiZWVmJylcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzIyMiwgMTczLCAxOTAsIDIzOV0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgQSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IGluc3RhbmNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbSh2YWx1ZSkge1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpXG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJylcbiAgICAgICAgcmV0dXJuIGZyb21IZXgodmFsdWUpO1xuICAgIHJldHVybiBmcm9tQXJyYXkodmFsdWUpO1xufVxuLyoqXG4gKiBDb252ZXJ0cyBhbiBhcnJheSBvZiB1bnNpZ25lZCA4LWJpdCBpbnRlZ2VycyBpbnRvIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGRhdGEgPSBCeXRlcy5mcm9tQXJyYXkoWzI1NSwgMTI0LCA1LCA0XSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzI1NSwgMTI0LCA1LCA0XSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBBIHtAbGluayBveCNCeXRlcy5CeXRlc30gaW5zdGFuY2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tQXJyYXkodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gdmFsdWUgOiBuZXcgVWludDhBcnJheSh2YWx1ZSk7XG59XG4vKipcbiAqIEVuY29kZXMgYSBib29sZWFuIHZhbHVlIGludG8ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgZGF0YSA9IEJ5dGVzLmZyb21Cb29sZWFuKHRydWUpXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFsxXSlcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbUJvb2xlYW4odHJ1ZSwgeyBzaXplOiAzMiB9KVxuICogLy8gQGxvZzogVWludDhBcnJheShbMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMV0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBCb29sZWFuIHZhbHVlIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gRW5jb2Rpbmcgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEVuY29kZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21Cb29sZWFuKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpemUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYnl0ZXMgPSBuZXcgVWludDhBcnJheSgxKTtcbiAgICBieXRlc1swXSA9IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKHR5cGVvZiBzaXplID09PSAnbnVtYmVyJykge1xuICAgICAgICBpbnRlcm5hbC5hc3NlcnRTaXplKGJ5dGVzLCBzaXplKTtcbiAgICAgICAgcmV0dXJuIHBhZExlZnQoYnl0ZXMsIHNpemUpO1xuICAgIH1cbiAgICByZXR1cm4gYnl0ZXM7XG59XG4vKipcbiAqIEVuY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbUhleCgnMHg0ODY1NmM2YzZmMjA3NzZmNzI2YzY0MjEnKVxuICogLy8gQGxvZzogVWludDhBcnJheShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSlcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbUhleCgnMHg0ODY1NmM2YzZmMjA3NzZmNzI2YzY0MjEnLCB7IHNpemU6IDMyIH0pXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFs3MiwgMTAxLCAxMDgsIDEwOCwgMTExLCAzMiwgODcsIDExMSwgMTE0LCAxMDgsIDEwMCwgMzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDBdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gRW5jb2Rpbmcgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEVuY29kZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21IZXgodmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBsZXQgaGV4ID0gdmFsdWU7XG4gICAgaWYgKHNpemUpIHtcbiAgICAgICAgaW50ZXJuYWxfaGV4LmFzc2VydFNpemUodmFsdWUsIHNpemUpO1xuICAgICAgICBoZXggPSBIZXgucGFkUmlnaHQodmFsdWUsIHNpemUpO1xuICAgIH1cbiAgICBsZXQgaGV4U3RyaW5nID0gaGV4LnNsaWNlKDIpO1xuICAgIGlmIChoZXhTdHJpbmcubGVuZ3RoICUgMilcbiAgICAgICAgaGV4U3RyaW5nID0gYDAke2hleFN0cmluZ31gO1xuICAgIGNvbnN0IGxlbmd0aCA9IGhleFN0cmluZy5sZW5ndGggLyAyO1xuICAgIGNvbnN0IGJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkobGVuZ3RoKTtcbiAgICBmb3IgKGxldCBpbmRleCA9IDAsIGogPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBjb25zdCBuaWJibGVMZWZ0ID0gaW50ZXJuYWwuY2hhckNvZGVUb0Jhc2UxNihoZXhTdHJpbmcuY2hhckNvZGVBdChqKyspKTtcbiAgICAgICAgY29uc3QgbmliYmxlUmlnaHQgPSBpbnRlcm5hbC5jaGFyQ29kZVRvQmFzZTE2KGhleFN0cmluZy5jaGFyQ29kZUF0KGorKykpO1xuICAgICAgICBpZiAobmliYmxlTGVmdCA9PT0gdW5kZWZpbmVkIHx8IG5pYmJsZVJpZ2h0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcnMuQmFzZUVycm9yKGBJbnZhbGlkIGJ5dGUgc2VxdWVuY2UgKFwiJHtoZXhTdHJpbmdbaiAtIDJdfSR7aGV4U3RyaW5nW2ogLSAxXX1cIiBpbiBcIiR7aGV4U3RyaW5nfVwiKS5gKTtcbiAgICAgICAgfVxuICAgICAgICBieXRlc1tpbmRleF0gPSBuaWJibGVMZWZ0ICogMTYgKyBuaWJibGVSaWdodDtcbiAgICB9XG4gICAgcmV0dXJuIGJ5dGVzO1xufVxuLyoqXG4gKiBFbmNvZGVzIGEgbnVtYmVyIHZhbHVlIGludG8ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgZGF0YSA9IEJ5dGVzLmZyb21OdW1iZXIoNDIwKVxuICogLy8gQGxvZzogVWludDhBcnJheShbMSwgMTY0XSlcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbU51bWJlcig0MjAsIHsgc2l6ZTogNCB9KVxuICogLy8gQGxvZzogVWludDhBcnJheShbMCwgMCwgMSwgMTY0XSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIE51bWJlciB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEVuY29kaW5nIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBFbmNvZGVkIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tTnVtYmVyKHZhbHVlLCBvcHRpb25zKSB7XG4gICAgY29uc3QgaGV4ID0gSGV4LmZyb21OdW1iZXIodmFsdWUsIG9wdGlvbnMpO1xuICAgIHJldHVybiBmcm9tSGV4KGhleCk7XG59XG4vKipcbiAqIEVuY29kZXMgYSBzdHJpbmcgaW50byB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMuZnJvbVN0cmluZygnSGVsbG8gd29ybGQhJylcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzcyLCAxMDEsIDEwOCwgMTA4LCAxMTEsIDMyLCAxMTksIDExMSwgMTE0LCAxMDgsIDEwMCwgMzNdKVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGRhdGEgPSBCeXRlcy5mcm9tU3RyaW5nKCdIZWxsbyB3b3JsZCEnLCB7IHNpemU6IDMyIH0pXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFs3MiwgMTAxLCAxMDgsIDEwOCwgMTExLCAzMiwgODcsIDExMSwgMTE0LCAxMDgsIDEwMCwgMzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDBdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gU3RyaW5nIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gRW5jb2Rpbmcgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEVuY29kZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21TdHJpbmcodmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBieXRlcyA9IGVuY29kZXIuZW5jb2RlKHZhbHVlKTtcbiAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIGludGVybmFsLmFzc2VydFNpemUoYnl0ZXMsIHNpemUpO1xuICAgICAgICByZXR1cm4gcGFkUmlnaHQoYnl0ZXMsIHNpemUpO1xuICAgIH1cbiAgICByZXR1cm4gYnl0ZXM7XG59XG4vKipcbiAqIENoZWNrcyBpZiB0d28ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZXMgYXJlIGVxdWFsLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy5pc0VxdWFsKEJ5dGVzLmZyb20oWzFdKSwgQnl0ZXMuZnJvbShbMV0pKVxuICogLy8gQGxvZzogdHJ1ZVxuICpcbiAqIEJ5dGVzLmlzRXF1YWwoQnl0ZXMuZnJvbShbMV0pLCBCeXRlcy5mcm9tKFsyXSkpXG4gKiAvLyBAbG9nOiBmYWxzZVxuICogYGBgXG4gKlxuICogQHBhcmFtIGJ5dGVzQSAtIEZpcnN0IHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKiBAcGFyYW0gYnl0ZXNCIC0gU2Vjb25kIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHR3byB2YWx1ZXMgYXJlIGVxdWFsLCBvdGhlcndpc2UgYGZhbHNlYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRXF1YWwoYnl0ZXNBLCBieXRlc0IpIHtcbiAgICByZXR1cm4gZXF1YWxCeXRlcyhieXRlc0EsIGJ5dGVzQik7XG59XG4vKipcbiAqIFBhZHMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvIHRoZSBsZWZ0IHdpdGggemVybyBieXRlcyB1bnRpbCBpdCByZWFjaGVzIHRoZSBnaXZlbiBgc2l6ZWAgKGRlZmF1bHQ6IDMyIGJ5dGVzKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogQnl0ZXMucGFkTGVmdChCeXRlcy5mcm9tKFsxXSksIDQpXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFswLCAwLCAwLCAxXSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUgdG8gcGFkLlxuICogQHBhcmFtIHNpemUgLSBTaXplIHRvIHBhZCB0aGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSB0by5cbiAqIEByZXR1cm5zIFBhZGRlZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFkTGVmdCh2YWx1ZSwgc2l6ZSkge1xuICAgIHJldHVybiBpbnRlcm5hbC5wYWQodmFsdWUsIHsgZGlyOiAnbGVmdCcsIHNpemUgfSk7XG59XG4vKipcbiAqIFBhZHMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvIHRoZSByaWdodCB3aXRoIHplcm8gYnl0ZXMgdW50aWwgaXQgcmVhY2hlcyB0aGUgZ2l2ZW4gYHNpemVgIChkZWZhdWx0OiAzMiBieXRlcykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnBhZFJpZ2h0KEJ5dGVzLmZyb20oWzFdKSwgNClcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzEsIDAsIDAsIDBdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSB0byBwYWQuXG4gKiBAcGFyYW0gc2l6ZSAtIFNpemUgdG8gcGFkIHRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvLlxuICogQHJldHVybnMgUGFkZGVkIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWRSaWdodCh2YWx1ZSwgc2l6ZSkge1xuICAgIHJldHVybiBpbnRlcm5hbC5wYWQodmFsdWUsIHsgZGlyOiAncmlnaHQnLCBzaXplIH0pO1xufVxuLyoqXG4gKiBHZW5lcmF0ZXMgcmFuZG9tIHtAbGluayBveCNCeXRlcy5CeXRlc30gb2YgdGhlIHNwZWNpZmllZCBsZW5ndGguXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGJ5dGVzID0gQnl0ZXMucmFuZG9tKDMyKVxuICogLy8gQGxvZzogVWludDhBcnJheShbLi4uIHgzMl0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gbGVuZ3RoIC0gTGVuZ3RoIG9mIHRoZSByYW5kb20ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBnZW5lcmF0ZS5cbiAqIEByZXR1cm5zIFJhbmRvbSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IG9mIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmFuZG9tKGxlbmd0aCkge1xuICAgIHJldHVybiBjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKG5ldyBVaW50OEFycmF5KGxlbmd0aCkpO1xufVxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIHNpemUgb2YgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy5zaXplKEJ5dGVzLmZyb20oWzEsIDIsIDMsIDRdKSlcbiAqIC8vIEBsb2c6IDRcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKiBAcmV0dXJucyBTaXplIG9mIHRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2l6ZSh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG59XG4vKipcbiAqIFJldHVybnMgYSBzZWN0aW9uIG9mIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSBnaXZlbiBhIHN0YXJ0L2VuZCBieXRlcyBvZmZzZXQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnNsaWNlKFxuICogICBCeXRlcy5mcm9tKFsxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5XSksXG4gKiAgIDEsXG4gKiAgIDQsXG4gKiApXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFsyLCAzLCA0XSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICogQHBhcmFtIHN0YXJ0IC0gU3RhcnQgb2Zmc2V0LlxuICogQHBhcmFtIGVuZCAtIEVuZCBvZmZzZXQuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFNsaWNlIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBTbGljZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNsaWNlKHZhbHVlLCBzdGFydCwgZW5kLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHN0cmljdCB9ID0gb3B0aW9ucztcbiAgICBpbnRlcm5hbC5hc3NlcnRTdGFydE9mZnNldCh2YWx1ZSwgc3RhcnQpO1xuICAgIGNvbnN0IHZhbHVlXyA9IHZhbHVlLnNsaWNlKHN0YXJ0LCBlbmQpO1xuICAgIGlmIChzdHJpY3QpXG4gICAgICAgIGludGVybmFsLmFzc2VydEVuZE9mZnNldCh2YWx1ZV8sIHN0YXJ0LCBlbmQpO1xuICAgIHJldHVybiB2YWx1ZV87XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IGludG8gYSBiaWdpbnQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvQmlnSW50KEJ5dGVzLmZyb20oWzEsIDE2NF0pKVxuICogLy8gQGxvZzogNDIwblxuICogYGBgXG4gKlxuICogQHBhcmFtIGJ5dGVzIC0gVGhlIHtAbGluayBveCNCeXRlcy5CeXRlc30gdG8gZGVjb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBEZWNvZGluZyBvcHRpb25zLlxuICogQHJldHVybnMgRGVjb2RlZCBiaWdpbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0JpZ0ludChieXRlcywgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBzaXplIH0gPSBvcHRpb25zO1xuICAgIGlmICh0eXBlb2Ygc2l6ZSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIGludGVybmFsLmFzc2VydFNpemUoYnl0ZXMsIHNpemUpO1xuICAgIGNvbnN0IGhleCA9IEhleC5mcm9tQnl0ZXMoYnl0ZXMsIG9wdGlvbnMpO1xuICAgIHJldHVybiBIZXgudG9CaWdJbnQoaGV4LCBvcHRpb25zKTtcbn1cbi8qKlxuICogRGVjb2RlcyBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gaW50byBhIGJvb2xlYW4uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvQm9vbGVhbihCeXRlcy5mcm9tKFsxXSkpXG4gKiAvLyBAbG9nOiB0cnVlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYnl0ZXMgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIERlY29kaW5nIG9wdGlvbnMuXG4gKiBAcmV0dXJucyBEZWNvZGVkIGJvb2xlYW4uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0Jvb2xlYW4oYnl0ZXMsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgc2l6ZSB9ID0gb3B0aW9ucztcbiAgICBsZXQgYnl0ZXNfID0gYnl0ZXM7XG4gICAgaWYgKHR5cGVvZiBzaXplICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBpbnRlcm5hbC5hc3NlcnRTaXplKGJ5dGVzXywgc2l6ZSk7XG4gICAgICAgIGJ5dGVzXyA9IHRyaW1MZWZ0KGJ5dGVzXyk7XG4gICAgfVxuICAgIGlmIChieXRlc18ubGVuZ3RoID4gMSB8fCBieXRlc19bMF0gPiAxKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEJ5dGVzQm9vbGVhbkVycm9yKGJ5dGVzXyk7XG4gICAgcmV0dXJuIEJvb2xlYW4oYnl0ZXNfWzBdKTtcbn1cbi8qKlxuICogRW5jb2RlcyBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUgaW50byBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzIH0gZnJvbSAnb3gnXG4gKlxuICogQnl0ZXMudG9IZXgoQnl0ZXMuZnJvbShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSkpXG4gKiAvLyAnMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBEZWNvZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSGV4KHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICByZXR1cm4gSGV4LmZyb21CeXRlcyh2YWx1ZSwgb3B0aW9ucyk7XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IGludG8gYSBudW1iZXIuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvTnVtYmVyKEJ5dGVzLmZyb20oWzEsIDE2NF0pKVxuICogLy8gQGxvZzogNDIwXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvTnVtYmVyKGJ5dGVzLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpemUgfSA9IG9wdGlvbnM7XG4gICAgaWYgKHR5cGVvZiBzaXplICE9PSAndW5kZWZpbmVkJylcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShieXRlcywgc2l6ZSk7XG4gICAgY29uc3QgaGV4ID0gSGV4LmZyb21CeXRlcyhieXRlcywgb3B0aW9ucyk7XG4gICAgcmV0dXJuIEhleC50b051bWJlcihoZXgsIG9wdGlvbnMpO1xufVxuLyoqXG4gKiBEZWNvZGVzIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBpbnRvIGEgc3RyaW5nLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gQnl0ZXMudG9TdHJpbmcoQnl0ZXMuZnJvbShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSkpXG4gKiAvLyBAbG9nOiAnSGVsbG8gd29ybGQnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYnl0ZXMgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBEZWNvZGVkIHN0cmluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvU3RyaW5nKGJ5dGVzLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpemUgfSA9IG9wdGlvbnM7XG4gICAgbGV0IGJ5dGVzXyA9IGJ5dGVzO1xuICAgIGlmICh0eXBlb2Ygc2l6ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShieXRlc18sIHNpemUpO1xuICAgICAgICBieXRlc18gPSB0cmltUmlnaHQoYnl0ZXNfKTtcbiAgICB9XG4gICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGJ5dGVzXyk7XG59XG4vKipcbiAqIFRyaW1zIGxlYWRpbmcgemVyb3MgZnJvbSBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRyaW1MZWZ0KEJ5dGVzLmZyb20oWzAsIDAsIDAsIDAsIDEsIDIsIDNdKSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzEsIDIsIDNdKVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqIEByZXR1cm5zIFRyaW1tZWQge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyaW1MZWZ0KHZhbHVlKSB7XG4gICAgcmV0dXJuIGludGVybmFsLnRyaW0odmFsdWUsIHsgZGlyOiAnbGVmdCcgfSk7XG59XG4vKipcbiAqIFRyaW1zIHRyYWlsaW5nIHplcm9zIGZyb20gYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy50cmltUmlnaHQoQnl0ZXMuZnJvbShbMSwgMiwgMywgMCwgMCwgMCwgMF0pKVxuICogLy8gQGxvZzogVWludDhBcnJheShbMSwgMiwgM10pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICogQHJldHVybnMgVHJpbW1lZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJpbVJpZ2h0KHZhbHVlKSB7XG4gICAgcmV0dXJuIGludGVybmFsLnRyaW0odmFsdWUsIHsgZGlyOiAncmlnaHQnIH0pO1xufVxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIHZhbHVlIGlzIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnZhbGlkYXRlKCcweCcpXG4gKiAvLyBAbG9nOiBmYWxzZVxuICpcbiAqIEJ5dGVzLnZhbGlkYXRlKEJ5dGVzLmZyb20oWzEsIDIsIDNdKSlcbiAqIC8vIEBsb2c6IHRydWVcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZSBpcyB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LCBvdGhlcndpc2UgYGZhbHNlYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZhbHVlKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgYXNzZXJ0KHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNhdGNoIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gdGhlIGJ5dGVzIHZhbHVlIGNhbm5vdCBiZSByZXByZXNlbnRlZCBhcyBhIGJvb2xlYW4uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnRvQm9vbGVhbihCeXRlcy5mcm9tKFs1XSkpXG4gKiAvLyBAZXJyb3I6IEJ5dGVzLkludmFsaWRCeXRlc0Jvb2xlYW5FcnJvcjogQnl0ZXMgdmFsdWUgYFs1XWAgaXMgbm90IGEgdmFsaWQgYm9vbGVhbi5cbiAqIC8vIEBlcnJvcjogVGhlIGJ5dGVzIGFycmF5IG11c3QgY29udGFpbiBhIHNpbmdsZSBieXRlIG9mIGVpdGhlciBhIGAwYCBvciBgMWAgdmFsdWUuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRCeXRlc0Jvb2xlYW5FcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKGJ5dGVzKSB7XG4gICAgICAgIHN1cGVyKGBCeXRlcyB2YWx1ZSBcXGAke2J5dGVzfVxcYCBpcyBub3QgYSB2YWxpZCBib29sZWFuLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGUgYnl0ZXMgYXJyYXkgbXVzdCBjb250YWluIGEgc2luZ2xlIGJ5dGUgb2YgZWl0aGVyIGEgYDBgIG9yIGAxYCB2YWx1ZS4nLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdCeXRlcy5JbnZhbGlkQnl0ZXNCb29sZWFuRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gYSB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGJ5dGVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLmZyb20oJ2ZvbycpXG4gKiAvLyBAZXJyb3I6IEJ5dGVzLkludmFsaWRCeXRlc1R5cGVFcnJvcjogVmFsdWUgYGZvb2Agb2YgdHlwZSBgc3RyaW5nYCBpcyBhbiBpbnZhbGlkIEJ5dGVzIHZhbHVlLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQnl0ZXNUeXBlRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih2YWx1ZSkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHt0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnID8gSnNvbi5zdHJpbmdpZnkodmFsdWUpIDogdmFsdWV9XFxgIG9mIHR5cGUgXFxgJHt0eXBlb2YgdmFsdWV9XFxgIGlzIGFuIGludmFsaWQgQnl0ZXMgdmFsdWUuYCwge1xuICAgICAgICAgICAgbWV0YU1lc3NhZ2VzOiBbJ0J5dGVzIHZhbHVlcyBtdXN0IGJlIG9mIHR5cGUgYEJ5dGVzYC4nXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdCeXRlcy5JbnZhbGlkQnl0ZXNUeXBlRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gYSBzaXplIGV4Y2VlZHMgdGhlIG1heGltdW0gYWxsb3dlZCBzaXplLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMgfSBmcm9tICdveCdcbiAqXG4gKiBCeXRlcy5mcm9tU3RyaW5nKCdIZWxsbyBXb3JsZCEnLCB7IHNpemU6IDggfSlcbiAqIC8vIEBlcnJvcjogQnl0ZXMuU2l6ZU92ZXJmbG93RXJyb3I6IFNpemUgY2Fubm90IGV4Y2VlZCBgOGAgYnl0ZXMuIEdpdmVuIHNpemU6IGAxMmAgYnl0ZXMuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNpemVPdmVyZmxvd0Vycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBnaXZlblNpemUsIG1heFNpemUgfSkge1xuICAgICAgICBzdXBlcihgU2l6ZSBjYW5ub3QgZXhjZWVkIFxcYCR7bWF4U2l6ZX1cXGAgYnl0ZXMuIEdpdmVuIHNpemU6IFxcYCR7Z2l2ZW5TaXplfVxcYCBieXRlcy5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0J5dGVzLlNpemVPdmVyZmxvd0Vycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIGEgc2xpY2Ugb2Zmc2V0IGlzIG91dC1vZi1ib3VuZHMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnNsaWNlKEJ5dGVzLmZyb20oWzEsIDIsIDNdKSwgNClcbiAqIC8vIEBlcnJvcjogQnl0ZXMuU2xpY2VPZmZzZXRPdXRPZkJvdW5kc0Vycm9yOiBTbGljZSBzdGFydGluZyBhdCBvZmZzZXQgYDRgIGlzIG91dC1vZi1ib3VuZHMgKHNpemU6IGAzYCkuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgb2Zmc2V0LCBwb3NpdGlvbiwgc2l6ZSwgfSkge1xuICAgICAgICBzdXBlcihgU2xpY2UgJHtwb3NpdGlvbiA9PT0gJ3N0YXJ0JyA/ICdzdGFydGluZycgOiAnZW5kaW5nJ30gYXQgb2Zmc2V0IFxcYCR7b2Zmc2V0fVxcYCBpcyBvdXQtb2YtYm91bmRzIChzaXplOiBcXGAke3NpemV9XFxgKS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0J5dGVzLlNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiBhIHRoZSBwYWRkaW5nIHNpemUgZXhjZWVkcyB0aGUgbWF4aW11bSBhbGxvd2VkIHNpemUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLnBhZExlZnQoQnl0ZXMuZnJvbVN0cmluZygnSGVsbG8gV29ybGQhJyksIDgpXG4gKiAvLyBAZXJyb3I6IFtCeXRlcy5TaXplRXhjZWVkc1BhZGRpbmdTaXplRXJyb3I6IEJ5dGVzIHNpemUgKGAxMmApIGV4Y2VlZHMgcGFkZGluZyBzaXplIChgOGApLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBTaXplRXhjZWVkc1BhZGRpbmdTaXplRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHNpemUsIHRhcmdldFNpemUsIHR5cGUsIH0pIHtcbiAgICAgICAgc3VwZXIoYCR7dHlwZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke3R5cGVcbiAgICAgICAgICAgIC5zbGljZSgxKVxuICAgICAgICAgICAgLnRvTG93ZXJDYXNlKCl9IHNpemUgKFxcYCR7c2l6ZX1cXGApIGV4Y2VlZHMgcGFkZGluZyBzaXplIChcXGAke3RhcmdldFNpemV9XFxgKS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0J5dGVzLlNpemVFeGNlZWRzUGFkZGluZ1NpemVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Qnl0ZXMuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Caches.js": /*!***************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Caches.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ checksum: () => (/* binding */ checksum),\n/* harmony export */ clear: () => (/* binding */ clear)\n/* harmony export */ });\n/* harmony import */ var _internal_lru_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/lru.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/lru.js\");\n\nconst caches = {\n checksum: /*#__PURE__*/ new _internal_lru_js__WEBPACK_IMPORTED_MODULE_0__.LruMap(8192),\n};\nconst checksum = caches.checksum;\n/**\n * Clears all global caches.\n *\n * @example\n * ```ts\n * import { Caches } from 'ox'\n * Caches.clear()\n * ```\n */\nfunction clear() {\n for (const cache of Object.values(caches))\n cache.clear();\n}\n//# sourceMappingURL=Caches.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvQ2FjaGVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUEyQztBQUMzQztBQUNBLGdDQUFnQyxvREFBTTtBQUN0QztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksU0FBUztBQUNyQjtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9DYWNoZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTHJ1TWFwIH0gZnJvbSAnLi9pbnRlcm5hbC9scnUuanMnO1xuY29uc3QgY2FjaGVzID0ge1xuICAgIGNoZWNrc3VtOiAvKiNfX1BVUkVfXyovIG5ldyBMcnVNYXAoODE5MiksXG59O1xuZXhwb3J0IGNvbnN0IGNoZWNrc3VtID0gY2FjaGVzLmNoZWNrc3VtO1xuLyoqXG4gKiBDbGVhcnMgYWxsIGdsb2JhbCBjYWNoZXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBDYWNoZXMgfSBmcm9tICdveCdcbiAqIENhY2hlcy5jbGVhcigpXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyKCkge1xuICAgIGZvciAoY29uc3QgY2FjaGUgb2YgT2JqZWN0LnZhbHVlcyhjYWNoZXMpKVxuICAgICAgICBjYWNoZS5jbGVhcigpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Q2FjaGVzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Caches.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js": /*!***************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Errors.js ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BaseError: () => (/* binding */ BaseError)\n/* harmony export */ });\n/* harmony import */ var _internal_errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/errors.js\");\n\n/**\n * Base error class inherited by all errors thrown by ox.\n *\n * @example\n * ```ts\n * import { Errors } from 'ox'\n * throw new Errors.BaseError('An error occurred')\n * ```\n */\nclass BaseError extends Error {\n constructor(shortMessage, options = {}) {\n const details = (() => {\n if (options.cause instanceof BaseError) {\n if (options.cause.details)\n return options.cause.details;\n if (options.cause.shortMessage)\n return options.cause.shortMessage;\n }\n if (options.cause &&\n 'details' in options.cause &&\n typeof options.cause.details === 'string')\n return options.cause.details;\n if (options.cause?.message)\n return options.cause.message;\n return options.details;\n })();\n const docsPath = (() => {\n if (options.cause instanceof BaseError)\n return options.cause.docsPath || options.docsPath;\n return options.docsPath;\n })();\n const docsBaseUrl = 'https://oxlib.sh';\n const docs = `${docsBaseUrl}${docsPath ?? ''}`;\n const message = [\n shortMessage || 'An error occurred.',\n ...(options.metaMessages ? ['', ...options.metaMessages] : []),\n ...(details || docsPath\n ? [\n '',\n details ? `Details: ${details}` : undefined,\n docsPath ? `See: ${docs}` : undefined,\n ]\n : []),\n ]\n .filter((x) => typeof x === 'string')\n .join('\\n');\n super(message, options.cause ? { cause: options.cause } : undefined);\n Object.defineProperty(this, \"details\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"docs\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"docsPath\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"shortMessage\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"cause\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'BaseError'\n });\n Object.defineProperty(this, \"version\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: `ox@${(0,_internal_errors_js__WEBPACK_IMPORTED_MODULE_0__.getVersion)()}`\n });\n this.cause = options.cause;\n this.details = details;\n this.docs = docs;\n this.docsPath = docsPath;\n this.shortMessage = shortMessage;\n }\n walk(fn) {\n return walk(this, fn);\n }\n}\n/** @internal */\nfunction walk(err, fn) {\n if (fn?.(err))\n return err;\n if (err && typeof err === 'object' && 'cause' in err && err.cause)\n return walk(err.cause, fn);\n return fn ? null : err;\n}\n//# sourceMappingURL=Errors.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvRXJyb3JzLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQWtEO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFNBQVM7QUFDckI7QUFDQTtBQUNBO0FBQ087QUFDUCwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLHdCQUF3QixZQUFZLEVBQUUsZUFBZTtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEMsUUFBUTtBQUNsRCx1Q0FBdUMsS0FBSztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLHVCQUF1QjtBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QiwrREFBVSxHQUFHO0FBQ3RDLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvRXJyb3JzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldFZlcnNpb24gfSBmcm9tICcuL2ludGVybmFsL2Vycm9ycy5qcyc7XG4vKipcbiAqIEJhc2UgZXJyb3IgY2xhc3MgaW5oZXJpdGVkIGJ5IGFsbCBlcnJvcnMgdGhyb3duIGJ5IG94LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgRXJyb3JzIH0gZnJvbSAnb3gnXG4gKiB0aHJvdyBuZXcgRXJyb3JzLkJhc2VFcnJvcignQW4gZXJyb3Igb2NjdXJyZWQnKVxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBCYXNlRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gICAgY29uc3RydWN0b3Ioc2hvcnRNZXNzYWdlLCBvcHRpb25zID0ge30pIHtcbiAgICAgICAgY29uc3QgZGV0YWlscyA9ICgoKSA9PiB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5jYXVzZSBpbnN0YW5jZW9mIEJhc2VFcnJvcikge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmNhdXNlLmRldGFpbHMpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvcHRpb25zLmNhdXNlLmRldGFpbHM7XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMuY2F1c2Uuc2hvcnRNZXNzYWdlKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5jYXVzZS5zaG9ydE1lc3NhZ2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5jYXVzZSAmJlxuICAgICAgICAgICAgICAgICdkZXRhaWxzJyBpbiBvcHRpb25zLmNhdXNlICYmXG4gICAgICAgICAgICAgICAgdHlwZW9mIG9wdGlvbnMuY2F1c2UuZGV0YWlscyA9PT0gJ3N0cmluZycpXG4gICAgICAgICAgICAgICAgcmV0dXJuIG9wdGlvbnMuY2F1c2UuZGV0YWlscztcbiAgICAgICAgICAgIGlmIChvcHRpb25zLmNhdXNlPy5tZXNzYWdlKVxuICAgICAgICAgICAgICAgIHJldHVybiBvcHRpb25zLmNhdXNlLm1lc3NhZ2U7XG4gICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5kZXRhaWxzO1xuICAgICAgICB9KSgpO1xuICAgICAgICBjb25zdCBkb2NzUGF0aCA9ICgoKSA9PiB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5jYXVzZSBpbnN0YW5jZW9mIEJhc2VFcnJvcilcbiAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5jYXVzZS5kb2NzUGF0aCB8fCBvcHRpb25zLmRvY3NQYXRoO1xuICAgICAgICAgICAgcmV0dXJuIG9wdGlvbnMuZG9jc1BhdGg7XG4gICAgICAgIH0pKCk7XG4gICAgICAgIGNvbnN0IGRvY3NCYXNlVXJsID0gJ2h0dHBzOi8vb3hsaWIuc2gnO1xuICAgICAgICBjb25zdCBkb2NzID0gYCR7ZG9jc0Jhc2VVcmx9JHtkb2NzUGF0aCA/PyAnJ31gO1xuICAgICAgICBjb25zdCBtZXNzYWdlID0gW1xuICAgICAgICAgICAgc2hvcnRNZXNzYWdlIHx8ICdBbiBlcnJvciBvY2N1cnJlZC4nLFxuICAgICAgICAgICAgLi4uKG9wdGlvbnMubWV0YU1lc3NhZ2VzID8gWycnLCAuLi5vcHRpb25zLm1ldGFNZXNzYWdlc10gOiBbXSksXG4gICAgICAgICAgICAuLi4oZGV0YWlscyB8fCBkb2NzUGF0aFxuICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgICAnJyxcbiAgICAgICAgICAgICAgICAgICAgZGV0YWlscyA/IGBEZXRhaWxzOiAke2RldGFpbHN9YCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgZG9jc1BhdGggPyBgU2VlOiAke2RvY3N9YCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgOiBbXSksXG4gICAgICAgIF1cbiAgICAgICAgICAgIC5maWx0ZXIoKHgpID0+IHR5cGVvZiB4ID09PSAnc3RyaW5nJylcbiAgICAgICAgICAgIC5qb2luKCdcXG4nKTtcbiAgICAgICAgc3VwZXIobWVzc2FnZSwgb3B0aW9ucy5jYXVzZSA/IHsgY2F1c2U6IG9wdGlvbnMuY2F1c2UgfSA6IHVuZGVmaW5lZCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcImRldGFpbHNcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwiZG9jc1wiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJkb2NzUGF0aFwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJzaG9ydE1lc3NhZ2VcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwiY2F1c2VcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0Jhc2VFcnJvcidcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcInZlcnNpb25cIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IGBveEAke2dldFZlcnNpb24oKX1gXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNhdXNlID0gb3B0aW9ucy5jYXVzZTtcbiAgICAgICAgdGhpcy5kZXRhaWxzID0gZGV0YWlscztcbiAgICAgICAgdGhpcy5kb2NzID0gZG9jcztcbiAgICAgICAgdGhpcy5kb2NzUGF0aCA9IGRvY3NQYXRoO1xuICAgICAgICB0aGlzLnNob3J0TWVzc2FnZSA9IHNob3J0TWVzc2FnZTtcbiAgICB9XG4gICAgd2Fsayhmbikge1xuICAgICAgICByZXR1cm4gd2Fsayh0aGlzLCBmbik7XG4gICAgfVxufVxuLyoqIEBpbnRlcm5hbCAqL1xuZnVuY3Rpb24gd2FsayhlcnIsIGZuKSB7XG4gICAgaWYgKGZuPy4oZXJyKSlcbiAgICAgICAgcmV0dXJuIGVycjtcbiAgICBpZiAoZXJyICYmIHR5cGVvZiBlcnIgPT09ICdvYmplY3QnICYmICdjYXVzZScgaW4gZXJyICYmIGVyci5jYXVzZSlcbiAgICAgICAgcmV0dXJuIHdhbGsoZXJyLmNhdXNlLCBmbik7XG4gICAgcmV0dXJuIGZuID8gbnVsbCA6IGVycjtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUVycm9ycy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hash.js": /*!*************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Hash.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ keccak256: () => (/* binding */ keccak256),\n/* harmony export */ ripemd160: () => (/* binding */ ripemd160),\n/* harmony export */ sha256: () => (/* binding */ sha256),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _noble_hashes_ripemd160__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @noble/hashes/ripemd160 */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/ripemd160.js\");\n/* harmony import */ var _noble_hashes_sha3__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/hashes/sha3 */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/sha3.js\");\n/* harmony import */ var _noble_hashes_sha256__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @noble/hashes/sha256 */ \"(app-pages-browser)/./node_modules/@noble/hashes/esm/sha256.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n\n\n\n\n\n/**\n * Calculates the [Keccak256](https://en.wikipedia.org/wiki/SHA-3) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `keccak_256` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.keccak256('0xdeadbeef')\n * // @log: '0xd4fd4e189132273036449fc9e11198c739161b4c0116a9a2dccdfa1c492006f1'\n * ```\n *\n * @example\n * ### Calculate Hash of a String\n *\n * ```ts twoslash\n * import { Hash, Hex } from 'ox'\n *\n * Hash.keccak256(Hex.fromString('hello world'))\n * // @log: '0x3ea2f1d0abf3fc66cf29eebb70cbd4e7fe762ef8a09bcc06c8edf641230afec0'\n * ```\n *\n * @example\n * ### Configure Return Type\n *\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.keccak256('0xdeadbeef', { as: 'Bytes' })\n * // @log: Uint8Array [...]\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Keccak256 hash.\n */\nfunction keccak256(value, options = {}) {\n const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options;\n const bytes = (0,_noble_hashes_sha3__WEBPACK_IMPORTED_MODULE_0__.keccak_256)(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(value));\n if (as === 'Bytes')\n return bytes;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes);\n}\n/**\n * Calculates the [Ripemd160](https://en.wikipedia.org/wiki/RIPEMD) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `ripemd160` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.ripemd160('0xdeadbeef')\n * // '0x226821c2f5423e11fe9af68bd285c249db2e4b5a'\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Ripemd160 hash.\n */\nfunction ripemd160(value, options = {}) {\n const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options;\n const bytes = (0,_noble_hashes_ripemd160__WEBPACK_IMPORTED_MODULE_3__.ripemd160)(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(value));\n if (as === 'Bytes')\n return bytes;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes);\n}\n/**\n * Calculates the [Sha256](https://en.wikipedia.org/wiki/SHA-256) hash of a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n *\n * This function is a re-export of `sha256` from [`@noble/hashes`](https://github.com/paulmillr/noble-hashes), an audited & minimal JS hashing library.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.sha256('0xdeadbeef')\n * // '0x5f78c33274e43fa9de5659265c1d917e25c03722dcb0b8d27db8d5feaa813953'\n * ```\n *\n * @param value - {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value.\n * @param options - Options.\n * @returns Sha256 hash.\n */\nfunction sha256(value, options = {}) {\n const { as = typeof value === 'string' ? 'Hex' : 'Bytes' } = options;\n const bytes = (0,_noble_hashes_sha256__WEBPACK_IMPORTED_MODULE_4__.sha256)(_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.from(value));\n if (as === 'Bytes')\n return bytes;\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(bytes);\n}\n/**\n * Checks if a string is a valid hash value.\n *\n * @example\n * ```ts twoslash\n * import { Hash } from 'ox'\n *\n * Hash.validate('0x')\n * // @log: false\n *\n * Hash.validate('0x3ea2f1d0abf3fc66cf29eebb70cbd4e7fe762ef8a09bcc06c8edf641230afec0')\n * // @log: true\n * ```\n *\n * @param value - Value to check.\n * @returns Whether the value is a valid hash.\n */\nfunction validate(value) {\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.validate(value) && _Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(value) === 32;\n}\n//# sourceMappingURL=Hash.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvSGFzaC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBdUU7QUFDSjtBQUNMO0FBQzFCO0FBQ0o7QUFDaEM7QUFDQSw4RUFBOEUsc0JBQXNCLElBQUksa0JBQWtCO0FBQzFIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBLGtDQUFrQyxhQUFhO0FBQy9DO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0IsSUFBSSxrQkFBa0I7QUFDL0Q7QUFDQTtBQUNBO0FBQ08sc0NBQXNDO0FBQzdDLFlBQVksbURBQW1EO0FBQy9ELGtCQUFrQiw4REFBZSxDQUFDLDJDQUFVO0FBQzVDO0FBQ0E7QUFDQSxXQUFXLDhDQUFhO0FBQ3hCO0FBQ0E7QUFDQSwrRUFBK0Usc0JBQXNCLElBQUksa0JBQWtCO0FBQzNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0IsSUFBSSxrQkFBa0I7QUFDL0Q7QUFDQTtBQUNBO0FBQ08sc0NBQXNDO0FBQzdDLFlBQVksbURBQW1EO0FBQy9ELGtCQUFrQixrRUFBZSxDQUFDLDJDQUFVO0FBQzVDO0FBQ0E7QUFDQSxXQUFXLDhDQUFhO0FBQ3hCO0FBQ0E7QUFDQSw2RUFBNkUsc0JBQXNCLElBQUksa0JBQWtCO0FBQ3pIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE9BQU87QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0IsSUFBSSxrQkFBa0I7QUFDL0Q7QUFDQTtBQUNBO0FBQ08sbUNBQW1DO0FBQzFDLFlBQVksbURBQW1EO0FBQy9ELGtCQUFrQiw0REFBWSxDQUFDLDJDQUFVO0FBQ3pDO0FBQ0E7QUFDQSxXQUFXLDhDQUFhO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxXQUFXLDZDQUFZLFdBQVcseUNBQVE7QUFDMUM7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvSGFzaC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByaXBlbWQxNjAgYXMgbm9ibGVfcmlwZW1kMTYwIH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9yaXBlbWQxNjAnO1xuaW1wb3J0IHsga2VjY2FrXzI1NiBhcyBub2JsZV9rZWNjYWsyNTYgfSBmcm9tICdAbm9ibGUvaGFzaGVzL3NoYTMnO1xuaW1wb3J0IHsgc2hhMjU2IGFzIG5vYmxlX3NoYTI1NiB9IGZyb20gJ0Bub2JsZS9oYXNoZXMvc2hhMjU2JztcbmltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4vSGV4LmpzJztcbi8qKlxuICogQ2FsY3VsYXRlcyB0aGUgW0tlY2NhazI1Nl0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvU0hBLTMpIGhhc2ggb2YgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IG9yIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIGlzIGEgcmUtZXhwb3J0IG9mIGBrZWNjYWtfMjU2YCBmcm9tIFtgQG5vYmxlL2hhc2hlc2BdKGh0dHBzOi8vZ2l0aHViLmNvbS9wYXVsbWlsbHIvbm9ibGUtaGFzaGVzKSwgYW4gYXVkaXRlZCAmIG1pbmltYWwgSlMgaGFzaGluZyBsaWJyYXJ5LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGFzaCB9IGZyb20gJ294J1xuICpcbiAqIEhhc2gua2VjY2FrMjU2KCcweGRlYWRiZWVmJylcbiAqIC8vIEBsb2c6ICcweGQ0ZmQ0ZTE4OTEzMjI3MzAzNjQ0OWZjOWUxMTE5OGM3MzkxNjFiNGMwMTE2YTlhMmRjY2RmYTFjNDkyMDA2ZjEnXG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIENhbGN1bGF0ZSBIYXNoIG9mIGEgU3RyaW5nXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhhc2gsIEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhhc2gua2VjY2FrMjU2KEhleC5mcm9tU3RyaW5nKCdoZWxsbyB3b3JsZCcpKVxuICogLy8gQGxvZzogJzB4M2VhMmYxZDBhYmYzZmM2NmNmMjllZWJiNzBjYmQ0ZTdmZTc2MmVmOGEwOWJjYzA2YzhlZGY2NDEyMzBhZmVjMCdcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgQ29uZmlndXJlIFJldHVybiBUeXBlXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhhc2ggfSBmcm9tICdveCdcbiAqXG4gKiBIYXNoLmtlY2NhazI1NignMHhkZWFkYmVlZicsIHsgYXM6ICdCeXRlcycgfSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkgWy4uLl1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIHtAbGluayBveCNCeXRlcy5CeXRlc30gb3Ige0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgS2VjY2FrMjU2IGhhc2guXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBrZWNjYWsyNTYodmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgYXMgPSB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gJ0hleCcgOiAnQnl0ZXMnIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGJ5dGVzID0gbm9ibGVfa2VjY2FrMjU2KEJ5dGVzLmZyb20odmFsdWUpKTtcbiAgICBpZiAoYXMgPT09ICdCeXRlcycpXG4gICAgICAgIHJldHVybiBieXRlcztcbiAgICByZXR1cm4gSGV4LmZyb21CeXRlcyhieXRlcyk7XG59XG4vKipcbiAqIENhbGN1bGF0ZXMgdGhlIFtSaXBlbWQxNjBdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1JJUEVNRCkgaGFzaCBvZiBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gb3Ige0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gaXMgYSByZS1leHBvcnQgb2YgYHJpcGVtZDE2MGAgZnJvbSBbYEBub2JsZS9oYXNoZXNgXShodHRwczovL2dpdGh1Yi5jb20vcGF1bG1pbGxyL25vYmxlLWhhc2hlcyksIGFuIGF1ZGl0ZWQgJiBtaW5pbWFsIEpTIGhhc2hpbmcgbGlicmFyeS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhhc2ggfSBmcm9tICdveCdcbiAqXG4gKiBIYXNoLnJpcGVtZDE2MCgnMHhkZWFkYmVlZicpXG4gKiAvLyAnMHgyMjY4MjFjMmY1NDIzZTExZmU5YWY2OGJkMjg1YzI0OWRiMmU0YjVhJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBvciB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBSaXBlbWQxNjAgaGFzaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJpcGVtZDE2MCh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBhcyA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyAnSGV4JyA6ICdCeXRlcycgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYnl0ZXMgPSBub2JsZV9yaXBlbWQxNjAoQnl0ZXMuZnJvbSh2YWx1ZSkpO1xuICAgIGlmIChhcyA9PT0gJ0J5dGVzJylcbiAgICAgICAgcmV0dXJuIGJ5dGVzO1xuICAgIHJldHVybiBIZXguZnJvbUJ5dGVzKGJ5dGVzKTtcbn1cbi8qKlxuICogQ2FsY3VsYXRlcyB0aGUgW1NoYTI1Nl0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvU0hBLTI1NikgaGFzaCBvZiBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gb3Ige0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gaXMgYSByZS1leHBvcnQgb2YgYHNoYTI1NmAgZnJvbSBbYEBub2JsZS9oYXNoZXNgXShodHRwczovL2dpdGh1Yi5jb20vcGF1bG1pbGxyL25vYmxlLWhhc2hlcyksIGFuIGF1ZGl0ZWQgJiBtaW5pbWFsIEpTIGhhc2hpbmcgbGlicmFyeS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhhc2ggfSBmcm9tICdveCdcbiAqXG4gKiBIYXNoLnNoYTI1NignMHhkZWFkYmVlZicpXG4gKiAvLyAnMHg1Zjc4YzMzMjc0ZTQzZmE5ZGU1NjU5MjY1YzFkOTE3ZTI1YzAzNzIyZGNiMGI4ZDI3ZGI4ZDVmZWFhODEzOTUzJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0ge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBvciB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBTaGEyNTYgaGFzaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNoYTI1Nih2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBhcyA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyAnSGV4JyA6ICdCeXRlcycgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYnl0ZXMgPSBub2JsZV9zaGEyNTYoQnl0ZXMuZnJvbSh2YWx1ZSkpO1xuICAgIGlmIChhcyA9PT0gJ0J5dGVzJylcbiAgICAgICAgcmV0dXJuIGJ5dGVzO1xuICAgIHJldHVybiBIZXguZnJvbUJ5dGVzKGJ5dGVzKTtcbn1cbi8qKlxuICogQ2hlY2tzIGlmIGEgc3RyaW5nIGlzIGEgdmFsaWQgaGFzaCB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhhc2ggfSBmcm9tICdveCdcbiAqXG4gKiBIYXNoLnZhbGlkYXRlKCcweCcpXG4gKiAvLyBAbG9nOiBmYWxzZVxuICpcbiAqIEhhc2gudmFsaWRhdGUoJzB4M2VhMmYxZDBhYmYzZmM2NmNmMjllZWJiNzBjYmQ0ZTdmZTc2MmVmOGEwOWJjYzA2YzhlZGY2NDEyMzBhZmVjMCcpXG4gKiAvLyBAbG9nOiB0cnVlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBWYWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIHZhbHVlIGlzIGEgdmFsaWQgaGFzaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZhbHVlKSB7XG4gICAgcmV0dXJuIEhleC52YWxpZGF0ZSh2YWx1ZSkgJiYgSGV4LnNpemUodmFsdWUpID09PSAzMjtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUhhc2guanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hash.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js": /*!************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Hex.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ IntegerOutOfRangeError: () => (/* binding */ IntegerOutOfRangeError),\n/* harmony export */ InvalidHexBooleanError: () => (/* binding */ InvalidHexBooleanError),\n/* harmony export */ InvalidHexTypeError: () => (/* binding */ InvalidHexTypeError),\n/* harmony export */ InvalidHexValueError: () => (/* binding */ InvalidHexValueError),\n/* harmony export */ InvalidLengthError: () => (/* binding */ InvalidLengthError),\n/* harmony export */ SizeExceedsPaddingSizeError: () => (/* binding */ SizeExceedsPaddingSizeError),\n/* harmony export */ SizeOverflowError: () => (/* binding */ SizeOverflowError),\n/* harmony export */ SliceOffsetOutOfBoundsError: () => (/* binding */ SliceOffsetOutOfBoundsError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ concat: () => (/* binding */ concat),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromBoolean: () => (/* binding */ fromBoolean),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromNumber: () => (/* binding */ fromNumber),\n/* harmony export */ fromString: () => (/* binding */ fromString),\n/* harmony export */ isEqual: () => (/* binding */ isEqual),\n/* harmony export */ padLeft: () => (/* binding */ padLeft),\n/* harmony export */ padRight: () => (/* binding */ padRight),\n/* harmony export */ random: () => (/* binding */ random),\n/* harmony export */ size: () => (/* binding */ size),\n/* harmony export */ slice: () => (/* binding */ slice),\n/* harmony export */ toBigInt: () => (/* binding */ toBigInt),\n/* harmony export */ toBoolean: () => (/* binding */ toBoolean),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toNumber: () => (/* binding */ toNumber),\n/* harmony export */ toString: () => (/* binding */ toString),\n/* harmony export */ trimLeft: () => (/* binding */ trimLeft),\n/* harmony export */ trimRight: () => (/* binding */ trimRight),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @noble/curves/abstract/utils */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/abstract/utils.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _internal_bytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internal/bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/bytes.js\");\n/* harmony import */ var _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./internal/hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/hex.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Json.js\");\n\n\n\n\n\n\nconst encoder = /*#__PURE__*/ new TextEncoder();\nconst hexes = /*#__PURE__*/ Array.from({ length: 256 }, (_v, i) => i.toString(16).padStart(2, '0'));\n/**\n * Asserts if the given value is {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.assert('abc')\n * // @error: InvalidHexValueTypeError:\n * // @error: Value `\"abc\"` of type `string` is an invalid hex type.\n * // @error: Hex types must be represented as `\"0x\\${string}\"`.\n * ```\n *\n * @param value - The value to assert.\n * @param options - Options.\n */\nfunction assert(value, options = {}) {\n const { strict = false } = options;\n if (!value)\n throw new InvalidHexTypeError(value);\n if (typeof value !== 'string')\n throw new InvalidHexTypeError(value);\n if (strict) {\n if (!/^0x[0-9a-fA-F]*$/.test(value))\n throw new InvalidHexValueError(value);\n }\n if (!value.startsWith('0x'))\n throw new InvalidHexValueError(value);\n}\n/**\n * Concatenates two or more {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.concat('0x123', '0x456')\n * // @log: '0x123456'\n * ```\n *\n * @param values - The {@link ox#Hex.Hex} values to concatenate.\n * @returns The concatenated {@link ox#Hex.Hex} value.\n */\nfunction concat(...values) {\n return `0x${values.reduce((acc, x) => acc + x.replace('0x', ''), '')}`;\n}\n/**\n * Instantiates a {@link ox#Hex.Hex} value from a hex string or {@link ox#Bytes.Bytes} value.\n *\n * :::tip\n *\n * To instantiate from a **Boolean**, **String**, or **Number**, use one of the following:\n *\n * - `Hex.fromBoolean`\n *\n * - `Hex.fromString`\n *\n * - `Hex.fromNumber`\n *\n * :::\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Hex } from 'ox'\n *\n * Hex.from('0x48656c6c6f20576f726c6421')\n * // @log: '0x48656c6c6f20576f726c6421'\n *\n * Hex.from(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // @log: '0x48656c6c6f20576f726c6421'\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} value to encode.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction from(value) {\n if (value instanceof Uint8Array)\n return fromBytes(value);\n if (Array.isArray(value))\n return fromBytes(new Uint8Array(value));\n return value;\n}\n/**\n * Encodes a boolean into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromBoolean(true)\n * // @log: '0x1'\n *\n * Hex.fromBoolean(false)\n * // @log: '0x0'\n *\n * Hex.fromBoolean(true, { size: 32 })\n * // @log: '0x0000000000000000000000000000000000000000000000000000000000000001'\n * ```\n *\n * @param value - The boolean value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromBoolean(value, options = {}) {\n const hex = `0x${Number(value)}`;\n if (typeof options.size === 'number') {\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n return padLeft(hex, options.size);\n }\n return hex;\n}\n/**\n * Encodes a {@link ox#Bytes.Bytes} value into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Hex } from 'ox'\n *\n * Hex.fromBytes(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))\n * // @log: '0x48656c6c6f20576f726c6421'\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromBytes(value, options = {}) {\n let string = '';\n for (let i = 0; i < value.length; i++)\n string += hexes[value[i]];\n const hex = `0x${string}`;\n if (typeof options.size === 'number') {\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n return padRight(hex, options.size);\n }\n return hex;\n}\n/**\n * Encodes a number or bigint into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromNumber(420)\n * // @log: '0x1a4'\n *\n * Hex.fromNumber(420, { size: 32 })\n * // @log: '0x00000000000000000000000000000000000000000000000000000000000001a4'\n * ```\n *\n * @param value - The number or bigint value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromNumber(value, options = {}) {\n const { signed, size } = options;\n const value_ = BigInt(value);\n let maxValue;\n if (size) {\n if (signed)\n maxValue = (1n << (BigInt(size) * 8n - 1n)) - 1n;\n else\n maxValue = 2n ** (BigInt(size) * 8n) - 1n;\n }\n else if (typeof value === 'number') {\n maxValue = BigInt(Number.MAX_SAFE_INTEGER);\n }\n const minValue = typeof maxValue === 'bigint' && signed ? -maxValue - 1n : 0;\n if ((maxValue && value_ > maxValue) || value_ < minValue) {\n const suffix = typeof value === 'bigint' ? 'n' : '';\n throw new IntegerOutOfRangeError({\n max: maxValue ? `${maxValue}${suffix}` : undefined,\n min: `${minValue}${suffix}`,\n signed,\n size,\n value: `${value}${suffix}`,\n });\n }\n const stringValue = (signed && value_ < 0 ? (1n << BigInt(size * 8)) + BigInt(value_) : value_).toString(16);\n const hex = `0x${stringValue}`;\n if (size)\n return padLeft(hex, size);\n return hex;\n}\n/**\n * Encodes a string into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n * Hex.fromString('Hello World!')\n * // '0x48656c6c6f20576f726c6421'\n *\n * Hex.fromString('Hello World!', { size: 32 })\n * // '0x48656c6c6f20576f726c64210000000000000000000000000000000000000000'\n * ```\n *\n * @param value - The string value to encode.\n * @param options - Options.\n * @returns The encoded {@link ox#Hex.Hex} value.\n */\nfunction fromString(value, options = {}) {\n return fromBytes(encoder.encode(value), options);\n}\n/**\n * Checks if two {@link ox#Hex.Hex} values are equal.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.isEqual('0xdeadbeef', '0xdeadbeef')\n * // @log: true\n *\n * Hex.isEqual('0xda', '0xba')\n * // @log: false\n * ```\n *\n * @param hexA - The first {@link ox#Hex.Hex} value.\n * @param hexB - The second {@link ox#Hex.Hex} value.\n * @returns `true` if the two {@link ox#Hex.Hex} values are equal, `false` otherwise.\n */\nfunction isEqual(hexA, hexB) {\n return (0,_noble_curves_abstract_utils__WEBPACK_IMPORTED_MODULE_1__.equalBytes)(_Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hexA), _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hexB));\n}\n/**\n * Pads a {@link ox#Hex.Hex} value to the left with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.padLeft('0x1234', 4)\n * // @log: '0x00001234'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to pad.\n * @param size - The size (in bytes) of the output hex value.\n * @returns The padded {@link ox#Hex.Hex} value.\n */\nfunction padLeft(value, size) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'left', size });\n}\n/**\n * Pads a {@link ox#Hex.Hex} value to the right with zero bytes until it reaches the given `size` (default: 32 bytes).\n *\n * @example\n * ```ts\n * import { Hex } from 'ox'\n *\n * Hex.padRight('0x1234', 4)\n * // @log: '0x12340000'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to pad.\n * @param size - The size (in bytes) of the output hex value.\n * @returns The padded {@link ox#Hex.Hex} value.\n */\nfunction padRight(value, size) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.pad(value, { dir: 'right', size });\n}\n/**\n * Generates a random {@link ox#Hex.Hex} value of the specified length.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * const hex = Hex.random(32)\n * // @log: '0x...'\n * ```\n *\n * @returns Random {@link ox#Hex.Hex} value.\n */\nfunction random(length) {\n return fromBytes(_Bytes_js__WEBPACK_IMPORTED_MODULE_2__.random(length));\n}\n/**\n * Returns a section of a {@link ox#Bytes.Bytes} value given a start/end bytes offset.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.slice('0x0123456789', 1, 4)\n * // @log: '0x234567'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to slice.\n * @param start - The start offset (in bytes).\n * @param end - The end offset (in bytes).\n * @param options - Options.\n * @returns The sliced {@link ox#Hex.Hex} value.\n */\nfunction slice(value, start, end, options = {}) {\n const { strict } = options;\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertStartOffset(value, start);\n const value_ = `0x${value\n .replace('0x', '')\n .slice((start ?? 0) * 2, (end ?? value.length) * 2)}`;\n if (strict)\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertEndOffset(value_, start, end);\n return value_;\n}\n/**\n * Retrieves the size of a {@link ox#Hex.Hex} value (in bytes).\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.size('0xdeadbeef')\n * // @log: 4\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to get the size of.\n * @returns The size of the {@link ox#Hex.Hex} value (in bytes).\n */\nfunction size(value) {\n return Math.ceil((value.length - 2) / 2);\n}\n/**\n * Trims leading zeros from a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.trimLeft('0x00000000deadbeef')\n * // @log: '0xdeadbeef'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to trim.\n * @returns The trimmed {@link ox#Hex.Hex} value.\n */\nfunction trimLeft(value) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'left' });\n}\n/**\n * Trims trailing zeros from a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.trimRight('0xdeadbeef00000000')\n * // @log: '0xdeadbeef'\n * ```\n *\n * @param value - The {@link ox#Hex.Hex} value to trim.\n * @returns The trimmed {@link ox#Hex.Hex} value.\n */\nfunction trimRight(value) {\n return _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.trim(value, { dir: 'right' });\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a BigInt.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toBigInt('0x1a4')\n * // @log: 420n\n *\n * Hex.toBigInt('0x00000000000000000000000000000000000000000000000000000000000001a4', { size: 32 })\n * // @log: 420n\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded BigInt.\n */\nfunction toBigInt(hex, options = {}) {\n const { signed } = options;\n if (options.size)\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n const value = BigInt(hex);\n if (!signed)\n return value;\n const size = (hex.length - 2) / 2;\n const max_unsigned = (1n << (BigInt(size) * 8n)) - 1n;\n const max_signed = max_unsigned >> 1n;\n if (value <= max_signed)\n return value;\n return value - max_unsigned - 1n;\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a boolean.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toBoolean('0x01')\n * // @log: true\n *\n * Hex.toBoolean('0x0000000000000000000000000000000000000000000000000000000000000001', { size: 32 })\n * // @log: true\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded boolean.\n */\nfunction toBoolean(hex, options = {}) {\n if (options.size)\n _internal_hex_js__WEBPACK_IMPORTED_MODULE_0__.assertSize(hex, options.size);\n const hex_ = trimLeft(hex);\n if (hex_ === '0x')\n return false;\n if (hex_ === '0x1')\n return true;\n throw new InvalidHexBooleanError(hex);\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * const data = Hex.toBytes('0x48656c6c6f20776f726c6421')\n * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded {@link ox#Bytes.Bytes}.\n */\nfunction toBytes(hex, options = {}) {\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hex, options);\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a number.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toNumber('0x1a4')\n * // @log: 420\n *\n * Hex.toNumber('0x00000000000000000000000000000000000000000000000000000000000001a4', { size: 32 })\n * // @log: 420\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded number.\n */\nfunction toNumber(hex, options = {}) {\n const { signed, size } = options;\n if (!signed && !size)\n return Number(hex);\n return Number(toBigInt(hex, options));\n}\n/**\n * Decodes a {@link ox#Hex.Hex} value into a string.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toString('0x48656c6c6f20576f726c6421')\n * // @log: 'Hello world!'\n *\n * Hex.toString('0x48656c6c6f20576f726c64210000000000000000000000000000000000000000', {\n * size: 32,\n * })\n * // @log: 'Hello world'\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to decode.\n * @param options - Options.\n * @returns The decoded string.\n */\nfunction toString(hex, options = {}) {\n const { size } = options;\n let bytes = _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.fromHex(hex);\n if (size) {\n _internal_bytes_js__WEBPACK_IMPORTED_MODULE_3__.assertSize(bytes, size);\n bytes = _Bytes_js__WEBPACK_IMPORTED_MODULE_2__.trimRight(bytes);\n }\n return new TextDecoder().decode(bytes);\n}\n/**\n * Checks if the given value is {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Hex } from 'ox'\n *\n * Hex.validate('0xdeadbeef')\n * // @log: true\n *\n * Hex.validate(Bytes.from([1, 2, 3]))\n * // @log: false\n * ```\n *\n * @param value - The value to check.\n * @param options - Options.\n * @returns `true` if the value is a {@link ox#Hex.Hex}, `false` otherwise.\n */\nfunction validate(value, options = {}) {\n const { strict = false } = options;\n try {\n assert(value, { strict });\n return true;\n }\n catch {\n return false;\n }\n}\n/**\n * Thrown when the provided integer is out of range, and cannot be represented as a hex value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromNumber(420182738912731283712937129)\n * // @error: Hex.IntegerOutOfRangeError: Number \\`4.2018273891273126e+26\\` is not in safe unsigned integer range (`0` to `9007199254740991`)\n * ```\n */\nclass IntegerOutOfRangeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ max, min, signed, size, value, }) {\n super(`Number \\`${value}\\` is not in safe${size ? ` ${size * 8}-bit` : ''}${signed ? ' signed' : ' unsigned'} integer range ${max ? `(\\`${min}\\` to \\`${max}\\`)` : `(above \\`${min}\\`)`}`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.IntegerOutOfRangeError'\n });\n }\n}\n/**\n * Thrown when the provided hex value cannot be represented as a boolean.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.toBoolean('0xa')\n * // @error: Hex.InvalidHexBooleanError: Hex value `\"0xa\"` is not a valid boolean.\n * // @error: The hex value must be `\"0x0\"` (false) or `\"0x1\"` (true).\n * ```\n */\nclass InvalidHexBooleanError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(hex) {\n super(`Hex value \\`\"${hex}\"\\` is not a valid boolean.`, {\n metaMessages: [\n 'The hex value must be `\"0x0\"` (false) or `\"0x1\"` (true).',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidHexBooleanError'\n });\n }\n}\n/**\n * Thrown when the provided value is not a valid hex type.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.assert(1)\n * // @error: Hex.InvalidHexTypeError: Value `1` of type `number` is an invalid hex type.\n * ```\n */\nclass InvalidHexTypeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(value) {\n super(`Value \\`${typeof value === 'object' ? _Json_js__WEBPACK_IMPORTED_MODULE_5__.stringify(value) : value}\\` of type \\`${typeof value}\\` is an invalid hex type.`, {\n metaMessages: ['Hex types must be represented as `\"0x${string}\"`.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidHexTypeError'\n });\n }\n}\n/**\n * Thrown when the provided hex value is invalid.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.assert('0x0123456789abcdefg')\n * // @error: Hex.InvalidHexValueError: Value `0x0123456789abcdefg` is an invalid hex value.\n * // @error: Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).\n * ```\n */\nclass InvalidHexValueError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(value) {\n super(`Value \\`${value}\\` is an invalid hex value.`, {\n metaMessages: [\n 'Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidHexValueError'\n });\n }\n}\n/**\n * Thrown when the provided hex value is an odd length.\n *\n * @example\n * ```ts twoslash\n * import { Bytes } from 'ox'\n *\n * Bytes.fromHex('0xabcde')\n * // @error: Hex.InvalidLengthError: Hex value `\"0xabcde\"` is an odd length (5 nibbles).\n * ```\n */\nclass InvalidLengthError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor(value) {\n super(`Hex value \\`\"${value}\"\\` is an odd length (${value.length - 2} nibbles).`, {\n metaMessages: ['It must be an even length.'],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.InvalidLengthError'\n });\n }\n}\n/**\n * Thrown when the size of the value exceeds the expected max size.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.fromString('Hello World!', { size: 8 })\n * // @error: Hex.SizeOverflowError: Size cannot exceed `8` bytes. Given size: `12` bytes.\n * ```\n */\nclass SizeOverflowError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ givenSize, maxSize }) {\n super(`Size cannot exceed \\`${maxSize}\\` bytes. Given size: \\`${givenSize}\\` bytes.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.SizeOverflowError'\n });\n }\n}\n/**\n * Thrown when the slice offset exceeds the bounds of the value.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.slice('0x0123456789', 6)\n * // @error: Hex.SliceOffsetOutOfBoundsError: Slice starting at offset `6` is out-of-bounds (size: `5`).\n * ```\n */\nclass SliceOffsetOutOfBoundsError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ offset, position, size, }) {\n super(`Slice ${position === 'start' ? 'starting' : 'ending'} at offset \\`${offset}\\` is out-of-bounds (size: \\`${size}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.SliceOffsetOutOfBoundsError'\n });\n }\n}\n/**\n * Thrown when the size of the value exceeds the pad size.\n *\n * @example\n * ```ts twoslash\n * import { Hex } from 'ox'\n *\n * Hex.padLeft('0x1a4e12a45a21323123aaa87a897a897a898a6567a578a867a98778a667a85a875a87a6a787a65a675a6a9', 32)\n * // @error: Hex.SizeExceedsPaddingSizeError: Hex size (`43`) exceeds padding size (`32`).\n * ```\n */\nclass SizeExceedsPaddingSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ size, targetSize, type, }) {\n super(`${type.charAt(0).toUpperCase()}${type\n .slice(1)\n .toLowerCase()} size (\\`${size}\\`) exceeds padding size (\\`${targetSize}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Hex.SizeExceedsPaddingSizeError'\n });\n }\n}\n//# sourceMappingURL=Hex.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvSGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQTBEO0FBQ3RCO0FBQ0U7QUFDZ0I7QUFDUjtBQUNaO0FBQ2xDO0FBQ0EseUNBQXlDLGFBQWE7QUFDdEQ7QUFDQSxrQ0FBa0MsaUJBQWlCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNEQUFzRCxPQUFPO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxtQ0FBbUM7QUFDMUMsWUFBWSxpQkFBaUI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGlCQUFpQjtBQUM5QztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixrQkFBa0I7QUFDMUMsOEJBQThCLGtCQUFrQjtBQUNoRDtBQUNPO0FBQ1AsZ0JBQWdCLHlEQUF5RDtBQUN6RTtBQUNBO0FBQ0EsbUJBQW1CLGtCQUFrQiw0QkFBNEIsc0JBQXNCO0FBQ3ZGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLHNCQUFzQjtBQUM3Qyx5QkFBeUIsa0JBQWtCO0FBQzNDO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixrQkFBa0I7QUFDL0M7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLFVBQVU7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixrQkFBa0I7QUFDM0M7QUFDTyx3Q0FBd0M7QUFDL0MscUJBQXFCLGNBQWM7QUFDbkM7QUFDQSxRQUFRLHdEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxzQkFBc0IsY0FBYyxrQkFBa0I7QUFDcEU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxhQUFhO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsc0JBQXNCO0FBQzdDO0FBQ0EseUJBQXlCLGtCQUFrQjtBQUMzQztBQUNPLHNDQUFzQztBQUM3QztBQUNBLG9CQUFvQixrQkFBa0I7QUFDdEM7QUFDQSxxQkFBcUIsT0FBTztBQUM1QjtBQUNBLFFBQVEsd0RBQW1CO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0Msa0JBQWtCO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixVQUFVO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsa0JBQWtCO0FBQzNDO0FBQ08sdUNBQXVDO0FBQzlDLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0IsU0FBUyxFQUFFLE9BQU87QUFDakQsb0JBQW9CLFNBQVMsRUFBRSxPQUFPO0FBQ3RDO0FBQ0E7QUFDQSxzQkFBc0IsTUFBTSxFQUFFLE9BQU87QUFDckMsU0FBUztBQUNUO0FBQ0E7QUFDQSxxQkFBcUIsWUFBWTtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLGtCQUFrQjtBQUM5QztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLFVBQVU7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixrQkFBa0I7QUFDM0M7QUFDTyx1Q0FBdUM7QUFDOUM7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLGtCQUFrQjtBQUNwQztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixrQkFBa0I7QUFDOUMsNkJBQTZCLGtCQUFrQjtBQUMvQywrQkFBK0Isa0JBQWtCO0FBQ2pEO0FBQ087QUFDUCxXQUFXLHdFQUFVLENBQUMsOENBQWEsUUFBUSw4Q0FBYTtBQUN4RDtBQUNBO0FBQ0EsV0FBVyxrQkFBa0I7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDO0FBQ0Esd0JBQXdCLGtCQUFrQjtBQUMxQztBQUNPO0FBQ1AsV0FBVyxpREFBWSxVQUFVLG1CQUFtQjtBQUNwRDtBQUNBO0FBQ0EsV0FBVyxrQkFBa0I7QUFDN0I7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDO0FBQ0Esd0JBQXdCLGtCQUFrQjtBQUMxQztBQUNPO0FBQ1AsV0FBVyxpREFBWSxVQUFVLG9CQUFvQjtBQUNyRDtBQUNBO0FBQ0EsdUJBQXVCLGtCQUFrQjtBQUN6QztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixrQkFBa0I7QUFDdEM7QUFDTztBQUNQLHFCQUFxQiw2Q0FBWTtBQUNqQztBQUNBO0FBQ0EsMkJBQTJCLHNCQUFzQjtBQUNqRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixrQkFBa0I7QUFDekM7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLGtCQUFrQjtBQUMxQztBQUNPLDhDQUE4QztBQUNyRCxZQUFZLFNBQVM7QUFDckIsSUFBSSwrREFBMEI7QUFDOUIsd0JBQXdCO0FBQ3hCO0FBQ0EsNERBQTREO0FBQzVEO0FBQ0EsUUFBUSw2REFBd0I7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLGtCQUFrQjtBQUM5QztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixrQkFBa0I7QUFDekMsNkJBQTZCLGtCQUFrQjtBQUMvQztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLGtCQUFrQjtBQUNqRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixrQkFBa0I7QUFDekMseUJBQXlCLGtCQUFrQjtBQUMzQztBQUNPO0FBQ1AsV0FBVyxrREFBYSxVQUFVLGFBQWE7QUFDL0M7QUFDQTtBQUNBLGdDQUFnQyxrQkFBa0I7QUFDbEQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsa0JBQWtCO0FBQ3pDLHlCQUF5QixrQkFBa0I7QUFDM0M7QUFDTztBQUNQLFdBQVcsa0RBQWEsVUFBVSxjQUFjO0FBQ2hEO0FBQ0E7QUFDQSxjQUFjLGtCQUFrQjtBQUNoQztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3RkFBd0YsVUFBVTtBQUNsRztBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsa0JBQWtCO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNPLG1DQUFtQztBQUMxQyxZQUFZLFNBQVM7QUFDckI7QUFDQSxRQUFRLHdEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxrQkFBa0I7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUZBQXlGLFVBQVU7QUFDbkc7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGtCQUFrQjtBQUN2QztBQUNBO0FBQ0E7QUFDTyxvQ0FBb0M7QUFDM0M7QUFDQSxRQUFRLHdEQUFtQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxrQkFBa0IsY0FBYyxxQkFBcUI7QUFDbkU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsa0JBQWtCO0FBQ3ZDO0FBQ0EseUJBQXlCLHFCQUFxQjtBQUM5QztBQUNPLGtDQUFrQztBQUN6QyxXQUFXLDhDQUFhO0FBQ3hCO0FBQ0E7QUFDQSxjQUFjLGtCQUFrQjtBQUNoQztBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3RkFBd0YsVUFBVTtBQUNsRztBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsa0JBQWtCO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNPLG1DQUFtQztBQUMxQyxZQUFZLGVBQWU7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsa0JBQWtCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGtCQUFrQjtBQUN2QztBQUNBO0FBQ0E7QUFDTyxtQ0FBbUM7QUFDMUMsWUFBWSxPQUFPO0FBQ25CLGdCQUFnQiw4Q0FBYTtBQUM3QjtBQUNBLFFBQVEsMERBQXlCO0FBQ2pDLGdCQUFnQixnREFBZTtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyxpQkFBaUI7QUFDbEQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxhQUFhO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLGlCQUFpQjtBQUN2RDtBQUNPLHFDQUFxQztBQUM1QyxZQUFZLGlCQUFpQjtBQUM3QjtBQUNBLHdCQUF3QixRQUFRO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHFDQUFxQyxpREFBZ0I7QUFDNUQsa0JBQWtCLGdDQUFnQztBQUNsRCwwQkFBMEIsTUFBTSxtQkFBbUIsV0FBVyxTQUFTLFdBQVcsRUFBRSxrQ0FBa0MsZ0JBQWdCLFlBQVksSUFBSSxVQUFVLElBQUksbUJBQW1CLElBQUksS0FBSztBQUNoTTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxNQUFNO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLHFDQUFxQyxpREFBZ0I7QUFDNUQ7QUFDQSw4QkFBOEIsSUFBSTtBQUNsQztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sa0NBQWtDLGlEQUFnQjtBQUN6RDtBQUNBLHlCQUF5Qiw0QkFBNEIsK0NBQWMsZ0JBQWdCLGVBQWUsYUFBYTtBQUMvRyxtRUFBbUUsT0FBTztBQUMxRSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxtQ0FBbUMsaURBQWdCO0FBQzFEO0FBQ0EseUJBQXlCLE1BQU07QUFDL0I7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFFBQVE7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLGlDQUFpQyxpREFBZ0I7QUFDeEQ7QUFDQSw4QkFBOEIsTUFBTSx3QkFBd0Isa0JBQWtCO0FBQzlFO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQSxvQ0FBb0MsU0FBUztBQUM3QztBQUNBO0FBQ0E7QUFDTyxnQ0FBZ0MsaURBQWdCO0FBQ3ZELGtCQUFrQixvQkFBb0I7QUFDdEMsc0NBQXNDLFFBQVEsMEJBQTBCLFVBQVU7QUFDbEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sMENBQTBDLGlEQUFnQjtBQUNqRSxrQkFBa0IseUJBQXlCO0FBQzNDLHVCQUF1Qiw4Q0FBOEMsY0FBYyxPQUFPLCtCQUErQixLQUFLO0FBQzlIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDBDQUEwQyxpREFBZ0I7QUFDakUsa0JBQWtCLHlCQUF5QjtBQUMzQyxpQkFBaUIsNkJBQTZCLEVBQUU7QUFDaEQ7QUFDQSw0QkFBNEIsVUFBVSxLQUFLLDhCQUE4QixXQUFXO0FBQ3BGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9IZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXF1YWxCeXRlcyB9IGZyb20gJ0Bub2JsZS9jdXJ2ZXMvYWJzdHJhY3QvdXRpbHMnO1xuaW1wb3J0ICogYXMgQnl0ZXMgZnJvbSAnLi9CeXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBFcnJvcnMgZnJvbSAnLi9FcnJvcnMuanMnO1xuaW1wb3J0ICogYXMgaW50ZXJuYWxfYnl0ZXMgZnJvbSAnLi9pbnRlcm5hbC9ieXRlcy5qcyc7XG5pbXBvcnQgKiBhcyBpbnRlcm5hbCBmcm9tICcuL2ludGVybmFsL2hleC5qcyc7XG5pbXBvcnQgKiBhcyBKc29uIGZyb20gJy4vSnNvbi5qcyc7XG5jb25zdCBlbmNvZGVyID0gLyojX19QVVJFX18qLyBuZXcgVGV4dEVuY29kZXIoKTtcbmNvbnN0IGhleGVzID0gLyojX19QVVJFX18qLyBBcnJheS5mcm9tKHsgbGVuZ3RoOiAyNTYgfSwgKF92LCBpKSA9PiBpLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCAnMCcpKTtcbi8qKlxuICogQXNzZXJ0cyBpZiB0aGUgZ2l2ZW4gdmFsdWUgaXMge0BsaW5rIG94I0hleC5IZXh9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LmFzc2VydCgnYWJjJylcbiAqIC8vIEBlcnJvcjogSW52YWxpZEhleFZhbHVlVHlwZUVycm9yOlxuICogLy8gQGVycm9yOiBWYWx1ZSBgXCJhYmNcImAgb2YgdHlwZSBgc3RyaW5nYCBpcyBhbiBpbnZhbGlkIGhleCB0eXBlLlxuICogLy8gQGVycm9yOiBIZXggdHlwZXMgbXVzdCBiZSByZXByZXNlbnRlZCBhcyBgXCIweFxcJHtzdHJpbmd9XCJgLlxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGFzc2VydC5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydCh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBzdHJpY3QgPSBmYWxzZSB9ID0gb3B0aW9ucztcbiAgICBpZiAoIXZhbHVlKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEhleFR5cGVFcnJvcih2YWx1ZSk7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkSGV4VHlwZUVycm9yKHZhbHVlKTtcbiAgICBpZiAoc3RyaWN0KSB7XG4gICAgICAgIGlmICghL14weFswLTlhLWZBLUZdKiQvLnRlc3QodmFsdWUpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRIZXhWYWx1ZUVycm9yKHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKCF2YWx1ZS5zdGFydHNXaXRoKCcweCcpKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEhleFZhbHVlRXJyb3IodmFsdWUpO1xufVxuLyoqXG4gKiBDb25jYXRlbmF0ZXMgdHdvIG9yIG1vcmUge0BsaW5rIG94I0hleC5IZXh9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LmNvbmNhdCgnMHgxMjMnLCAnMHg0NTYnKVxuICogLy8gQGxvZzogJzB4MTIzNDU2J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlcyAtIFRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWVzIHRvIGNvbmNhdGVuYXRlLlxuICogQHJldHVybnMgVGhlIGNvbmNhdGVuYXRlZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25jYXQoLi4udmFsdWVzKSB7XG4gICAgcmV0dXJuIGAweCR7dmFsdWVzLnJlZHVjZSgoYWNjLCB4KSA9PiBhY2MgKyB4LnJlcGxhY2UoJzB4JywgJycpLCAnJyl9YDtcbn1cbi8qKlxuICogSW5zdGFudGlhdGVzIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIGZyb20gYSBoZXggc3RyaW5nIG9yIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKlxuICogOjo6dGlwXG4gKlxuICogVG8gaW5zdGFudGlhdGUgZnJvbSBhICoqQm9vbGVhbioqLCAqKlN0cmluZyoqLCBvciAqKk51bWJlcioqLCB1c2Ugb25lIG9mIHRoZSBmb2xsb3dpbmc6XG4gKlxuICogLSBgSGV4LmZyb21Cb29sZWFuYFxuICpcbiAqIC0gYEhleC5mcm9tU3RyaW5nYFxuICpcbiAqIC0gYEhleC5mcm9tTnVtYmVyYFxuICpcbiAqIDo6OlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMsIEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5mcm9tKCcweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMScpXG4gKiAvLyBAbG9nOiAnMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEnXG4gKlxuICogSGV4LmZyb20oQnl0ZXMuZnJvbShbNzIsIDEwMSwgMTA4LCAxMDgsIDExMSwgMzIsIDg3LCAxMTEsIDExNCwgMTA4LCAxMDAsIDMzXSkpXG4gKiAvLyBAbG9nOiAnMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcmV0dXJucyBUaGUgZW5jb2RlZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKHZhbHVlKSB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgVWludDhBcnJheSlcbiAgICAgICAgcmV0dXJuIGZyb21CeXRlcyh2YWx1ZSk7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKVxuICAgICAgICByZXR1cm4gZnJvbUJ5dGVzKG5ldyBVaW50OEFycmF5KHZhbHVlKSk7XG4gICAgcmV0dXJuIHZhbHVlO1xufVxuLyoqXG4gKiBFbmNvZGVzIGEgYm9vbGVhbiBpbnRvIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LmZyb21Cb29sZWFuKHRydWUpXG4gKiAvLyBAbG9nOiAnMHgxJ1xuICpcbiAqIEhleC5mcm9tQm9vbGVhbihmYWxzZSlcbiAqIC8vIEBsb2c6ICcweDAnXG4gKlxuICogSGV4LmZyb21Cb29sZWFuKHRydWUsIHsgc2l6ZTogMzIgfSlcbiAqIC8vIEBsb2c6ICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgYm9vbGVhbiB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgZW5jb2RlZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tQm9vbGVhbih2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgaGV4ID0gYDB4JHtOdW1iZXIodmFsdWUpfWA7XG4gICAgaWYgKHR5cGVvZiBvcHRpb25zLnNpemUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIGludGVybmFsLmFzc2VydFNpemUoaGV4LCBvcHRpb25zLnNpemUpO1xuICAgICAgICByZXR1cm4gcGFkTGVmdChoZXgsIG9wdGlvbnMuc2l6ZSk7XG4gICAgfVxuICAgIHJldHVybiBoZXg7XG59XG4vKipcbiAqIEVuY29kZXMgYSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIGludG8gYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcywgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LmZyb21CeXRlcyhCeXRlcy5mcm9tKFs3MiwgMTAxLCAxMDgsIDEwOCwgMTExLCAzMiwgODcsIDExMSwgMTE0LCAxMDgsIDEwMCwgMzNdKSlcbiAqIC8vIEBsb2c6ICcweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBlbmNvZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21CeXRlcyh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgbGV0IHN0cmluZyA9ICcnO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspXG4gICAgICAgIHN0cmluZyArPSBoZXhlc1t2YWx1ZVtpXV07XG4gICAgY29uc3QgaGV4ID0gYDB4JHtzdHJpbmd9YDtcbiAgICBpZiAodHlwZW9mIG9wdGlvbnMuc2l6ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShoZXgsIG9wdGlvbnMuc2l6ZSk7XG4gICAgICAgIHJldHVybiBwYWRSaWdodChoZXgsIG9wdGlvbnMuc2l6ZSk7XG4gICAgfVxuICAgIHJldHVybiBoZXg7XG59XG4vKipcbiAqIEVuY29kZXMgYSBudW1iZXIgb3IgYmlnaW50IGludG8gYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguZnJvbU51bWJlcig0MjApXG4gKiAvLyBAbG9nOiAnMHgxYTQnXG4gKlxuICogSGV4LmZyb21OdW1iZXIoNDIwLCB7IHNpemU6IDMyIH0pXG4gKiAvLyBAbG9nOiAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWE0J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIG51bWJlciBvciBiaWdpbnQgdmFsdWUgdG8gZW5jb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgVGhlIGVuY29kZWQge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbU51bWJlcih2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBzaWduZWQsIHNpemUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgdmFsdWVfID0gQmlnSW50KHZhbHVlKTtcbiAgICBsZXQgbWF4VmFsdWU7XG4gICAgaWYgKHNpemUpIHtcbiAgICAgICAgaWYgKHNpZ25lZClcbiAgICAgICAgICAgIG1heFZhbHVlID0gKDFuIDw8IChCaWdJbnQoc2l6ZSkgKiA4biAtIDFuKSkgLSAxbjtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgbWF4VmFsdWUgPSAybiAqKiAoQmlnSW50KHNpemUpICogOG4pIC0gMW47XG4gICAgfVxuICAgIGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgbWF4VmFsdWUgPSBCaWdJbnQoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO1xuICAgIH1cbiAgICBjb25zdCBtaW5WYWx1ZSA9IHR5cGVvZiBtYXhWYWx1ZSA9PT0gJ2JpZ2ludCcgJiYgc2lnbmVkID8gLW1heFZhbHVlIC0gMW4gOiAwO1xuICAgIGlmICgobWF4VmFsdWUgJiYgdmFsdWVfID4gbWF4VmFsdWUpIHx8IHZhbHVlXyA8IG1pblZhbHVlKSB7XG4gICAgICAgIGNvbnN0IHN1ZmZpeCA9IHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcgPyAnbicgOiAnJztcbiAgICAgICAgdGhyb3cgbmV3IEludGVnZXJPdXRPZlJhbmdlRXJyb3Ioe1xuICAgICAgICAgICAgbWF4OiBtYXhWYWx1ZSA/IGAke21heFZhbHVlfSR7c3VmZml4fWAgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBtaW46IGAke21pblZhbHVlfSR7c3VmZml4fWAsXG4gICAgICAgICAgICBzaWduZWQsXG4gICAgICAgICAgICBzaXplLFxuICAgICAgICAgICAgdmFsdWU6IGAke3ZhbHVlfSR7c3VmZml4fWAsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBzdHJpbmdWYWx1ZSA9IChzaWduZWQgJiYgdmFsdWVfIDwgMCA/ICgxbiA8PCBCaWdJbnQoc2l6ZSAqIDgpKSArIEJpZ0ludCh2YWx1ZV8pIDogdmFsdWVfKS50b1N0cmluZygxNik7XG4gICAgY29uc3QgaGV4ID0gYDB4JHtzdHJpbmdWYWx1ZX1gO1xuICAgIGlmIChzaXplKVxuICAgICAgICByZXR1cm4gcGFkTGVmdChoZXgsIHNpemUpO1xuICAgIHJldHVybiBoZXg7XG59XG4vKipcbiAqIEVuY29kZXMgYSBzdHJpbmcgaW50byBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICogSGV4LmZyb21TdHJpbmcoJ0hlbGxvIFdvcmxkIScpXG4gKiAvLyAnMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEnXG4gKlxuICogSGV4LmZyb21TdHJpbmcoJ0hlbGxvIFdvcmxkIScsIHsgc2l6ZTogMzIgfSlcbiAqIC8vICcweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgc3RyaW5nIHZhbHVlIHRvIGVuY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBlbmNvZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21TdHJpbmcodmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIHJldHVybiBmcm9tQnl0ZXMoZW5jb2Rlci5lbmNvZGUodmFsdWUpLCBvcHRpb25zKTtcbn1cbi8qKlxuICogQ2hlY2tzIGlmIHR3byB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWVzIGFyZSBlcXVhbC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC5pc0VxdWFsKCcweGRlYWRiZWVmJywgJzB4ZGVhZGJlZWYnKVxuICogLy8gQGxvZzogdHJ1ZVxuICpcbiAqIEhleC5pc0VxdWFsKCcweGRhJywgJzB4YmEnKVxuICogLy8gQGxvZzogZmFsc2VcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBoZXhBIC0gVGhlIGZpcnN0IHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqIEBwYXJhbSBoZXhCIC0gVGhlIHNlY29uZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHR3byB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWVzIGFyZSBlcXVhbCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0VxdWFsKGhleEEsIGhleEIpIHtcbiAgICByZXR1cm4gZXF1YWxCeXRlcyhCeXRlcy5mcm9tSGV4KGhleEEpLCBCeXRlcy5mcm9tSGV4KGhleEIpKTtcbn1cbi8qKlxuICogUGFkcyBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byB0aGUgbGVmdCB3aXRoIHplcm8gYnl0ZXMgdW50aWwgaXQgcmVhY2hlcyB0aGUgZ2l2ZW4gYHNpemVgIChkZWZhdWx0OiAzMiBieXRlcykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgucGFkTGVmdCgnMHgxMjM0JywgNClcbiAqIC8vIEBsb2c6ICcweDAwMDAxMjM0J1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBwYWQuXG4gKiBAcGFyYW0gc2l6ZSAtIFRoZSBzaXplIChpbiBieXRlcykgb2YgdGhlIG91dHB1dCBoZXggdmFsdWUuXG4gKiBAcmV0dXJucyBUaGUgcGFkZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhZExlZnQodmFsdWUsIHNpemUpIHtcbiAgICByZXR1cm4gaW50ZXJuYWwucGFkKHZhbHVlLCB7IGRpcjogJ2xlZnQnLCBzaXplIH0pO1xufVxuLyoqXG4gKiBQYWRzIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIHRoZSByaWdodCB3aXRoIHplcm8gYnl0ZXMgdW50aWwgaXQgcmVhY2hlcyB0aGUgZ2l2ZW4gYHNpemVgIChkZWZhdWx0OiAzMiBieXRlcykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgucGFkUmlnaHQoJzB4MTIzNCcsIDQpXG4gKiAvLyBAbG9nOiAnMHgxMjM0MDAwMCdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgdG8gcGFkLlxuICogQHBhcmFtIHNpemUgLSBUaGUgc2l6ZSAoaW4gYnl0ZXMpIG9mIHRoZSBvdXRwdXQgaGV4IHZhbHVlLlxuICogQHJldHVybnMgVGhlIHBhZGRlZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWRSaWdodCh2YWx1ZSwgc2l6ZSkge1xuICAgIHJldHVybiBpbnRlcm5hbC5wYWQodmFsdWUsIHsgZGlyOiAncmlnaHQnLCBzaXplIH0pO1xufVxuLyoqXG4gKiBHZW5lcmF0ZXMgYSByYW5kb20ge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIG9mIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgaGV4ID0gSGV4LnJhbmRvbSgzMilcbiAqIC8vIEBsb2c6ICcweC4uLidcbiAqIGBgYFxuICpcbiAqIEByZXR1cm5zIFJhbmRvbSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYW5kb20obGVuZ3RoKSB7XG4gICAgcmV0dXJuIGZyb21CeXRlcyhCeXRlcy5yYW5kb20obGVuZ3RoKSk7XG59XG4vKipcbiAqIFJldHVybnMgYSBzZWN0aW9uIG9mIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSBnaXZlbiBhIHN0YXJ0L2VuZCBieXRlcyBvZmZzZXQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguc2xpY2UoJzB4MDEyMzQ1Njc4OScsIDEsIDQpXG4gKiAvLyBAbG9nOiAnMHgyMzQ1NjcnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIHNsaWNlLlxuICogQHBhcmFtIHN0YXJ0IC0gVGhlIHN0YXJ0IG9mZnNldCAoaW4gYnl0ZXMpLlxuICogQHBhcmFtIGVuZCAtIFRoZSBlbmQgb2Zmc2V0IChpbiBieXRlcykuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgc2xpY2VkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNsaWNlKHZhbHVlLCBzdGFydCwgZW5kLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHN0cmljdCB9ID0gb3B0aW9ucztcbiAgICBpbnRlcm5hbC5hc3NlcnRTdGFydE9mZnNldCh2YWx1ZSwgc3RhcnQpO1xuICAgIGNvbnN0IHZhbHVlXyA9IGAweCR7dmFsdWVcbiAgICAgICAgLnJlcGxhY2UoJzB4JywgJycpXG4gICAgICAgIC5zbGljZSgoc3RhcnQgPz8gMCkgKiAyLCAoZW5kID8/IHZhbHVlLmxlbmd0aCkgKiAyKX1gO1xuICAgIGlmIChzdHJpY3QpXG4gICAgICAgIGludGVybmFsLmFzc2VydEVuZE9mZnNldCh2YWx1ZV8sIHN0YXJ0LCBlbmQpO1xuICAgIHJldHVybiB2YWx1ZV87XG59XG4vKipcbiAqIFJldHJpZXZlcyB0aGUgc2l6ZSBvZiBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSAoaW4gYnl0ZXMpLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LnNpemUoJzB4ZGVhZGJlZWYnKVxuICogLy8gQGxvZzogNFxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBnZXQgdGhlIHNpemUgb2YuXG4gKiBAcmV0dXJucyBUaGUgc2l6ZSBvZiB0aGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIChpbiBieXRlcykuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaXplKHZhbHVlKSB7XG4gICAgcmV0dXJuIE1hdGguY2VpbCgodmFsdWUubGVuZ3RoIC0gMikgLyAyKTtcbn1cbi8qKlxuICogVHJpbXMgbGVhZGluZyB6ZXJvcyBmcm9tIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LnRyaW1MZWZ0KCcweDAwMDAwMDAwZGVhZGJlZWYnKVxuICogLy8gQGxvZzogJzB4ZGVhZGJlZWYnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIHRyaW0uXG4gKiBAcmV0dXJucyBUaGUgdHJpbW1lZCB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cmltTGVmdCh2YWx1ZSkge1xuICAgIHJldHVybiBpbnRlcm5hbC50cmltKHZhbHVlLCB7IGRpcjogJ2xlZnQnIH0pO1xufVxuLyoqXG4gKiBUcmltcyB0cmFpbGluZyB6ZXJvcyBmcm9tIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LnRyaW1SaWdodCgnMHhkZWFkYmVlZjAwMDAwMDAwJylcbiAqIC8vIEBsb2c6ICcweGRlYWRiZWVmJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byB0cmltLlxuICogQHJldHVybnMgVGhlIHRyaW1tZWQge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJpbVJpZ2h0KHZhbHVlKSB7XG4gICAgcmV0dXJuIGludGVybmFsLnRyaW0odmFsdWUsIHsgZGlyOiAncmlnaHQnIH0pO1xufVxuLyoqXG4gKiBEZWNvZGVzIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIGludG8gYSBCaWdJbnQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgudG9CaWdJbnQoJzB4MWE0JylcbiAqIC8vIEBsb2c6IDQyMG5cbiAqXG4gKiBIZXgudG9CaWdJbnQoJzB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFhNCcsIHsgc2l6ZTogMzIgfSlcbiAqIC8vIEBsb2c6IDQyMG5cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBoZXggLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIGRlY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBkZWNvZGVkIEJpZ0ludC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvQmlnSW50KGhleCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBzaWduZWQgfSA9IG9wdGlvbnM7XG4gICAgaWYgKG9wdGlvbnMuc2l6ZSlcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShoZXgsIG9wdGlvbnMuc2l6ZSk7XG4gICAgY29uc3QgdmFsdWUgPSBCaWdJbnQoaGV4KTtcbiAgICBpZiAoIXNpZ25lZClcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIGNvbnN0IHNpemUgPSAoaGV4Lmxlbmd0aCAtIDIpIC8gMjtcbiAgICBjb25zdCBtYXhfdW5zaWduZWQgPSAoMW4gPDwgKEJpZ0ludChzaXplKSAqIDhuKSkgLSAxbjtcbiAgICBjb25zdCBtYXhfc2lnbmVkID0gbWF4X3Vuc2lnbmVkID4+IDFuO1xuICAgIGlmICh2YWx1ZSA8PSBtYXhfc2lnbmVkKVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgcmV0dXJuIHZhbHVlIC0gbWF4X3Vuc2lnbmVkIC0gMW47XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byBhIGJvb2xlYW4uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgudG9Cb29sZWFuKCcweDAxJylcbiAqIC8vIEBsb2c6IHRydWVcbiAqXG4gKiBIZXgudG9Cb29sZWFuKCcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEnLCB7IHNpemU6IDMyIH0pXG4gKiAvLyBAbG9nOiB0cnVlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gaGV4IC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgZGVjb2RlZCBib29sZWFuLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Cb29sZWFuKGhleCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgaWYgKG9wdGlvbnMuc2l6ZSlcbiAgICAgICAgaW50ZXJuYWwuYXNzZXJ0U2l6ZShoZXgsIG9wdGlvbnMuc2l6ZSk7XG4gICAgY29uc3QgaGV4XyA9IHRyaW1MZWZ0KGhleCk7XG4gICAgaWYgKGhleF8gPT09ICcweCcpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBpZiAoaGV4XyA9PT0gJzB4MScpXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIHRocm93IG5ldyBJbnZhbGlkSGV4Qm9vbGVhbkVycm9yKGhleCk7XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byBhIHtAbGluayBveCNCeXRlcy5CeXRlc30uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBkYXRhID0gSGV4LnRvQnl0ZXMoJzB4NDg2NTZjNmM2ZjIwNzc2ZjcyNmM2NDIxJylcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzcyLCAxMDEsIDEwOCwgMTA4LCAxMTEsIDMyLCA4NywgMTExLCAxMTQsIDEwOCwgMTAwLCAzM10pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gaGV4IC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBkZWNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgZGVjb2RlZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9CeXRlcyhoZXgsIG9wdGlvbnMgPSB7fSkge1xuICAgIHJldHVybiBCeXRlcy5mcm9tSGV4KGhleCwgb3B0aW9ucyk7XG59XG4vKipcbiAqIERlY29kZXMgYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byBhIG51bWJlci5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC50b051bWJlcignMHgxYTQnKVxuICogLy8gQGxvZzogNDIwXG4gKlxuICogSGV4LnRvTnVtYmVyKCcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxYTQnLCB7IHNpemU6IDMyIH0pXG4gKiAvLyBAbG9nOiA0MjBcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBoZXggLSBUaGUge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIHRvIGRlY29kZS5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBkZWNvZGVkIG51bWJlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvTnVtYmVyKGhleCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBzaWduZWQsIHNpemUgfSA9IG9wdGlvbnM7XG4gICAgaWYgKCFzaWduZWQgJiYgIXNpemUpXG4gICAgICAgIHJldHVybiBOdW1iZXIoaGV4KTtcbiAgICByZXR1cm4gTnVtYmVyKHRvQmlnSW50KGhleCwgb3B0aW9ucykpO1xufVxuLyoqXG4gKiBEZWNvZGVzIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlIGludG8gYSBzdHJpbmcuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgudG9TdHJpbmcoJzB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxJylcbiAqIC8vIEBsb2c6ICdIZWxsbyB3b3JsZCEnXG4gKlxuICogSGV4LnRvU3RyaW5nKCcweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLCB7XG4gKiAgc2l6ZTogMzIsXG4gKiB9KVxuICogLy8gQGxvZzogJ0hlbGxvIHdvcmxkJ1xuICogYGBgXG4gKlxuICogQHBhcmFtIGhleCAtIFRoZSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgdG8gZGVjb2RlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgVGhlIGRlY29kZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9TdHJpbmcoaGV4LCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHNpemUgfSA9IG9wdGlvbnM7XG4gICAgbGV0IGJ5dGVzID0gQnl0ZXMuZnJvbUhleChoZXgpO1xuICAgIGlmIChzaXplKSB7XG4gICAgICAgIGludGVybmFsX2J5dGVzLmFzc2VydFNpemUoYnl0ZXMsIHNpemUpO1xuICAgICAgICBieXRlcyA9IEJ5dGVzLnRyaW1SaWdodChieXRlcyk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoYnl0ZXMpO1xufVxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIHZhbHVlIGlzIHtAbGluayBveCNIZXguSGV4fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEJ5dGVzLCBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgudmFsaWRhdGUoJzB4ZGVhZGJlZWYnKVxuICogLy8gQGxvZzogdHJ1ZVxuICpcbiAqIEhleC52YWxpZGF0ZShCeXRlcy5mcm9tKFsxLCAyLCAzXSkpXG4gKiAvLyBAbG9nOiBmYWxzZVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZSBpcyBhIHtAbGluayBveCNIZXguSGV4fSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZSh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBzdHJpY3QgPSBmYWxzZSB9ID0gb3B0aW9ucztcbiAgICB0cnkge1xuICAgICAgICBhc3NlcnQodmFsdWUsIHsgc3RyaWN0IH0pO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY2F0Y2gge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiB0aGUgcHJvdmlkZWQgaW50ZWdlciBpcyBvdXQgb2YgcmFuZ2UsIGFuZCBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgYXMgYSBoZXggdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguZnJvbU51bWJlcig0MjAxODI3Mzg5MTI3MzEyODM3MTI5MzcxMjkpXG4gKiAvLyBAZXJyb3I6IEhleC5JbnRlZ2VyT3V0T2ZSYW5nZUVycm9yOiBOdW1iZXIgXFxgNC4yMDE4MjczODkxMjczMTI2ZSsyNlxcYCBpcyBub3QgaW4gc2FmZSB1bnNpZ25lZCBpbnRlZ2VyIHJhbmdlIChgMGAgdG8gYDkwMDcxOTkyNTQ3NDA5OTFgKVxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnRlZ2VyT3V0T2ZSYW5nZUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBtYXgsIG1pbiwgc2lnbmVkLCBzaXplLCB2YWx1ZSwgfSkge1xuICAgICAgICBzdXBlcihgTnVtYmVyIFxcYCR7dmFsdWV9XFxgIGlzIG5vdCBpbiBzYWZlJHtzaXplID8gYCAke3NpemUgKiA4fS1iaXRgIDogJyd9JHtzaWduZWQgPyAnIHNpZ25lZCcgOiAnIHVuc2lnbmVkJ30gaW50ZWdlciByYW5nZSAke21heCA/IGAoXFxgJHttaW59XFxgIHRvIFxcYCR7bWF4fVxcYClgIDogYChhYm92ZSBcXGAke21pbn1cXGApYH1gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0hleC5JbnRlZ2VyT3V0T2ZSYW5nZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIHRoZSBwcm92aWRlZCBoZXggdmFsdWUgY2Fubm90IGJlIHJlcHJlc2VudGVkIGFzIGEgYm9vbGVhbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEhleCB9IGZyb20gJ294J1xuICpcbiAqIEhleC50b0Jvb2xlYW4oJzB4YScpXG4gKiAvLyBAZXJyb3I6IEhleC5JbnZhbGlkSGV4Qm9vbGVhbkVycm9yOiBIZXggdmFsdWUgYFwiMHhhXCJgIGlzIG5vdCBhIHZhbGlkIGJvb2xlYW4uXG4gKiAvLyBAZXJyb3I6IFRoZSBoZXggdmFsdWUgbXVzdCBiZSBgXCIweDBcImAgKGZhbHNlKSBvciBgXCIweDFcImAgKHRydWUpLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkSGV4Qm9vbGVhbkVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoaGV4KSB7XG4gICAgICAgIHN1cGVyKGBIZXggdmFsdWUgXFxgXCIke2hleH1cIlxcYCBpcyBub3QgYSB2YWxpZCBib29sZWFuLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdUaGUgaGV4IHZhbHVlIG11c3QgYmUgYFwiMHgwXCJgIChmYWxzZSkgb3IgYFwiMHgxXCJgICh0cnVlKS4nLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdIZXguSW52YWxpZEhleEJvb2xlYW5FcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiB0aGUgcHJvdmlkZWQgdmFsdWUgaXMgbm90IGEgdmFsaWQgaGV4IHR5cGUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguYXNzZXJ0KDEpXG4gKiAvLyBAZXJyb3I6IEhleC5JbnZhbGlkSGV4VHlwZUVycm9yOiBWYWx1ZSBgMWAgb2YgdHlwZSBgbnVtYmVyYCBpcyBhbiBpbnZhbGlkIGhleCB0eXBlLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkSGV4VHlwZUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IodmFsdWUpIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7dHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyA/IEpzb24uc3RyaW5naWZ5KHZhbHVlKSA6IHZhbHVlfVxcYCBvZiB0eXBlIFxcYCR7dHlwZW9mIHZhbHVlfVxcYCBpcyBhbiBpbnZhbGlkIGhleCB0eXBlLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogWydIZXggdHlwZXMgbXVzdCBiZSByZXByZXNlbnRlZCBhcyBgXCIweCR7c3RyaW5nfVwiYC4nXSxcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdIZXguSW52YWxpZEhleFR5cGVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiB0aGUgcHJvdmlkZWQgaGV4IHZhbHVlIGlzIGludmFsaWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguYXNzZXJ0KCcweDAxMjM0NTY3ODlhYmNkZWZnJylcbiAqIC8vIEBlcnJvcjogSGV4LkludmFsaWRIZXhWYWx1ZUVycm9yOiBWYWx1ZSBgMHgwMTIzNDU2Nzg5YWJjZGVmZ2AgaXMgYW4gaW52YWxpZCBoZXggdmFsdWUuXG4gKiAvLyBAZXJyb3I6IEhleCB2YWx1ZXMgbXVzdCBzdGFydCB3aXRoIGBcIjB4XCJgIGFuZCBjb250YWluIG9ubHkgaGV4YWRlY2ltYWwgY2hhcmFjdGVycyAoMC05LCBhLWYsIEEtRikuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRIZXhWYWx1ZUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IodmFsdWUpIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7dmFsdWV9XFxgIGlzIGFuIGludmFsaWQgaGV4IHZhbHVlLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdIZXggdmFsdWVzIG11c3Qgc3RhcnQgd2l0aCBgXCIweFwiYCBhbmQgY29udGFpbiBvbmx5IGhleGFkZWNpbWFsIGNoYXJhY3RlcnMgKDAtOSwgYS1mLCBBLUYpLicsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0hleC5JbnZhbGlkSGV4VmFsdWVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiB0aGUgcHJvdmlkZWQgaGV4IHZhbHVlIGlzIGFuIG9kZCBsZW5ndGguXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcyB9IGZyb20gJ294J1xuICpcbiAqIEJ5dGVzLmZyb21IZXgoJzB4YWJjZGUnKVxuICogLy8gQGVycm9yOiBIZXguSW52YWxpZExlbmd0aEVycm9yOiBIZXggdmFsdWUgYFwiMHhhYmNkZVwiYCBpcyBhbiBvZGQgbGVuZ3RoICg1IG5pYmJsZXMpLlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkTGVuZ3RoRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih2YWx1ZSkge1xuICAgICAgICBzdXBlcihgSGV4IHZhbHVlIFxcYFwiJHt2YWx1ZX1cIlxcYCBpcyBhbiBvZGQgbGVuZ3RoICgke3ZhbHVlLmxlbmd0aCAtIDJ9IG5pYmJsZXMpLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogWydJdCBtdXN0IGJlIGFuIGV2ZW4gbGVuZ3RoLiddLFxuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0hleC5JbnZhbGlkTGVuZ3RoRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKlxuICogVGhyb3duIHdoZW4gdGhlIHNpemUgb2YgdGhlIHZhbHVlIGV4Y2VlZHMgdGhlIGV4cGVjdGVkIG1heCBzaXplLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgSGV4IH0gZnJvbSAnb3gnXG4gKlxuICogSGV4LmZyb21TdHJpbmcoJ0hlbGxvIFdvcmxkIScsIHsgc2l6ZTogOCB9KVxuICogLy8gQGVycm9yOiBIZXguU2l6ZU92ZXJmbG93RXJyb3I6IFNpemUgY2Fubm90IGV4Y2VlZCBgOGAgYnl0ZXMuIEdpdmVuIHNpemU6IGAxMmAgYnl0ZXMuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNpemVPdmVyZmxvd0Vycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBnaXZlblNpemUsIG1heFNpemUgfSkge1xuICAgICAgICBzdXBlcihgU2l6ZSBjYW5ub3QgZXhjZWVkIFxcYCR7bWF4U2l6ZX1cXGAgYnl0ZXMuIEdpdmVuIHNpemU6IFxcYCR7Z2l2ZW5TaXplfVxcYCBieXRlcy5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0hleC5TaXplT3ZlcmZsb3dFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiB0aGUgc2xpY2Ugb2Zmc2V0IGV4Y2VlZHMgdGhlIGJvdW5kcyBvZiB0aGUgdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXguc2xpY2UoJzB4MDEyMzQ1Njc4OScsIDYpXG4gKiAvLyBAZXJyb3I6IEhleC5TbGljZU9mZnNldE91dE9mQm91bmRzRXJyb3I6IFNsaWNlIHN0YXJ0aW5nIGF0IG9mZnNldCBgNmAgaXMgb3V0LW9mLWJvdW5kcyAoc2l6ZTogYDVgKS5cbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgU2xpY2VPZmZzZXRPdXRPZkJvdW5kc0Vycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBvZmZzZXQsIHBvc2l0aW9uLCBzaXplLCB9KSB7XG4gICAgICAgIHN1cGVyKGBTbGljZSAke3Bvc2l0aW9uID09PSAnc3RhcnQnID8gJ3N0YXJ0aW5nJyA6ICdlbmRpbmcnfSBhdCBvZmZzZXQgXFxgJHtvZmZzZXR9XFxgIGlzIG91dC1vZi1ib3VuZHMgKHNpemU6IFxcYCR7c2l6ZX1cXGApLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSGV4LlNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqXG4gKiBUaHJvd24gd2hlbiB0aGUgc2l6ZSBvZiB0aGUgdmFsdWUgZXhjZWVkcyB0aGUgcGFkIHNpemUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBIZXggfSBmcm9tICdveCdcbiAqXG4gKiBIZXgucGFkTGVmdCgnMHgxYTRlMTJhNDVhMjEzMjMxMjNhYWE4N2E4OTdhODk3YTg5OGE2NTY3YTU3OGE4NjdhOTg3NzhhNjY3YTg1YTg3NWE4N2E2YTc4N2E2NWE2NzVhNmE5JywgMzIpXG4gKiAvLyBAZXJyb3I6IEhleC5TaXplRXhjZWVkc1BhZGRpbmdTaXplRXJyb3I6IEhleCBzaXplIChgNDNgKSBleGNlZWRzIHBhZGRpbmcgc2l6ZSAoYDMyYCkuXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNpemVFeGNlZWRzUGFkZGluZ1NpemVFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgc2l6ZSwgdGFyZ2V0U2l6ZSwgdHlwZSwgfSkge1xuICAgICAgICBzdXBlcihgJHt0eXBlLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7dHlwZVxuICAgICAgICAgICAgLnNsaWNlKDEpXG4gICAgICAgICAgICAudG9Mb3dlckNhc2UoKX0gc2l6ZSAoXFxgJHtzaXplfVxcYCkgZXhjZWVkcyBwYWRkaW5nIHNpemUgKFxcYCR7dGFyZ2V0U2l6ZX1cXGApLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnSGV4LlNpemVFeGNlZWRzUGFkZGluZ1NpemVFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9SGV4LmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Json.js": /*!*************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Json.js ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parse: () => (/* binding */ parse),\n/* harmony export */ stringify: () => (/* binding */ stringify)\n/* harmony export */ });\nconst bigIntSuffix = '#__bigint';\n/**\n * Parses a JSON string, with support for `bigint`.\n *\n * @example\n * ```ts twoslash\n * import { Json } from 'ox'\n *\n * const json = Json.parse('{\"foo\":\"bar\",\"baz\":\"69420694206942069420694206942069420694206942069420#__bigint\"}')\n * // @log: {\n * // @log: foo: 'bar',\n * // @log: baz: 69420694206942069420694206942069420694206942069420n\n * // @log: }\n * ```\n *\n * @param string - The value to parse.\n * @param reviver - A function that transforms the results.\n * @returns The parsed value.\n */\nfunction parse(string, reviver) {\n return JSON.parse(string, (key, value_) => {\n const value = value_;\n if (typeof value === 'string' && value.endsWith(bigIntSuffix))\n return BigInt(value.slice(0, -bigIntSuffix.length));\n return typeof reviver === 'function' ? reviver(key, value) : value;\n });\n}\n/**\n * Stringifies a value to its JSON representation, with support for `bigint`.\n *\n * @example\n * ```ts twoslash\n * import { Json } from 'ox'\n *\n * const json = Json.stringify({\n * foo: 'bar',\n * baz: 69420694206942069420694206942069420694206942069420n,\n * })\n * // @log: '{\"foo\":\"bar\",\"baz\":\"69420694206942069420694206942069420694206942069420#__bigint\"}'\n * ```\n *\n * @param value - The value to stringify.\n * @param replacer - A function that transforms the results. It is passed the key and value of the property, and must return the value to be used in the JSON string. If this function returns `undefined`, the property is not included in the resulting JSON string.\n * @param space - A string or number that determines the indentation of the JSON string. If it is a number, it indicates the number of spaces to use as indentation; if it is a string (e.g. `'\\t'`), it uses the string as the indentation character.\n * @returns The JSON string.\n */\nfunction stringify(value, replacer, space) {\n return JSON.stringify(value, (key, value) => {\n if (typeof replacer === 'function')\n return replacer(key, value);\n if (typeof value === 'bigint')\n return value.toString() + bigIntSuffix;\n return value;\n }, space);\n}\n//# sourceMappingURL=Json.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvSnNvbi5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBLDZCQUE2QixnRkFBZ0Y7QUFDN0c7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKLGNBQWMsZ0ZBQWdGO0FBQzlGO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUtBQXFLO0FBQ3JLO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9Kc29uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGJpZ0ludFN1ZmZpeCA9ICcjX19iaWdpbnQnO1xuLyoqXG4gKiBQYXJzZXMgYSBKU09OIHN0cmluZywgd2l0aCBzdXBwb3J0IGZvciBgYmlnaW50YC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEpzb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBqc29uID0gSnNvbi5wYXJzZSgne1wiZm9vXCI6XCJiYXJcIixcImJhelwiOlwiNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjAjX19iaWdpbnRcIn0nKVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBmb286ICdiYXInLFxuICogLy8gQGxvZzogICBiYXo6IDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwblxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHN0cmluZyAtIFRoZSB2YWx1ZSB0byBwYXJzZS5cbiAqIEBwYXJhbSByZXZpdmVyIC0gQSBmdW5jdGlvbiB0aGF0IHRyYW5zZm9ybXMgdGhlIHJlc3VsdHMuXG4gKiBAcmV0dXJucyBUaGUgcGFyc2VkIHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2Uoc3RyaW5nLCByZXZpdmVyKSB7XG4gICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyaW5nLCAoa2V5LCB2YWx1ZV8pID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZV87XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLmVuZHNXaXRoKGJpZ0ludFN1ZmZpeCkpXG4gICAgICAgICAgICByZXR1cm4gQmlnSW50KHZhbHVlLnNsaWNlKDAsIC1iaWdJbnRTdWZmaXgubGVuZ3RoKSk7XG4gICAgICAgIHJldHVybiB0eXBlb2YgcmV2aXZlciA9PT0gJ2Z1bmN0aW9uJyA/IHJldml2ZXIoa2V5LCB2YWx1ZSkgOiB2YWx1ZTtcbiAgICB9KTtcbn1cbi8qKlxuICogU3RyaW5naWZpZXMgYSB2YWx1ZSB0byBpdHMgSlNPTiByZXByZXNlbnRhdGlvbiwgd2l0aCBzdXBwb3J0IGZvciBgYmlnaW50YC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IEpzb24gfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBqc29uID0gSnNvbi5zdHJpbmdpZnkoe1xuICogICBmb286ICdiYXInLFxuICogICBiYXo6IDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwbixcbiAqIH0pXG4gKiAvLyBAbG9nOiAne1wiZm9vXCI6XCJiYXJcIixcImJhelwiOlwiNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjA2OTQyMDY5NDIwNjk0MjAjX19iaWdpbnRcIn0nXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc3RyaW5naWZ5LlxuICogQHBhcmFtIHJlcGxhY2VyIC0gQSBmdW5jdGlvbiB0aGF0IHRyYW5zZm9ybXMgdGhlIHJlc3VsdHMuIEl0IGlzIHBhc3NlZCB0aGUga2V5IGFuZCB2YWx1ZSBvZiB0aGUgcHJvcGVydHksIGFuZCBtdXN0IHJldHVybiB0aGUgdmFsdWUgdG8gYmUgdXNlZCBpbiB0aGUgSlNPTiBzdHJpbmcuIElmIHRoaXMgZnVuY3Rpb24gcmV0dXJucyBgdW5kZWZpbmVkYCwgdGhlIHByb3BlcnR5IGlzIG5vdCBpbmNsdWRlZCBpbiB0aGUgcmVzdWx0aW5nIEpTT04gc3RyaW5nLlxuICogQHBhcmFtIHNwYWNlIC0gQSBzdHJpbmcgb3IgbnVtYmVyIHRoYXQgZGV0ZXJtaW5lcyB0aGUgaW5kZW50YXRpb24gb2YgdGhlIEpTT04gc3RyaW5nLiBJZiBpdCBpcyBhIG51bWJlciwgaXQgaW5kaWNhdGVzIHRoZSBudW1iZXIgb2Ygc3BhY2VzIHRvIHVzZSBhcyBpbmRlbnRhdGlvbjsgaWYgaXQgaXMgYSBzdHJpbmcgKGUuZy4gYCdcXHQnYCksIGl0IHVzZXMgdGhlIHN0cmluZyBhcyB0aGUgaW5kZW50YXRpb24gY2hhcmFjdGVyLlxuICogQHJldHVybnMgVGhlIEpTT04gc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5naWZ5KHZhbHVlLCByZXBsYWNlciwgc3BhY2UpIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodmFsdWUsIChrZXksIHZhbHVlKSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICByZXR1cm4gcmVwbGFjZXIoa2V5LCB2YWx1ZSk7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnKVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkgKyBiaWdJbnRTdWZmaXg7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9LCBzcGFjZSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1Kc29uLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Json.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/PublicKey.js": /*!******************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/PublicKey.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidCompressedPrefixError: () => (/* binding */ InvalidCompressedPrefixError),\n/* harmony export */ InvalidError: () => (/* binding */ InvalidError),\n/* harmony export */ InvalidPrefixError: () => (/* binding */ InvalidPrefixError),\n/* harmony export */ InvalidSerializedSizeError: () => (/* binding */ InvalidSerializedSizeError),\n/* harmony export */ InvalidUncompressedPrefixError: () => (/* binding */ InvalidUncompressedPrefixError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ compress: () => (/* binding */ compress),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toHex: () => (/* binding */ toHex),\n/* harmony export */ validate: () => (/* binding */ validate)\n/* harmony export */ });\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Json.js\");\n\n\n\n\n/**\n * Asserts that a {@link ox#PublicKey.PublicKey} is valid.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * PublicKey.assert({\n * prefix: 4,\n * y: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * })\n * // @error: PublicKey.InvalidError: Value \\`{\"y\":\"1\"}\\` is not a valid public key.\n * // @error: Public key must contain:\n * // @error: - an `x` and `prefix` value (compressed)\n * // @error: - an `x`, `y`, and `prefix` value (uncompressed)\n * ```\n *\n * @param publicKey - The public key object to assert.\n */\nfunction assert(publicKey, options = {}) {\n const { compressed } = options;\n const { prefix, x, y } = publicKey;\n // Uncompressed\n if (compressed === false ||\n (typeof x === 'bigint' && typeof y === 'bigint')) {\n if (prefix !== 4)\n throw new InvalidPrefixError({\n prefix,\n cause: new InvalidUncompressedPrefixError(),\n });\n return;\n }\n // Compressed\n if (compressed === true ||\n (typeof x === 'bigint' && typeof y === 'undefined')) {\n if (prefix !== 3 && prefix !== 2)\n throw new InvalidPrefixError({\n prefix,\n cause: new InvalidCompressedPrefixError(),\n });\n return;\n }\n // Unknown/invalid\n throw new InvalidError({ publicKey });\n}\n/**\n * Compresses a {@link ox#PublicKey.PublicKey}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n *\n * const compressed = PublicKey.compress(publicKey) // [!code focus]\n * // @log: {\n * // @log: prefix: 3,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: }\n * ```\n *\n * @param publicKey - The public key to compress.\n * @returns The compressed public key.\n */\nfunction compress(publicKey) {\n const { x, y } = publicKey;\n return {\n prefix: y % 2n === 0n ? 2 : 3,\n x,\n };\n}\n/**\n * Instantiates a typed {@link ox#PublicKey.PublicKey} object from a {@link ox#PublicKey.PublicKey}, {@link ox#Bytes.Bytes}, or {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @example\n * ### From Serialized\n *\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from('0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5')\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @param value - The public key value to instantiate.\n * @returns The instantiated {@link ox#PublicKey.PublicKey}.\n */\nfunction from(value) {\n const publicKey = (() => {\n if (_Hex_js__WEBPACK_IMPORTED_MODULE_0__.validate(value))\n return fromHex(value);\n if (_Bytes_js__WEBPACK_IMPORTED_MODULE_1__.validate(value))\n return fromBytes(value);\n const { prefix, x, y } = value;\n if (typeof x === 'bigint' && typeof y === 'bigint')\n return { prefix: prefix ?? 0x04, x, y };\n return { prefix, x };\n })();\n assert(publicKey);\n return publicKey;\n}\n/**\n * Deserializes a {@link ox#PublicKey.PublicKey} from a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.fromBytes(new Uint8Array([128, 3, 131, ...]))\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @param publicKey - The serialized public key.\n * @returns The deserialized public key.\n */\nfunction fromBytes(publicKey) {\n return fromHex(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromBytes(publicKey));\n}\n/**\n * Deserializes a {@link ox#PublicKey.PublicKey} from a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.fromHex('0x8318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5')\n * // @log: {\n * // @log: prefix: 4,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * // @log: }\n * ```\n *\n * @example\n * ### Deserializing a Compressed Public Key\n *\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.fromHex('0x038318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed75')\n * // @log: {\n * // @log: prefix: 3,\n * // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * // @log: }\n * ```\n *\n * @param publicKey - The serialized public key.\n * @returns The deserialized public key.\n */\nfunction fromHex(publicKey) {\n if (publicKey.length !== 132 &&\n publicKey.length !== 130 &&\n publicKey.length !== 68)\n throw new InvalidSerializedSizeError({ publicKey });\n if (publicKey.length === 130) {\n const x = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 0, 32));\n const y = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 32, 64));\n return {\n prefix: 4,\n x,\n y,\n };\n }\n if (publicKey.length === 132) {\n const prefix = Number(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 0, 1));\n const x = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 1, 33));\n const y = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 33, 65));\n return {\n prefix,\n x,\n y,\n };\n }\n const prefix = Number(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 0, 1));\n const x = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(publicKey, 1, 33));\n return {\n prefix,\n x,\n };\n}\n/**\n * Serializes a {@link ox#PublicKey.PublicKey} to {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n *\n * const bytes = PublicKey.toBytes(publicKey) // [!code focus]\n * // @log: Uint8Array [128, 3, 131, ...]\n * ```\n *\n * @param publicKey - The public key to serialize.\n * @returns The serialized public key.\n */\nfunction toBytes(publicKey, options = {}) {\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.fromHex(toHex(publicKey, options));\n}\n/**\n * Serializes a {@link ox#PublicKey.PublicKey} to {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const publicKey = PublicKey.from({\n * prefix: 4,\n * x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,\n * y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,\n * })\n *\n * const hex = PublicKey.toHex(publicKey) // [!code focus]\n * // @log: '0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5'\n * ```\n *\n * @param publicKey - The public key to serialize.\n * @returns The serialized public key.\n */\nfunction toHex(publicKey, options = {}) {\n assert(publicKey);\n const { prefix, x, y } = publicKey;\n const { includePrefix = true } = options;\n const publicKey_ = _Hex_js__WEBPACK_IMPORTED_MODULE_0__.concat(includePrefix ? _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(prefix, { size: 1 }) : '0x', _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(x, { size: 32 }), \n // If the public key is not compressed, add the y coordinate.\n typeof y === 'bigint' ? _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(y, { size: 32 }) : '0x');\n return publicKey_;\n}\n/**\n * Validates a {@link ox#PublicKey.PublicKey}. Returns `true` if valid, `false` otherwise.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * const valid = PublicKey.validate({\n * prefix: 4,\n * y: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * })\n * // @log: false\n * ```\n *\n * @param publicKey - The public key object to assert.\n */\nfunction validate(publicKey, options = {}) {\n try {\n assert(publicKey, options);\n return true;\n }\n catch (_error) {\n return false;\n }\n}\n/**\n * Thrown when a public key is invalid.\n *\n * @example\n * ```ts twoslash\n * import { PublicKey } from 'ox'\n *\n * PublicKey.assert({ y: 1n })\n * // @error: PublicKey.InvalidError: Value `{\"y\":1n}` is not a valid public key.\n * // @error: Public key must contain:\n * // @error: - an `x` and `prefix` value (compressed)\n * // @error: - an `x`, `y`, and `prefix` value (uncompressed)\n * ```\n */\nclass InvalidError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor({ publicKey }) {\n super(`Value \\`${_Json_js__WEBPACK_IMPORTED_MODULE_3__.stringify(publicKey)}\\` is not a valid public key.`, {\n metaMessages: [\n 'Public key must contain:',\n '- an `x` and `prefix` value (compressed)',\n '- an `x`, `y`, and `prefix` value (uncompressed)',\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidError'\n });\n }\n}\n/** Thrown when a public key has an invalid prefix. */\nclass InvalidPrefixError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor({ prefix, cause }) {\n super(`Prefix \"${prefix}\" is invalid.`, {\n cause,\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidPrefixError'\n });\n }\n}\n/** Thrown when the public key has an invalid prefix for a compressed public key. */\nclass InvalidCompressedPrefixError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor() {\n super('Prefix must be 2 or 3 for compressed public keys.');\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidCompressedPrefixError'\n });\n }\n}\n/** Thrown when the public key has an invalid prefix for an uncompressed public key. */\nclass InvalidUncompressedPrefixError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor() {\n super('Prefix must be 4 for uncompressed public keys.');\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidUncompressedPrefixError'\n });\n }\n}\n/** Thrown when the public key has an invalid serialized size. */\nclass InvalidSerializedSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor({ publicKey }) {\n super(`Value \\`${publicKey}\\` is an invalid public key size.`, {\n metaMessages: [\n 'Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).',\n `Received ${_Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(_Hex_js__WEBPACK_IMPORTED_MODULE_0__.from(publicKey))} bytes.`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'PublicKey.InvalidSerializedSizeError'\n });\n }\n}\n//# sourceMappingURL=PublicKey.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvUHVibGljS2V5LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQW9DO0FBQ0U7QUFDTjtBQUNFO0FBQ2xDO0FBQ0EsbUJBQW1CLDhCQUE4QjtBQUNqRDtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0osK0NBQStDLFFBQVE7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyx1Q0FBdUM7QUFDOUMsWUFBWSxhQUFhO0FBQ3pCLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLFdBQVc7QUFDeEM7QUFDQTtBQUNBLGlCQUFpQiw2QkFBNkI7QUFDOUM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSxPQUFPO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5Qiw4QkFBOEIsZUFBZSw2QkFBNkIsR0FBRyxxQkFBcUIsTUFBTSxpQkFBaUI7QUFDbEo7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4Qiw2QkFBNkI7QUFDM0Q7QUFDTztBQUNQO0FBQ0EsWUFBWSw2Q0FBWTtBQUN4QjtBQUNBLFlBQVksK0NBQWM7QUFDMUI7QUFDQSxnQkFBZ0IsZUFBZTtBQUMvQjtBQUNBLHFCQUFxQjtBQUNyQixpQkFBaUI7QUFDakIsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLDhCQUE4QixRQUFRLHNCQUFzQjtBQUMvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLG1CQUFtQiw4Q0FBYTtBQUNoQztBQUNBO0FBQ0EsbUJBQW1CLDhCQUE4QixRQUFRLGtCQUFrQjtBQUMzRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsK0NBQStDLFdBQVc7QUFDMUQ7QUFDQSx5QkFBeUIsMENBQVM7QUFDbEMseUJBQXlCLDBDQUFTO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDBDQUFTO0FBQ3ZDLHlCQUF5QiwwQ0FBUztBQUNsQyx5QkFBeUIsMENBQVM7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLDBDQUFTO0FBQ25DLHFCQUFxQiwwQ0FBUztBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsOEJBQThCLElBQUkscUJBQXFCO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyx3Q0FBd0M7QUFDL0MsV0FBVyw4Q0FBYTtBQUN4QjtBQUNBO0FBQ0EsaUJBQWlCLDhCQUE4QixJQUFJLGlCQUFpQjtBQUNwRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sc0NBQXNDO0FBQzdDO0FBQ0EsWUFBWSxlQUFlO0FBQzNCLFlBQVksdUJBQXVCO0FBQ25DLHVCQUF1QiwyQ0FBVSxpQkFBaUIsK0NBQWMsV0FBVyxTQUFTLFVBQVUsK0NBQWMsTUFBTSxVQUFVO0FBQzVIO0FBQ0EsNEJBQTRCLCtDQUFjLE1BQU0sVUFBVTtBQUMxRDtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsNkJBQTZCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08seUNBQXlDO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0Esc0JBQXNCLE9BQU87QUFDN0IsOENBQThDLE9BQU87QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDJCQUEyQixpREFBZ0I7QUFDbEQsa0JBQWtCLFdBQVc7QUFDN0IseUJBQXlCLCtDQUFjLFlBQVk7QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLGlDQUFpQyxpREFBZ0I7QUFDeEQsa0JBQWtCLGVBQWU7QUFDakMseUJBQXlCLE9BQU87QUFDaEM7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTywyQ0FBMkMsaURBQWdCO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLDZDQUE2QyxpREFBZ0I7QUFDcEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08seUNBQXlDLGlEQUFnQjtBQUNoRSxrQkFBa0IsV0FBVztBQUM3Qix5QkFBeUIsVUFBVTtBQUNuQztBQUNBO0FBQ0EsNEJBQTRCLHlDQUFRLENBQUMseUNBQVEsY0FBYztBQUMzRDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvUHVibGljS2V5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgRXJyb3JzIGZyb20gJy4vRXJyb3JzLmpzJztcbmltcG9ydCAqIGFzIEhleCBmcm9tICcuL0hleC5qcyc7XG5pbXBvcnQgKiBhcyBKc29uIGZyb20gJy4vSnNvbi5qcyc7XG4vKipcbiAqIEFzc2VydHMgdGhhdCBhIHtAbGluayBveCNQdWJsaWNLZXkuUHVibGljS2V5fSBpcyB2YWxpZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ294J1xuICpcbiAqIFB1YmxpY0tleS5hc3NlcnQoe1xuICogICBwcmVmaXg6IDQsXG4gKiAgIHk6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqIH0pXG4gKiAvLyBAZXJyb3I6IFB1YmxpY0tleS5JbnZhbGlkRXJyb3I6IFZhbHVlIFxcYHtcInlcIjpcIjFcIn1cXGAgaXMgbm90IGEgdmFsaWQgcHVibGljIGtleS5cbiAqIC8vIEBlcnJvcjogUHVibGljIGtleSBtdXN0IGNvbnRhaW46XG4gKiAvLyBAZXJyb3I6IC0gYW4gYHhgIGFuZCBgcHJlZml4YCB2YWx1ZSAoY29tcHJlc3NlZClcbiAqIC8vIEBlcnJvcjogLSBhbiBgeGAsIGB5YCwgYW5kIGBwcmVmaXhgIHZhbHVlICh1bmNvbXByZXNzZWQpXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gcHVibGljS2V5IC0gVGhlIHB1YmxpYyBrZXkgb2JqZWN0IHRvIGFzc2VydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydChwdWJsaWNLZXksIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgY29tcHJlc3NlZCB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB7IHByZWZpeCwgeCwgeSB9ID0gcHVibGljS2V5O1xuICAgIC8vIFVuY29tcHJlc3NlZFxuICAgIGlmIChjb21wcmVzc2VkID09PSBmYWxzZSB8fFxuICAgICAgICAodHlwZW9mIHggPT09ICdiaWdpbnQnICYmIHR5cGVvZiB5ID09PSAnYmlnaW50JykpIHtcbiAgICAgICAgaWYgKHByZWZpeCAhPT0gNClcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUHJlZml4RXJyb3Ioe1xuICAgICAgICAgICAgICAgIHByZWZpeCxcbiAgICAgICAgICAgICAgICBjYXVzZTogbmV3IEludmFsaWRVbmNvbXByZXNzZWRQcmVmaXhFcnJvcigpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gQ29tcHJlc3NlZFxuICAgIGlmIChjb21wcmVzc2VkID09PSB0cnVlIHx8XG4gICAgICAgICh0eXBlb2YgeCA9PT0gJ2JpZ2ludCcgJiYgdHlwZW9mIHkgPT09ICd1bmRlZmluZWQnKSkge1xuICAgICAgICBpZiAocHJlZml4ICE9PSAzICYmIHByZWZpeCAhPT0gMilcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkUHJlZml4RXJyb3Ioe1xuICAgICAgICAgICAgICAgIHByZWZpeCxcbiAgICAgICAgICAgICAgICBjYXVzZTogbmV3IEludmFsaWRDb21wcmVzc2VkUHJlZml4RXJyb3IoKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIFVua25vd24vaW52YWxpZFxuICAgIHRocm93IG5ldyBJbnZhbGlkRXJyb3IoeyBwdWJsaWNLZXkgfSk7XG59XG4vKipcbiAqIENvbXByZXNzZXMgYSB7QGxpbmsgb3gjUHVibGljS2V5LlB1YmxpY0tleX0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBQdWJsaWNLZXkuZnJvbSh7XG4gKiAgIHByZWZpeDogNCxcbiAqICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogICB5OiAyNDA5OTY5MTIwOTk5NjI5MDkyNTI1OTM2NzY3ODU0MDIyNzE5ODIzNTQ4NDU5MzM4OTQ3MDMzMDYwNTY0MTAwMzUwMDIzODA4ODg2OW4sXG4gKiB9KVxuICpcbiAqIGNvbnN0IGNvbXByZXNzZWQgPSBQdWJsaWNLZXkuY29tcHJlc3MocHVibGljS2V5KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHByZWZpeDogMyxcbiAqIC8vIEBsb2c6ICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHB1YmxpY0tleSAtIFRoZSBwdWJsaWMga2V5IHRvIGNvbXByZXNzLlxuICogQHJldHVybnMgVGhlIGNvbXByZXNzZWQgcHVibGljIGtleS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbXByZXNzKHB1YmxpY0tleSkge1xuICAgIGNvbnN0IHsgeCwgeSB9ID0gcHVibGljS2V5O1xuICAgIHJldHVybiB7XG4gICAgICAgIHByZWZpeDogeSAlIDJuID09PSAwbiA/IDIgOiAzLFxuICAgICAgICB4LFxuICAgIH07XG59XG4vKipcbiAqIEluc3RhbnRpYXRlcyBhIHR5cGVkIHtAbGluayBveCNQdWJsaWNLZXkuUHVibGljS2V5fSBvYmplY3QgZnJvbSBhIHtAbGluayBveCNQdWJsaWNLZXkuUHVibGljS2V5fSwge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSwgb3Ige0BsaW5rIG94I0hleC5IZXh9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb20oe1xuICogICBwcmVmaXg6IDQsXG4gKiAgIHg6IDU5Mjk1OTYyODAxMTE3NDcyODU5NDU3OTA4OTE5OTQxNDczMzg5MzgwMjg0MTMyMjI0ODYxODM5ODIwNzQ3NzI5NTY1MjAwMTQ5ODc3bixcbiAqICAgeTogMjQwOTk2OTEyMDk5OTYyOTA5MjUyNTkzNjc2Nzg1NDAyMjcxOTgyMzU0ODQ1OTMzODk0NzAzMzA2MDU2NDEwMDM1MDAyMzgwODg4NjluLFxuICogfSlcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcHJlZml4OiA0LFxuICogLy8gQGxvZzogICB4OiA1OTI5NTk2MjgwMTExNzQ3Mjg1OTQ1NzkwODkxOTk0MTQ3MzM4OTM4MDI4NDEzMjIyNDg2MTgzOTgyMDc0NzcyOTU2NTIwMDE0OTg3N24sXG4gKiAvLyBAbG9nOiAgIHk6IDI0MDk5NjkxMjA5OTk2MjkwOTI1MjU5MzY3Njc4NTQwMjI3MTk4MjM1NDg0NTkzMzg5NDcwMzMwNjA1NjQxMDAzNTAwMjM4MDg4ODY5bixcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgRnJvbSBTZXJpYWxpemVkXG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHB1YmxpY0tleSA9IFB1YmxpY0tleS5mcm9tKCcweDA0ODMxODUzNWI1NDEwNWQ0YTdhYWU2MGMwOGZjNDVmOTY4NzE4MWI0ZmRmYzYyNWJkMWE3NTNmYTczOTdmZWQ3NTM1NDdmMTFjYTg2OTY2NDZmMmYzYWNiMDhlMzEwMTZhZmFjMjNlNjMwYzVkMTFmNTlmNjFmZWY1N2IwZDJhYTUnKVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBwcmVmaXg6IDQsXG4gKiAvLyBAbG9nOiAgIHg6IDU5Mjk1OTYyODAxMTE3NDcyODU5NDU3OTA4OTE5OTQxNDczMzg5MzgwMjg0MTMyMjI0ODYxODM5ODIwNzQ3NzI5NTY1MjAwMTQ5ODc3bixcbiAqIC8vIEBsb2c6ICAgeTogMjQwOTk2OTEyMDk5OTYyOTA5MjUyNTkzNjc2Nzg1NDAyMjcxOTgyMzU0ODQ1OTMzODk0NzAzMzA2MDU2NDEwMDM1MDAyMzgwODg4NjluLFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHB1YmxpYyBrZXkgdmFsdWUgdG8gaW5zdGFudGlhdGUuXG4gKiBAcmV0dXJucyBUaGUgaW5zdGFudGlhdGVkIHtAbGluayBveCNQdWJsaWNLZXkuUHVibGljS2V5fS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb20odmFsdWUpIHtcbiAgICBjb25zdCBwdWJsaWNLZXkgPSAoKCkgPT4ge1xuICAgICAgICBpZiAoSGV4LnZhbGlkYXRlKHZhbHVlKSlcbiAgICAgICAgICAgIHJldHVybiBmcm9tSGV4KHZhbHVlKTtcbiAgICAgICAgaWYgKEJ5dGVzLnZhbGlkYXRlKHZhbHVlKSlcbiAgICAgICAgICAgIHJldHVybiBmcm9tQnl0ZXModmFsdWUpO1xuICAgICAgICBjb25zdCB7IHByZWZpeCwgeCwgeSB9ID0gdmFsdWU7XG4gICAgICAgIGlmICh0eXBlb2YgeCA9PT0gJ2JpZ2ludCcgJiYgdHlwZW9mIHkgPT09ICdiaWdpbnQnKVxuICAgICAgICAgICAgcmV0dXJuIHsgcHJlZml4OiBwcmVmaXggPz8gMHgwNCwgeCwgeSB9O1xuICAgICAgICByZXR1cm4geyBwcmVmaXgsIHggfTtcbiAgICB9KSgpO1xuICAgIGFzc2VydChwdWJsaWNLZXkpO1xuICAgIHJldHVybiBwdWJsaWNLZXk7XG59XG4vKipcbiAqIERlc2VyaWFsaXplcyBhIHtAbGluayBveCNQdWJsaWNLZXkuUHVibGljS2V5fSBmcm9tIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIC8vIEBub0Vycm9yc1xuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb21CeXRlcyhuZXcgVWludDhBcnJheShbMTI4LCAzLCAxMzEsIC4uLl0pKVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBwcmVmaXg6IDQsXG4gKiAvLyBAbG9nOiAgIHg6IDU5Mjk1OTYyODAxMTE3NDcyODU5NDU3OTA4OTE5OTQxNDczMzg5MzgwMjg0MTMyMjI0ODYxODM5ODIwNzQ3NzI5NTY1MjAwMTQ5ODc3bixcbiAqIC8vIEBsb2c6ICAgeTogMjQwOTk2OTEyMDk5OTYyOTA5MjUyNTkzNjc2Nzg1NDAyMjcxOTgyMzU0ODQ1OTMzODk0NzAzMzA2MDU2NDEwMDM1MDAyMzgwODg4NjluLFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHB1YmxpY0tleSAtIFRoZSBzZXJpYWxpemVkIHB1YmxpYyBrZXkuXG4gKiBAcmV0dXJucyBUaGUgZGVzZXJpYWxpemVkIHB1YmxpYyBrZXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tQnl0ZXMocHVibGljS2V5KSB7XG4gICAgcmV0dXJuIGZyb21IZXgoSGV4LmZyb21CeXRlcyhwdWJsaWNLZXkpKTtcbn1cbi8qKlxuICogRGVzZXJpYWxpemVzIGEge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9IGZyb20gYSB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBQdWJsaWNLZXkuZnJvbUhleCgnMHg4MzE4NTM1YjU0MTA1ZDRhN2FhZTYwYzA4ZmM0NWY5Njg3MTgxYjRmZGZjNjI1YmQxYTc1M2ZhNzM5N2ZlZDc1MzU0N2YxMWNhODY5NjY0NmYyZjNhY2IwOGUzMTAxNmFmYWMyM2U2MzBjNWQxMWY1OWY2MWZlZjU3YjBkMmFhNScpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHByZWZpeDogNCxcbiAqIC8vIEBsb2c6ICAgeDogNTkyOTU5NjI4MDExMTc0NzI4NTk0NTc5MDg5MTk5NDE0NzMzODkzODAyODQxMzIyMjQ4NjE4Mzk4MjA3NDc3Mjk1NjUyMDAxNDk4NzduLFxuICogLy8gQGxvZzogICB5OiAyNDA5OTY5MTIwOTk5NjI5MDkyNTI1OTM2NzY3ODU0MDIyNzE5ODIzNTQ4NDU5MzM4OTQ3MDMzMDYwNTY0MTAwMzUwMDIzODA4ODg2OW4sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZVxuICogIyMjIERlc2VyaWFsaXppbmcgYSBDb21wcmVzc2VkIFB1YmxpYyBLZXlcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb21IZXgoJzB4MDM4MzE4NTM1YjU0MTA1ZDRhN2FhZTYwYzA4ZmM0NWY5Njg3MTgxYjRmZGZjNjI1YmQxYTc1M2ZhNzM5N2ZlZDc1JylcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcHJlZml4OiAzLFxuICogLy8gQGxvZzogICB4OiA1OTI5NTk2MjgwMTExNzQ3Mjg1OTQ1NzkwODkxOTk0MTQ3MzM4OTM4MDI4NDEzMjIyNDg2MTgzOTgyMDc0NzcyOTU2NTIwMDE0OTg3N24sXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gcHVibGljS2V5IC0gVGhlIHNlcmlhbGl6ZWQgcHVibGljIGtleS5cbiAqIEByZXR1cm5zIFRoZSBkZXNlcmlhbGl6ZWQgcHVibGljIGtleS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21IZXgocHVibGljS2V5KSB7XG4gICAgaWYgKHB1YmxpY0tleS5sZW5ndGggIT09IDEzMiAmJlxuICAgICAgICBwdWJsaWNLZXkubGVuZ3RoICE9PSAxMzAgJiZcbiAgICAgICAgcHVibGljS2V5Lmxlbmd0aCAhPT0gNjgpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkU2VyaWFsaXplZFNpemVFcnJvcih7IHB1YmxpY0tleSB9KTtcbiAgICBpZiAocHVibGljS2V5Lmxlbmd0aCA9PT0gMTMwKSB7XG4gICAgICAgIGNvbnN0IHggPSBCaWdJbnQoSGV4LnNsaWNlKHB1YmxpY0tleSwgMCwgMzIpKTtcbiAgICAgICAgY29uc3QgeSA9IEJpZ0ludChIZXguc2xpY2UocHVibGljS2V5LCAzMiwgNjQpKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHByZWZpeDogNCxcbiAgICAgICAgICAgIHgsXG4gICAgICAgICAgICB5LFxuICAgICAgICB9O1xuICAgIH1cbiAgICBpZiAocHVibGljS2V5Lmxlbmd0aCA9PT0gMTMyKSB7XG4gICAgICAgIGNvbnN0IHByZWZpeCA9IE51bWJlcihIZXguc2xpY2UocHVibGljS2V5LCAwLCAxKSk7XG4gICAgICAgIGNvbnN0IHggPSBCaWdJbnQoSGV4LnNsaWNlKHB1YmxpY0tleSwgMSwgMzMpKTtcbiAgICAgICAgY29uc3QgeSA9IEJpZ0ludChIZXguc2xpY2UocHVibGljS2V5LCAzMywgNjUpKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHByZWZpeCxcbiAgICAgICAgICAgIHgsXG4gICAgICAgICAgICB5LFxuICAgICAgICB9O1xuICAgIH1cbiAgICBjb25zdCBwcmVmaXggPSBOdW1iZXIoSGV4LnNsaWNlKHB1YmxpY0tleSwgMCwgMSkpO1xuICAgIGNvbnN0IHggPSBCaWdJbnQoSGV4LnNsaWNlKHB1YmxpY0tleSwgMSwgMzMpKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBwcmVmaXgsXG4gICAgICAgIHgsXG4gICAgfTtcbn1cbi8qKlxuICogU2VyaWFsaXplcyBhIHtAbGluayBveCNQdWJsaWNLZXkuUHVibGljS2V5fSB0byB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgcHVibGljS2V5ID0gUHVibGljS2V5LmZyb20oe1xuICogICBwcmVmaXg6IDQsXG4gKiAgIHg6IDU5Mjk1OTYyODAxMTE3NDcyODU5NDU3OTA4OTE5OTQxNDczMzg5MzgwMjg0MTMyMjI0ODYxODM5ODIwNzQ3NzI5NTY1MjAwMTQ5ODc3bixcbiAqICAgeTogMjQwOTk2OTEyMDk5OTYyOTA5MjUyNTkzNjc2Nzg1NDAyMjcxOTgyMzU0ODQ1OTMzODk0NzAzMzA2MDU2NDEwMDM1MDAyMzgwODg4NjluLFxuICogfSlcbiAqXG4gKiBjb25zdCBieXRlcyA9IFB1YmxpY0tleS50b0J5dGVzKHB1YmxpY0tleSkgLy8gWyFjb2RlIGZvY3VzXVxuICogLy8gQGxvZzogVWludDhBcnJheSBbMTI4LCAzLCAxMzEsIC4uLl1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBwdWJsaWNLZXkgLSBUaGUgcHVibGljIGtleSB0byBzZXJpYWxpemUuXG4gKiBAcmV0dXJucyBUaGUgc2VyaWFsaXplZCBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9CeXRlcyhwdWJsaWNLZXksIG9wdGlvbnMgPSB7fSkge1xuICAgIHJldHVybiBCeXRlcy5mcm9tSGV4KHRvSGV4KHB1YmxpY0tleSwgb3B0aW9ucykpO1xufVxuLyoqXG4gKiBTZXJpYWxpemVzIGEge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9IHRvIHtAbGluayBveCNIZXguSGV4fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHB1YmxpY0tleSA9IFB1YmxpY0tleS5mcm9tKHtcbiAqICAgcHJlZml4OiA0LFxuICogICB4OiA1OTI5NTk2MjgwMTExNzQ3Mjg1OTQ1NzkwODkxOTk0MTQ3MzM4OTM4MDI4NDEzMjIyNDg2MTgzOTgyMDc0NzcyOTU2NTIwMDE0OTg3N24sXG4gKiAgIHk6IDI0MDk5NjkxMjA5OTk2MjkwOTI1MjU5MzY3Njc4NTQwMjI3MTk4MjM1NDg0NTkzMzg5NDcwMzMwNjA1NjQxMDAzNTAwMjM4MDg4ODY5bixcbiAqIH0pXG4gKlxuICogY29uc3QgaGV4ID0gUHVibGljS2V5LnRvSGV4KHB1YmxpY0tleSkgLy8gWyFjb2RlIGZvY3VzXVxuICogLy8gQGxvZzogJzB4MDQ4MzE4NTM1YjU0MTA1ZDRhN2FhZTYwYzA4ZmM0NWY5Njg3MTgxYjRmZGZjNjI1YmQxYTc1M2ZhNzM5N2ZlZDc1MzU0N2YxMWNhODY5NjY0NmYyZjNhY2IwOGUzMTAxNmFmYWMyM2U2MzBjNWQxMWY1OWY2MWZlZjU3YjBkMmFhNSdcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBwdWJsaWNLZXkgLSBUaGUgcHVibGljIGtleSB0byBzZXJpYWxpemUuXG4gKiBAcmV0dXJucyBUaGUgc2VyaWFsaXplZCBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9IZXgocHVibGljS2V5LCBvcHRpb25zID0ge30pIHtcbiAgICBhc3NlcnQocHVibGljS2V5KTtcbiAgICBjb25zdCB7IHByZWZpeCwgeCwgeSB9ID0gcHVibGljS2V5O1xuICAgIGNvbnN0IHsgaW5jbHVkZVByZWZpeCA9IHRydWUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgcHVibGljS2V5XyA9IEhleC5jb25jYXQoaW5jbHVkZVByZWZpeCA/IEhleC5mcm9tTnVtYmVyKHByZWZpeCwgeyBzaXplOiAxIH0pIDogJzB4JywgSGV4LmZyb21OdW1iZXIoeCwgeyBzaXplOiAzMiB9KSwgXG4gICAgLy8gSWYgdGhlIHB1YmxpYyBrZXkgaXMgbm90IGNvbXByZXNzZWQsIGFkZCB0aGUgeSBjb29yZGluYXRlLlxuICAgIHR5cGVvZiB5ID09PSAnYmlnaW50JyA/IEhleC5mcm9tTnVtYmVyKHksIHsgc2l6ZTogMzIgfSkgOiAnMHgnKTtcbiAgICByZXR1cm4gcHVibGljS2V5Xztcbn1cbi8qKlxuICogVmFsaWRhdGVzIGEge0BsaW5rIG94I1B1YmxpY0tleS5QdWJsaWNLZXl9LiBSZXR1cm5zIGB0cnVlYCBpZiB2YWxpZCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB2YWxpZCA9IFB1YmxpY0tleS52YWxpZGF0ZSh7XG4gKiAgIHByZWZpeDogNCxcbiAqICAgeTogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogfSlcbiAqIC8vIEBsb2c6IGZhbHNlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gcHVibGljS2V5IC0gVGhlIHB1YmxpYyBrZXkgb2JqZWN0IHRvIGFzc2VydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHB1YmxpY0tleSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgdHJ5IHtcbiAgICAgICAgYXNzZXJ0KHB1YmxpY0tleSwgb3B0aW9ucyk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjYXRjaCAoX2Vycm9yKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG4vKipcbiAqIFRocm93biB3aGVuIGEgcHVibGljIGtleSBpcyBpbnZhbGlkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnb3gnXG4gKlxuICogUHVibGljS2V5LmFzc2VydCh7IHk6IDFuIH0pXG4gKiAvLyBAZXJyb3I6IFB1YmxpY0tleS5JbnZhbGlkRXJyb3I6IFZhbHVlIGB7XCJ5XCI6MW59YCBpcyBub3QgYSB2YWxpZCBwdWJsaWMga2V5LlxuICogLy8gQGVycm9yOiBQdWJsaWMga2V5IG11c3QgY29udGFpbjpcbiAqIC8vIEBlcnJvcjogLSBhbiBgeGAgYW5kIGBwcmVmaXhgIHZhbHVlIChjb21wcmVzc2VkKVxuICogLy8gQGVycm9yOiAtIGFuIGB4YCwgYHlgLCBhbmQgYHByZWZpeGAgdmFsdWUgKHVuY29tcHJlc3NlZClcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZEVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBwdWJsaWNLZXkgfSkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHtKc29uLnN0cmluZ2lmeShwdWJsaWNLZXkpfVxcYCBpcyBub3QgYSB2YWxpZCBwdWJsaWMga2V5LmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdQdWJsaWMga2V5IG11c3QgY29udGFpbjonLFxuICAgICAgICAgICAgICAgICctIGFuIGB4YCBhbmQgYHByZWZpeGAgdmFsdWUgKGNvbXByZXNzZWQpJyxcbiAgICAgICAgICAgICAgICAnLSBhbiBgeGAsIGB5YCwgYW5kIGBwcmVmaXhgIHZhbHVlICh1bmNvbXByZXNzZWQpJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnUHVibGljS2V5LkludmFsaWRFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIFRocm93biB3aGVuIGEgcHVibGljIGtleSBoYXMgYW4gaW52YWxpZCBwcmVmaXguICovXG5leHBvcnQgY2xhc3MgSW52YWxpZFByZWZpeEVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBwcmVmaXgsIGNhdXNlIH0pIHtcbiAgICAgICAgc3VwZXIoYFByZWZpeCBcIiR7cHJlZml4fVwiIGlzIGludmFsaWQuYCwge1xuICAgICAgICAgICAgY2F1c2UsXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnUHVibGljS2V5LkludmFsaWRQcmVmaXhFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIFRocm93biB3aGVuIHRoZSBwdWJsaWMga2V5IGhhcyBhbiBpbnZhbGlkIHByZWZpeCBmb3IgYSBjb21wcmVzc2VkIHB1YmxpYyBrZXkuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZENvbXByZXNzZWRQcmVmaXhFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcignUHJlZml4IG11c3QgYmUgMiBvciAzIGZvciBjb21wcmVzc2VkIHB1YmxpYyBrZXlzLicpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnUHVibGljS2V5LkludmFsaWRDb21wcmVzc2VkUHJlZml4RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgcHVibGljIGtleSBoYXMgYW4gaW52YWxpZCBwcmVmaXggZm9yIGFuIHVuY29tcHJlc3NlZCBwdWJsaWMga2V5LiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRVbmNvbXByZXNzZWRQcmVmaXhFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcignUHJlZml4IG11c3QgYmUgNCBmb3IgdW5jb21wcmVzc2VkIHB1YmxpYyBrZXlzLicpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnUHVibGljS2V5LkludmFsaWRVbmNvbXByZXNzZWRQcmVmaXhFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIFRocm93biB3aGVuIHRoZSBwdWJsaWMga2V5IGhhcyBhbiBpbnZhbGlkIHNlcmlhbGl6ZWQgc2l6ZS4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU2VyaWFsaXplZFNpemVFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgcHVibGljS2V5IH0pIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7cHVibGljS2V5fVxcYCBpcyBhbiBpbnZhbGlkIHB1YmxpYyBrZXkgc2l6ZS5gLCB7XG4gICAgICAgICAgICBtZXRhTWVzc2FnZXM6IFtcbiAgICAgICAgICAgICAgICAnRXhwZWN0ZWQ6IDMzIGJ5dGVzIChjb21wcmVzc2VkICsgcHJlZml4KSwgNjQgYnl0ZXMgKHVuY29tcHJlc3NlZCkgb3IgNjUgYnl0ZXMgKHVuY29tcHJlc3NlZCArIHByZWZpeCkuJyxcbiAgICAgICAgICAgICAgICBgUmVjZWl2ZWQgJHtIZXguc2l6ZShIZXguZnJvbShwdWJsaWNLZXkpKX0gYnl0ZXMuYCxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnUHVibGljS2V5LkludmFsaWRTZXJpYWxpemVkU2l6ZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1QdWJsaWNLZXkuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/PublicKey.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Rlp.js": /*!************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Rlp.js ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeRlpCursor: () => (/* binding */ decodeRlpCursor),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ readLength: () => (/* binding */ readLength),\n/* harmony export */ readList: () => (/* binding */ readList),\n/* harmony export */ to: () => (/* binding */ to),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toHex: () => (/* binding */ toHex)\n/* harmony export */ });\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _internal_cursor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./internal/cursor.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/cursor.js\");\n\n\n\n\n/**\n * Decodes a Recursive-Length Prefix (RLP) value into a {@link ox#Bytes.Bytes} value.\n *\n * @example\n * ```ts twoslash\n * import { Rlp } from 'ox'\n * Rlp.toBytes('0x8b68656c6c6f20776f726c64')\n * // Uint8Array([139, 104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100])\n * ```\n *\n * @param value - The value to decode.\n * @returns The decoded {@link ox#Bytes.Bytes} value.\n */\nfunction toBytes(value) {\n return to(value, 'Bytes');\n}\n/**\n * Decodes a Recursive-Length Prefix (RLP) value into a {@link ox#Hex.Hex} value.\n *\n * @example\n * ```ts twoslash\n * import { Rlp } from 'ox'\n * Rlp.toHex('0x8b68656c6c6f20776f726c64')\n * // 0x68656c6c6f20776f726c64\n * ```\n *\n * @param value - The value to decode.\n * @returns The decoded {@link ox#Hex.Hex} value.\n */\nfunction toHex(value) {\n return to(value, 'Hex');\n}\n/////////////////////////////////////////////////////////////////////////////////\n// Internal\n/////////////////////////////////////////////////////////////////////////////////\n/** @internal */\nfunction to(value, to) {\n const to_ = to ?? (typeof value === 'string' ? 'Hex' : 'Bytes');\n const bytes = (() => {\n if (typeof value === 'string') {\n if (value.length > 3 && value.length % 2 !== 0)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.InvalidLengthError(value);\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.fromHex(value);\n }\n return value;\n })();\n const cursor = _internal_cursor_js__WEBPACK_IMPORTED_MODULE_2__.create(bytes, {\n recursiveReadLimit: Number.POSITIVE_INFINITY,\n });\n const result = decodeRlpCursor(cursor, to_);\n return result;\n}\n/** @internal */\n/** @internal */\nfunction decodeRlpCursor(cursor, to = 'Hex') {\n if (cursor.bytes.length === 0)\n return (to === 'Hex' ? _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromBytes(cursor.bytes) : cursor.bytes);\n const prefix = cursor.readByte();\n if (prefix < 0x80)\n cursor.decrementPosition(1);\n // bytes\n if (prefix < 0xc0) {\n const length = readLength(cursor, prefix, 0x80);\n const bytes = cursor.readBytes(length);\n return (to === 'Hex' ? _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromBytes(bytes) : bytes);\n }\n // list\n const length = readLength(cursor, prefix, 0xc0);\n return readList(cursor, length, to);\n}\n/** @internal */\nfunction readLength(cursor, prefix, offset) {\n if (offset === 0x80 && prefix < 0x80)\n return 1;\n if (prefix <= offset + 55)\n return prefix - offset;\n if (prefix === offset + 55 + 1)\n return cursor.readUint8();\n if (prefix === offset + 55 + 2)\n return cursor.readUint16();\n if (prefix === offset + 55 + 3)\n return cursor.readUint24();\n if (prefix === offset + 55 + 4)\n return cursor.readUint32();\n throw new _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError('Invalid RLP prefix');\n}\n/** @internal */\nfunction readList(cursor, length, to) {\n const position = cursor.position;\n const value = [];\n while (cursor.position - position < length)\n value.push(decodeRlpCursor(cursor, to));\n return value;\n}\n/**\n * Encodes a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value into a Recursive-Length Prefix (RLP) value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Rlp } from 'ox'\n *\n * Rlp.from('0x68656c6c6f20776f726c64', { as: 'Hex' })\n * // @log: 0x8b68656c6c6f20776f726c64\n *\n * Rlp.from(Bytes.from([139, 104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]), { as: 'Bytes' })\n * // @log: Uint8Array([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100])\n * ```\n *\n * @param value - The {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value to encode.\n * @param options - Options.\n * @returns The RLP value.\n */\nfunction from(value, options) {\n const { as } = options;\n const encodable = getEncodable(value);\n const cursor = _internal_cursor_js__WEBPACK_IMPORTED_MODULE_2__.create(new Uint8Array(encodable.length));\n encodable.encode(cursor);\n if (as === 'Hex')\n return _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromBytes(cursor.bytes);\n return cursor.bytes;\n}\n/**\n * Encodes a {@link ox#Bytes.Bytes} value into a Recursive-Length Prefix (RLP) value.\n *\n * @example\n * ```ts twoslash\n * import { Bytes, Rlp } from 'ox'\n *\n * Rlp.fromBytes(Bytes.from([139, 104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]))\n * // @log: Uint8Array([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100])\n * ```\n *\n * @param bytes - The {@link ox#Bytes.Bytes} value to encode.\n * @param options - Options.\n * @returns The RLP value.\n */\nfunction fromBytes(bytes, options = {}) {\n const { as = 'Bytes' } = options;\n return from(bytes, { as });\n}\n/**\n * Encodes a {@link ox#Hex.Hex} value into a Recursive-Length Prefix (RLP) value.\n *\n * @example\n * ```ts twoslash\n * import { Rlp } from 'ox'\n *\n * Rlp.fromHex('0x68656c6c6f20776f726c64')\n * // @log: 0x8b68656c6c6f20776f726c64\n * ```\n *\n * @param hex - The {@link ox#Hex.Hex} value to encode.\n * @param options - Options.\n * @returns The RLP value.\n */\nfunction fromHex(hex, options = {}) {\n const { as = 'Hex' } = options;\n return from(hex, { as });\n}\n/////////////////////////////////////////////////////////////////////////////////\n// Internal\n/////////////////////////////////////////////////////////////////////////////////\nfunction getEncodable(bytes) {\n if (Array.isArray(bytes))\n return getEncodableList(bytes.map((x) => getEncodable(x)));\n return getEncodableBytes(bytes);\n}\nfunction getEncodableList(list) {\n const bodyLength = list.reduce((acc, x) => acc + x.length, 0);\n const sizeOfBodyLength = getSizeOfLength(bodyLength);\n const length = (() => {\n if (bodyLength <= 55)\n return 1 + bodyLength;\n return 1 + sizeOfBodyLength + bodyLength;\n })();\n return {\n length,\n encode(cursor) {\n if (bodyLength <= 55) {\n cursor.pushByte(0xc0 + bodyLength);\n }\n else {\n cursor.pushByte(0xc0 + 55 + sizeOfBodyLength);\n if (sizeOfBodyLength === 1)\n cursor.pushUint8(bodyLength);\n else if (sizeOfBodyLength === 2)\n cursor.pushUint16(bodyLength);\n else if (sizeOfBodyLength === 3)\n cursor.pushUint24(bodyLength);\n else\n cursor.pushUint32(bodyLength);\n }\n for (const { encode } of list) {\n encode(cursor);\n }\n },\n };\n}\nfunction getEncodableBytes(bytesOrHex) {\n const bytes = typeof bytesOrHex === 'string' ? _Bytes_js__WEBPACK_IMPORTED_MODULE_1__.fromHex(bytesOrHex) : bytesOrHex;\n const sizeOfBytesLength = getSizeOfLength(bytes.length);\n const length = (() => {\n if (bytes.length === 1 && bytes[0] < 0x80)\n return 1;\n if (bytes.length <= 55)\n return 1 + bytes.length;\n return 1 + sizeOfBytesLength + bytes.length;\n })();\n return {\n length,\n encode(cursor) {\n if (bytes.length === 1 && bytes[0] < 0x80) {\n cursor.pushBytes(bytes);\n }\n else if (bytes.length <= 55) {\n cursor.pushByte(0x80 + bytes.length);\n cursor.pushBytes(bytes);\n }\n else {\n cursor.pushByte(0x80 + 55 + sizeOfBytesLength);\n if (sizeOfBytesLength === 1)\n cursor.pushUint8(bytes.length);\n else if (sizeOfBytesLength === 2)\n cursor.pushUint16(bytes.length);\n else if (sizeOfBytesLength === 3)\n cursor.pushUint24(bytes.length);\n else\n cursor.pushUint32(bytes.length);\n cursor.pushBytes(bytes);\n }\n },\n };\n}\nfunction getSizeOfLength(length) {\n if (length < 2 ** 8)\n return 1;\n if (length < 2 ** 16)\n return 2;\n if (length < 2 ** 24)\n return 3;\n if (length < 2 ** 32)\n return 4;\n throw new _Errors_js__WEBPACK_IMPORTED_MODULE_3__.BaseError('Length is too large.');\n}\n//# sourceMappingURL=Rlp.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvUmxwLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBb0M7QUFDRTtBQUNOO0FBQ2U7QUFDL0M7QUFDQSx5REFBeUQsc0JBQXNCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLHNCQUFzQjtBQUMvQztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EseURBQXlELGtCQUFrQjtBQUMzRTtBQUNBO0FBQ0E7QUFDQSxZQUFZLE1BQU07QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixrQkFBa0I7QUFDM0M7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEIsdURBQXNCO0FBQ2hELG1CQUFtQiw4Q0FBYTtBQUNoQztBQUNBO0FBQ0EsS0FBSztBQUNMLG1CQUFtQix1REFBYTtBQUNoQztBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLCtCQUErQiw4Q0FBYTtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQiw4Q0FBYTtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsaURBQWdCO0FBQzlCO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxzQkFBc0IsSUFBSSxrQkFBa0I7QUFDMUQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSxhQUFhO0FBQ3pCO0FBQ0EsMENBQTBDLFdBQVc7QUFDckQ7QUFDQTtBQUNBLHdGQUF3RixhQUFhO0FBQ3JHO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixzQkFBc0IsSUFBSSxrQkFBa0I7QUFDbkU7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLEtBQUs7QUFDakI7QUFDQSxtQkFBbUIsdURBQWE7QUFDaEM7QUFDQTtBQUNBLGVBQWUsOENBQWE7QUFDNUI7QUFDQTtBQUNBO0FBQ0EsY0FBYyxzQkFBc0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0EsWUFBWSxhQUFhO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsc0JBQXNCO0FBQzdDO0FBQ0E7QUFDQTtBQUNPLHNDQUFzQztBQUM3QyxZQUFZLGVBQWU7QUFDM0IseUJBQXlCLElBQUk7QUFDN0I7QUFDQTtBQUNBLGNBQWMsa0JBQWtCO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLFlBQVksTUFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGtCQUFrQjtBQUN2QztBQUNBO0FBQ0E7QUFDTyxrQ0FBa0M7QUFDekMsWUFBWSxhQUFhO0FBQ3pCLHVCQUF1QixJQUFJO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsU0FBUztBQUNsQztBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCw4Q0FBYTtBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxpREFBZ0I7QUFDOUI7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvUmxwLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgRXJyb3JzIGZyb20gJy4vRXJyb3JzLmpzJztcbmltcG9ydCAqIGFzIEhleCBmcm9tICcuL0hleC5qcyc7XG5pbXBvcnQgKiBhcyBDdXJzb3IgZnJvbSAnLi9pbnRlcm5hbC9jdXJzb3IuanMnO1xuLyoqXG4gKiBEZWNvZGVzIGEgUmVjdXJzaXZlLUxlbmd0aCBQcmVmaXggKFJMUCkgdmFsdWUgaW50byBhIHtAbGluayBveCNCeXRlcy5CeXRlc30gdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBSbHAgfSBmcm9tICdveCdcbiAqIFJscC50b0J5dGVzKCcweDhiNjg2NTZjNmM2ZjIwNzc2ZjcyNmM2NCcpXG4gKiAvLyBVaW50OEFycmF5KFsxMzksIDEwNCwgMTAxLCAxMDgsIDEwOCwgMTExLCAgMzIsIDExOSwgMTExLCAxMTQsIDEwOCwgMTAwXSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBkZWNvZGUuXG4gKiBAcmV0dXJucyBUaGUgZGVjb2RlZCB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9CeXRlcyh2YWx1ZSkge1xuICAgIHJldHVybiB0byh2YWx1ZSwgJ0J5dGVzJyk7XG59XG4vKipcbiAqIERlY29kZXMgYSBSZWN1cnNpdmUtTGVuZ3RoIFByZWZpeCAoUkxQKSB2YWx1ZSBpbnRvIGEge0BsaW5rIG94I0hleC5IZXh9IHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgUmxwIH0gZnJvbSAnb3gnXG4gKiBSbHAudG9IZXgoJzB4OGI2ODY1NmM2YzZmMjA3NzZmNzI2YzY0JylcbiAqIC8vIDB4Njg2NTZjNmM2ZjIwNzc2ZjcyNmM2NFxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGRlY29kZS5cbiAqIEByZXR1cm5zIFRoZSBkZWNvZGVkIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSGV4KHZhbHVlKSB7XG4gICAgcmV0dXJuIHRvKHZhbHVlLCAnSGV4Jyk7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEludGVybmFsXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiB0byh2YWx1ZSwgdG8pIHtcbiAgICBjb25zdCB0b18gPSB0byA/PyAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/ICdIZXgnIDogJ0J5dGVzJyk7XG4gICAgY29uc3QgYnl0ZXMgPSAoKCkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgaWYgKHZhbHVlLmxlbmd0aCA+IDMgJiYgdmFsdWUubGVuZ3RoICUgMiAhPT0gMClcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSGV4LkludmFsaWRMZW5ndGhFcnJvcih2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gQnl0ZXMuZnJvbUhleCh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0pKCk7XG4gICAgY29uc3QgY3Vyc29yID0gQ3Vyc29yLmNyZWF0ZShieXRlcywge1xuICAgICAgICByZWN1cnNpdmVSZWFkTGltaXQ6IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxcbiAgICB9KTtcbiAgICBjb25zdCByZXN1bHQgPSBkZWNvZGVSbHBDdXJzb3IoY3Vyc29yLCB0b18pO1xuICAgIHJldHVybiByZXN1bHQ7XG59XG4vKiogQGludGVybmFsICovXG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlUmxwQ3Vyc29yKGN1cnNvciwgdG8gPSAnSGV4Jykge1xuICAgIGlmIChjdXJzb3IuYnl0ZXMubGVuZ3RoID09PSAwKVxuICAgICAgICByZXR1cm4gKHRvID09PSAnSGV4JyA/IEhleC5mcm9tQnl0ZXMoY3Vyc29yLmJ5dGVzKSA6IGN1cnNvci5ieXRlcyk7XG4gICAgY29uc3QgcHJlZml4ID0gY3Vyc29yLnJlYWRCeXRlKCk7XG4gICAgaWYgKHByZWZpeCA8IDB4ODApXG4gICAgICAgIGN1cnNvci5kZWNyZW1lbnRQb3NpdGlvbigxKTtcbiAgICAvLyBieXRlc1xuICAgIGlmIChwcmVmaXggPCAweGMwKSB7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IHJlYWRMZW5ndGgoY3Vyc29yLCBwcmVmaXgsIDB4ODApO1xuICAgICAgICBjb25zdCBieXRlcyA9IGN1cnNvci5yZWFkQnl0ZXMobGVuZ3RoKTtcbiAgICAgICAgcmV0dXJuICh0byA9PT0gJ0hleCcgPyBIZXguZnJvbUJ5dGVzKGJ5dGVzKSA6IGJ5dGVzKTtcbiAgICB9XG4gICAgLy8gbGlzdFxuICAgIGNvbnN0IGxlbmd0aCA9IHJlYWRMZW5ndGgoY3Vyc29yLCBwcmVmaXgsIDB4YzApO1xuICAgIHJldHVybiByZWFkTGlzdChjdXJzb3IsIGxlbmd0aCwgdG8pO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlYWRMZW5ndGgoY3Vyc29yLCBwcmVmaXgsIG9mZnNldCkge1xuICAgIGlmIChvZmZzZXQgPT09IDB4ODAgJiYgcHJlZml4IDwgMHg4MClcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgaWYgKHByZWZpeCA8PSBvZmZzZXQgKyA1NSlcbiAgICAgICAgcmV0dXJuIHByZWZpeCAtIG9mZnNldDtcbiAgICBpZiAocHJlZml4ID09PSBvZmZzZXQgKyA1NSArIDEpXG4gICAgICAgIHJldHVybiBjdXJzb3IucmVhZFVpbnQ4KCk7XG4gICAgaWYgKHByZWZpeCA9PT0gb2Zmc2V0ICsgNTUgKyAyKVxuICAgICAgICByZXR1cm4gY3Vyc29yLnJlYWRVaW50MTYoKTtcbiAgICBpZiAocHJlZml4ID09PSBvZmZzZXQgKyA1NSArIDMpXG4gICAgICAgIHJldHVybiBjdXJzb3IucmVhZFVpbnQyNCgpO1xuICAgIGlmIChwcmVmaXggPT09IG9mZnNldCArIDU1ICsgNClcbiAgICAgICAgcmV0dXJuIGN1cnNvci5yZWFkVWludDMyKCk7XG4gICAgdGhyb3cgbmV3IEVycm9ycy5CYXNlRXJyb3IoJ0ludmFsaWQgUkxQIHByZWZpeCcpO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlYWRMaXN0KGN1cnNvciwgbGVuZ3RoLCB0bykge1xuICAgIGNvbnN0IHBvc2l0aW9uID0gY3Vyc29yLnBvc2l0aW9uO1xuICAgIGNvbnN0IHZhbHVlID0gW107XG4gICAgd2hpbGUgKGN1cnNvci5wb3NpdGlvbiAtIHBvc2l0aW9uIDwgbGVuZ3RoKVxuICAgICAgICB2YWx1ZS5wdXNoKGRlY29kZVJscEN1cnNvcihjdXJzb3IsIHRvKSk7XG4gICAgcmV0dXJuIHZhbHVlO1xufVxuLyoqXG4gKiBFbmNvZGVzIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBvciB7QGxpbmsgb3gjSGV4LkhleH0gdmFsdWUgaW50byBhIFJlY3Vyc2l2ZS1MZW5ndGggUHJlZml4IChSTFApIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgQnl0ZXMsIFJscCB9IGZyb20gJ294J1xuICpcbiAqIFJscC5mcm9tKCcweDY4NjU2YzZjNmYyMDc3NmY3MjZjNjQnLCB7IGFzOiAnSGV4JyB9KVxuICogLy8gQGxvZzogMHg4YjY4NjU2YzZjNmYyMDc3NmY3MjZjNjRcbiAqXG4gKiBSbHAuZnJvbShCeXRlcy5mcm9tKFsxMzksIDEwNCwgMTAxLCAxMDgsIDEwOCwgMTExLCAgMzIsIDExOSwgMTExLCAxMTQsIDEwOCwgMTAwXSksIHsgYXM6ICdCeXRlcycgfSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkoWzEwNCwgMTAxLCAxMDgsIDEwOCwgMTExLCAgMzIsIDExOSwgMTExLCAxMTQsIDEwOCwgMTAwXSlcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9IG9yIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgUkxQIHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbSh2YWx1ZSwgb3B0aW9ucykge1xuICAgIGNvbnN0IHsgYXMgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgZW5jb2RhYmxlID0gZ2V0RW5jb2RhYmxlKHZhbHVlKTtcbiAgICBjb25zdCBjdXJzb3IgPSBDdXJzb3IuY3JlYXRlKG5ldyBVaW50OEFycmF5KGVuY29kYWJsZS5sZW5ndGgpKTtcbiAgICBlbmNvZGFibGUuZW5jb2RlKGN1cnNvcik7XG4gICAgaWYgKGFzID09PSAnSGV4JylcbiAgICAgICAgcmV0dXJuIEhleC5mcm9tQnl0ZXMoY3Vyc29yLmJ5dGVzKTtcbiAgICByZXR1cm4gY3Vyc29yLmJ5dGVzO1xufVxuLyoqXG4gKiBFbmNvZGVzIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSBpbnRvIGEgUmVjdXJzaXZlLUxlbmd0aCBQcmVmaXggKFJMUCkgdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBCeXRlcywgUmxwIH0gZnJvbSAnb3gnXG4gKlxuICogUmxwLmZyb21CeXRlcyhCeXRlcy5mcm9tKFsxMzksIDEwNCwgMTAxLCAxMDgsIDEwOCwgMTExLCAgMzIsIDExOSwgMTExLCAxMTQsIDEwOCwgMTAwXSkpXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5KFsxMDQsIDEwMSwgMTA4LCAxMDgsIDExMSwgIDMyLCAxMTksIDExMSwgMTE0LCAxMDgsIDEwMF0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gYnl0ZXMgLSBUaGUge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgUkxQIHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUJ5dGVzKGJ5dGVzLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGFzID0gJ0J5dGVzJyB9ID0gb3B0aW9ucztcbiAgICByZXR1cm4gZnJvbShieXRlcywgeyBhcyB9KTtcbn1cbi8qKlxuICogRW5jb2RlcyBhIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSBpbnRvIGEgUmVjdXJzaXZlLUxlbmd0aCBQcmVmaXggKFJMUCkgdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBSbHAgfSBmcm9tICdveCdcbiAqXG4gKiBSbHAuZnJvbUhleCgnMHg2ODY1NmM2YzZmMjA3NzZmNzI2YzY0JylcbiAqIC8vIEBsb2c6IDB4OGI2ODY1NmM2YzZmMjA3NzZmNzI2YzY0XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gaGV4IC0gVGhlIHtAbGluayBveCNIZXguSGV4fSB2YWx1ZSB0byBlbmNvZGUuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbnMuXG4gKiBAcmV0dXJucyBUaGUgUkxQIHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUhleChoZXgsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgYXMgPSAnSGV4JyB9ID0gb3B0aW9ucztcbiAgICByZXR1cm4gZnJvbShoZXgsIHsgYXMgfSk7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEludGVybmFsXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbmZ1bmN0aW9uIGdldEVuY29kYWJsZShieXRlcykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGJ5dGVzKSlcbiAgICAgICAgcmV0dXJuIGdldEVuY29kYWJsZUxpc3QoYnl0ZXMubWFwKCh4KSA9PiBnZXRFbmNvZGFibGUoeCkpKTtcbiAgICByZXR1cm4gZ2V0RW5jb2RhYmxlQnl0ZXMoYnl0ZXMpO1xufVxuZnVuY3Rpb24gZ2V0RW5jb2RhYmxlTGlzdChsaXN0KSB7XG4gICAgY29uc3QgYm9keUxlbmd0aCA9IGxpc3QucmVkdWNlKChhY2MsIHgpID0+IGFjYyArIHgubGVuZ3RoLCAwKTtcbiAgICBjb25zdCBzaXplT2ZCb2R5TGVuZ3RoID0gZ2V0U2l6ZU9mTGVuZ3RoKGJvZHlMZW5ndGgpO1xuICAgIGNvbnN0IGxlbmd0aCA9ICgoKSA9PiB7XG4gICAgICAgIGlmIChib2R5TGVuZ3RoIDw9IDU1KVxuICAgICAgICAgICAgcmV0dXJuIDEgKyBib2R5TGVuZ3RoO1xuICAgICAgICByZXR1cm4gMSArIHNpemVPZkJvZHlMZW5ndGggKyBib2R5TGVuZ3RoO1xuICAgIH0pKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgbGVuZ3RoLFxuICAgICAgICBlbmNvZGUoY3Vyc29yKSB7XG4gICAgICAgICAgICBpZiAoYm9keUxlbmd0aCA8PSA1NSkge1xuICAgICAgICAgICAgICAgIGN1cnNvci5wdXNoQnl0ZSgweGMwICsgYm9keUxlbmd0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjdXJzb3IucHVzaEJ5dGUoMHhjMCArIDU1ICsgc2l6ZU9mQm9keUxlbmd0aCk7XG4gICAgICAgICAgICAgICAgaWYgKHNpemVPZkJvZHlMZW5ndGggPT09IDEpXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvci5wdXNoVWludDgoYm9keUxlbmd0aCk7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2l6ZU9mQm9keUxlbmd0aCA9PT0gMilcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yLnB1c2hVaW50MTYoYm9keUxlbmd0aCk7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2l6ZU9mQm9keUxlbmd0aCA9PT0gMylcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yLnB1c2hVaW50MjQoYm9keUxlbmd0aCk7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICBjdXJzb3IucHVzaFVpbnQzMihib2R5TGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvciAoY29uc3QgeyBlbmNvZGUgfSBvZiBsaXN0KSB7XG4gICAgICAgICAgICAgICAgZW5jb2RlKGN1cnNvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgfTtcbn1cbmZ1bmN0aW9uIGdldEVuY29kYWJsZUJ5dGVzKGJ5dGVzT3JIZXgpIHtcbiAgICBjb25zdCBieXRlcyA9IHR5cGVvZiBieXRlc09ySGV4ID09PSAnc3RyaW5nJyA/IEJ5dGVzLmZyb21IZXgoYnl0ZXNPckhleCkgOiBieXRlc09ySGV4O1xuICAgIGNvbnN0IHNpemVPZkJ5dGVzTGVuZ3RoID0gZ2V0U2l6ZU9mTGVuZ3RoKGJ5dGVzLmxlbmd0aCk7XG4gICAgY29uc3QgbGVuZ3RoID0gKCgpID0+IHtcbiAgICAgICAgaWYgKGJ5dGVzLmxlbmd0aCA9PT0gMSAmJiBieXRlc1swXSA8IDB4ODApXG4gICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgaWYgKGJ5dGVzLmxlbmd0aCA8PSA1NSlcbiAgICAgICAgICAgIHJldHVybiAxICsgYnl0ZXMubGVuZ3RoO1xuICAgICAgICByZXR1cm4gMSArIHNpemVPZkJ5dGVzTGVuZ3RoICsgYnl0ZXMubGVuZ3RoO1xuICAgIH0pKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgbGVuZ3RoLFxuICAgICAgICBlbmNvZGUoY3Vyc29yKSB7XG4gICAgICAgICAgICBpZiAoYnl0ZXMubGVuZ3RoID09PSAxICYmIGJ5dGVzWzBdIDwgMHg4MCkge1xuICAgICAgICAgICAgICAgIGN1cnNvci5wdXNoQnl0ZXMoYnl0ZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYnl0ZXMubGVuZ3RoIDw9IDU1KSB7XG4gICAgICAgICAgICAgICAgY3Vyc29yLnB1c2hCeXRlKDB4ODAgKyBieXRlcy5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIGN1cnNvci5wdXNoQnl0ZXMoYnl0ZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY3Vyc29yLnB1c2hCeXRlKDB4ODAgKyA1NSArIHNpemVPZkJ5dGVzTGVuZ3RoKTtcbiAgICAgICAgICAgICAgICBpZiAoc2l6ZU9mQnl0ZXNMZW5ndGggPT09IDEpXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvci5wdXNoVWludDgoYnl0ZXMubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChzaXplT2ZCeXRlc0xlbmd0aCA9PT0gMilcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yLnB1c2hVaW50MTYoYnl0ZXMubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChzaXplT2ZCeXRlc0xlbmd0aCA9PT0gMylcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yLnB1c2hVaW50MjQoYnl0ZXMubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvci5wdXNoVWludDMyKGJ5dGVzLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgY3Vyc29yLnB1c2hCeXRlcyhieXRlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgfTtcbn1cbmZ1bmN0aW9uIGdldFNpemVPZkxlbmd0aChsZW5ndGgpIHtcbiAgICBpZiAobGVuZ3RoIDwgMiAqKiA4KVxuICAgICAgICByZXR1cm4gMTtcbiAgICBpZiAobGVuZ3RoIDwgMiAqKiAxNilcbiAgICAgICAgcmV0dXJuIDI7XG4gICAgaWYgKGxlbmd0aCA8IDIgKiogMjQpXG4gICAgICAgIHJldHVybiAzO1xuICAgIGlmIChsZW5ndGggPCAyICoqIDMyKVxuICAgICAgICByZXR1cm4gNDtcbiAgICB0aHJvdyBuZXcgRXJyb3JzLkJhc2VFcnJvcignTGVuZ3RoIGlzIHRvbyBsYXJnZS4nKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVJscC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Rlp.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Secp256k1.js": /*!******************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Secp256k1.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createKeyPair: () => (/* binding */ createKeyPair),\n/* harmony export */ getPublicKey: () => (/* binding */ getPublicKey),\n/* harmony export */ getSharedSecret: () => (/* binding */ getSharedSecret),\n/* harmony export */ noble: () => (/* binding */ noble),\n/* harmony export */ randomPrivateKey: () => (/* binding */ randomPrivateKey),\n/* harmony export */ recoverAddress: () => (/* binding */ recoverAddress),\n/* harmony export */ recoverPublicKey: () => (/* binding */ recoverPublicKey),\n/* harmony export */ sign: () => (/* binding */ sign),\n/* harmony export */ verify: () => (/* binding */ verify)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @noble/curves/secp256k1 */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js\");\n/* harmony import */ var _Address_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Address.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Address.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _internal_entropy_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./internal/entropy.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/entropy.js\");\n/* harmony import */ var _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PublicKey.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/PublicKey.js\");\n\n\n\n\n\n\n/** Re-export of noble/curves secp256k1 utilities. */\nconst noble = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1;\n/**\n * Creates a new secp256k1 ECDSA key pair consisting of a private key and its corresponding public key.\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const { privateKey, publicKey } = Secp256k1.createKeyPair()\n * ```\n *\n * @param options - The options to generate the key pair.\n * @returns The generated key pair containing both private and public keys.\n */\nfunction createKeyPair(options = {}) {\n const { as = 'Hex' } = options;\n const privateKey = randomPrivateKey({ as });\n const publicKey = getPublicKey({ privateKey });\n return {\n privateKey: privateKey,\n publicKey,\n };\n}\n/**\n * Computes the secp256k1 ECDSA public key from a provided private key.\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const publicKey = Secp256k1.getPublicKey({ privateKey: '0x...' })\n * ```\n *\n * @param options - The options to compute the public key.\n * @returns The computed public key.\n */\nfunction getPublicKey(options) {\n const { privateKey } = options;\n const point = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.ProjectivePoint.fromPrivateKey(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(privateKey).slice(2));\n return _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__.from(point);\n}\n/**\n * Computes a shared secret using ECDH (Elliptic Curve Diffie-Hellman) between a private key and a public key.\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const { privateKey: privateKeyA } = Secp256k1.createKeyPair()\n * const { publicKey: publicKeyB } = Secp256k1.createKeyPair()\n *\n * const sharedSecret = Secp256k1.getSharedSecret({\n * privateKey: privateKeyA,\n * publicKey: publicKeyB\n * })\n * ```\n *\n * @param options - The options to compute the shared secret.\n * @returns The computed shared secret.\n */\nfunction getSharedSecret(options) {\n const { as = 'Hex', privateKey, publicKey } = options;\n const point = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.ProjectivePoint.fromHex(_PublicKey_js__WEBPACK_IMPORTED_MODULE_2__.toHex(publicKey).slice(2));\n const sharedPoint = point.multiply(_noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.utils.normPrivateKeyToScalar(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(privateKey).slice(2)));\n const sharedSecret = sharedPoint.toRawBytes(true); // compressed format\n if (as === 'Hex')\n return _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(sharedSecret);\n return sharedSecret;\n}\n/**\n * Generates a random ECDSA private key on the secp256k1 curve.\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const privateKey = Secp256k1.randomPrivateKey()\n * ```\n *\n * @param options - The options to generate the private key.\n * @returns The generated private key.\n */\nfunction randomPrivateKey(options = {}) {\n const { as = 'Hex' } = options;\n const bytes = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.utils.randomPrivateKey();\n if (as === 'Hex')\n return _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(bytes);\n return bytes;\n}\n/**\n * Recovers the signing address from the signed payload and signature.\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const signature = Secp256k1.sign({ payload: '0xdeadbeef', privateKey: '0x...' })\n *\n * const address = Secp256k1.recoverAddress({ // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param options - The recovery options.\n * @returns The recovered address.\n */\nfunction recoverAddress(options) {\n return _Address_js__WEBPACK_IMPORTED_MODULE_3__.fromPublicKey(recoverPublicKey(options));\n}\n/**\n * Recovers the signing public key from the signed payload and signature.\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const signature = Secp256k1.sign({ payload: '0xdeadbeef', privateKey: '0x...' })\n *\n * const publicKey = Secp256k1.recoverPublicKey({ // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param options - The recovery options.\n * @returns The recovered public key.\n */\nfunction recoverPublicKey(options) {\n const { payload, signature } = options;\n const { r, s, yParity } = signature;\n const signature_ = new _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.Signature(BigInt(r), BigInt(s)).addRecoveryBit(yParity);\n const point = signature_.recoverPublicKey(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(payload).substring(2));\n return _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__.from(point);\n}\n/**\n * Signs the payload with the provided private key.\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const signature = Secp256k1.sign({ // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * privateKey: '0x...' // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param options - The signing options.\n * @returns The ECDSA {@link ox#Signature.Signature}.\n */\nfunction sign(options) {\n const { extraEntropy = _internal_entropy_js__WEBPACK_IMPORTED_MODULE_4__.extraEntropy, hash, payload, privateKey, } = options;\n const { r, s, recovery } = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.sign(_Bytes_js__WEBPACK_IMPORTED_MODULE_5__.from(payload), _Bytes_js__WEBPACK_IMPORTED_MODULE_5__.from(privateKey), {\n extraEntropy: typeof extraEntropy === 'boolean'\n ? extraEntropy\n : _Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(extraEntropy).slice(2),\n lowS: true,\n ...(hash ? { prehash: true } : {}),\n });\n return {\n r,\n s,\n yParity: recovery,\n };\n}\n/**\n * Verifies a payload was signed by the provided address.\n *\n * @example\n * ### Verify with Ethereum Address\n *\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const signature = Secp256k1.sign({ payload: '0xdeadbeef', privateKey: '0x...' })\n *\n * const verified = Secp256k1.verify({ // [!code focus]\n * address: '0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266', // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @example\n * ### Verify with Public Key\n *\n * ```ts twoslash\n * import { Secp256k1 } from 'ox'\n *\n * const privateKey = '0x...'\n * const publicKey = Secp256k1.getPublicKey({ privateKey })\n * const signature = Secp256k1.sign({ payload: '0xdeadbeef', privateKey })\n *\n * const verified = Secp256k1.verify({ // [!code focus]\n * publicKey, // [!code focus]\n * payload: '0xdeadbeef', // [!code focus]\n * signature, // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param options - The verification options.\n * @returns Whether the payload was signed by the provided address.\n */\nfunction verify(options) {\n const { address, hash, payload, publicKey, signature } = options;\n if (address)\n return _Address_js__WEBPACK_IMPORTED_MODULE_3__.isEqual(address, recoverAddress({ payload, signature }));\n return _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_0__.secp256k1.verify(signature, _Bytes_js__WEBPACK_IMPORTED_MODULE_5__.from(payload), _PublicKey_js__WEBPACK_IMPORTED_MODULE_2__.toBytes(publicKey), ...(hash ? [{ prehash: true, lowS: true }] : []));\n}\n//# sourceMappingURL=Secp256k1.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvU2VjcDI1NmsxLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFvRDtBQUNaO0FBQ0o7QUFDSjtBQUNpQjtBQUNMO0FBQzVDO0FBQ08sY0FBYyw4REFBUztBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0EsV0FBVyx3QkFBd0I7QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLG1DQUFtQztBQUMxQyxZQUFZLGFBQWE7QUFDekIsMENBQTBDLElBQUk7QUFDOUMscUNBQXFDLFlBQVk7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQSw4Q0FBOEMscUJBQXFCO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksYUFBYTtBQUN6QixrQkFBa0IsOERBQVMsZ0NBQWdDLHlDQUFRO0FBQ25FLFdBQVcsK0NBQWM7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0EsV0FBVywwQkFBMEI7QUFDckMsV0FBVyx3QkFBd0I7QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSxvQ0FBb0M7QUFDaEQsa0JBQWtCLDhEQUFTLHlCQUF5QixnREFBZTtBQUNuRSx1Q0FBdUMsOERBQVMsOEJBQThCLHlDQUFRO0FBQ3RGLHVEQUF1RDtBQUN2RDtBQUNBLGVBQWUsOENBQWE7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxzQ0FBc0M7QUFDN0MsWUFBWSxhQUFhO0FBQ3pCLGtCQUFrQiw4REFBUztBQUMzQjtBQUNBLGVBQWUsOENBQWE7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQSxzQ0FBc0MsNENBQTRDO0FBQ2xGO0FBQ0EsOENBQThDO0FBQzlDO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsV0FBVyxzREFBcUI7QUFDaEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0Esc0NBQXNDLDRDQUE0QztBQUNsRjtBQUNBLGtEQUFrRDtBQUNsRDtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVkscUJBQXFCO0FBQ2pDLFlBQVksZ0JBQWdCO0FBQzVCLDJCQUEyQiw4REFBUztBQUNwQyw4Q0FBOEMseUNBQVE7QUFDdEQsV0FBVywrQ0FBYztBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQSxzQ0FBc0M7QUFDdEM7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsNkJBQTZCO0FBQ3BEO0FBQ087QUFDUCxZQUFZLGVBQWUsOERBQW9CLCtCQUErQjtBQUM5RSxZQUFZLGlCQUFpQixFQUFFLDhEQUFTLE1BQU0sMkNBQVUsV0FBVywyQ0FBVTtBQUM3RTtBQUNBO0FBQ0EsY0FBYyx5Q0FBUTtBQUN0QjtBQUNBLHFCQUFxQixnQkFBZ0IsSUFBSTtBQUN6QyxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQSxzQ0FBc0MsNENBQTRDO0FBQ2xGO0FBQ0EsdUNBQXVDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBLDhDQUE4QyxZQUFZO0FBQzFELHNDQUFzQyxtQ0FBbUM7QUFDekU7QUFDQSx1Q0FBdUM7QUFDdkM7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksK0NBQStDO0FBQzNEO0FBQ0EsZUFBZSxnREFBZSwyQkFBMkIsb0JBQW9CO0FBQzdFLFdBQVcsOERBQVMsbUJBQW1CLDJDQUFVLFdBQVcsa0RBQWlCLDJCQUEyQiwyQkFBMkI7QUFDbkk7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvU2VjcDI1NmsxLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNlY3AyNTZrMSB9IGZyb20gJ0Bub2JsZS9jdXJ2ZXMvc2VjcDI1NmsxJztcbmltcG9ydCAqIGFzIEFkZHJlc3MgZnJvbSAnLi9BZGRyZXNzLmpzJztcbmltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4vSGV4LmpzJztcbmltcG9ydCAqIGFzIEVudHJvcHkgZnJvbSAnLi9pbnRlcm5hbC9lbnRyb3B5LmpzJztcbmltcG9ydCAqIGFzIFB1YmxpY0tleSBmcm9tICcuL1B1YmxpY0tleS5qcyc7XG4vKiogUmUtZXhwb3J0IG9mIG5vYmxlL2N1cnZlcyBzZWNwMjU2azEgdXRpbGl0aWVzLiAqL1xuZXhwb3J0IGNvbnN0IG5vYmxlID0gc2VjcDI1NmsxO1xuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHNlY3AyNTZrMSBFQ0RTQSBrZXkgcGFpciBjb25zaXN0aW5nIG9mIGEgcHJpdmF0ZSBrZXkgYW5kIGl0cyBjb3JyZXNwb25kaW5nIHB1YmxpYyBrZXkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTZWNwMjU2azEgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB7IHByaXZhdGVLZXksIHB1YmxpY0tleSB9ID0gU2VjcDI1NmsxLmNyZWF0ZUtleVBhaXIoKVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyB0byBnZW5lcmF0ZSB0aGUga2V5IHBhaXIuXG4gKiBAcmV0dXJucyBUaGUgZ2VuZXJhdGVkIGtleSBwYWlyIGNvbnRhaW5pbmcgYm90aCBwcml2YXRlIGFuZCBwdWJsaWMga2V5cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUtleVBhaXIob3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBhcyA9ICdIZXgnIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHByaXZhdGVLZXkgPSByYW5kb21Qcml2YXRlS2V5KHsgYXMgfSk7XG4gICAgY29uc3QgcHVibGljS2V5ID0gZ2V0UHVibGljS2V5KHsgcHJpdmF0ZUtleSB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgICBwcml2YXRlS2V5OiBwcml2YXRlS2V5LFxuICAgICAgICBwdWJsaWNLZXksXG4gICAgfTtcbn1cbi8qKlxuICogQ29tcHV0ZXMgdGhlIHNlY3AyNTZrMSBFQ0RTQSBwdWJsaWMga2V5IGZyb20gYSBwcm92aWRlZCBwcml2YXRlIGtleS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNlY3AyNTZrMSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHB1YmxpY0tleSA9IFNlY3AyNTZrMS5nZXRQdWJsaWNLZXkoeyBwcml2YXRlS2V5OiAnMHguLi4nIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIHRvIGNvbXB1dGUgdGhlIHB1YmxpYyBrZXkuXG4gKiBAcmV0dXJucyBUaGUgY29tcHV0ZWQgcHVibGljIGtleS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFB1YmxpY0tleShvcHRpb25zKSB7XG4gICAgY29uc3QgeyBwcml2YXRlS2V5IH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHBvaW50ID0gc2VjcDI1NmsxLlByb2plY3RpdmVQb2ludC5mcm9tUHJpdmF0ZUtleShIZXguZnJvbShwcml2YXRlS2V5KS5zbGljZSgyKSk7XG4gICAgcmV0dXJuIFB1YmxpY0tleS5mcm9tKHBvaW50KTtcbn1cbi8qKlxuICogQ29tcHV0ZXMgYSBzaGFyZWQgc2VjcmV0IHVzaW5nIEVDREggKEVsbGlwdGljIEN1cnZlIERpZmZpZS1IZWxsbWFuKSBiZXR3ZWVuIGEgcHJpdmF0ZSBrZXkgYW5kIGEgcHVibGljIGtleS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNlY3AyNTZrMSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHsgcHJpdmF0ZUtleTogcHJpdmF0ZUtleUEgfSA9IFNlY3AyNTZrMS5jcmVhdGVLZXlQYWlyKClcbiAqIGNvbnN0IHsgcHVibGljS2V5OiBwdWJsaWNLZXlCIH0gPSBTZWNwMjU2azEuY3JlYXRlS2V5UGFpcigpXG4gKlxuICogY29uc3Qgc2hhcmVkU2VjcmV0ID0gU2VjcDI1NmsxLmdldFNoYXJlZFNlY3JldCh7XG4gKiAgIHByaXZhdGVLZXk6IHByaXZhdGVLZXlBLFxuICogICBwdWJsaWNLZXk6IHB1YmxpY0tleUJcbiAqIH0pXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIHRvIGNvbXB1dGUgdGhlIHNoYXJlZCBzZWNyZXQuXG4gKiBAcmV0dXJucyBUaGUgY29tcHV0ZWQgc2hhcmVkIHNlY3JldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNoYXJlZFNlY3JldChvcHRpb25zKSB7XG4gICAgY29uc3QgeyBhcyA9ICdIZXgnLCBwcml2YXRlS2V5LCBwdWJsaWNLZXkgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgcG9pbnQgPSBzZWNwMjU2azEuUHJvamVjdGl2ZVBvaW50LmZyb21IZXgoUHVibGljS2V5LnRvSGV4KHB1YmxpY0tleSkuc2xpY2UoMikpO1xuICAgIGNvbnN0IHNoYXJlZFBvaW50ID0gcG9pbnQubXVsdGlwbHkoc2VjcDI1NmsxLnV0aWxzLm5vcm1Qcml2YXRlS2V5VG9TY2FsYXIoSGV4LmZyb20ocHJpdmF0ZUtleSkuc2xpY2UoMikpKTtcbiAgICBjb25zdCBzaGFyZWRTZWNyZXQgPSBzaGFyZWRQb2ludC50b1Jhd0J5dGVzKHRydWUpOyAvLyBjb21wcmVzc2VkIGZvcm1hdFxuICAgIGlmIChhcyA9PT0gJ0hleCcpXG4gICAgICAgIHJldHVybiBIZXguZnJvbUJ5dGVzKHNoYXJlZFNlY3JldCk7XG4gICAgcmV0dXJuIHNoYXJlZFNlY3JldDtcbn1cbi8qKlxuICogR2VuZXJhdGVzIGEgcmFuZG9tIEVDRFNBIHByaXZhdGUga2V5IG9uIHRoZSBzZWNwMjU2azEgY3VydmUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTZWNwMjU2azEgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBwcml2YXRlS2V5ID0gU2VjcDI1NmsxLnJhbmRvbVByaXZhdGVLZXkoKVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyB0byBnZW5lcmF0ZSB0aGUgcHJpdmF0ZSBrZXkuXG4gKiBAcmV0dXJucyBUaGUgZ2VuZXJhdGVkIHByaXZhdGUga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmFuZG9tUHJpdmF0ZUtleShvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGFzID0gJ0hleCcgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYnl0ZXMgPSBzZWNwMjU2azEudXRpbHMucmFuZG9tUHJpdmF0ZUtleSgpO1xuICAgIGlmIChhcyA9PT0gJ0hleCcpXG4gICAgICAgIHJldHVybiBIZXguZnJvbUJ5dGVzKGJ5dGVzKTtcbiAgICByZXR1cm4gYnl0ZXM7XG59XG4vKipcbiAqIFJlY292ZXJzIHRoZSBzaWduaW5nIGFkZHJlc3MgZnJvbSB0aGUgc2lnbmVkIHBheWxvYWQgYW5kIHNpZ25hdHVyZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNlY3AyNTZrMSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNlY3AyNTZrMS5zaWduKHsgcGF5bG9hZDogJzB4ZGVhZGJlZWYnLCBwcml2YXRlS2V5OiAnMHguLi4nIH0pXG4gKlxuICogY29uc3QgYWRkcmVzcyA9IFNlY3AyNTZrMS5yZWNvdmVyQWRkcmVzcyh7IC8vIFshY29kZSBmb2N1c11cbiAqICAgcGF5bG9hZDogJzB4ZGVhZGJlZWYnLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHNpZ25hdHVyZSwgLy8gWyFjb2RlIGZvY3VzXVxuICogfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogYGBgXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgcmVjb3Zlcnkgb3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSByZWNvdmVyZWQgYWRkcmVzcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlY292ZXJBZGRyZXNzKG9wdGlvbnMpIHtcbiAgICByZXR1cm4gQWRkcmVzcy5mcm9tUHVibGljS2V5KHJlY292ZXJQdWJsaWNLZXkob3B0aW9ucykpO1xufVxuLyoqXG4gKiBSZWNvdmVycyB0aGUgc2lnbmluZyBwdWJsaWMga2V5IGZyb20gdGhlIHNpZ25lZCBwYXlsb2FkIGFuZCBzaWduYXR1cmUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTZWNwMjU2azEgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTZWNwMjU2azEuc2lnbih7IHBheWxvYWQ6ICcweGRlYWRiZWVmJywgcHJpdmF0ZUtleTogJzB4Li4uJyB9KVxuICpcbiAqIGNvbnN0IHB1YmxpY0tleSA9IFNlY3AyNTZrMS5yZWNvdmVyUHVibGljS2V5KHsgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwYXlsb2FkOiAnMHhkZWFkYmVlZicsIC8vIFshY29kZSBmb2N1c11cbiAqICAgc2lnbmF0dXJlLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiB9KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSByZWNvdmVyeSBvcHRpb25zLlxuICogQHJldHVybnMgVGhlIHJlY292ZXJlZCBwdWJsaWMga2V5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVjb3ZlclB1YmxpY0tleShvcHRpb25zKSB7XG4gICAgY29uc3QgeyBwYXlsb2FkLCBzaWduYXR1cmUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgeyByLCBzLCB5UGFyaXR5IH0gPSBzaWduYXR1cmU7XG4gICAgY29uc3Qgc2lnbmF0dXJlXyA9IG5ldyBzZWNwMjU2azEuU2lnbmF0dXJlKEJpZ0ludChyKSwgQmlnSW50KHMpKS5hZGRSZWNvdmVyeUJpdCh5UGFyaXR5KTtcbiAgICBjb25zdCBwb2ludCA9IHNpZ25hdHVyZV8ucmVjb3ZlclB1YmxpY0tleShIZXguZnJvbShwYXlsb2FkKS5zdWJzdHJpbmcoMikpO1xuICAgIHJldHVybiBQdWJsaWNLZXkuZnJvbShwb2ludCk7XG59XG4vKipcbiAqIFNpZ25zIHRoZSBwYXlsb2FkIHdpdGggdGhlIHByb3ZpZGVkIHByaXZhdGUga2V5LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2VjcDI1NmsxIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gU2VjcDI1NmsxLnNpZ24oeyAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHBheWxvYWQ6ICcweGRlYWRiZWVmJywgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwcml2YXRlS2V5OiAnMHguLi4nIC8vIFshY29kZSBmb2N1c11cbiAqIH0pIC8vIFshY29kZSBmb2N1c11cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIHNpZ25pbmcgb3B0aW9ucy5cbiAqIEByZXR1cm5zIFRoZSBFQ0RTQSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaWduKG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGV4dHJhRW50cm9weSA9IEVudHJvcHkuZXh0cmFFbnRyb3B5LCBoYXNoLCBwYXlsb2FkLCBwcml2YXRlS2V5LCB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB7IHIsIHMsIHJlY292ZXJ5IH0gPSBzZWNwMjU2azEuc2lnbihCeXRlcy5mcm9tKHBheWxvYWQpLCBCeXRlcy5mcm9tKHByaXZhdGVLZXkpLCB7XG4gICAgICAgIGV4dHJhRW50cm9weTogdHlwZW9mIGV4dHJhRW50cm9weSA9PT0gJ2Jvb2xlYW4nXG4gICAgICAgICAgICA/IGV4dHJhRW50cm9weVxuICAgICAgICAgICAgOiBIZXguZnJvbShleHRyYUVudHJvcHkpLnNsaWNlKDIpLFxuICAgICAgICBsb3dTOiB0cnVlLFxuICAgICAgICAuLi4oaGFzaCA/IHsgcHJlaGFzaDogdHJ1ZSB9IDoge30pLFxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIHIsXG4gICAgICAgIHMsXG4gICAgICAgIHlQYXJpdHk6IHJlY292ZXJ5LFxuICAgIH07XG59XG4vKipcbiAqIFZlcmlmaWVzIGEgcGF5bG9hZCB3YXMgc2lnbmVkIGJ5IHRoZSBwcm92aWRlZCBhZGRyZXNzLlxuICpcbiAqIEBleGFtcGxlXG4gKiAjIyMgVmVyaWZ5IHdpdGggRXRoZXJldW0gQWRkcmVzc1xuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTZWNwMjU2azEgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTZWNwMjU2azEuc2lnbih7IHBheWxvYWQ6ICcweGRlYWRiZWVmJywgcHJpdmF0ZUtleTogJzB4Li4uJyB9KVxuICpcbiAqIGNvbnN0IHZlcmlmaWVkID0gU2VjcDI1NmsxLnZlcmlmeSh7IC8vIFshY29kZSBmb2N1c11cbiAqICAgYWRkcmVzczogJzB4ZjM5ZmQ2ZTUxYWFkODhmNmY0Y2U2YWI4ODI3Mjc5Y2ZmZmI5MjI2NicsIC8vIFshY29kZSBmb2N1c11cbiAqICAgcGF5bG9hZDogJzB4ZGVhZGJlZWYnLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHNpZ25hdHVyZSwgLy8gWyFjb2RlIGZvY3VzXVxuICogfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBWZXJpZnkgd2l0aCBQdWJsaWMgS2V5XG4gKlxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNlY3AyNTZrMSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHByaXZhdGVLZXkgPSAnMHguLi4nXG4gKiBjb25zdCBwdWJsaWNLZXkgPSBTZWNwMjU2azEuZ2V0UHVibGljS2V5KHsgcHJpdmF0ZUtleSB9KVxuICogY29uc3Qgc2lnbmF0dXJlID0gU2VjcDI1NmsxLnNpZ24oeyBwYXlsb2FkOiAnMHhkZWFkYmVlZicsIHByaXZhdGVLZXkgfSlcbiAqXG4gKiBjb25zdCB2ZXJpZmllZCA9IFNlY3AyNTZrMS52ZXJpZnkoeyAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHB1YmxpY0tleSwgLy8gWyFjb2RlIGZvY3VzXVxuICogICBwYXlsb2FkOiAnMHhkZWFkYmVlZicsIC8vIFshY29kZSBmb2N1c11cbiAqICAgc2lnbmF0dXJlLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiB9KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSB2ZXJpZmljYXRpb24gb3B0aW9ucy5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIHBheWxvYWQgd2FzIHNpZ25lZCBieSB0aGUgcHJvdmlkZWQgYWRkcmVzcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZlcmlmeShvcHRpb25zKSB7XG4gICAgY29uc3QgeyBhZGRyZXNzLCBoYXNoLCBwYXlsb2FkLCBwdWJsaWNLZXksIHNpZ25hdHVyZSB9ID0gb3B0aW9ucztcbiAgICBpZiAoYWRkcmVzcylcbiAgICAgICAgcmV0dXJuIEFkZHJlc3MuaXNFcXVhbChhZGRyZXNzLCByZWNvdmVyQWRkcmVzcyh7IHBheWxvYWQsIHNpZ25hdHVyZSB9KSk7XG4gICAgcmV0dXJuIHNlY3AyNTZrMS52ZXJpZnkoc2lnbmF0dXJlLCBCeXRlcy5mcm9tKHBheWxvYWQpLCBQdWJsaWNLZXkudG9CeXRlcyhwdWJsaWNLZXkpLCAuLi4oaGFzaCA/IFt7IHByZWhhc2g6IHRydWUsIGxvd1M6IHRydWUgfV0gOiBbXSkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U2VjcDI1NmsxLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Secp256k1.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Signature.js": /*!******************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Signature.js ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidRError: () => (/* binding */ InvalidRError),\n/* harmony export */ InvalidSError: () => (/* binding */ InvalidSError),\n/* harmony export */ InvalidSerializedSizeError: () => (/* binding */ InvalidSerializedSizeError),\n/* harmony export */ InvalidVError: () => (/* binding */ InvalidVError),\n/* harmony export */ InvalidYParityError: () => (/* binding */ InvalidYParityError),\n/* harmony export */ MissingPropertiesError: () => (/* binding */ MissingPropertiesError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ extract: () => (/* binding */ extract),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ fromBytes: () => (/* binding */ fromBytes),\n/* harmony export */ fromDerBytes: () => (/* binding */ fromDerBytes),\n/* harmony export */ fromDerHex: () => (/* binding */ fromDerHex),\n/* harmony export */ fromHex: () => (/* binding */ fromHex),\n/* harmony export */ fromLegacy: () => (/* binding */ fromLegacy),\n/* harmony export */ fromRpc: () => (/* binding */ fromRpc),\n/* harmony export */ fromTuple: () => (/* binding */ fromTuple),\n/* harmony export */ toBytes: () => (/* binding */ toBytes),\n/* harmony export */ toDerBytes: () => (/* binding */ toDerBytes),\n/* harmony export */ toDerHex: () => (/* binding */ toDerHex),\n/* harmony export */ toHex: () => (/* binding */ toHex),\n/* harmony export */ toLegacy: () => (/* binding */ toLegacy),\n/* harmony export */ toRpc: () => (/* binding */ toRpc),\n/* harmony export */ toTuple: () => (/* binding */ toTuple),\n/* harmony export */ vToYParity: () => (/* binding */ vToYParity),\n/* harmony export */ validate: () => (/* binding */ validate),\n/* harmony export */ yParityToV: () => (/* binding */ yParityToV)\n/* harmony export */ });\n/* harmony import */ var _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @noble/curves/secp256k1 */ \"(app-pages-browser)/./node_modules/viem/node_modules/@noble/curves/esm/secp256k1.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Json_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Json.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Json.js\");\n/* harmony import */ var _Solidity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Solidity.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Solidity.js\");\n\n\n\n\n\n\n/**\n * Asserts that a Signature is valid.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.assert({\n * r: -49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * })\n * // @error: InvalidSignatureRError:\n * // @error: Value `-549...n` is an invalid r value.\n * // @error: r must be a positive integer less than 2^256.\n * ```\n *\n * @param signature - The signature object to assert.\n */\nfunction assert(signature, options = {}) {\n const { recovered } = options;\n if (typeof signature.r === 'undefined')\n throw new MissingPropertiesError({ signature });\n if (typeof signature.s === 'undefined')\n throw new MissingPropertiesError({ signature });\n if (recovered && typeof signature.yParity === 'undefined')\n throw new MissingPropertiesError({ signature });\n if (signature.r < 0n || signature.r > _Solidity_js__WEBPACK_IMPORTED_MODULE_0__.maxUint256)\n throw new InvalidRError({ value: signature.r });\n if (signature.s < 0n || signature.s > _Solidity_js__WEBPACK_IMPORTED_MODULE_0__.maxUint256)\n throw new InvalidSError({ value: signature.s });\n if (typeof signature.yParity === 'number' &&\n signature.yParity !== 0 &&\n signature.yParity !== 1)\n throw new InvalidYParityError({ value: signature.yParity });\n}\n/**\n * Deserializes a {@link ox#Bytes.Bytes} signature into a structured {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Signature } from 'ox'\n *\n * Signature.fromBytes(new Uint8Array([128, 3, 131, ...]))\n * // @log: { r: 5231...n, s: 3522...n, yParity: 0 }\n * ```\n *\n * @param signature - The serialized signature.\n * @returns The deserialized {@link ox#Signature.Signature}.\n */\nfunction fromBytes(signature) {\n return fromHex(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(signature));\n}\n/**\n * Deserializes a {@link ox#Hex.Hex} signature into a structured {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.fromHex('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')\n * // @log: { r: 5231...n, s: 3522...n, yParity: 0 }\n * ```\n *\n * @param serialized - The serialized signature.\n * @returns The deserialized {@link ox#Signature.Signature}.\n */\nfunction fromHex(signature) {\n if (signature.length !== 130 && signature.length !== 132)\n throw new InvalidSerializedSizeError({ signature });\n const r = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(signature, 0, 32));\n const s = BigInt(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(signature, 32, 64));\n const yParity = (() => {\n const yParity = Number(`0x${signature.slice(130)}`);\n if (Number.isNaN(yParity))\n return undefined;\n try {\n return vToYParity(yParity);\n }\n catch {\n throw new InvalidYParityError({ value: yParity });\n }\n })();\n if (typeof yParity === 'undefined')\n return {\n r,\n s,\n };\n return {\n r,\n s,\n yParity,\n };\n}\n/**\n * Extracts a {@link ox#Signature.Signature} from an arbitrary object that may include signature properties.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Signature } from 'ox'\n *\n * Signature.extract({\n * baz: 'barry',\n * foo: 'bar',\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * zebra: 'stripes',\n * })\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: yParity: 1\n * // @log: }\n * ```\n *\n * @param value - The arbitrary object to extract the signature from.\n * @returns The extracted {@link ox#Signature.Signature}.\n */\nfunction extract(value) {\n if (typeof value.r === 'undefined')\n return undefined;\n if (typeof value.s === 'undefined')\n return undefined;\n return from(value);\n}\n/**\n * Instantiates a typed {@link ox#Signature.Signature} object from a {@link ox#Signature.Signature}, {@link ox#Signature.Legacy}, {@link ox#Bytes.Bytes}, or {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.from({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * })\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: yParity: 1\n * // @log: }\n * ```\n *\n * @example\n * ### From Serialized\n *\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.from('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db801')\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: yParity: 1,\n * // @log: }\n * ```\n *\n * @example\n * ### From Legacy\n *\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * Signature.from({\n * r: 47323457007453657207889730243826965761922296599680473886588287015755652701072n,\n * s: 57228803202727131502949358313456071280488184270258293674242124340113824882788n,\n * v: 27,\n * })\n * // @log: {\n * // @log: r: 47323457007453657207889730243826965761922296599680473886588287015755652701072n,\n * // @log: s: 57228803202727131502949358313456071280488184270258293674242124340113824882788n,\n * // @log: yParity: 0\n * // @log: }\n * ```\n *\n * @param signature - The signature value to instantiate.\n * @returns The instantiated {@link ox#Signature.Signature}.\n */\nfunction from(signature) {\n const signature_ = (() => {\n if (typeof signature === 'string')\n return fromHex(signature);\n if (signature instanceof Uint8Array)\n return fromBytes(signature);\n if (typeof signature.r === 'string')\n return fromRpc(signature);\n if (signature.v)\n return fromLegacy(signature);\n return {\n r: signature.r,\n s: signature.s,\n ...(typeof signature.yParity !== 'undefined'\n ? { yParity: signature.yParity }\n : {}),\n };\n })();\n assert(signature_);\n return signature_;\n}\n/**\n * Converts a DER-encoded signature to a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromDerBytes(new Uint8Array([132, 51, 23, ...]))\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: }\n * ```\n *\n * @param signature - The DER-encoded signature to convert.\n * @returns The {@link ox#Signature.Signature}.\n */\nfunction fromDerBytes(signature) {\n return fromDerHex(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromBytes(signature));\n}\n/**\n * Converts a DER-encoded signature to a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromDerHex('0x304402206e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf02204a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8')\n * // @log: {\n * // @log: r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * // @log: s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * // @log: }\n * ```\n *\n * @param signature - The DER-encoded signature to convert.\n * @returns The {@link ox#Signature.Signature}.\n */\nfunction fromDerHex(signature) {\n const { r, s } = _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__.secp256k1.Signature.fromDER(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(signature).slice(2));\n return { r, s };\n}\n/**\n * Converts a {@link ox#Signature.Legacy} into a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const legacy = Signature.fromLegacy({ r: 1n, s: 2n, v: 28 })\n * // @log: { r: 1n, s: 2n, yParity: 1 }\n * ```\n *\n * @param signature - The {@link ox#Signature.Legacy} to convert.\n * @returns The converted {@link ox#Signature.Signature}.\n */\nfunction fromLegacy(signature) {\n return {\n r: signature.r,\n s: signature.s,\n yParity: vToYParity(signature.v),\n };\n}\n/**\n * Converts a {@link ox#Signature.Rpc} into a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromRpc({\n * r: '0x635dc2033e60185bb36709c29c75d64ea51dfbd91c32ef4be198e4ceb169fb4d',\n * s: '0x50c2667ac4c771072746acfdcf1f1483336dcca8bd2df47cd83175dbe60f0540',\n * yParity: '0x0',\n * })\n * ```\n *\n * @param signature - The {@link ox#Signature.Rpc} to convert.\n * @returns The converted {@link ox#Signature.Signature}.\n */\nfunction fromRpc(signature) {\n const yParity = (() => {\n const v = signature.v ? Number(signature.v) : undefined;\n let yParity = signature.yParity ? Number(signature.yParity) : undefined;\n if (typeof v === 'number' && typeof yParity !== 'number')\n yParity = vToYParity(v);\n if (typeof yParity !== 'number')\n throw new InvalidYParityError({ value: signature.yParity });\n return yParity;\n })();\n return {\n r: BigInt(signature.r),\n s: BigInt(signature.s),\n yParity,\n };\n}\n/**\n * Converts a {@link ox#Signature.Tuple} to a {@link ox#Signature.Signature}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.fromTuple(['0x01', '0x7b', '0x1c8'])\n * // @log: {\n * // @log: r: 123n,\n * // @log: s: 456n,\n * // @log: yParity: 1,\n * // @log: }\n * ```\n *\n * @param tuple - The {@link ox#Signature.Tuple} to convert.\n * @returns The {@link ox#Signature.Signature}.\n */\nfunction fromTuple(tuple) {\n const [yParity, r, s] = tuple;\n return from({\n r: r === '0x' ? 0n : BigInt(r),\n s: s === '0x' ? 0n : BigInt(s),\n yParity: yParity === '0x' ? 0 : Number(yParity),\n });\n}\n/**\n * Serializes a {@link ox#Signature.Signature} to {@link ox#Bytes.Bytes}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.toBytes({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1\n * })\n * // @log: Uint8Array [102, 16, 10, ...]\n * ```\n *\n * @param signature - The signature to serialize.\n * @returns The serialized signature.\n */\nfunction toBytes(signature) {\n return _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.fromHex(toHex(signature));\n}\n/**\n * Serializes a {@link ox#Signature.Signature} to {@link ox#Hex.Hex}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.toHex({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1\n * })\n * // @log: '0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c'\n * ```\n *\n * @param signature - The signature to serialize.\n * @returns The serialized signature.\n */\nfunction toHex(signature) {\n assert(signature);\n const r = signature.r;\n const s = signature.s;\n const signature_ = _Hex_js__WEBPACK_IMPORTED_MODULE_1__.concat(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(r, { size: 32 }), _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(s, { size: 32 }), \n // If the signature is recovered, add the recovery byte to the signature.\n typeof signature.yParity === 'number'\n ? _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(yParityToV(signature.yParity), { size: 1 })\n : '0x');\n return signature_;\n}\n/**\n * Converts a {@link ox#Signature.Signature} to DER-encoded format.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.from({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * })\n *\n * const signature_der = Signature.toDerBytes(signature)\n * // @log: Uint8Array [132, 51, 23, ...]\n * ```\n *\n * @param signature - The signature to convert.\n * @returns The DER-encoded signature.\n */\nfunction toDerBytes(signature) {\n const sig = new _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__.secp256k1.Signature(signature.r, signature.s);\n return sig.toDERRawBytes();\n}\n/**\n * Converts a {@link ox#Signature.Signature} to DER-encoded format.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.from({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * })\n *\n * const signature_der = Signature.toDerHex(signature)\n * // @log: '0x304402206e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf02204a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db8'\n * ```\n *\n * @param signature - The signature to convert.\n * @returns The DER-encoded signature.\n */\nfunction toDerHex(signature) {\n const sig = new _noble_curves_secp256k1__WEBPACK_IMPORTED_MODULE_2__.secp256k1.Signature(signature.r, signature.s);\n return `0x${sig.toDERHex()}`;\n}\n/**\n * Converts a {@link ox#Signature.Signature} into a {@link ox#Signature.Legacy}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const legacy = Signature.toLegacy({ r: 1n, s: 2n, yParity: 1 })\n * // @log: { r: 1n, s: 2n, v: 28 }\n * ```\n *\n * @param signature - The {@link ox#Signature.Signature} to convert.\n * @returns The converted {@link ox#Signature.Legacy}.\n */\nfunction toLegacy(signature) {\n return {\n r: signature.r,\n s: signature.s,\n v: yParityToV(signature.yParity),\n };\n}\n/**\n * Converts a {@link ox#Signature.Signature} into a {@link ox#Signature.Rpc}.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signature = Signature.toRpc({\n * r: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1\n * })\n * ```\n *\n * @param signature - The {@link ox#Signature.Signature} to convert.\n * @returns The converted {@link ox#Signature.Rpc}.\n */\nfunction toRpc(signature) {\n const { r, s, yParity } = signature;\n return {\n r: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(r, { size: 32 }),\n s: _Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(s, { size: 32 }),\n yParity: yParity === 0 ? '0x0' : '0x1',\n };\n}\n/**\n * Converts a {@link ox#Signature.Signature} to a serialized {@link ox#Signature.Tuple} to be used for signatures in Transaction Envelopes, EIP-7702 Authorization Lists, etc.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const signatureTuple = Signature.toTuple({\n * r: 123n,\n * s: 456n,\n * yParity: 1,\n * })\n * // @log: [yParity: '0x01', r: '0x7b', s: '0x1c8']\n * ```\n *\n * @param signature - The {@link ox#Signature.Signature} to convert.\n * @returns The {@link ox#Signature.Tuple}.\n */\nfunction toTuple(signature) {\n const { r, s, yParity } = signature;\n return [\n yParity ? '0x01' : '0x',\n r === 0n ? '0x' : _Hex_js__WEBPACK_IMPORTED_MODULE_1__.trimLeft(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(r)),\n s === 0n ? '0x' : _Hex_js__WEBPACK_IMPORTED_MODULE_1__.trimLeft(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(s)),\n ];\n}\n/**\n * Validates a Signature. Returns `true` if the signature is valid, `false` otherwise.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const valid = Signature.validate({\n * r: -49782753348462494199823712700004552394425719014458918871452329774910450607807n,\n * s: 33726695977844476214676913201140481102225469284307016937915595756355928419768n,\n * yParity: 1,\n * })\n * // @log: false\n * ```\n *\n * @param signature - The signature object to assert.\n */\nfunction validate(signature, options = {}) {\n try {\n assert(signature, options);\n return true;\n }\n catch {\n return false;\n }\n}\n/**\n * Converts a ECDSA `v` value to a `yParity` value.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const yParity = Signature.vToYParity(28)\n * // @log: 1\n * ```\n *\n * @param v - The ECDSA `v` value to convert.\n * @returns The `yParity` value.\n */\nfunction vToYParity(v) {\n if (v === 0 || v === 27)\n return 0;\n if (v === 1 || v === 28)\n return 1;\n if (v >= 35)\n return v % 2 === 0 ? 1 : 0;\n throw new InvalidVError({ value: v });\n}\n/**\n * Converts a ECDSA `v` value to a `yParity` value.\n *\n * @example\n * ```ts twoslash\n * import { Signature } from 'ox'\n *\n * const v = Signature.yParityToV(1)\n * // @log: 28\n * ```\n *\n * @param yParity - The ECDSA `yParity` value to convert.\n * @returns The `v` value.\n */\nfunction yParityToV(yParity) {\n if (yParity === 0)\n return 27;\n if (yParity === 1)\n return 28;\n throw new InvalidYParityError({ value: yParity });\n}\n/** Thrown when the serialized signature is of an invalid size. */\nclass InvalidSerializedSizeError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ signature }) {\n super(`Value \\`${signature}\\` is an invalid signature size.`, {\n metaMessages: [\n 'Expected: 64 bytes or 65 bytes.',\n `Received ${_Hex_js__WEBPACK_IMPORTED_MODULE_1__.size(_Hex_js__WEBPACK_IMPORTED_MODULE_1__.from(signature))} bytes.`,\n ],\n });\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidSerializedSizeError'\n });\n }\n}\n/** Thrown when the signature is missing either an `r`, `s`, or `yParity` property. */\nclass MissingPropertiesError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ signature }) {\n super(`Signature \\`${_Json_js__WEBPACK_IMPORTED_MODULE_5__.stringify(signature)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.MissingPropertiesError'\n });\n }\n}\n/** Thrown when the signature has an invalid `r` value. */\nclass InvalidRError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid r value. r must be a positive integer less than 2^256.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidRError'\n });\n }\n}\n/** Thrown when the signature has an invalid `s` value. */\nclass InvalidSError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid s value. s must be a positive integer less than 2^256.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidSError'\n });\n }\n}\n/** Thrown when the signature has an invalid `yParity` value. */\nclass InvalidYParityError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidYParityError'\n });\n }\n}\n/** Thrown when the signature has an invalid `v` value. */\nclass InvalidVError extends _Errors_js__WEBPACK_IMPORTED_MODULE_4__.BaseError {\n constructor({ value }) {\n super(`Value \\`${value}\\` is an invalid v value. v must be 27, 28 or >=35.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Signature.InvalidVError'\n });\n }\n}\n//# sourceMappingURL=Signature.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvU2lnbmF0dXJlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQW9EO0FBQ2hCO0FBQ0U7QUFDTjtBQUNFO0FBQ1E7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sdUNBQXVDO0FBQzlDLFlBQVksWUFBWTtBQUN4QjtBQUNBLDJDQUEyQyxXQUFXO0FBQ3REO0FBQ0EsMkNBQTJDLFdBQVc7QUFDdEQ7QUFDQSwyQ0FBMkMsV0FBVztBQUN0RCwwQ0FBMEMsb0RBQW1CO0FBQzdELGtDQUFrQyxvQkFBb0I7QUFDdEQsMENBQTBDLG9EQUFtQjtBQUM3RCxrQ0FBa0Msb0JBQW9CO0FBQ3REO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QywwQkFBMEI7QUFDbEU7QUFDQTtBQUNBLG1CQUFtQixzQkFBc0IsNkJBQTZCLDZCQUE2QjtBQUNuRztBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0EsY0FBYztBQUNkO0FBQ0E7QUFDQTtBQUNBLDhCQUE4Qiw2QkFBNkI7QUFDM0Q7QUFDTztBQUNQLG1CQUFtQiw4Q0FBYTtBQUNoQztBQUNBO0FBQ0EsbUJBQW1CLGtCQUFrQiw2QkFBNkIsNkJBQTZCO0FBQy9GO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0EsY0FBYztBQUNkO0FBQ0E7QUFDQTtBQUNBLDhCQUE4Qiw2QkFBNkI7QUFDM0Q7QUFDTztBQUNQO0FBQ0EsK0NBQStDLFdBQVc7QUFDMUQscUJBQXFCLDBDQUFTO0FBQzlCLHFCQUFxQiwwQ0FBUztBQUM5QjtBQUNBLG9DQUFvQyxxQkFBcUI7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLGdCQUFnQjtBQUM1RDtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLDhCQUE4QjtBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsNkJBQTZCO0FBQ3hEO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5Qiw4QkFBOEIsZUFBZSw2QkFBNkIsR0FBRywwQkFBMEIsR0FBRyxxQkFBcUIsTUFBTSxpQkFBaUI7QUFDL0s7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsNkJBQTZCO0FBQzNEO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQjtBQUNwQixvQkFBb0I7QUFDcEI7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEMsNkJBQTZCO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQiw2QkFBNkI7QUFDOUM7QUFDTztBQUNQLHNCQUFzQiw4Q0FBYTtBQUNuQztBQUNBO0FBQ0EsMENBQTBDLDZCQUE2QjtBQUN2RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLDZCQUE2QjtBQUM5QztBQUNPO0FBQ1AsWUFBWSxPQUFPLEVBQUUsOERBQVMsbUJBQW1CLHlDQUFRO0FBQ3pELGFBQWE7QUFDYjtBQUNBO0FBQ0EsZUFBZSwyQkFBMkIsUUFBUSw2QkFBNkI7QUFDL0U7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0EseUNBQXlDLHFCQUFxQjtBQUM5RCxjQUFjO0FBQ2Q7QUFDQTtBQUNBLDJCQUEyQiwyQkFBMkI7QUFDdEQsMkJBQTJCLDZCQUE2QjtBQUN4RDtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLHdCQUF3QixRQUFRLDZCQUE2QjtBQUM1RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0EsMkJBQTJCLHdCQUF3QjtBQUNuRCwyQkFBMkIsNkJBQTZCO0FBQ3hEO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0Q0FBNEMsMEJBQTBCO0FBQ3RFO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSwwQkFBMEIsTUFBTSw2QkFBNkI7QUFDNUU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QiwwQkFBMEI7QUFDakQsaUJBQWlCLDZCQUE2QjtBQUM5QztBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsaUJBQWlCLDhCQUE4QixJQUFJLHFCQUFxQjtBQUN4RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFdBQVcsOENBQWE7QUFDeEI7QUFDQTtBQUNBLGlCQUFpQiw4QkFBOEIsSUFBSSxpQkFBaUI7QUFDcEU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsMkNBQVUsQ0FBQywrQ0FBYyxNQUFNLFVBQVUsR0FBRywrQ0FBYyxNQUFNLFVBQVU7QUFDakc7QUFDQTtBQUNBLFVBQVUsK0NBQWMsa0NBQWtDLFNBQVM7QUFDbkU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLDhCQUE4QjtBQUM3QztBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1Asb0JBQW9CLDhEQUFTO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLGVBQWUsOEJBQThCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxvQkFBb0IsOERBQVM7QUFDN0IsZ0JBQWdCLGVBQWU7QUFDL0I7QUFDQTtBQUNBLGVBQWUsOEJBQThCLFFBQVEsMEJBQTBCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBLHVDQUF1QywwQkFBMEI7QUFDakUsY0FBYztBQUNkO0FBQ0E7QUFDQSwyQkFBMkIsOEJBQThCO0FBQ3pELDJCQUEyQiwwQkFBMEI7QUFDckQ7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSw4QkFBOEIsUUFBUSx1QkFBdUI7QUFDNUU7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLDJCQUEyQiw4QkFBOEI7QUFDekQsMkJBQTJCLHVCQUF1QjtBQUNsRDtBQUNPO0FBQ1AsWUFBWSxnQkFBZ0I7QUFDNUI7QUFDQSxXQUFXLCtDQUFjLE1BQU0sVUFBVTtBQUN6QyxXQUFXLCtDQUFjLE1BQU0sVUFBVTtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsOEJBQThCLGlCQUFpQiwwQkFBMEI7QUFDeEY7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLDhCQUE4QjtBQUN6RCxpQkFBaUIseUJBQXlCO0FBQzFDO0FBQ087QUFDUCxZQUFZLGdCQUFnQjtBQUM1QjtBQUNBO0FBQ0EsMEJBQTBCLDZDQUFZLENBQUMsK0NBQWM7QUFDckQsMEJBQTBCLDZDQUFZLENBQUMsK0NBQWM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08seUNBQXlDO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4QixVQUFVO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksWUFBWTtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyxnQkFBZ0I7QUFDcEQ7QUFDQTtBQUNPLHlDQUF5QyxpREFBZ0I7QUFDaEUsa0JBQWtCLFdBQVc7QUFDN0IseUJBQXlCLFVBQVU7QUFDbkM7QUFDQTtBQUNBLDRCQUE0Qix5Q0FBUSxDQUFDLHlDQUFRLGNBQWM7QUFDM0Q7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTyxxQ0FBcUMsaURBQWdCO0FBQzVELGtCQUFrQixXQUFXO0FBQzdCLDZCQUE2QiwrQ0FBYyxZQUFZO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sNEJBQTRCLGlEQUFnQjtBQUNuRCxrQkFBa0IsT0FBTztBQUN6Qix5QkFBeUIsTUFBTTtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLDRCQUE0QixpREFBZ0I7QUFDbkQsa0JBQWtCLE9BQU87QUFDekIseUJBQXlCLE1BQU07QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTyxrQ0FBa0MsaURBQWdCO0FBQ3pELGtCQUFrQixPQUFPO0FBQ3pCLHlCQUF5QixNQUFNO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sNEJBQTRCLGlEQUFnQjtBQUNuRCxrQkFBa0IsT0FBTztBQUN6Qix5QkFBeUIsTUFBTTtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvU2lnbmF0dXJlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNlY3AyNTZrMSB9IGZyb20gJ0Bub2JsZS9jdXJ2ZXMvc2VjcDI1NmsxJztcbmltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4vQnl0ZXMuanMnO1xuaW1wb3J0ICogYXMgRXJyb3JzIGZyb20gJy4vRXJyb3JzLmpzJztcbmltcG9ydCAqIGFzIEhleCBmcm9tICcuL0hleC5qcyc7XG5pbXBvcnQgKiBhcyBKc29uIGZyb20gJy4vSnNvbi5qcyc7XG5pbXBvcnQgKiBhcyBTb2xpZGl0eSBmcm9tICcuL1NvbGlkaXR5LmpzJztcbi8qKlxuICogQXNzZXJ0cyB0aGF0IGEgU2lnbmF0dXJlIGlzIHZhbGlkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogU2lnbmF0dXJlLmFzc2VydCh7XG4gKiAgIHI6IC00OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqICAgeVBhcml0eTogMSxcbiAqIH0pXG4gKiAvLyBAZXJyb3I6IEludmFsaWRTaWduYXR1cmVSRXJyb3I6XG4gKiAvLyBAZXJyb3I6IFZhbHVlIGAtNTQ5Li4ubmAgaXMgYW4gaW52YWxpZCByIHZhbHVlLlxuICogLy8gQGVycm9yOiByIG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyIGxlc3MgdGhhbiAyXjI1Ni5cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIG9iamVjdCB0byBhc3NlcnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnQoc2lnbmF0dXJlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IHJlY292ZXJlZCB9ID0gb3B0aW9ucztcbiAgICBpZiAodHlwZW9mIHNpZ25hdHVyZS5yID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgdGhyb3cgbmV3IE1pc3NpbmdQcm9wZXJ0aWVzRXJyb3IoeyBzaWduYXR1cmUgfSk7XG4gICAgaWYgKHR5cGVvZiBzaWduYXR1cmUucyA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHRocm93IG5ldyBNaXNzaW5nUHJvcGVydGllc0Vycm9yKHsgc2lnbmF0dXJlIH0pO1xuICAgIGlmIChyZWNvdmVyZWQgJiYgdHlwZW9mIHNpZ25hdHVyZS55UGFyaXR5ID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgdGhyb3cgbmV3IE1pc3NpbmdQcm9wZXJ0aWVzRXJyb3IoeyBzaWduYXR1cmUgfSk7XG4gICAgaWYgKHNpZ25hdHVyZS5yIDwgMG4gfHwgc2lnbmF0dXJlLnIgPiBTb2xpZGl0eS5tYXhVaW50MjU2KVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFJFcnJvcih7IHZhbHVlOiBzaWduYXR1cmUuciB9KTtcbiAgICBpZiAoc2lnbmF0dXJlLnMgPCAwbiB8fCBzaWduYXR1cmUucyA+IFNvbGlkaXR5Lm1heFVpbnQyNTYpXG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkU0Vycm9yKHsgdmFsdWU6IHNpZ25hdHVyZS5zIH0pO1xuICAgIGlmICh0eXBlb2Ygc2lnbmF0dXJlLnlQYXJpdHkgPT09ICdudW1iZXInICYmXG4gICAgICAgIHNpZ25hdHVyZS55UGFyaXR5ICE9PSAwICYmXG4gICAgICAgIHNpZ25hdHVyZS55UGFyaXR5ICE9PSAxKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFlQYXJpdHlFcnJvcih7IHZhbHVlOiBzaWduYXR1cmUueVBhcml0eSB9KTtcbn1cbi8qKlxuICogRGVzZXJpYWxpemVzIGEge0BsaW5rIG94I0J5dGVzLkJ5dGVzfSBzaWduYXR1cmUgaW50byBhIHN0cnVjdHVyZWQge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBTaWduYXR1cmUuZnJvbUJ5dGVzKG5ldyBVaW50OEFycmF5KFsxMjgsIDMsIDEzMSwgLi4uXSkpXG4gKiAvLyBAbG9nOiB7IHI6IDUyMzEuLi5uLCBzOiAzNTIyLi4ubiwgeVBhcml0eTogMCB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHNlcmlhbGl6ZWQgc2lnbmF0dXJlLlxuICogQHJldHVybnMgVGhlIGRlc2VyaWFsaXplZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tQnl0ZXMoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGZyb21IZXgoSGV4LmZyb21CeXRlcyhzaWduYXR1cmUpKTtcbn1cbi8qKlxuICogRGVzZXJpYWxpemVzIGEge0BsaW5rIG94I0hleC5IZXh9IHNpZ25hdHVyZSBpbnRvIGEgc3RydWN0dXJlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBTaWduYXR1cmUuZnJvbUhleCgnMHg2ZTEwMGEzNTJlYzZhZDFiNzA4MDIyOTBlMThhZWVkMTkwNzA0OTczNTcwZjNiOGVkNDJjYjk4MDhlMmVhNmJmNGE5MGEyMjlhMjQ0NDk1YjQxODkwOTg3ODA2ZmNiZDJkNWQyM2ZjMGRiZTVmNTI1NmMyNjEzYzAzOWQ3NmRiODFjJylcbiAqIC8vIEBsb2c6IHsgcjogNTIzMS4uLm4sIHM6IDM1MjIuLi5uLCB5UGFyaXR5OiAwIH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzZXJpYWxpemVkIC0gVGhlIHNlcmlhbGl6ZWQgc2lnbmF0dXJlLlxuICogQHJldHVybnMgVGhlIGRlc2VyaWFsaXplZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tSGV4KHNpZ25hdHVyZSkge1xuICAgIGlmIChzaWduYXR1cmUubGVuZ3RoICE9PSAxMzAgJiYgc2lnbmF0dXJlLmxlbmd0aCAhPT0gMTMyKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFNlcmlhbGl6ZWRTaXplRXJyb3IoeyBzaWduYXR1cmUgfSk7XG4gICAgY29uc3QgciA9IEJpZ0ludChIZXguc2xpY2Uoc2lnbmF0dXJlLCAwLCAzMikpO1xuICAgIGNvbnN0IHMgPSBCaWdJbnQoSGV4LnNsaWNlKHNpZ25hdHVyZSwgMzIsIDY0KSk7XG4gICAgY29uc3QgeVBhcml0eSA9ICgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHlQYXJpdHkgPSBOdW1iZXIoYDB4JHtzaWduYXR1cmUuc2xpY2UoMTMwKX1gKTtcbiAgICAgICAgaWYgKE51bWJlci5pc05hTih5UGFyaXR5KSlcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gdlRvWVBhcml0eSh5UGFyaXR5KTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFlQYXJpdHlFcnJvcih7IHZhbHVlOiB5UGFyaXR5IH0pO1xuICAgICAgICB9XG4gICAgfSkoKTtcbiAgICBpZiAodHlwZW9mIHlQYXJpdHkgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcixcbiAgICAgICAgICAgIHMsXG4gICAgICAgIH07XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcixcbiAgICAgICAgcyxcbiAgICAgICAgeVBhcml0eSxcbiAgICB9O1xufVxuLyoqXG4gKiBFeHRyYWN0cyBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfSBmcm9tIGFuIGFyYml0cmFyeSBvYmplY3QgdGhhdCBtYXkgaW5jbHVkZSBzaWduYXR1cmUgcHJvcGVydGllcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIC8vIEBub0Vycm9yc1xuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogU2lnbmF0dXJlLmV4dHJhY3Qoe1xuICogICBiYXo6ICdiYXJyeScsXG4gKiAgIGZvbzogJ2JhcicsXG4gKiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogICB5UGFyaXR5OiAxLFxuICogICB6ZWJyYTogJ3N0cmlwZXMnLFxuICogfSlcbiAqIC8vIEBsb2c6IHtcbiAqIC8vIEBsb2c6ICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogLy8gQGxvZzogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAvLyBAbG9nOiAgIHlQYXJpdHk6IDFcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBhcmJpdHJhcnkgb2JqZWN0IHRvIGV4dHJhY3QgdGhlIHNpZ25hdHVyZSBmcm9tLlxuICogQHJldHVybnMgVGhlIGV4dHJhY3RlZCB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0KHZhbHVlKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZS5yID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBpZiAodHlwZW9mIHZhbHVlLnMgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBmcm9tKHZhbHVlKTtcbn1cbi8qKlxuICogSW5zdGFudGlhdGVzIGEgdHlwZWQge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IG9iamVjdCBmcm9tIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9LCB7QGxpbmsgb3gjU2lnbmF0dXJlLkxlZ2FjeX0sIHtAbGluayBveCNCeXRlcy5CeXRlc30sIG9yIHtAbGluayBveCNIZXguSGV4fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIFNpZ25hdHVyZS5mcm9tKHtcbiAqICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAgIHlQYXJpdHk6IDEsXG4gKiB9KVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICByOiA0OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAvLyBAbG9nOiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqIC8vIEBsb2c6ICAgeVBhcml0eTogMVxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBGcm9tIFNlcmlhbGl6ZWRcbiAqXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogU2lnbmF0dXJlLmZyb20oJzB4NmUxMDBhMzUyZWM2YWQxYjcwODAyMjkwZTE4YWVlZDE5MDcwNDk3MzU3MGYzYjhlZDQyY2I5ODA4ZTJlYTZiZjRhOTBhMjI5YTI0NDQ5NWI0MTg5MDk4NzgwNmZjYmQyZDVkMjNmYzBkYmU1ZjUyNTZjMjYxM2MwMzlkNzZkYjgwMScpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqIC8vIEBsb2c6ICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogLy8gQGxvZzogICB5UGFyaXR5OiAxLFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqICMjIyBGcm9tIExlZ2FjeVxuICpcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBTaWduYXR1cmUuZnJvbSh7XG4gKiAgIHI6IDQ3MzIzNDU3MDA3NDUzNjU3MjA3ODg5NzMwMjQzODI2OTY1NzYxOTIyMjk2NTk5NjgwNDczODg2NTg4Mjg3MDE1NzU1NjUyNzAxMDcybixcbiAqICAgczogNTcyMjg4MDMyMDI3MjcxMzE1MDI5NDkzNTgzMTM0NTYwNzEyODA0ODgxODQyNzAyNTgyOTM2NzQyNDIxMjQzNDAxMTM4MjQ4ODI3ODhuLFxuICogICB2OiAyNyxcbiAqIH0pXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHI6IDQ3MzIzNDU3MDA3NDUzNjU3MjA3ODg5NzMwMjQzODI2OTY1NzYxOTIyMjk2NTk5NjgwNDczODg2NTg4Mjg3MDE1NzU1NjUyNzAxMDcybixcbiAqIC8vIEBsb2c6ICAgczogNTcyMjg4MDMyMDI3MjcxMzE1MDI5NDkzNTgzMTM0NTYwNzEyODA0ODgxODQyNzAyNTgyOTM2NzQyNDIxMjQzNDAxMTM4MjQ4ODI3ODhuLFxuICogLy8gQGxvZzogICB5UGFyaXR5OiAwXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHNpZ25hdHVyZSB2YWx1ZSB0byBpbnN0YW50aWF0ZS5cbiAqIEByZXR1cm5zIFRoZSBpbnN0YW50aWF0ZWQge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbShzaWduYXR1cmUpIHtcbiAgICBjb25zdCBzaWduYXR1cmVfID0gKCgpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzaWduYXR1cmUgPT09ICdzdHJpbmcnKVxuICAgICAgICAgICAgcmV0dXJuIGZyb21IZXgoc2lnbmF0dXJlKTtcbiAgICAgICAgaWYgKHNpZ25hdHVyZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpXG4gICAgICAgICAgICByZXR1cm4gZnJvbUJ5dGVzKHNpZ25hdHVyZSk7XG4gICAgICAgIGlmICh0eXBlb2Ygc2lnbmF0dXJlLnIgPT09ICdzdHJpbmcnKVxuICAgICAgICAgICAgcmV0dXJuIGZyb21ScGMoc2lnbmF0dXJlKTtcbiAgICAgICAgaWYgKHNpZ25hdHVyZS52KVxuICAgICAgICAgICAgcmV0dXJuIGZyb21MZWdhY3koc2lnbmF0dXJlKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHI6IHNpZ25hdHVyZS5yLFxuICAgICAgICAgICAgczogc2lnbmF0dXJlLnMsXG4gICAgICAgICAgICAuLi4odHlwZW9mIHNpZ25hdHVyZS55UGFyaXR5ICE9PSAndW5kZWZpbmVkJ1xuICAgICAgICAgICAgICAgID8geyB5UGFyaXR5OiBzaWduYXR1cmUueVBhcml0eSB9XG4gICAgICAgICAgICAgICAgOiB7fSksXG4gICAgICAgIH07XG4gICAgfSkoKTtcbiAgICBhc3NlcnQoc2lnbmF0dXJlXyk7XG4gICAgcmV0dXJuIHNpZ25hdHVyZV87XG59XG4vKipcbiAqIENvbnZlcnRzIGEgREVSLWVuY29kZWQgc2lnbmF0dXJlIHRvIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTaWduYXR1cmUuZnJvbURlckJ5dGVzKG5ldyBVaW50OEFycmF5KFsxMzIsIDUxLCAyMywgLi4uXSkpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqIC8vIEBsb2c6ICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSBERVItZW5jb2RlZCBzaWduYXR1cmUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tRGVyQnl0ZXMoc2lnbmF0dXJlKSB7XG4gICAgcmV0dXJuIGZyb21EZXJIZXgoSGV4LmZyb21CeXRlcyhzaWduYXR1cmUpKTtcbn1cbi8qKlxuICogQ29udmVydHMgYSBERVItZW5jb2RlZCBzaWduYXR1cmUgdG8gYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTaWduYXR1cmUuZnJvbURlckhleCgnMHgzMDQ0MDIyMDZlMTAwYTM1MmVjNmFkMWI3MDgwMjI5MGUxOGFlZWQxOTA3MDQ5NzM1NzBmM2I4ZWQ0MmNiOTgwOGUyZWE2YmYwMjIwNGE5MGEyMjlhMjQ0NDk1YjQxODkwOTg3ODA2ZmNiZDJkNWQyM2ZjMGRiZTVmNTI1NmMyNjEzYzAzOWQ3NmRiOCcpXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqIC8vIEBsb2c6ICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogLy8gQGxvZzogfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSBERVItZW5jb2RlZCBzaWduYXR1cmUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tRGVySGV4KHNpZ25hdHVyZSkge1xuICAgIGNvbnN0IHsgciwgcyB9ID0gc2VjcDI1NmsxLlNpZ25hdHVyZS5mcm9tREVSKEhleC5mcm9tKHNpZ25hdHVyZSkuc2xpY2UoMikpO1xuICAgIHJldHVybiB7IHIsIHMgfTtcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLkxlZ2FjeX0gaW50byBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGxlZ2FjeSA9IFNpZ25hdHVyZS5mcm9tTGVnYWN5KHsgcjogMW4sIHM6IDJuLCB2OiAyOCB9KVxuICogLy8gQGxvZzogeyByOiAxbiwgczogMm4sIHlQYXJpdHk6IDEgfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLkxlZ2FjeX0gdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBjb252ZXJ0ZWQge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUxlZ2FjeShzaWduYXR1cmUpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICByOiBzaWduYXR1cmUucixcbiAgICAgICAgczogc2lnbmF0dXJlLnMsXG4gICAgICAgIHlQYXJpdHk6IHZUb1lQYXJpdHkoc2lnbmF0dXJlLnYpLFxuICAgIH07XG59XG4vKipcbiAqIENvbnZlcnRzIGEge0BsaW5rIG94I1NpZ25hdHVyZS5ScGN9IGludG8gYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTaWduYXR1cmUuZnJvbVJwYyh7XG4gKiAgIHI6ICcweDYzNWRjMjAzM2U2MDE4NWJiMzY3MDljMjljNzVkNjRlYTUxZGZiZDkxYzMyZWY0YmUxOThlNGNlYjE2OWZiNGQnLFxuICogICBzOiAnMHg1MGMyNjY3YWM0Yzc3MTA3Mjc0NmFjZmRjZjFmMTQ4MzMzNmRjY2E4YmQyZGY0N2NkODMxNzVkYmU2MGYwNTQwJyxcbiAqICAgeVBhcml0eTogJzB4MCcsXG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLlJwY30gdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBjb252ZXJ0ZWQge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbVJwYyhzaWduYXR1cmUpIHtcbiAgICBjb25zdCB5UGFyaXR5ID0gKCgpID0+IHtcbiAgICAgICAgY29uc3QgdiA9IHNpZ25hdHVyZS52ID8gTnVtYmVyKHNpZ25hdHVyZS52KSA6IHVuZGVmaW5lZDtcbiAgICAgICAgbGV0IHlQYXJpdHkgPSBzaWduYXR1cmUueVBhcml0eSA/IE51bWJlcihzaWduYXR1cmUueVBhcml0eSkgOiB1bmRlZmluZWQ7XG4gICAgICAgIGlmICh0eXBlb2YgdiA9PT0gJ251bWJlcicgJiYgdHlwZW9mIHlQYXJpdHkgIT09ICdudW1iZXInKVxuICAgICAgICAgICAgeVBhcml0eSA9IHZUb1lQYXJpdHkodik7XG4gICAgICAgIGlmICh0eXBlb2YgeVBhcml0eSAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFlQYXJpdHlFcnJvcih7IHZhbHVlOiBzaWduYXR1cmUueVBhcml0eSB9KTtcbiAgICAgICAgcmV0dXJuIHlQYXJpdHk7XG4gICAgfSkoKTtcbiAgICByZXR1cm4ge1xuICAgICAgICByOiBCaWdJbnQoc2lnbmF0dXJlLnIpLFxuICAgICAgICBzOiBCaWdJbnQoc2lnbmF0dXJlLnMpLFxuICAgICAgICB5UGFyaXR5LFxuICAgIH07XG59XG4vKipcbiAqIENvbnZlcnRzIGEge0BsaW5rIG94I1NpZ25hdHVyZS5UdXBsZX0gdG8gYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmUgPSBTaWduYXR1cmUuZnJvbVR1cGxlKFsnMHgwMScsICcweDdiJywgJzB4MWM4J10pXG4gKiAvLyBAbG9nOiB7XG4gKiAvLyBAbG9nOiAgIHI6IDEyM24sXG4gKiAvLyBAbG9nOiAgIHM6IDQ1Nm4sXG4gKiAvLyBAbG9nOiAgIHlQYXJpdHk6IDEsXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdHVwbGUgLSBUaGUge0BsaW5rIG94I1NpZ25hdHVyZS5UdXBsZX0gdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tVHVwbGUodHVwbGUpIHtcbiAgICBjb25zdCBbeVBhcml0eSwgciwgc10gPSB0dXBsZTtcbiAgICByZXR1cm4gZnJvbSh7XG4gICAgICAgIHI6IHIgPT09ICcweCcgPyAwbiA6IEJpZ0ludChyKSxcbiAgICAgICAgczogcyA9PT0gJzB4JyA/IDBuIDogQmlnSW50KHMpLFxuICAgICAgICB5UGFyaXR5OiB5UGFyaXR5ID09PSAnMHgnID8gMCA6IE51bWJlcih5UGFyaXR5KSxcbiAgICB9KTtcbn1cbi8qKlxuICogU2VyaWFsaXplcyBhIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfSB0byB7QGxpbmsgb3gjQnl0ZXMuQnl0ZXN9LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gU2lnbmF0dXJlLnRvQnl0ZXMoe1xuICogICByOiA0OTc4Mjc1MzM0ODQ2MjQ5NDE5OTgyMzcxMjcwMDAwNDU1MjM5NDQyNTcxOTAxNDQ1ODkxODg3MTQ1MjMyOTc3NDkxMDQ1MDYwNzgwN24sXG4gKiAgIHM6IDMzNzI2Njk1OTc3ODQ0NDc2MjE0Njc2OTEzMjAxMTQwNDgxMTAyMjI1NDY5Mjg0MzA3MDE2OTM3OTE1NTk1NzU2MzU1OTI4NDE5NzY4bixcbiAqICAgeVBhcml0eTogMVxuICogfSlcbiAqIC8vIEBsb2c6IFVpbnQ4QXJyYXkgWzEwMiwgMTYsIDEwLCAuLi5dXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHNpZ25hdHVyZSB0byBzZXJpYWxpemUuXG4gKiBAcmV0dXJucyBUaGUgc2VyaWFsaXplZCBzaWduYXR1cmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0J5dGVzKHNpZ25hdHVyZSkge1xuICAgIHJldHVybiBCeXRlcy5mcm9tSGV4KHRvSGV4KHNpZ25hdHVyZSkpO1xufVxuLyoqXG4gKiBTZXJpYWxpemVzIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IHRvIHtAbGluayBveCNIZXguSGV4fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS50b0hleCh7XG4gKiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogICB5UGFyaXR5OiAxXG4gKiB9KVxuICogLy8gQGxvZzogJzB4NmUxMDBhMzUyZWM2YWQxYjcwODAyMjkwZTE4YWVlZDE5MDcwNDk3MzU3MGYzYjhlZDQyY2I5ODA4ZTJlYTZiZjRhOTBhMjI5YTI0NDQ5NWI0MTg5MDk4NzgwNmZjYmQyZDVkMjNmYzBkYmU1ZjUyNTZjMjYxM2MwMzlkNzZkYjgxYydcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIHRvIHNlcmlhbGl6ZS5cbiAqIEByZXR1cm5zIFRoZSBzZXJpYWxpemVkIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSGV4KHNpZ25hdHVyZSkge1xuICAgIGFzc2VydChzaWduYXR1cmUpO1xuICAgIGNvbnN0IHIgPSBzaWduYXR1cmUucjtcbiAgICBjb25zdCBzID0gc2lnbmF0dXJlLnM7XG4gICAgY29uc3Qgc2lnbmF0dXJlXyA9IEhleC5jb25jYXQoSGV4LmZyb21OdW1iZXIociwgeyBzaXplOiAzMiB9KSwgSGV4LmZyb21OdW1iZXIocywgeyBzaXplOiAzMiB9KSwgXG4gICAgLy8gSWYgdGhlIHNpZ25hdHVyZSBpcyByZWNvdmVyZWQsIGFkZCB0aGUgcmVjb3ZlcnkgYnl0ZSB0byB0aGUgc2lnbmF0dXJlLlxuICAgIHR5cGVvZiBzaWduYXR1cmUueVBhcml0eSA9PT0gJ251bWJlcidcbiAgICAgICAgPyBIZXguZnJvbU51bWJlcih5UGFyaXR5VG9WKHNpZ25hdHVyZS55UGFyaXR5KSwgeyBzaXplOiAxIH0pXG4gICAgICAgIDogJzB4Jyk7XG4gICAgcmV0dXJuIHNpZ25hdHVyZV87XG59XG4vKipcbiAqIENvbnZlcnRzIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IHRvIERFUi1lbmNvZGVkIGZvcm1hdC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5mcm9tKHtcbiAqICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiB9KVxuICpcbiAqIGNvbnN0IHNpZ25hdHVyZV9kZXIgPSBTaWduYXR1cmUudG9EZXJCeXRlcyhzaWduYXR1cmUpXG4gKiAvLyBAbG9nOiBVaW50OEFycmF5IFsxMzIsIDUxLCAyMywgLi4uXVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSBzaWduYXR1cmUgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBERVItZW5jb2RlZCBzaWduYXR1cmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0RlckJ5dGVzKHNpZ25hdHVyZSkge1xuICAgIGNvbnN0IHNpZyA9IG5ldyBzZWNwMjU2azEuU2lnbmF0dXJlKHNpZ25hdHVyZS5yLCBzaWduYXR1cmUucyk7XG4gICAgcmV0dXJuIHNpZy50b0RFUlJhd0J5dGVzKCk7XG59XG4vKipcbiAqIENvbnZlcnRzIGEge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IHRvIERFUi1lbmNvZGVkIGZvcm1hdC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS5mcm9tKHtcbiAqICAgcjogNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiB9KVxuICpcbiAqIGNvbnN0IHNpZ25hdHVyZV9kZXIgPSBTaWduYXR1cmUudG9EZXJIZXgoc2lnbmF0dXJlKVxuICogLy8gQGxvZzogJzB4MzA0NDAyMjA2ZTEwMGEzNTJlYzZhZDFiNzA4MDIyOTBlMThhZWVkMTkwNzA0OTczNTcwZjNiOGVkNDJjYjk4MDhlMmVhNmJmMDIyMDRhOTBhMjI5YTI0NDQ5NWI0MTg5MDk4NzgwNmZjYmQyZDVkMjNmYzBkYmU1ZjUyNTZjMjYxM2MwMzlkNzZkYjgnXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHNpZ25hdHVyZSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIERFUi1lbmNvZGVkIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvRGVySGV4KHNpZ25hdHVyZSkge1xuICAgIGNvbnN0IHNpZyA9IG5ldyBzZWNwMjU2azEuU2lnbmF0dXJlKHNpZ25hdHVyZS5yLCBzaWduYXR1cmUucyk7XG4gICAgcmV0dXJuIGAweCR7c2lnLnRvREVSSGV4KCl9YDtcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gaW50byBhIHtAbGluayBveCNTaWduYXR1cmUuTGVnYWN5fS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IGxlZ2FjeSA9IFNpZ25hdHVyZS50b0xlZ2FjeSh7IHI6IDFuLCBzOiAybiwgeVBhcml0eTogMSB9KVxuICogLy8gQGxvZzogeyByOiAxbiwgczogMm4sIHY6IDI4IH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUge0BsaW5rIG94I1NpZ25hdHVyZS5TaWduYXR1cmV9IHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBUaGUgY29udmVydGVkIHtAbGluayBveCNTaWduYXR1cmUuTGVnYWN5fS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvTGVnYWN5KHNpZ25hdHVyZSkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHI6IHNpZ25hdHVyZS5yLFxuICAgICAgICBzOiBzaWduYXR1cmUucyxcbiAgICAgICAgdjogeVBhcml0eVRvVihzaWduYXR1cmUueVBhcml0eSksXG4gICAgfTtcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gaW50byBhIHtAbGluayBveCNTaWduYXR1cmUuUnBjfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNpZ25hdHVyZS50b1JwYyh7XG4gKiAgIHI6IDQ5NzgyNzUzMzQ4NDYyNDk0MTk5ODIzNzEyNzAwMDA0NTUyMzk0NDI1NzE5MDE0NDU4OTE4ODcxNDUyMzI5Nzc0OTEwNDUwNjA3ODA3bixcbiAqICAgczogMzM3MjY2OTU5Nzc4NDQ0NzYyMTQ2NzY5MTMyMDExNDA0ODExMDIyMjU0NjkyODQzMDcwMTY5Mzc5MTU1OTU3NTYzNTU5Mjg0MTk3NjhuLFxuICogICB5UGFyaXR5OiAxXG4gKiB9KVxuICogYGBgXG4gKlxuICogQHBhcmFtIHNpZ25hdHVyZSAtIFRoZSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBjb252ZXJ0ZWQge0BsaW5rIG94I1NpZ25hdHVyZS5ScGN9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9ScGMoc2lnbmF0dXJlKSB7XG4gICAgY29uc3QgeyByLCBzLCB5UGFyaXR5IH0gPSBzaWduYXR1cmU7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcjogSGV4LmZyb21OdW1iZXIociwgeyBzaXplOiAzMiB9KSxcbiAgICAgICAgczogSGV4LmZyb21OdW1iZXIocywgeyBzaXplOiAzMiB9KSxcbiAgICAgICAgeVBhcml0eTogeVBhcml0eSA9PT0gMCA/ICcweDAnIDogJzB4MScsXG4gICAgfTtcbn1cbi8qKlxuICogQ29udmVydHMgYSB7QGxpbmsgb3gjU2lnbmF0dXJlLlNpZ25hdHVyZX0gdG8gYSBzZXJpYWxpemVkIHtAbGluayBveCNTaWduYXR1cmUuVHVwbGV9IHRvIGJlIHVzZWQgZm9yIHNpZ25hdHVyZXMgaW4gVHJhbnNhY3Rpb24gRW52ZWxvcGVzLCBFSVAtNzcwMiBBdXRob3JpemF0aW9uIExpc3RzLCBldGMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCBzaWduYXR1cmVUdXBsZSA9IFNpZ25hdHVyZS50b1R1cGxlKHtcbiAqICAgcjogMTIzbixcbiAqICAgczogNDU2bixcbiAqICAgeVBhcml0eTogMSxcbiAqIH0pXG4gKiAvLyBAbG9nOiBbeVBhcml0eTogJzB4MDEnLCByOiAnMHg3YicsIHM6ICcweDFjOCddXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc2lnbmF0dXJlIC0gVGhlIHtAbGluayBveCNTaWduYXR1cmUuU2lnbmF0dXJlfSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIHtAbGluayBveCNTaWduYXR1cmUuVHVwbGV9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9UdXBsZShzaWduYXR1cmUpIHtcbiAgICBjb25zdCB7IHIsIHMsIHlQYXJpdHkgfSA9IHNpZ25hdHVyZTtcbiAgICByZXR1cm4gW1xuICAgICAgICB5UGFyaXR5ID8gJzB4MDEnIDogJzB4JyxcbiAgICAgICAgciA9PT0gMG4gPyAnMHgnIDogSGV4LnRyaW1MZWZ0KEhleC5mcm9tTnVtYmVyKHIpKSxcbiAgICAgICAgcyA9PT0gMG4gPyAnMHgnIDogSGV4LnRyaW1MZWZ0KEhleC5mcm9tTnVtYmVyKHMpKSxcbiAgICBdO1xufVxuLyoqXG4gKiBWYWxpZGF0ZXMgYSBTaWduYXR1cmUuIFJldHVybnMgYHRydWVgIGlmIHRoZSBzaWduYXR1cmUgaXMgdmFsaWQsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgdmFsaWQgPSBTaWduYXR1cmUudmFsaWRhdGUoe1xuICogICByOiAtNDk3ODI3NTMzNDg0NjI0OTQxOTk4MjM3MTI3MDAwMDQ1NTIzOTQ0MjU3MTkwMTQ0NTg5MTg4NzE0NTIzMjk3NzQ5MTA0NTA2MDc4MDduLFxuICogICBzOiAzMzcyNjY5NTk3Nzg0NDQ3NjIxNDY3NjkxMzIwMTE0MDQ4MTEwMjIyNTQ2OTI4NDMwNzAxNjkzNzkxNTU5NTc1NjM1NTkyODQxOTc2OG4sXG4gKiAgIHlQYXJpdHk6IDEsXG4gKiB9KVxuICogLy8gQGxvZzogZmFsc2VcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIG9iamVjdCB0byBhc3NlcnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZShzaWduYXR1cmUsIG9wdGlvbnMgPSB7fSkge1xuICAgIHRyeSB7XG4gICAgICAgIGFzc2VydChzaWduYXR1cmUsIG9wdGlvbnMpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY2F0Y2gge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqXG4gKiBDb252ZXJ0cyBhIEVDRFNBIGB2YCB2YWx1ZSB0byBhIGB5UGFyaXR5YCB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJ294J1xuICpcbiAqIGNvbnN0IHlQYXJpdHkgPSBTaWduYXR1cmUudlRvWVBhcml0eSgyOClcbiAqIC8vIEBsb2c6IDFcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB2IC0gVGhlIEVDRFNBIGB2YCB2YWx1ZSB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIGB5UGFyaXR5YCB2YWx1ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZUb1lQYXJpdHkodikge1xuICAgIGlmICh2ID09PSAwIHx8IHYgPT09IDI3KVxuICAgICAgICByZXR1cm4gMDtcbiAgICBpZiAodiA9PT0gMSB8fCB2ID09PSAyOClcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgaWYgKHYgPj0gMzUpXG4gICAgICAgIHJldHVybiB2ICUgMiA9PT0gMCA/IDEgOiAwO1xuICAgIHRocm93IG5ldyBJbnZhbGlkVkVycm9yKHsgdmFsdWU6IHYgfSk7XG59XG4vKipcbiAqIENvbnZlcnRzIGEgRUNEU0EgYHZgIHZhbHVlIHRvIGEgYHlQYXJpdHlgIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKlxuICogY29uc3QgdiA9IFNpZ25hdHVyZS55UGFyaXR5VG9WKDEpXG4gKiAvLyBAbG9nOiAyOFxuICogYGBgXG4gKlxuICogQHBhcmFtIHlQYXJpdHkgLSBUaGUgRUNEU0EgYHlQYXJpdHlgIHZhbHVlIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBUaGUgYHZgIHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24geVBhcml0eVRvVih5UGFyaXR5KSB7XG4gICAgaWYgKHlQYXJpdHkgPT09IDApXG4gICAgICAgIHJldHVybiAyNztcbiAgICBpZiAoeVBhcml0eSA9PT0gMSlcbiAgICAgICAgcmV0dXJuIDI4O1xuICAgIHRocm93IG5ldyBJbnZhbGlkWVBhcml0eUVycm9yKHsgdmFsdWU6IHlQYXJpdHkgfSk7XG59XG4vKiogVGhyb3duIHdoZW4gdGhlIHNlcmlhbGl6ZWQgc2lnbmF0dXJlIGlzIG9mIGFuIGludmFsaWQgc2l6ZS4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU2VyaWFsaXplZFNpemVFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgc2lnbmF0dXJlIH0pIHtcbiAgICAgICAgc3VwZXIoYFZhbHVlIFxcYCR7c2lnbmF0dXJlfVxcYCBpcyBhbiBpbnZhbGlkIHNpZ25hdHVyZSBzaXplLmAsIHtcbiAgICAgICAgICAgIG1ldGFNZXNzYWdlczogW1xuICAgICAgICAgICAgICAgICdFeHBlY3RlZDogNjQgYnl0ZXMgb3IgNjUgYnl0ZXMuJyxcbiAgICAgICAgICAgICAgICBgUmVjZWl2ZWQgJHtIZXguc2l6ZShIZXguZnJvbShzaWduYXR1cmUpKX0gYnl0ZXMuYCxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnU2lnbmF0dXJlLkludmFsaWRTZXJpYWxpemVkU2l6ZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKiogVGhyb3duIHdoZW4gdGhlIHNpZ25hdHVyZSBpcyBtaXNzaW5nIGVpdGhlciBhbiBgcmAsIGBzYCwgb3IgYHlQYXJpdHlgIHByb3BlcnR5LiAqL1xuZXhwb3J0IGNsYXNzIE1pc3NpbmdQcm9wZXJ0aWVzRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IHNpZ25hdHVyZSB9KSB7XG4gICAgICAgIHN1cGVyKGBTaWduYXR1cmUgXFxgJHtKc29uLnN0cmluZ2lmeShzaWduYXR1cmUpfVxcYCBpcyBtaXNzaW5nIGVpdGhlciBhbiBcXGByXFxgLCBcXGBzXFxgLCBvciBcXGB5UGFyaXR5XFxgIHByb3BlcnR5LmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnU2lnbmF0dXJlLk1pc3NpbmdQcm9wZXJ0aWVzRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgc2lnbmF0dXJlIGhhcyBhbiBpbnZhbGlkIGByYCB2YWx1ZS4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkUkVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyB2YWx1ZSB9KSB7XG4gICAgICAgIHN1cGVyKGBWYWx1ZSBcXGAke3ZhbHVlfVxcYCBpcyBhbiBpbnZhbGlkIHIgdmFsdWUuIHIgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXIgbGVzcyB0aGFuIDJeMjU2LmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnU2lnbmF0dXJlLkludmFsaWRSRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgc2lnbmF0dXJlIGhhcyBhbiBpbnZhbGlkIGBzYCB2YWx1ZS4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU0Vycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyB2YWx1ZSB9KSB7XG4gICAgICAgIHN1cGVyKGBWYWx1ZSBcXGAke3ZhbHVlfVxcYCBpcyBhbiBpbnZhbGlkIHMgdmFsdWUuIHMgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXIgbGVzcyB0aGFuIDJeMjU2LmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnU2lnbmF0dXJlLkludmFsaWRTRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgc2lnbmF0dXJlIGhhcyBhbiBpbnZhbGlkIGB5UGFyaXR5YCB2YWx1ZS4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkWVBhcml0eUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyB2YWx1ZSB9KSB7XG4gICAgICAgIHN1cGVyKGBWYWx1ZSBcXGAke3ZhbHVlfVxcYCBpcyBhbiBpbnZhbGlkIHktcGFyaXR5IHZhbHVlLiBZLXBhcml0eSBtdXN0IGJlIDAgb3IgMS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ1NpZ25hdHVyZS5JbnZhbGlkWVBhcml0eUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vKiogVGhyb3duIHdoZW4gdGhlIHNpZ25hdHVyZSBoYXMgYW4gaW52YWxpZCBgdmAgdmFsdWUuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZFZFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgdmFsdWUgfSkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHt2YWx1ZX1cXGAgaXMgYW4gaW52YWxpZCB2IHZhbHVlLiB2IG11c3QgYmUgMjcsIDI4IG9yID49MzUuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdTaWduYXR1cmUuSW52YWxpZFZFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U2lnbmF0dXJlLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Signature.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Solidity.js": /*!*****************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Solidity.js ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ arrayRegex: () => (/* binding */ arrayRegex),\n/* harmony export */ bytesRegex: () => (/* binding */ bytesRegex),\n/* harmony export */ integerRegex: () => (/* binding */ integerRegex),\n/* harmony export */ maxInt104: () => (/* binding */ maxInt104),\n/* harmony export */ maxInt112: () => (/* binding */ maxInt112),\n/* harmony export */ maxInt120: () => (/* binding */ maxInt120),\n/* harmony export */ maxInt128: () => (/* binding */ maxInt128),\n/* harmony export */ maxInt136: () => (/* binding */ maxInt136),\n/* harmony export */ maxInt144: () => (/* binding */ maxInt144),\n/* harmony export */ maxInt152: () => (/* binding */ maxInt152),\n/* harmony export */ maxInt16: () => (/* binding */ maxInt16),\n/* harmony export */ maxInt160: () => (/* binding */ maxInt160),\n/* harmony export */ maxInt168: () => (/* binding */ maxInt168),\n/* harmony export */ maxInt176: () => (/* binding */ maxInt176),\n/* harmony export */ maxInt184: () => (/* binding */ maxInt184),\n/* harmony export */ maxInt192: () => (/* binding */ maxInt192),\n/* harmony export */ maxInt200: () => (/* binding */ maxInt200),\n/* harmony export */ maxInt208: () => (/* binding */ maxInt208),\n/* harmony export */ maxInt216: () => (/* binding */ maxInt216),\n/* harmony export */ maxInt224: () => (/* binding */ maxInt224),\n/* harmony export */ maxInt232: () => (/* binding */ maxInt232),\n/* harmony export */ maxInt24: () => (/* binding */ maxInt24),\n/* harmony export */ maxInt240: () => (/* binding */ maxInt240),\n/* harmony export */ maxInt248: () => (/* binding */ maxInt248),\n/* harmony export */ maxInt256: () => (/* binding */ maxInt256),\n/* harmony export */ maxInt32: () => (/* binding */ maxInt32),\n/* harmony export */ maxInt40: () => (/* binding */ maxInt40),\n/* harmony export */ maxInt48: () => (/* binding */ maxInt48),\n/* harmony export */ maxInt56: () => (/* binding */ maxInt56),\n/* harmony export */ maxInt64: () => (/* binding */ maxInt64),\n/* harmony export */ maxInt72: () => (/* binding */ maxInt72),\n/* harmony export */ maxInt8: () => (/* binding */ maxInt8),\n/* harmony export */ maxInt80: () => (/* binding */ maxInt80),\n/* harmony export */ maxInt88: () => (/* binding */ maxInt88),\n/* harmony export */ maxInt96: () => (/* binding */ maxInt96),\n/* harmony export */ maxUint104: () => (/* binding */ maxUint104),\n/* harmony export */ maxUint112: () => (/* binding */ maxUint112),\n/* harmony export */ maxUint120: () => (/* binding */ maxUint120),\n/* harmony export */ maxUint128: () => (/* binding */ maxUint128),\n/* harmony export */ maxUint136: () => (/* binding */ maxUint136),\n/* harmony export */ maxUint144: () => (/* binding */ maxUint144),\n/* harmony export */ maxUint152: () => (/* binding */ maxUint152),\n/* harmony export */ maxUint16: () => (/* binding */ maxUint16),\n/* harmony export */ maxUint160: () => (/* binding */ maxUint160),\n/* harmony export */ maxUint168: () => (/* binding */ maxUint168),\n/* harmony export */ maxUint176: () => (/* binding */ maxUint176),\n/* harmony export */ maxUint184: () => (/* binding */ maxUint184),\n/* harmony export */ maxUint192: () => (/* binding */ maxUint192),\n/* harmony export */ maxUint200: () => (/* binding */ maxUint200),\n/* harmony export */ maxUint208: () => (/* binding */ maxUint208),\n/* harmony export */ maxUint216: () => (/* binding */ maxUint216),\n/* harmony export */ maxUint224: () => (/* binding */ maxUint224),\n/* harmony export */ maxUint232: () => (/* binding */ maxUint232),\n/* harmony export */ maxUint24: () => (/* binding */ maxUint24),\n/* harmony export */ maxUint240: () => (/* binding */ maxUint240),\n/* harmony export */ maxUint248: () => (/* binding */ maxUint248),\n/* harmony export */ maxUint256: () => (/* binding */ maxUint256),\n/* harmony export */ maxUint32: () => (/* binding */ maxUint32),\n/* harmony export */ maxUint40: () => (/* binding */ maxUint40),\n/* harmony export */ maxUint48: () => (/* binding */ maxUint48),\n/* harmony export */ maxUint56: () => (/* binding */ maxUint56),\n/* harmony export */ maxUint64: () => (/* binding */ maxUint64),\n/* harmony export */ maxUint72: () => (/* binding */ maxUint72),\n/* harmony export */ maxUint8: () => (/* binding */ maxUint8),\n/* harmony export */ maxUint80: () => (/* binding */ maxUint80),\n/* harmony export */ maxUint88: () => (/* binding */ maxUint88),\n/* harmony export */ maxUint96: () => (/* binding */ maxUint96),\n/* harmony export */ minInt104: () => (/* binding */ minInt104),\n/* harmony export */ minInt112: () => (/* binding */ minInt112),\n/* harmony export */ minInt120: () => (/* binding */ minInt120),\n/* harmony export */ minInt128: () => (/* binding */ minInt128),\n/* harmony export */ minInt136: () => (/* binding */ minInt136),\n/* harmony export */ minInt144: () => (/* binding */ minInt144),\n/* harmony export */ minInt152: () => (/* binding */ minInt152),\n/* harmony export */ minInt16: () => (/* binding */ minInt16),\n/* harmony export */ minInt160: () => (/* binding */ minInt160),\n/* harmony export */ minInt168: () => (/* binding */ minInt168),\n/* harmony export */ minInt176: () => (/* binding */ minInt176),\n/* harmony export */ minInt184: () => (/* binding */ minInt184),\n/* harmony export */ minInt192: () => (/* binding */ minInt192),\n/* harmony export */ minInt200: () => (/* binding */ minInt200),\n/* harmony export */ minInt208: () => (/* binding */ minInt208),\n/* harmony export */ minInt216: () => (/* binding */ minInt216),\n/* harmony export */ minInt224: () => (/* binding */ minInt224),\n/* harmony export */ minInt232: () => (/* binding */ minInt232),\n/* harmony export */ minInt24: () => (/* binding */ minInt24),\n/* harmony export */ minInt240: () => (/* binding */ minInt240),\n/* harmony export */ minInt248: () => (/* binding */ minInt248),\n/* harmony export */ minInt256: () => (/* binding */ minInt256),\n/* harmony export */ minInt32: () => (/* binding */ minInt32),\n/* harmony export */ minInt40: () => (/* binding */ minInt40),\n/* harmony export */ minInt48: () => (/* binding */ minInt48),\n/* harmony export */ minInt56: () => (/* binding */ minInt56),\n/* harmony export */ minInt64: () => (/* binding */ minInt64),\n/* harmony export */ minInt72: () => (/* binding */ minInt72),\n/* harmony export */ minInt8: () => (/* binding */ minInt8),\n/* harmony export */ minInt80: () => (/* binding */ minInt80),\n/* harmony export */ minInt88: () => (/* binding */ minInt88),\n/* harmony export */ minInt96: () => (/* binding */ minInt96)\n/* harmony export */ });\nconst arrayRegex = /^(.*)\\[([0-9]*)\\]$/;\n// `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n// https://regexr.com/6va55\nconst bytesRegex = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/;\n// `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n// https://regexr.com/6v8hp\nconst integerRegex = /^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;\nconst maxInt8 = 2n ** (8n - 1n) - 1n;\nconst maxInt16 = 2n ** (16n - 1n) - 1n;\nconst maxInt24 = 2n ** (24n - 1n) - 1n;\nconst maxInt32 = 2n ** (32n - 1n) - 1n;\nconst maxInt40 = 2n ** (40n - 1n) - 1n;\nconst maxInt48 = 2n ** (48n - 1n) - 1n;\nconst maxInt56 = 2n ** (56n - 1n) - 1n;\nconst maxInt64 = 2n ** (64n - 1n) - 1n;\nconst maxInt72 = 2n ** (72n - 1n) - 1n;\nconst maxInt80 = 2n ** (80n - 1n) - 1n;\nconst maxInt88 = 2n ** (88n - 1n) - 1n;\nconst maxInt96 = 2n ** (96n - 1n) - 1n;\nconst maxInt104 = 2n ** (104n - 1n) - 1n;\nconst maxInt112 = 2n ** (112n - 1n) - 1n;\nconst maxInt120 = 2n ** (120n - 1n) - 1n;\nconst maxInt128 = 2n ** (128n - 1n) - 1n;\nconst maxInt136 = 2n ** (136n - 1n) - 1n;\nconst maxInt144 = 2n ** (144n - 1n) - 1n;\nconst maxInt152 = 2n ** (152n - 1n) - 1n;\nconst maxInt160 = 2n ** (160n - 1n) - 1n;\nconst maxInt168 = 2n ** (168n - 1n) - 1n;\nconst maxInt176 = 2n ** (176n - 1n) - 1n;\nconst maxInt184 = 2n ** (184n - 1n) - 1n;\nconst maxInt192 = 2n ** (192n - 1n) - 1n;\nconst maxInt200 = 2n ** (200n - 1n) - 1n;\nconst maxInt208 = 2n ** (208n - 1n) - 1n;\nconst maxInt216 = 2n ** (216n - 1n) - 1n;\nconst maxInt224 = 2n ** (224n - 1n) - 1n;\nconst maxInt232 = 2n ** (232n - 1n) - 1n;\nconst maxInt240 = 2n ** (240n - 1n) - 1n;\nconst maxInt248 = 2n ** (248n - 1n) - 1n;\nconst maxInt256 = 2n ** (256n - 1n) - 1n;\nconst minInt8 = -(2n ** (8n - 1n));\nconst minInt16 = -(2n ** (16n - 1n));\nconst minInt24 = -(2n ** (24n - 1n));\nconst minInt32 = -(2n ** (32n - 1n));\nconst minInt40 = -(2n ** (40n - 1n));\nconst minInt48 = -(2n ** (48n - 1n));\nconst minInt56 = -(2n ** (56n - 1n));\nconst minInt64 = -(2n ** (64n - 1n));\nconst minInt72 = -(2n ** (72n - 1n));\nconst minInt80 = -(2n ** (80n - 1n));\nconst minInt88 = -(2n ** (88n - 1n));\nconst minInt96 = -(2n ** (96n - 1n));\nconst minInt104 = -(2n ** (104n - 1n));\nconst minInt112 = -(2n ** (112n - 1n));\nconst minInt120 = -(2n ** (120n - 1n));\nconst minInt128 = -(2n ** (128n - 1n));\nconst minInt136 = -(2n ** (136n - 1n));\nconst minInt144 = -(2n ** (144n - 1n));\nconst minInt152 = -(2n ** (152n - 1n));\nconst minInt160 = -(2n ** (160n - 1n));\nconst minInt168 = -(2n ** (168n - 1n));\nconst minInt176 = -(2n ** (176n - 1n));\nconst minInt184 = -(2n ** (184n - 1n));\nconst minInt192 = -(2n ** (192n - 1n));\nconst minInt200 = -(2n ** (200n - 1n));\nconst minInt208 = -(2n ** (208n - 1n));\nconst minInt216 = -(2n ** (216n - 1n));\nconst minInt224 = -(2n ** (224n - 1n));\nconst minInt232 = -(2n ** (232n - 1n));\nconst minInt240 = -(2n ** (240n - 1n));\nconst minInt248 = -(2n ** (248n - 1n));\nconst minInt256 = -(2n ** (256n - 1n));\nconst maxUint8 = 2n ** 8n - 1n;\nconst maxUint16 = 2n ** 16n - 1n;\nconst maxUint24 = 2n ** 24n - 1n;\nconst maxUint32 = 2n ** 32n - 1n;\nconst maxUint40 = 2n ** 40n - 1n;\nconst maxUint48 = 2n ** 48n - 1n;\nconst maxUint56 = 2n ** 56n - 1n;\nconst maxUint64 = 2n ** 64n - 1n;\nconst maxUint72 = 2n ** 72n - 1n;\nconst maxUint80 = 2n ** 80n - 1n;\nconst maxUint88 = 2n ** 88n - 1n;\nconst maxUint96 = 2n ** 96n - 1n;\nconst maxUint104 = 2n ** 104n - 1n;\nconst maxUint112 = 2n ** 112n - 1n;\nconst maxUint120 = 2n ** 120n - 1n;\nconst maxUint128 = 2n ** 128n - 1n;\nconst maxUint136 = 2n ** 136n - 1n;\nconst maxUint144 = 2n ** 144n - 1n;\nconst maxUint152 = 2n ** 152n - 1n;\nconst maxUint160 = 2n ** 160n - 1n;\nconst maxUint168 = 2n ** 168n - 1n;\nconst maxUint176 = 2n ** 176n - 1n;\nconst maxUint184 = 2n ** 184n - 1n;\nconst maxUint192 = 2n ** 192n - 1n;\nconst maxUint200 = 2n ** 200n - 1n;\nconst maxUint208 = 2n ** 208n - 1n;\nconst maxUint216 = 2n ** 216n - 1n;\nconst maxUint224 = 2n ** 224n - 1n;\nconst maxUint232 = 2n ** 232n - 1n;\nconst maxUint240 = 2n ** 240n - 1n;\nconst maxUint248 = 2n ** 248n - 1n;\nconst maxUint256 = 2n ** 256n - 1n;\n//# sourceMappingURL=Solidity.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvU29saWRpdHkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQU87QUFDUDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ087QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDUCIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvU29saWRpdHkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGFycmF5UmVnZXggPSAvXiguKilcXFsoWzAtOV0qKVxcXSQvO1xuLy8gYGJ5dGVzPE0+YDogYmluYXJ5IHR5cGUgb2YgYE1gIGJ5dGVzLCBgMCA8IE0gPD0gMzJgXG4vLyBodHRwczovL3JlZ2V4ci5jb20vNnZhNTVcbmV4cG9ydCBjb25zdCBieXRlc1JlZ2V4ID0gL15ieXRlcyhbMS05XXwxWzAtOV18MlswLTldfDNbMC0yXSk/JC87XG4vLyBgKHUpaW50PE0+YDogKHVuKXNpZ25lZCBpbnRlZ2VyIHR5cGUgb2YgYE1gIGJpdHMsIGAwIDwgTSA8PSAyNTZgLCBgTSAlIDggPT0gMGBcbi8vIGh0dHBzOi8vcmVnZXhyLmNvbS82djhocFxuZXhwb3J0IGNvbnN0IGludGVnZXJSZWdleCA9IC9eKHU/aW50KSg4fDE2fDI0fDMyfDQwfDQ4fDU2fDY0fDcyfDgwfDg4fDk2fDEwNHwxMTJ8MTIwfDEyOHwxMzZ8MTQ0fDE1MnwxNjB8MTY4fDE3NnwxODR8MTkyfDIwMHwyMDh8MjE2fDIyNHwyMzJ8MjQwfDI0OHwyNTYpPyQvO1xuZXhwb3J0IGNvbnN0IG1heEludDggPSAybiAqKiAoOG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxNiA9IDJuICoqICgxNm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQyNCA9IDJuICoqICgyNG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQzMiA9IDJuICoqICgzMm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ0MCA9IDJuICoqICg0MG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ0OCA9IDJuICoqICg0OG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ1NiA9IDJuICoqICg1Nm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ2NCA9IDJuICoqICg2NG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ3MiA9IDJuICoqICg3Mm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ4MCA9IDJuICoqICg4MG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ4OCA9IDJuICoqICg4OG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQ5NiA9IDJuICoqICg5Nm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxMDQgPSAybiAqKiAoMTA0biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDExMiA9IDJuICoqICgxMTJuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTIwID0gMm4gKiogKDEyMG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxMjggPSAybiAqKiAoMTI4biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDEzNiA9IDJuICoqICgxMzZuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTQ0ID0gMm4gKiogKDE0NG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxNTIgPSAybiAqKiAoMTUybiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDE2MCA9IDJuICoqICgxNjBuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTY4ID0gMm4gKiogKDE2OG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQxNzYgPSAybiAqKiAoMTc2biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDE4NCA9IDJuICoqICgxODRuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MTkyID0gMm4gKiogKDE5Mm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQyMDAgPSAybiAqKiAoMjAwbiAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDIwOCA9IDJuICoqICgyMDhuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MjE2ID0gMm4gKiogKDIxNm4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQyMjQgPSAybiAqKiAoMjI0biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDIzMiA9IDJuICoqICgyMzJuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWF4SW50MjQwID0gMm4gKiogKDI0MG4gLSAxbikgLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhJbnQyNDggPSAybiAqKiAoMjQ4biAtIDFuKSAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heEludDI1NiA9IDJuICoqICgyNTZuIC0gMW4pIC0gMW47XG5leHBvcnQgY29uc3QgbWluSW50OCA9IC0oMm4gKiogKDhuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQxNiA9IC0oMm4gKiogKDE2biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50MjQgPSAtKDJuICoqICgyNG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDMyID0gLSgybiAqKiAoMzJuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQ0MCA9IC0oMm4gKiogKDQwbiAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50NDggPSAtKDJuICoqICg0OG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDU2ID0gLSgybiAqKiAoNTZuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQ2NCA9IC0oMm4gKiogKDY0biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50NzIgPSAtKDJuICoqICg3Mm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDgwID0gLSgybiAqKiAoODBuIC0gMW4pKTtcbmV4cG9ydCBjb25zdCBtaW5JbnQ4OCA9IC0oMm4gKiogKDg4biAtIDFuKSk7XG5leHBvcnQgY29uc3QgbWluSW50OTYgPSAtKDJuICoqICg5Nm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDEwNCA9IC0oMm4gKiogKDEwNG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDExMiA9IC0oMm4gKiogKDExMm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDEyMCA9IC0oMm4gKiogKDEyMG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDEyOCA9IC0oMm4gKiogKDEyOG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDEzNiA9IC0oMm4gKiogKDEzNm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE0NCA9IC0oMm4gKiogKDE0NG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE1MiA9IC0oMm4gKiogKDE1Mm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE2MCA9IC0oMm4gKiogKDE2MG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE2OCA9IC0oMm4gKiogKDE2OG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE3NiA9IC0oMm4gKiogKDE3Nm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE4NCA9IC0oMm4gKiogKDE4NG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDE5MiA9IC0oMm4gKiogKDE5Mm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDIwMCA9IC0oMm4gKiogKDIwMG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDIwOCA9IC0oMm4gKiogKDIwOG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDIxNiA9IC0oMm4gKiogKDIxNm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDIyNCA9IC0oMm4gKiogKDIyNG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDIzMiA9IC0oMm4gKiogKDIzMm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDI0MCA9IC0oMm4gKiogKDI0MG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDI0OCA9IC0oMm4gKiogKDI0OG4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1pbkludDI1NiA9IC0oMm4gKiogKDI1Nm4gLSAxbikpO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQ4ID0gMm4gKiogOG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTYgPSAybiAqKiAxNm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MjQgPSAybiAqKiAyNG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MzIgPSAybiAqKiAzMm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50NDAgPSAybiAqKiA0MG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50NDggPSAybiAqKiA0OG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50NTYgPSAybiAqKiA1Nm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50NjQgPSAybiAqKiA2NG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50NzIgPSAybiAqKiA3Mm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50ODAgPSAybiAqKiA4MG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50ODggPSAybiAqKiA4OG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50OTYgPSAybiAqKiA5Nm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTA0ID0gMm4gKiogMTA0biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxMTIgPSAybiAqKiAxMTJuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDEyMCA9IDJuICoqIDEyMG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTI4ID0gMm4gKiogMTI4biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxMzYgPSAybiAqKiAxMzZuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDE0NCA9IDJuICoqIDE0NG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTUyID0gMm4gKiogMTUybiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxNjAgPSAybiAqKiAxNjBuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDE2OCA9IDJuICoqIDE2OG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MTc2ID0gMm4gKiogMTc2biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQxODQgPSAybiAqKiAxODRuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDE5MiA9IDJuICoqIDE5Mm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MjAwID0gMm4gKiogMjAwbiAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQyMDggPSAybiAqKiAyMDhuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDIxNiA9IDJuICoqIDIxNm4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MjI0ID0gMm4gKiogMjI0biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQyMzIgPSAybiAqKiAyMzJuIC0gMW47XG5leHBvcnQgY29uc3QgbWF4VWludDI0MCA9IDJuICoqIDI0MG4gLSAxbjtcbmV4cG9ydCBjb25zdCBtYXhVaW50MjQ4ID0gMm4gKiogMjQ4biAtIDFuO1xuZXhwb3J0IGNvbnN0IG1heFVpbnQyNTYgPSAybiAqKiAyNTZuIC0gMW47XG4vLyMgc291cmNlTWFwcGluZ1VSTD1Tb2xpZGl0eS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Solidity.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Withdrawal.js": /*!*******************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/Withdrawal.js ***! \*******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fromRpc: () => (/* binding */ fromRpc),\n/* harmony export */ toRpc: () => (/* binding */ toRpc)\n/* harmony export */ });\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n\n/**\n * Converts a {@link ox#Withdrawal.Rpc} to an {@link ox#Withdrawal.Withdrawal}.\n *\n * @example\n * ```ts twoslash\n * import { Withdrawal } from 'ox'\n *\n * const withdrawal = Withdrawal.fromRpc({\n * address: '0x00000000219ab540356cBB839Cbe05303d7705Fa',\n * amount: '0x620323',\n * index: '0x0',\n * validatorIndex: '0x1',\n * })\n * // @log: {\n * // @log: address: '0x00000000219ab540356cBB839Cbe05303d7705Fa',\n * // @log: amount: 6423331n,\n * // @log: index: 0,\n * // @log: validatorIndex: 1\n * // @log: }\n * ```\n *\n * @param withdrawal - The RPC withdrawal to convert.\n * @returns An instantiated {@link ox#Withdrawal.Withdrawal}.\n */\nfunction fromRpc(withdrawal) {\n return {\n ...withdrawal,\n amount: BigInt(withdrawal.amount),\n index: Number(withdrawal.index),\n validatorIndex: Number(withdrawal.validatorIndex),\n };\n}\n/**\n * Converts a {@link ox#Withdrawal.Withdrawal} to an {@link ox#Withdrawal.Rpc}.\n *\n * @example\n * ```ts twoslash\n * import { Withdrawal } from 'ox'\n *\n * const withdrawal = Withdrawal.toRpc({\n * address: '0x00000000219ab540356cBB839Cbe05303d7705Fa',\n * amount: 6423331n,\n * index: 0,\n * validatorIndex: 1,\n * })\n * // @log: {\n * // @log: address: '0x00000000219ab540356cBB839Cbe05303d7705Fa',\n * // @log: amount: '0x620323',\n * // @log: index: '0x0',\n * // @log: validatorIndex: '0x1',\n * // @log: }\n * ```\n *\n * @param withdrawal - The Withdrawal to convert.\n * @returns An RPC Withdrawal.\n */\nfunction toRpc(withdrawal) {\n return {\n address: withdrawal.address,\n amount: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(withdrawal.amount),\n index: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(withdrawal.index),\n validatorIndex: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.fromNumber(withdrawal.validatorIndex),\n };\n}\n//# sourceMappingURL=Withdrawal.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvV2l0aGRyYXdhbC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBZ0M7QUFDaEM7QUFDQSxlQUFlLHlCQUF5QixPQUFPLCtCQUErQjtBQUM5RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGFBQWE7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QiwrQkFBK0I7QUFDNUQ7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLGdDQUFnQyxPQUFPLHdCQUF3QjtBQUM5RTtBQUNBO0FBQ0E7QUFDQSxZQUFZLGFBQWE7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQSxnQkFBZ0IsK0NBQWM7QUFDOUIsZUFBZSwrQ0FBYztBQUM3Qix3QkFBd0IsK0NBQWM7QUFDdEM7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9XaXRoZHJhd2FsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEhleCBmcm9tICcuL0hleC5qcyc7XG4vKipcbiAqIENvbnZlcnRzIGEge0BsaW5rIG94I1dpdGhkcmF3YWwuUnBjfSB0byBhbiB7QGxpbmsgb3gjV2l0aGRyYXdhbC5XaXRoZHJhd2FsfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFdpdGhkcmF3YWwgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB3aXRoZHJhd2FsID0gV2l0aGRyYXdhbC5mcm9tUnBjKHtcbiAqICAgYWRkcmVzczogJzB4MDAwMDAwMDAyMTlhYjU0MDM1NmNCQjgzOUNiZTA1MzAzZDc3MDVGYScsXG4gKiAgIGFtb3VudDogJzB4NjIwMzIzJyxcbiAqICAgaW5kZXg6ICcweDAnLFxuICogICB2YWxpZGF0b3JJbmRleDogJzB4MScsXG4gKiB9KVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBhZGRyZXNzOiAnMHgwMDAwMDAwMDIxOWFiNTQwMzU2Y0JCODM5Q2JlMDUzMDNkNzcwNUZhJyxcbiAqIC8vIEBsb2c6ICAgYW1vdW50OiA2NDIzMzMxbixcbiAqIC8vIEBsb2c6ICAgaW5kZXg6IDAsXG4gKiAvLyBAbG9nOiAgIHZhbGlkYXRvckluZGV4OiAxXG4gKiAvLyBAbG9nOiB9XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gd2l0aGRyYXdhbCAtIFRoZSBSUEMgd2l0aGRyYXdhbCB0byBjb252ZXJ0LlxuICogQHJldHVybnMgQW4gaW5zdGFudGlhdGVkIHtAbGluayBveCNXaXRoZHJhd2FsLldpdGhkcmF3YWx9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbVJwYyh3aXRoZHJhd2FsKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLi4ud2l0aGRyYXdhbCxcbiAgICAgICAgYW1vdW50OiBCaWdJbnQod2l0aGRyYXdhbC5hbW91bnQpLFxuICAgICAgICBpbmRleDogTnVtYmVyKHdpdGhkcmF3YWwuaW5kZXgpLFxuICAgICAgICB2YWxpZGF0b3JJbmRleDogTnVtYmVyKHdpdGhkcmF3YWwudmFsaWRhdG9ySW5kZXgpLFxuICAgIH07XG59XG4vKipcbiAqIENvbnZlcnRzIGEge0BsaW5rIG94I1dpdGhkcmF3YWwuV2l0aGRyYXdhbH0gdG8gYW4ge0BsaW5rIG94I1dpdGhkcmF3YWwuUnBjfS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFdpdGhkcmF3YWwgfSBmcm9tICdveCdcbiAqXG4gKiBjb25zdCB3aXRoZHJhd2FsID0gV2l0aGRyYXdhbC50b1JwYyh7XG4gKiAgIGFkZHJlc3M6ICcweDAwMDAwMDAwMjE5YWI1NDAzNTZjQkI4MzlDYmUwNTMwM2Q3NzA1RmEnLFxuICogICBhbW91bnQ6IDY0MjMzMzFuLFxuICogICBpbmRleDogMCxcbiAqICAgdmFsaWRhdG9ySW5kZXg6IDEsXG4gKiB9KVxuICogLy8gQGxvZzoge1xuICogLy8gQGxvZzogICBhZGRyZXNzOiAnMHgwMDAwMDAwMDIxOWFiNTQwMzU2Y0JCODM5Q2JlMDUzMDNkNzcwNUZhJyxcbiAqIC8vIEBsb2c6ICAgYW1vdW50OiAnMHg2MjAzMjMnLFxuICogLy8gQGxvZzogICBpbmRleDogJzB4MCcsXG4gKiAvLyBAbG9nOiAgIHZhbGlkYXRvckluZGV4OiAnMHgxJyxcbiAqIC8vIEBsb2c6IH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB3aXRoZHJhd2FsIC0gVGhlIFdpdGhkcmF3YWwgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIEFuIFJQQyBXaXRoZHJhd2FsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9ScGMod2l0aGRyYXdhbCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGFkZHJlc3M6IHdpdGhkcmF3YWwuYWRkcmVzcyxcbiAgICAgICAgYW1vdW50OiBIZXguZnJvbU51bWJlcih3aXRoZHJhd2FsLmFtb3VudCksXG4gICAgICAgIGluZGV4OiBIZXguZnJvbU51bWJlcih3aXRoZHJhd2FsLmluZGV4KSxcbiAgICAgICAgdmFsaWRhdG9ySW5kZXg6IEhleC5mcm9tTnVtYmVyKHdpdGhkcmF3YWwudmFsaWRhdG9ySW5kZXgpLFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1XaXRoZHJhd2FsLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Withdrawal.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/abiItem.js": /*!*************************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/abiItem.js ***! \*************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getAmbiguousTypes: () => (/* binding */ getAmbiguousTypes),\n/* harmony export */ isArgOfType: () => (/* binding */ isArgOfType),\n/* harmony export */ normalizeSignature: () => (/* binding */ normalizeSignature)\n/* harmony export */ });\n/* harmony import */ var _Address_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Address.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Address.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n\n\n/** @internal */\nfunction normalizeSignature(signature) {\n let active = true;\n let current = '';\n let level = 0;\n let result = '';\n let valid = false;\n for (let i = 0; i < signature.length; i++) {\n const char = signature[i];\n // If the character is a separator, we want to reactivate.\n if (['(', ')', ','].includes(char))\n active = true;\n // If the character is a \"level\" token, we want to increment/decrement.\n if (char === '(')\n level++;\n if (char === ')')\n level--;\n // If we aren't active, we don't want to mutate the result.\n if (!active)\n continue;\n // If level === 0, we are at the definition level.\n if (level === 0) {\n if (char === ' ' && ['event', 'function', 'error', ''].includes(result))\n result = '';\n else {\n result += char;\n // If we are at the end of the definition, we must be finished.\n if (char === ')') {\n valid = true;\n break;\n }\n }\n continue;\n }\n // Ignore spaces\n if (char === ' ') {\n // If the previous character is a separator, and the current section isn't empty, we want to deactivate.\n if (signature[i - 1] !== ',' && current !== ',' && current !== ',(') {\n current = '';\n active = false;\n }\n continue;\n }\n result += char;\n current += char;\n }\n if (!valid)\n throw new _Errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError('Unable to normalize signature.');\n return result;\n}\n/** @internal */\nfunction isArgOfType(arg, abiParameter) {\n const argType = typeof arg;\n const abiParameterType = abiParameter.type;\n switch (abiParameterType) {\n case 'address':\n return _Address_js__WEBPACK_IMPORTED_MODULE_1__.validate(arg, { strict: false });\n case 'bool':\n return argType === 'boolean';\n case 'function':\n return argType === 'string';\n case 'string':\n return argType === 'string';\n default: {\n if (abiParameterType === 'tuple' && 'components' in abiParameter)\n return Object.values(abiParameter.components).every((component, index) => {\n return isArgOfType(Object.values(arg)[index], component);\n });\n // `(u)int<M>`: (un)signed integer type of `M` bits, `0 < M <= 256`, `M % 8 == 0`\n // https://regexr.com/6v8hp\n if (/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(abiParameterType))\n return argType === 'number' || argType === 'bigint';\n // `bytes<M>`: binary type of `M` bytes, `0 < M <= 32`\n // https://regexr.com/6va55\n if (/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(abiParameterType))\n return argType === 'string' || arg instanceof Uint8Array;\n // fixed-length (`<type>[M]`) and dynamic (`<type>[]`) arrays\n // https://regexr.com/6va6i\n if (/[a-z]+[1-9]{0,3}(\\[[0-9]{0,}\\])+$/.test(abiParameterType)) {\n return (Array.isArray(arg) &&\n arg.every((x) => isArgOfType(x, {\n ...abiParameter,\n // Pop off `[]` or `[M]` from end of type\n type: abiParameterType.replace(/(\\[[0-9]{0,}\\])$/, ''),\n })));\n }\n return false;\n }\n }\n}\n/** @internal */\nfunction getAmbiguousTypes(sourceParameters, targetParameters, args) {\n for (const parameterIndex in sourceParameters) {\n const sourceParameter = sourceParameters[parameterIndex];\n const targetParameter = targetParameters[parameterIndex];\n if (sourceParameter.type === 'tuple' &&\n targetParameter.type === 'tuple' &&\n 'components' in sourceParameter &&\n 'components' in targetParameter)\n return getAmbiguousTypes(sourceParameter.components, targetParameter.components, args[parameterIndex]);\n const types = [sourceParameter.type, targetParameter.type];\n const ambiguous = (() => {\n if (types.includes('address') && types.includes('bytes20'))\n return true;\n if (types.includes('address') && types.includes('string'))\n return _Address_js__WEBPACK_IMPORTED_MODULE_1__.validate(args[parameterIndex], {\n strict: false,\n });\n if (types.includes('address') && types.includes('bytes'))\n return _Address_js__WEBPACK_IMPORTED_MODULE_1__.validate(args[parameterIndex], {\n strict: false,\n });\n return false;\n })();\n if (ambiguous)\n return types;\n }\n return;\n}\n//# sourceMappingURL=abiItem.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvYWJpSXRlbS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUF5QztBQUNGO0FBQ3ZDO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHNCQUFzQjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsaURBQWdCO0FBQ2xDO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsaURBQWdCLFFBQVEsZUFBZTtBQUMxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixJQUFJLFNBQVMsR0FBRztBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGlFQUFpRSxHQUFHO0FBQ3BFLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLGlEQUFnQjtBQUN2QztBQUNBLGlCQUFpQjtBQUNqQjtBQUNBLHVCQUF1QixpREFBZ0I7QUFDdkM7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9pbnRlcm5hbC9hYmlJdGVtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEFkZHJlc3MgZnJvbSAnLi4vQWRkcmVzcy5qcyc7XG5pbXBvcnQgKiBhcyBFcnJvcnMgZnJvbSAnLi4vRXJyb3JzLmpzJztcbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVTaWduYXR1cmUoc2lnbmF0dXJlKSB7XG4gICAgbGV0IGFjdGl2ZSA9IHRydWU7XG4gICAgbGV0IGN1cnJlbnQgPSAnJztcbiAgICBsZXQgbGV2ZWwgPSAwO1xuICAgIGxldCByZXN1bHQgPSAnJztcbiAgICBsZXQgdmFsaWQgPSBmYWxzZTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpZ25hdHVyZS5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBjaGFyID0gc2lnbmF0dXJlW2ldO1xuICAgICAgICAvLyBJZiB0aGUgY2hhcmFjdGVyIGlzIGEgc2VwYXJhdG9yLCB3ZSB3YW50IHRvIHJlYWN0aXZhdGUuXG4gICAgICAgIGlmIChbJygnLCAnKScsICcsJ10uaW5jbHVkZXMoY2hhcikpXG4gICAgICAgICAgICBhY3RpdmUgPSB0cnVlO1xuICAgICAgICAvLyBJZiB0aGUgY2hhcmFjdGVyIGlzIGEgXCJsZXZlbFwiIHRva2VuLCB3ZSB3YW50IHRvIGluY3JlbWVudC9kZWNyZW1lbnQuXG4gICAgICAgIGlmIChjaGFyID09PSAnKCcpXG4gICAgICAgICAgICBsZXZlbCsrO1xuICAgICAgICBpZiAoY2hhciA9PT0gJyknKVxuICAgICAgICAgICAgbGV2ZWwtLTtcbiAgICAgICAgLy8gSWYgd2UgYXJlbid0IGFjdGl2ZSwgd2UgZG9uJ3Qgd2FudCB0byBtdXRhdGUgdGhlIHJlc3VsdC5cbiAgICAgICAgaWYgKCFhY3RpdmUpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgLy8gSWYgbGV2ZWwgPT09IDAsIHdlIGFyZSBhdCB0aGUgZGVmaW5pdGlvbiBsZXZlbC5cbiAgICAgICAgaWYgKGxldmVsID09PSAwKSB7XG4gICAgICAgICAgICBpZiAoY2hhciA9PT0gJyAnICYmIFsnZXZlbnQnLCAnZnVuY3Rpb24nLCAnZXJyb3InLCAnJ10uaW5jbHVkZXMocmVzdWx0KSlcbiAgICAgICAgICAgICAgICByZXN1bHQgPSAnJztcbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHJlc3VsdCArPSBjaGFyO1xuICAgICAgICAgICAgICAgIC8vIElmIHdlIGFyZSBhdCB0aGUgZW5kIG9mIHRoZSBkZWZpbml0aW9uLCB3ZSBtdXN0IGJlIGZpbmlzaGVkLlxuICAgICAgICAgICAgICAgIGlmIChjaGFyID09PSAnKScpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsaWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICAvLyBJZ25vcmUgc3BhY2VzXG4gICAgICAgIGlmIChjaGFyID09PSAnICcpIHtcbiAgICAgICAgICAgIC8vIElmIHRoZSBwcmV2aW91cyBjaGFyYWN0ZXIgaXMgYSBzZXBhcmF0b3IsIGFuZCB0aGUgY3VycmVudCBzZWN0aW9uIGlzbid0IGVtcHR5LCB3ZSB3YW50IHRvIGRlYWN0aXZhdGUuXG4gICAgICAgICAgICBpZiAoc2lnbmF0dXJlW2kgLSAxXSAhPT0gJywnICYmIGN1cnJlbnQgIT09ICcsJyAmJiBjdXJyZW50ICE9PSAnLCgnKSB7XG4gICAgICAgICAgICAgICAgY3VycmVudCA9ICcnO1xuICAgICAgICAgICAgICAgIGFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgcmVzdWx0ICs9IGNoYXI7XG4gICAgICAgIGN1cnJlbnQgKz0gY2hhcjtcbiAgICB9XG4gICAgaWYgKCF2YWxpZClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9ycy5CYXNlRXJyb3IoJ1VuYWJsZSB0byBub3JtYWxpemUgc2lnbmF0dXJlLicpO1xuICAgIHJldHVybiByZXN1bHQ7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gaXNBcmdPZlR5cGUoYXJnLCBhYmlQYXJhbWV0ZXIpIHtcbiAgICBjb25zdCBhcmdUeXBlID0gdHlwZW9mIGFyZztcbiAgICBjb25zdCBhYmlQYXJhbWV0ZXJUeXBlID0gYWJpUGFyYW1ldGVyLnR5cGU7XG4gICAgc3dpdGNoIChhYmlQYXJhbWV0ZXJUeXBlKSB7XG4gICAgICAgIGNhc2UgJ2FkZHJlc3MnOlxuICAgICAgICAgICAgcmV0dXJuIEFkZHJlc3MudmFsaWRhdGUoYXJnLCB7IHN0cmljdDogZmFsc2UgfSk7XG4gICAgICAgIGNhc2UgJ2Jvb2wnOlxuICAgICAgICAgICAgcmV0dXJuIGFyZ1R5cGUgPT09ICdib29sZWFuJztcbiAgICAgICAgY2FzZSAnZnVuY3Rpb24nOlxuICAgICAgICAgICAgcmV0dXJuIGFyZ1R5cGUgPT09ICdzdHJpbmcnO1xuICAgICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICAgICAgcmV0dXJuIGFyZ1R5cGUgPT09ICdzdHJpbmcnO1xuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICBpZiAoYWJpUGFyYW1ldGVyVHlwZSA9PT0gJ3R1cGxlJyAmJiAnY29tcG9uZW50cycgaW4gYWJpUGFyYW1ldGVyKVxuICAgICAgICAgICAgICAgIHJldHVybiBPYmplY3QudmFsdWVzKGFiaVBhcmFtZXRlci5jb21wb25lbnRzKS5ldmVyeSgoY29tcG9uZW50LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXNBcmdPZlR5cGUoT2JqZWN0LnZhbHVlcyhhcmcpW2luZGV4XSwgY29tcG9uZW50KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIC8vIGAodSlpbnQ8TT5gOiAodW4pc2lnbmVkIGludGVnZXIgdHlwZSBvZiBgTWAgYml0cywgYDAgPCBNIDw9IDI1NmAsIGBNICUgOCA9PSAwYFxuICAgICAgICAgICAgLy8gaHR0cHM6Ly9yZWdleHIuY29tLzZ2OGhwXG4gICAgICAgICAgICBpZiAoL151P2ludCg4fDE2fDI0fDMyfDQwfDQ4fDU2fDY0fDcyfDgwfDg4fDk2fDEwNHwxMTJ8MTIwfDEyOHwxMzZ8MTQ0fDE1MnwxNjB8MTY4fDE3NnwxODR8MTkyfDIwMHwyMDh8MjE2fDIyNHwyMzJ8MjQwfDI0OHwyNTYpPyQvLnRlc3QoYWJpUGFyYW1ldGVyVHlwZSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFyZ1R5cGUgPT09ICdudW1iZXInIHx8IGFyZ1R5cGUgPT09ICdiaWdpbnQnO1xuICAgICAgICAgICAgLy8gYGJ5dGVzPE0+YDogYmluYXJ5IHR5cGUgb2YgYE1gIGJ5dGVzLCBgMCA8IE0gPD0gMzJgXG4gICAgICAgICAgICAvLyBodHRwczovL3JlZ2V4ci5jb20vNnZhNTVcbiAgICAgICAgICAgIGlmICgvXmJ5dGVzKFsxLTldfDFbMC05XXwyWzAtOV18M1swLTJdKT8kLy50ZXN0KGFiaVBhcmFtZXRlclR5cGUpKVxuICAgICAgICAgICAgICAgIHJldHVybiBhcmdUeXBlID09PSAnc3RyaW5nJyB8fCBhcmcgaW5zdGFuY2VvZiBVaW50OEFycmF5O1xuICAgICAgICAgICAgLy8gZml4ZWQtbGVuZ3RoIChgPHR5cGU+W01dYCkgYW5kIGR5bmFtaWMgKGA8dHlwZT5bXWApIGFycmF5c1xuICAgICAgICAgICAgLy8gaHR0cHM6Ly9yZWdleHIuY29tLzZ2YTZpXG4gICAgICAgICAgICBpZiAoL1thLXpdK1sxLTldezAsM30oXFxbWzAtOV17MCx9XFxdKSskLy50ZXN0KGFiaVBhcmFtZXRlclR5cGUpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChBcnJheS5pc0FycmF5KGFyZykgJiZcbiAgICAgICAgICAgICAgICAgICAgYXJnLmV2ZXJ5KCh4KSA9PiBpc0FyZ09mVHlwZSh4LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5hYmlQYXJhbWV0ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBQb3Agb2ZmIGBbXWAgb3IgYFtNXWAgZnJvbSBlbmQgb2YgdHlwZVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogYWJpUGFyYW1ldGVyVHlwZS5yZXBsYWNlKC8oXFxbWzAtOV17MCx9XFxdKSQvLCAnJyksXG4gICAgICAgICAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QW1iaWd1b3VzVHlwZXMoc291cmNlUGFyYW1ldGVycywgdGFyZ2V0UGFyYW1ldGVycywgYXJncykge1xuICAgIGZvciAoY29uc3QgcGFyYW1ldGVySW5kZXggaW4gc291cmNlUGFyYW1ldGVycykge1xuICAgICAgICBjb25zdCBzb3VyY2VQYXJhbWV0ZXIgPSBzb3VyY2VQYXJhbWV0ZXJzW3BhcmFtZXRlckluZGV4XTtcbiAgICAgICAgY29uc3QgdGFyZ2V0UGFyYW1ldGVyID0gdGFyZ2V0UGFyYW1ldGVyc1twYXJhbWV0ZXJJbmRleF07XG4gICAgICAgIGlmIChzb3VyY2VQYXJhbWV0ZXIudHlwZSA9PT0gJ3R1cGxlJyAmJlxuICAgICAgICAgICAgdGFyZ2V0UGFyYW1ldGVyLnR5cGUgPT09ICd0dXBsZScgJiZcbiAgICAgICAgICAgICdjb21wb25lbnRzJyBpbiBzb3VyY2VQYXJhbWV0ZXIgJiZcbiAgICAgICAgICAgICdjb21wb25lbnRzJyBpbiB0YXJnZXRQYXJhbWV0ZXIpXG4gICAgICAgICAgICByZXR1cm4gZ2V0QW1iaWd1b3VzVHlwZXMoc291cmNlUGFyYW1ldGVyLmNvbXBvbmVudHMsIHRhcmdldFBhcmFtZXRlci5jb21wb25lbnRzLCBhcmdzW3BhcmFtZXRlckluZGV4XSk7XG4gICAgICAgIGNvbnN0IHR5cGVzID0gW3NvdXJjZVBhcmFtZXRlci50eXBlLCB0YXJnZXRQYXJhbWV0ZXIudHlwZV07XG4gICAgICAgIGNvbnN0IGFtYmlndW91cyA9ICgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZXMuaW5jbHVkZXMoJ2FkZHJlc3MnKSAmJiB0eXBlcy5pbmNsdWRlcygnYnl0ZXMyMCcpKVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgaWYgKHR5cGVzLmluY2x1ZGVzKCdhZGRyZXNzJykgJiYgdHlwZXMuaW5jbHVkZXMoJ3N0cmluZycpKVxuICAgICAgICAgICAgICAgIHJldHVybiBBZGRyZXNzLnZhbGlkYXRlKGFyZ3NbcGFyYW1ldGVySW5kZXhdLCB7XG4gICAgICAgICAgICAgICAgICAgIHN0cmljdDogZmFsc2UsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAodHlwZXMuaW5jbHVkZXMoJ2FkZHJlc3MnKSAmJiB0eXBlcy5pbmNsdWRlcygnYnl0ZXMnKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gQWRkcmVzcy52YWxpZGF0ZShhcmdzW3BhcmFtZXRlckluZGV4XSwge1xuICAgICAgICAgICAgICAgICAgICBzdHJpY3Q6IGZhbHNlLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9KSgpO1xuICAgICAgICBpZiAoYW1iaWd1b3VzKVxuICAgICAgICAgICAgcmV0dXJuIHR5cGVzO1xuICAgIH1cbiAgICByZXR1cm47XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hYmlJdGVtLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/abiItem.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/abiParameters.js": /*!*******************************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/abiParameters.js ***! \*******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ decodeAddress: () => (/* binding */ decodeAddress),\n/* harmony export */ decodeArray: () => (/* binding */ decodeArray),\n/* harmony export */ decodeBool: () => (/* binding */ decodeBool),\n/* harmony export */ decodeBytes: () => (/* binding */ decodeBytes),\n/* harmony export */ decodeNumber: () => (/* binding */ decodeNumber),\n/* harmony export */ decodeParameter: () => (/* binding */ decodeParameter),\n/* harmony export */ decodeString: () => (/* binding */ decodeString),\n/* harmony export */ decodeTuple: () => (/* binding */ decodeTuple),\n/* harmony export */ encode: () => (/* binding */ encode),\n/* harmony export */ encodeAddress: () => (/* binding */ encodeAddress),\n/* harmony export */ encodeArray: () => (/* binding */ encodeArray),\n/* harmony export */ encodeBoolean: () => (/* binding */ encodeBoolean),\n/* harmony export */ encodeBytes: () => (/* binding */ encodeBytes),\n/* harmony export */ encodeNumber: () => (/* binding */ encodeNumber),\n/* harmony export */ encodeString: () => (/* binding */ encodeString),\n/* harmony export */ encodeTuple: () => (/* binding */ encodeTuple),\n/* harmony export */ getArrayComponents: () => (/* binding */ getArrayComponents),\n/* harmony export */ hasDynamicChild: () => (/* binding */ hasDynamicChild),\n/* harmony export */ prepareParameter: () => (/* binding */ prepareParameter),\n/* harmony export */ prepareParameters: () => (/* binding */ prepareParameters)\n/* harmony export */ });\n/* harmony import */ var _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../AbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js\");\n/* harmony import */ var _Address_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Address.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Address.js\");\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _Solidity_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Solidity.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Solidity.js\");\n\n\n\n\n\n\n/** @internal */\nfunction decodeParameter(cursor, param, options) {\n const { checksumAddress, staticPosition } = options;\n const arrayComponents = getArrayComponents(param.type);\n if (arrayComponents) {\n const [length, type] = arrayComponents;\n return decodeArray(cursor, { ...param, type }, { checksumAddress, length, staticPosition });\n }\n if (param.type === 'tuple')\n return decodeTuple(cursor, param, {\n checksumAddress,\n staticPosition,\n });\n if (param.type === 'address')\n return decodeAddress(cursor, { checksum: checksumAddress });\n if (param.type === 'bool')\n return decodeBool(cursor);\n if (param.type.startsWith('bytes'))\n return decodeBytes(cursor, param, { staticPosition });\n if (param.type.startsWith('uint') || param.type.startsWith('int'))\n return decodeNumber(cursor, param);\n if (param.type === 'string')\n return decodeString(cursor, { staticPosition });\n throw new _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.InvalidTypeError(param.type);\n}\nconst sizeOfLength = 32;\nconst sizeOfOffset = 32;\n/** @internal */\nfunction decodeAddress(cursor, options = {}) {\n const { checksum = false } = options;\n const value = cursor.readBytes(32);\n const wrap = (address) => checksum ? _Address_js__WEBPACK_IMPORTED_MODULE_1__.checksum(address) : address;\n return [wrap(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(_Bytes_js__WEBPACK_IMPORTED_MODULE_3__.slice(value, -20))), 32];\n}\n/** @internal */\nfunction decodeArray(cursor, param, options) {\n const { checksumAddress, length, staticPosition } = options;\n // If the length of the array is not known in advance (dynamic array),\n // this means we will need to wonder off to the pointer and decode.\n if (!length) {\n // Dealing with a dynamic type, so get the offset of the array data.\n const offset = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(sizeOfOffset));\n // Start is the static position of current slot + offset.\n const start = staticPosition + offset;\n const startOfData = start + sizeOfLength;\n // Get the length of the array from the offset.\n cursor.setPosition(start);\n const length = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(sizeOfLength));\n // Check if the array has any dynamic children.\n const dynamicChild = hasDynamicChild(param);\n let consumed = 0;\n const value = [];\n for (let i = 0; i < length; ++i) {\n // If any of the children is dynamic, then all elements will be offset pointer, thus size of one slot (32 bytes).\n // Otherwise, elements will be the size of their encoding (consumed bytes).\n cursor.setPosition(startOfData + (dynamicChild ? i * 32 : consumed));\n const [data, consumed_] = decodeParameter(cursor, param, {\n checksumAddress,\n staticPosition: startOfData,\n });\n consumed += consumed_;\n value.push(data);\n }\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n }\n // If the length of the array is known in advance,\n // and the length of an element deeply nested in the array is not known,\n // we need to decode the offset of the array data.\n if (hasDynamicChild(param)) {\n // Dealing with dynamic types, so get the offset of the array data.\n const offset = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(sizeOfOffset));\n // Start is the static position of current slot + offset.\n const start = staticPosition + offset;\n const value = [];\n for (let i = 0; i < length; ++i) {\n // Move cursor along to the next slot (next offset pointer).\n cursor.setPosition(start + i * 32);\n const [data] = decodeParameter(cursor, param, {\n checksumAddress,\n staticPosition: start,\n });\n value.push(data);\n }\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n }\n // If the length of the array is known in advance and the array is deeply static,\n // then we can just decode each element in sequence.\n let consumed = 0;\n const value = [];\n for (let i = 0; i < length; ++i) {\n const [data, consumed_] = decodeParameter(cursor, param, {\n checksumAddress,\n staticPosition: staticPosition + consumed,\n });\n consumed += consumed_;\n value.push(data);\n }\n return [value, consumed];\n}\n/** @internal */\nfunction decodeBool(cursor) {\n return [_Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toBoolean(cursor.readBytes(32), { size: 32 }), 32];\n}\n/** @internal */\nfunction decodeBytes(cursor, param, { staticPosition }) {\n const [_, size] = param.type.split('bytes');\n if (!size) {\n // Dealing with dynamic types, so get the offset of the bytes data.\n const offset = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(32));\n // Set position of the cursor to start of bytes data.\n cursor.setPosition(staticPosition + offset);\n const length = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(32));\n // If there is no length, we have zero data.\n if (length === 0) {\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return ['0x', 32];\n }\n const data = cursor.readBytes(length);\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(data), 32];\n }\n const value = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBytes(cursor.readBytes(Number.parseInt(size, 10), 32));\n return [value, 32];\n}\n/** @internal */\nfunction decodeNumber(cursor, param) {\n const signed = param.type.startsWith('int');\n const size = Number.parseInt(param.type.split('int')[1] || '256', 10);\n const value = cursor.readBytes(32);\n return [\n size > 48\n ? _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toBigInt(value, { signed })\n : _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(value, { signed }),\n 32,\n ];\n}\n/** @internal */\nfunction decodeTuple(cursor, param, options) {\n const { checksumAddress, staticPosition } = options;\n // Tuples can have unnamed components (i.e. they are arrays), so we must\n // determine whether the tuple is named or unnamed. In the case of a named\n // tuple, the value will be an object where each property is the name of the\n // component. In the case of an unnamed tuple, the value will be an array.\n const hasUnnamedChild = param.components.length === 0 || param.components.some(({ name }) => !name);\n // Initialize the value to an object or an array, depending on whether the\n // tuple is named or unnamed.\n const value = hasUnnamedChild ? [] : {};\n let consumed = 0;\n // If the tuple has a dynamic child, we must first decode the offset to the\n // tuple data.\n if (hasDynamicChild(param)) {\n // Dealing with dynamic types, so get the offset of the tuple data.\n const offset = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(sizeOfOffset));\n // Start is the static position of referencing slot + offset.\n const start = staticPosition + offset;\n for (let i = 0; i < param.components.length; ++i) {\n const component = param.components[i];\n cursor.setPosition(start + consumed);\n const [data, consumed_] = decodeParameter(cursor, component, {\n checksumAddress,\n staticPosition: start,\n });\n consumed += consumed_;\n value[hasUnnamedChild ? i : component?.name] = data;\n }\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n }\n // If the tuple has static children, we can just decode each component\n // in sequence.\n for (let i = 0; i < param.components.length; ++i) {\n const component = param.components[i];\n const [data, consumed_] = decodeParameter(cursor, component, {\n checksumAddress,\n staticPosition,\n });\n value[hasUnnamedChild ? i : component?.name] = data;\n consumed += consumed_;\n }\n return [value, consumed];\n}\n/** @internal */\nfunction decodeString(cursor, { staticPosition }) {\n // Get offset to start of string data.\n const offset = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(32));\n // Start is the static position of current slot + offset.\n const start = staticPosition + offset;\n cursor.setPosition(start);\n const length = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toNumber(cursor.readBytes(32));\n // If there is no length, we have zero data (empty string).\n if (length === 0) {\n cursor.setPosition(staticPosition + 32);\n return ['', 32];\n }\n const data = cursor.readBytes(length, 32);\n const value = _Bytes_js__WEBPACK_IMPORTED_MODULE_3__.toString(_Bytes_js__WEBPACK_IMPORTED_MODULE_3__.trimLeft(data));\n // As we have gone wondering, restore to the original position + next slot.\n cursor.setPosition(staticPosition + 32);\n return [value, 32];\n}\n/** @internal */\nfunction prepareParameters({ checksumAddress, parameters, values, }) {\n const preparedParameters = [];\n for (let i = 0; i < parameters.length; i++) {\n preparedParameters.push(prepareParameter({\n checksumAddress,\n parameter: parameters[i],\n value: values[i],\n }));\n }\n return preparedParameters;\n}\n/** @internal */\nfunction prepareParameter({ checksumAddress = false, parameter: parameter_, value, }) {\n const parameter = parameter_;\n const arrayComponents = getArrayComponents(parameter.type);\n if (arrayComponents) {\n const [length, type] = arrayComponents;\n return encodeArray(value, {\n checksumAddress,\n length,\n parameter: {\n ...parameter,\n type,\n },\n });\n }\n if (parameter.type === 'tuple') {\n return encodeTuple(value, {\n checksumAddress,\n parameter: parameter,\n });\n }\n if (parameter.type === 'address') {\n return encodeAddress(value, {\n checksum: checksumAddress,\n });\n }\n if (parameter.type === 'bool') {\n return encodeBoolean(value);\n }\n if (parameter.type.startsWith('uint') || parameter.type.startsWith('int')) {\n const signed = parameter.type.startsWith('int');\n const [, , size = '256'] = _Solidity_js__WEBPACK_IMPORTED_MODULE_4__.integerRegex.exec(parameter.type) ?? [];\n return encodeNumber(value, {\n signed,\n size: Number(size),\n });\n }\n if (parameter.type.startsWith('bytes')) {\n return encodeBytes(value, { type: parameter.type });\n }\n if (parameter.type === 'string') {\n return encodeString(value);\n }\n throw new _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.InvalidTypeError(parameter.type);\n}\n/** @internal */\nfunction encode(preparedParameters) {\n // 1. Compute the size of the static part of the parameters.\n let staticSize = 0;\n for (let i = 0; i < preparedParameters.length; i++) {\n const { dynamic, encoded } = preparedParameters[i];\n if (dynamic)\n staticSize += 32;\n else\n staticSize += _Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(encoded);\n }\n // 2. Split the parameters into static and dynamic parts.\n const staticParameters = [];\n const dynamicParameters = [];\n let dynamicSize = 0;\n for (let i = 0; i < preparedParameters.length; i++) {\n const { dynamic, encoded } = preparedParameters[i];\n if (dynamic) {\n staticParameters.push(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(staticSize + dynamicSize, { size: 32 }));\n dynamicParameters.push(encoded);\n dynamicSize += _Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(encoded);\n }\n else {\n staticParameters.push(encoded);\n }\n }\n // 3. Concatenate static and dynamic parts.\n return _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(...staticParameters, ...dynamicParameters);\n}\n/** @internal */\nfunction encodeAddress(value, options) {\n const { checksum = false } = options;\n _Address_js__WEBPACK_IMPORTED_MODULE_1__.assert(value, { strict: checksum });\n return {\n dynamic: false,\n encoded: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padLeft(value.toLowerCase()),\n };\n}\n/** @internal */\nfunction encodeArray(value, options) {\n const { checksumAddress, length, parameter } = options;\n const dynamic = length === null;\n if (!Array.isArray(value))\n throw new _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.InvalidArrayError(value);\n if (!dynamic && value.length !== length)\n throw new _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.ArrayLengthMismatchError({\n expectedLength: length,\n givenLength: value.length,\n type: `${parameter.type}[${length}]`,\n });\n let dynamicChild = false;\n const preparedParameters = [];\n for (let i = 0; i < value.length; i++) {\n const preparedParam = prepareParameter({\n checksumAddress,\n parameter,\n value: value[i],\n });\n if (preparedParam.dynamic)\n dynamicChild = true;\n preparedParameters.push(preparedParam);\n }\n if (dynamic || dynamicChild) {\n const data = encode(preparedParameters);\n if (dynamic) {\n const length = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(preparedParameters.length, { size: 32 });\n return {\n dynamic: true,\n encoded: preparedParameters.length > 0 ? _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(length, data) : length,\n };\n }\n if (dynamicChild)\n return { dynamic: true, encoded: data };\n }\n return {\n dynamic: false,\n encoded: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(...preparedParameters.map(({ encoded }) => encoded)),\n };\n}\n/** @internal */\nfunction encodeBytes(value, { type }) {\n const [, parametersize] = type.split('bytes');\n const bytesSize = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(value);\n if (!parametersize) {\n let value_ = value;\n // If the size is not divisible by 32 bytes, pad the end\n // with empty bytes to the ceiling 32 bytes.\n if (bytesSize % 32 !== 0)\n value_ = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padRight(value_, Math.ceil((value.length - 2) / 2 / 32) * 32);\n return {\n dynamic: true,\n encoded: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.padLeft(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(bytesSize, { size: 32 })), value_),\n };\n }\n if (bytesSize !== Number.parseInt(parametersize, 10))\n throw new _AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.BytesSizeMismatchError({\n expectedSize: Number.parseInt(parametersize, 10),\n value,\n });\n return { dynamic: false, encoded: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padRight(value) };\n}\n/** @internal */\nfunction encodeBoolean(value) {\n if (typeof value !== 'boolean')\n throw new _Errors_js__WEBPACK_IMPORTED_MODULE_5__.BaseError(`Invalid boolean value: \"${value}\" (type: ${typeof value}). Expected: \\`true\\` or \\`false\\`.`);\n return { dynamic: false, encoded: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.padLeft(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromBoolean(value)) };\n}\n/** @internal */\nfunction encodeNumber(value, { signed, size }) {\n if (typeof size === 'number') {\n const max = 2n ** (BigInt(size) - (signed ? 1n : 0n)) - 1n;\n const min = signed ? -max - 1n : 0n;\n if (value > max || value < min)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_2__.IntegerOutOfRangeError({\n max: max.toString(),\n min: min.toString(),\n signed,\n size: size / 8,\n value: value.toString(),\n });\n }\n return {\n dynamic: false,\n encoded: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(value, {\n size: 32,\n signed,\n }),\n };\n}\n/** @internal */\nfunction encodeString(value) {\n const hexValue = _Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromString(value);\n const partsLength = Math.ceil(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(hexValue) / 32);\n const parts = [];\n for (let i = 0; i < partsLength; i++) {\n parts.push(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.padRight(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.slice(hexValue, i * 32, (i + 1) * 32)));\n }\n return {\n dynamic: true,\n encoded: _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.padRight(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.fromNumber(_Hex_js__WEBPACK_IMPORTED_MODULE_2__.size(hexValue), { size: 32 })), ...parts),\n };\n}\n/** @internal */\nfunction encodeTuple(value, options) {\n const { checksumAddress, parameter } = options;\n let dynamic = false;\n const preparedParameters = [];\n for (let i = 0; i < parameter.components.length; i++) {\n const param_ = parameter.components[i];\n const index = Array.isArray(value) ? i : param_.name;\n const preparedParam = prepareParameter({\n checksumAddress,\n parameter: param_,\n value: value[index],\n });\n preparedParameters.push(preparedParam);\n if (preparedParam.dynamic)\n dynamic = true;\n }\n return {\n dynamic,\n encoded: dynamic\n ? encode(preparedParameters)\n : _Hex_js__WEBPACK_IMPORTED_MODULE_2__.concat(...preparedParameters.map(({ encoded }) => encoded)),\n };\n}\n/** @internal */\nfunction getArrayComponents(type) {\n const matches = type.match(/^(.*)\\[(\\d+)?\\]$/);\n return matches\n ? // Return `null` if the array is dynamic.\n [matches[2] ? Number(matches[2]) : null, matches[1]]\n : undefined;\n}\n/** @internal */\nfunction hasDynamicChild(param) {\n const { type } = param;\n if (type === 'string')\n return true;\n if (type === 'bytes')\n return true;\n if (type.endsWith('[]'))\n return true;\n if (type === 'tuple')\n return param.components?.some(hasDynamicChild);\n const arrayComponents = getArrayComponents(param.type);\n if (arrayComponents &&\n hasDynamicChild({\n ...param,\n type: arrayComponents[1],\n }))\n return true;\n return false;\n}\n//# sourceMappingURL=abiParameters.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvYWJpUGFyYW1ldGVycy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFxRDtBQUNaO0FBQ0o7QUFDRTtBQUNOO0FBQ2E7QUFDOUM7QUFDTztBQUNQLFlBQVksa0NBQWtDO0FBQzlDO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyxnQkFBZ0IsSUFBSSx5Q0FBeUM7QUFDbEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLHVDQUF1QywyQkFBMkI7QUFDbEU7QUFDQTtBQUNBO0FBQ0EsNENBQTRDLGdCQUFnQjtBQUM1RDtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsZ0JBQWdCO0FBQ3RELGNBQWMsK0RBQThCO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ08sMkNBQTJDO0FBQ2xELFlBQVksbUJBQW1CO0FBQy9CO0FBQ0EseUNBQXlDLGlEQUFnQjtBQUN6RCxpQkFBaUIsOENBQWEsQ0FBQyw0Q0FBVztBQUMxQztBQUNBO0FBQ087QUFDUCxZQUFZLDBDQUEwQztBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QiwrQ0FBYztBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLCtDQUFjO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLFlBQVk7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QiwrQ0FBYztBQUNyQztBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsWUFBWTtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLFlBQVk7QUFDaEM7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSxnREFBZSx5QkFBeUIsVUFBVTtBQUM5RDtBQUNBO0FBQ08sc0NBQXNDLGdCQUFnQjtBQUM3RDtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsK0NBQWM7QUFDckM7QUFDQTtBQUNBLHVCQUF1QiwrQ0FBYztBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsOENBQWE7QUFDN0I7QUFDQSxrQkFBa0IsOENBQWE7QUFDL0I7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYywrQ0FBYyxVQUFVLFFBQVE7QUFDOUMsY0FBYywrQ0FBYyxVQUFVLFFBQVE7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksa0NBQWtDO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0ZBQXNGLE1BQU07QUFDNUY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QiwrQ0FBYztBQUNyQztBQUNBO0FBQ0Esd0JBQXdCLDZCQUE2QjtBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiw2QkFBNkI7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sZ0NBQWdDLGdCQUFnQjtBQUN2RDtBQUNBLG1CQUFtQiwrQ0FBYztBQUNqQztBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsK0NBQWM7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLCtDQUFjLENBQUMsK0NBQWM7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLDZCQUE2QixzQ0FBc0M7QUFDMUU7QUFDQSxvQkFBb0IsdUJBQXVCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ08sNEJBQTRCLHdEQUF3RDtBQUMzRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsc0RBQVk7QUFDL0M7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSxvQ0FBb0Msc0JBQXNCO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYywrREFBOEI7QUFDNUM7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLG9CQUFvQiwrQkFBK0I7QUFDbkQsZ0JBQWdCLG1CQUFtQjtBQUNuQztBQUNBO0FBQ0E7QUFDQSwwQkFBMEIseUNBQVE7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiwrQkFBK0I7QUFDbkQsZ0JBQWdCLG1CQUFtQjtBQUNuQztBQUNBLGtDQUFrQywrQ0FBYyw2QkFBNkIsVUFBVTtBQUN2RjtBQUNBLDJCQUEyQix5Q0FBUTtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLDJDQUFVO0FBQ3JCO0FBQ0E7QUFDTztBQUNQLFlBQVksbUJBQW1CO0FBQy9CLElBQUksK0NBQWMsVUFBVSxrQkFBa0I7QUFDOUM7QUFDQTtBQUNBLGlCQUFpQiw0Q0FBVztBQUM1QjtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVkscUNBQXFDO0FBQ2pEO0FBQ0E7QUFDQSxrQkFBa0IsZ0VBQStCO0FBQ2pEO0FBQ0Esa0JBQWtCLHVFQUFzQztBQUN4RDtBQUNBO0FBQ0EscUJBQXFCLGVBQWUsR0FBRyxPQUFPO0FBQzlDLFNBQVM7QUFDVDtBQUNBO0FBQ0Esb0JBQW9CLGtCQUFrQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQiwrQ0FBYyw4QkFBOEIsVUFBVTtBQUNqRjtBQUNBO0FBQ0EseURBQXlELDJDQUFVO0FBQ25FO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsMkNBQVUsOEJBQThCLFNBQVM7QUFDbEU7QUFDQTtBQUNBO0FBQ08sOEJBQThCLE1BQU07QUFDM0M7QUFDQSxzQkFBc0IseUNBQVE7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQiw2Q0FBWTtBQUNqQztBQUNBO0FBQ0EscUJBQXFCLDJDQUFVLENBQUMsNENBQVcsQ0FBQywrQ0FBYyxjQUFjLFVBQVU7QUFDbEY7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLHFFQUFvQztBQUN0RDtBQUNBO0FBQ0EsU0FBUztBQUNULGFBQWEseUJBQXlCLDZDQUFZO0FBQ2xEO0FBQ0E7QUFDTztBQUNQO0FBQ0Esa0JBQWtCLGlEQUFnQiw0QkFBNEIsTUFBTSxXQUFXLGFBQWE7QUFDNUYsYUFBYSx5QkFBeUIsNENBQVcsQ0FBQyxnREFBZTtBQUNqRTtBQUNBO0FBQ08sK0JBQStCLGNBQWM7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsMkRBQTBCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLCtDQUFjO0FBQy9CO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ087QUFDUCxxQkFBcUIsK0NBQWM7QUFDbkMsa0NBQWtDLHlDQUFRO0FBQzFDO0FBQ0Esb0JBQW9CLGlCQUFpQjtBQUNyQyxtQkFBbUIsNkNBQVksQ0FBQywwQ0FBUztBQUN6QztBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsMkNBQVUsQ0FBQyw2Q0FBWSxDQUFDLCtDQUFjLENBQUMseUNBQVEsY0FBYyxVQUFVO0FBQ3hGO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsWUFBWSw2QkFBNkI7QUFDekM7QUFDQTtBQUNBLG9CQUFvQixpQ0FBaUM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLDJDQUFVLDhCQUE4QixTQUFTO0FBQy9EO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvYWJpUGFyYW1ldGVycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBBYmlQYXJhbWV0ZXJzIGZyb20gJy4uL0FiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0ICogYXMgQWRkcmVzcyBmcm9tICcuLi9BZGRyZXNzLmpzJztcbmltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4uL0J5dGVzLmpzJztcbmltcG9ydCAqIGFzIEVycm9ycyBmcm9tICcuLi9FcnJvcnMuanMnO1xuaW1wb3J0ICogYXMgSGV4IGZyb20gJy4uL0hleC5qcyc7XG5pbXBvcnQgeyBpbnRlZ2VyUmVnZXggfSBmcm9tICcuLi9Tb2xpZGl0eS5qcyc7XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlUGFyYW1ldGVyKGN1cnNvciwgcGFyYW0sIG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGNoZWNrc3VtQWRkcmVzcywgc3RhdGljUG9zaXRpb24gfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYXJyYXlDb21wb25lbnRzID0gZ2V0QXJyYXlDb21wb25lbnRzKHBhcmFtLnR5cGUpO1xuICAgIGlmIChhcnJheUNvbXBvbmVudHMpIHtcbiAgICAgICAgY29uc3QgW2xlbmd0aCwgdHlwZV0gPSBhcnJheUNvbXBvbmVudHM7XG4gICAgICAgIHJldHVybiBkZWNvZGVBcnJheShjdXJzb3IsIHsgLi4ucGFyYW0sIHR5cGUgfSwgeyBjaGVja3N1bUFkZHJlc3MsIGxlbmd0aCwgc3RhdGljUG9zaXRpb24gfSk7XG4gICAgfVxuICAgIGlmIChwYXJhbS50eXBlID09PSAndHVwbGUnKVxuICAgICAgICByZXR1cm4gZGVjb2RlVHVwbGUoY3Vyc29yLCBwYXJhbSwge1xuICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgc3RhdGljUG9zaXRpb24sXG4gICAgICAgIH0pO1xuICAgIGlmIChwYXJhbS50eXBlID09PSAnYWRkcmVzcycpXG4gICAgICAgIHJldHVybiBkZWNvZGVBZGRyZXNzKGN1cnNvciwgeyBjaGVja3N1bTogY2hlY2tzdW1BZGRyZXNzIH0pO1xuICAgIGlmIChwYXJhbS50eXBlID09PSAnYm9vbCcpXG4gICAgICAgIHJldHVybiBkZWNvZGVCb29sKGN1cnNvcik7XG4gICAgaWYgKHBhcmFtLnR5cGUuc3RhcnRzV2l0aCgnYnl0ZXMnKSlcbiAgICAgICAgcmV0dXJuIGRlY29kZUJ5dGVzKGN1cnNvciwgcGFyYW0sIHsgc3RhdGljUG9zaXRpb24gfSk7XG4gICAgaWYgKHBhcmFtLnR5cGUuc3RhcnRzV2l0aCgndWludCcpIHx8IHBhcmFtLnR5cGUuc3RhcnRzV2l0aCgnaW50JykpXG4gICAgICAgIHJldHVybiBkZWNvZGVOdW1iZXIoY3Vyc29yLCBwYXJhbSk7XG4gICAgaWYgKHBhcmFtLnR5cGUgPT09ICdzdHJpbmcnKVxuICAgICAgICByZXR1cm4gZGVjb2RlU3RyaW5nKGN1cnNvciwgeyBzdGF0aWNQb3NpdGlvbiB9KTtcbiAgICB0aHJvdyBuZXcgQWJpUGFyYW1ldGVycy5JbnZhbGlkVHlwZUVycm9yKHBhcmFtLnR5cGUpO1xufVxuY29uc3Qgc2l6ZU9mTGVuZ3RoID0gMzI7XG5jb25zdCBzaXplT2ZPZmZzZXQgPSAzMjtcbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVBZGRyZXNzKGN1cnNvciwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBjaGVja3N1bSA9IGZhbHNlIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHZhbHVlID0gY3Vyc29yLnJlYWRCeXRlcygzMik7XG4gICAgY29uc3Qgd3JhcCA9IChhZGRyZXNzKSA9PiBjaGVja3N1bSA/IEFkZHJlc3MuY2hlY2tzdW0oYWRkcmVzcykgOiBhZGRyZXNzO1xuICAgIHJldHVybiBbd3JhcChIZXguZnJvbUJ5dGVzKEJ5dGVzLnNsaWNlKHZhbHVlLCAtMjApKSksIDMyXTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVBcnJheShjdXJzb3IsIHBhcmFtLCBvcHRpb25zKSB7XG4gICAgY29uc3QgeyBjaGVja3N1bUFkZHJlc3MsIGxlbmd0aCwgc3RhdGljUG9zaXRpb24gfSA9IG9wdGlvbnM7XG4gICAgLy8gSWYgdGhlIGxlbmd0aCBvZiB0aGUgYXJyYXkgaXMgbm90IGtub3duIGluIGFkdmFuY2UgKGR5bmFtaWMgYXJyYXkpLFxuICAgIC8vIHRoaXMgbWVhbnMgd2Ugd2lsbCBuZWVkIHRvIHdvbmRlciBvZmYgdG8gdGhlIHBvaW50ZXIgYW5kIGRlY29kZS5cbiAgICBpZiAoIWxlbmd0aCkge1xuICAgICAgICAvLyBEZWFsaW5nIHdpdGggYSBkeW5hbWljIHR5cGUsIHNvIGdldCB0aGUgb2Zmc2V0IG9mIHRoZSBhcnJheSBkYXRhLlxuICAgICAgICBjb25zdCBvZmZzZXQgPSBCeXRlcy50b051bWJlcihjdXJzb3IucmVhZEJ5dGVzKHNpemVPZk9mZnNldCkpO1xuICAgICAgICAvLyBTdGFydCBpcyB0aGUgc3RhdGljIHBvc2l0aW9uIG9mIGN1cnJlbnQgc2xvdCArIG9mZnNldC5cbiAgICAgICAgY29uc3Qgc3RhcnQgPSBzdGF0aWNQb3NpdGlvbiArIG9mZnNldDtcbiAgICAgICAgY29uc3Qgc3RhcnRPZkRhdGEgPSBzdGFydCArIHNpemVPZkxlbmd0aDtcbiAgICAgICAgLy8gR2V0IHRoZSBsZW5ndGggb2YgdGhlIGFycmF5IGZyb20gdGhlIG9mZnNldC5cbiAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXJ0KTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gQnl0ZXMudG9OdW1iZXIoY3Vyc29yLnJlYWRCeXRlcyhzaXplT2ZMZW5ndGgpKTtcbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGFycmF5IGhhcyBhbnkgZHluYW1pYyBjaGlsZHJlbi5cbiAgICAgICAgY29uc3QgZHluYW1pY0NoaWxkID0gaGFzRHluYW1pY0NoaWxkKHBhcmFtKTtcbiAgICAgICAgbGV0IGNvbnN1bWVkID0gMDtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgLy8gSWYgYW55IG9mIHRoZSBjaGlsZHJlbiBpcyBkeW5hbWljLCB0aGVuIGFsbCBlbGVtZW50cyB3aWxsIGJlIG9mZnNldCBwb2ludGVyLCB0aHVzIHNpemUgb2Ygb25lIHNsb3QgKDMyIGJ5dGVzKS5cbiAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgZWxlbWVudHMgd2lsbCBiZSB0aGUgc2l6ZSBvZiB0aGVpciBlbmNvZGluZyAoY29uc3VtZWQgYnl0ZXMpLlxuICAgICAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXJ0T2ZEYXRhICsgKGR5bmFtaWNDaGlsZCA/IGkgKiAzMiA6IGNvbnN1bWVkKSk7XG4gICAgICAgICAgICBjb25zdCBbZGF0YSwgY29uc3VtZWRfXSA9IGRlY29kZVBhcmFtZXRlcihjdXJzb3IsIHBhcmFtLCB7XG4gICAgICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgICAgIHN0YXRpY1Bvc2l0aW9uOiBzdGFydE9mRGF0YSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3VtZWQgKz0gY29uc3VtZWRfO1xuICAgICAgICAgICAgdmFsdWUucHVzaChkYXRhKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBBcyB3ZSBoYXZlIGdvbmUgd29uZGVyaW5nLCByZXN0b3JlIHRvIHRoZSBvcmlnaW5hbCBwb3NpdGlvbiArIG5leHQgc2xvdC5cbiAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXRpY1Bvc2l0aW9uICsgMzIpO1xuICAgICAgICByZXR1cm4gW3ZhbHVlLCAzMl07XG4gICAgfVxuICAgIC8vIElmIHRoZSBsZW5ndGggb2YgdGhlIGFycmF5IGlzIGtub3duIGluIGFkdmFuY2UsXG4gICAgLy8gYW5kIHRoZSBsZW5ndGggb2YgYW4gZWxlbWVudCBkZWVwbHkgbmVzdGVkIGluIHRoZSBhcnJheSBpcyBub3Qga25vd24sXG4gICAgLy8gd2UgbmVlZCB0byBkZWNvZGUgdGhlIG9mZnNldCBvZiB0aGUgYXJyYXkgZGF0YS5cbiAgICBpZiAoaGFzRHluYW1pY0NoaWxkKHBhcmFtKSkge1xuICAgICAgICAvLyBEZWFsaW5nIHdpdGggZHluYW1pYyB0eXBlcywgc28gZ2V0IHRoZSBvZmZzZXQgb2YgdGhlIGFycmF5IGRhdGEuXG4gICAgICAgIGNvbnN0IG9mZnNldCA9IEJ5dGVzLnRvTnVtYmVyKGN1cnNvci5yZWFkQnl0ZXMoc2l6ZU9mT2Zmc2V0KSk7XG4gICAgICAgIC8vIFN0YXJ0IGlzIHRoZSBzdGF0aWMgcG9zaXRpb24gb2YgY3VycmVudCBzbG90ICsgb2Zmc2V0LlxuICAgICAgICBjb25zdCBzdGFydCA9IHN0YXRpY1Bvc2l0aW9uICsgb2Zmc2V0O1xuICAgICAgICBjb25zdCB2YWx1ZSA9IFtdO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAvLyBNb3ZlIGN1cnNvciBhbG9uZyB0byB0aGUgbmV4dCBzbG90IChuZXh0IG9mZnNldCBwb2ludGVyKS5cbiAgICAgICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGFydCArIGkgKiAzMik7XG4gICAgICAgICAgICBjb25zdCBbZGF0YV0gPSBkZWNvZGVQYXJhbWV0ZXIoY3Vyc29yLCBwYXJhbSwge1xuICAgICAgICAgICAgICAgIGNoZWNrc3VtQWRkcmVzcyxcbiAgICAgICAgICAgICAgICBzdGF0aWNQb3NpdGlvbjogc3RhcnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHZhbHVlLnB1c2goZGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQXMgd2UgaGF2ZSBnb25lIHdvbmRlcmluZywgcmVzdG9yZSB0byB0aGUgb3JpZ2luYWwgcG9zaXRpb24gKyBuZXh0IHNsb3QuXG4gICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGF0aWNQb3NpdGlvbiArIDMyKTtcbiAgICAgICAgcmV0dXJuIFt2YWx1ZSwgMzJdO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgbGVuZ3RoIG9mIHRoZSBhcnJheSBpcyBrbm93biBpbiBhZHZhbmNlIGFuZCB0aGUgYXJyYXkgaXMgZGVlcGx5IHN0YXRpYyxcbiAgICAvLyB0aGVuIHdlIGNhbiBqdXN0IGRlY29kZSBlYWNoIGVsZW1lbnQgaW4gc2VxdWVuY2UuXG4gICAgbGV0IGNvbnN1bWVkID0gMDtcbiAgICBjb25zdCB2YWx1ZSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuZ3RoOyArK2kpIHtcbiAgICAgICAgY29uc3QgW2RhdGEsIGNvbnN1bWVkX10gPSBkZWNvZGVQYXJhbWV0ZXIoY3Vyc29yLCBwYXJhbSwge1xuICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgc3RhdGljUG9zaXRpb246IHN0YXRpY1Bvc2l0aW9uICsgY29uc3VtZWQsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdW1lZCArPSBjb25zdW1lZF87XG4gICAgICAgIHZhbHVlLnB1c2goZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBbdmFsdWUsIGNvbnN1bWVkXTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVCb29sKGN1cnNvcikge1xuICAgIHJldHVybiBbQnl0ZXMudG9Cb29sZWFuKGN1cnNvci5yZWFkQnl0ZXMoMzIpLCB7IHNpemU6IDMyIH0pLCAzMl07XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlQnl0ZXMoY3Vyc29yLCBwYXJhbSwgeyBzdGF0aWNQb3NpdGlvbiB9KSB7XG4gICAgY29uc3QgW18sIHNpemVdID0gcGFyYW0udHlwZS5zcGxpdCgnYnl0ZXMnKTtcbiAgICBpZiAoIXNpemUpIHtcbiAgICAgICAgLy8gRGVhbGluZyB3aXRoIGR5bmFtaWMgdHlwZXMsIHNvIGdldCB0aGUgb2Zmc2V0IG9mIHRoZSBieXRlcyBkYXRhLlxuICAgICAgICBjb25zdCBvZmZzZXQgPSBCeXRlcy50b051bWJlcihjdXJzb3IucmVhZEJ5dGVzKDMyKSk7XG4gICAgICAgIC8vIFNldCBwb3NpdGlvbiBvZiB0aGUgY3Vyc29yIHRvIHN0YXJ0IG9mIGJ5dGVzIGRhdGEuXG4gICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGF0aWNQb3NpdGlvbiArIG9mZnNldCk7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IEJ5dGVzLnRvTnVtYmVyKGN1cnNvci5yZWFkQnl0ZXMoMzIpKTtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgbm8gbGVuZ3RoLCB3ZSBoYXZlIHplcm8gZGF0YS5cbiAgICAgICAgaWYgKGxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgLy8gQXMgd2UgaGF2ZSBnb25lIHdvbmRlcmluZywgcmVzdG9yZSB0byB0aGUgb3JpZ2luYWwgcG9zaXRpb24gKyBuZXh0IHNsb3QuXG4gICAgICAgICAgICBjdXJzb3Iuc2V0UG9zaXRpb24oc3RhdGljUG9zaXRpb24gKyAzMik7XG4gICAgICAgICAgICByZXR1cm4gWycweCcsIDMyXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkYXRhID0gY3Vyc29yLnJlYWRCeXRlcyhsZW5ndGgpO1xuICAgICAgICAvLyBBcyB3ZSBoYXZlIGdvbmUgd29uZGVyaW5nLCByZXN0b3JlIHRvIHRoZSBvcmlnaW5hbCBwb3NpdGlvbiArIG5leHQgc2xvdC5cbiAgICAgICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXRpY1Bvc2l0aW9uICsgMzIpO1xuICAgICAgICByZXR1cm4gW0hleC5mcm9tQnl0ZXMoZGF0YSksIDMyXTtcbiAgICB9XG4gICAgY29uc3QgdmFsdWUgPSBIZXguZnJvbUJ5dGVzKGN1cnNvci5yZWFkQnl0ZXMoTnVtYmVyLnBhcnNlSW50KHNpemUsIDEwKSwgMzIpKTtcbiAgICByZXR1cm4gW3ZhbHVlLCAzMl07XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlTnVtYmVyKGN1cnNvciwgcGFyYW0pIHtcbiAgICBjb25zdCBzaWduZWQgPSBwYXJhbS50eXBlLnN0YXJ0c1dpdGgoJ2ludCcpO1xuICAgIGNvbnN0IHNpemUgPSBOdW1iZXIucGFyc2VJbnQocGFyYW0udHlwZS5zcGxpdCgnaW50JylbMV0gfHwgJzI1NicsIDEwKTtcbiAgICBjb25zdCB2YWx1ZSA9IGN1cnNvci5yZWFkQnl0ZXMoMzIpO1xuICAgIHJldHVybiBbXG4gICAgICAgIHNpemUgPiA0OFxuICAgICAgICAgICAgPyBCeXRlcy50b0JpZ0ludCh2YWx1ZSwgeyBzaWduZWQgfSlcbiAgICAgICAgICAgIDogQnl0ZXMudG9OdW1iZXIodmFsdWUsIHsgc2lnbmVkIH0pLFxuICAgICAgICAzMixcbiAgICBdO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZVR1cGxlKGN1cnNvciwgcGFyYW0sIG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGNoZWNrc3VtQWRkcmVzcywgc3RhdGljUG9zaXRpb24gfSA9IG9wdGlvbnM7XG4gICAgLy8gVHVwbGVzIGNhbiBoYXZlIHVubmFtZWQgY29tcG9uZW50cyAoaS5lLiB0aGV5IGFyZSBhcnJheXMpLCBzbyB3ZSBtdXN0XG4gICAgLy8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHR1cGxlIGlzIG5hbWVkIG9yIHVubmFtZWQuIEluIHRoZSBjYXNlIG9mIGEgbmFtZWRcbiAgICAvLyB0dXBsZSwgdGhlIHZhbHVlIHdpbGwgYmUgYW4gb2JqZWN0IHdoZXJlIGVhY2ggcHJvcGVydHkgaXMgdGhlIG5hbWUgb2YgdGhlXG4gICAgLy8gY29tcG9uZW50LiBJbiB0aGUgY2FzZSBvZiBhbiB1bm5hbWVkIHR1cGxlLCB0aGUgdmFsdWUgd2lsbCBiZSBhbiBhcnJheS5cbiAgICBjb25zdCBoYXNVbm5hbWVkQ2hpbGQgPSBwYXJhbS5jb21wb25lbnRzLmxlbmd0aCA9PT0gMCB8fCBwYXJhbS5jb21wb25lbnRzLnNvbWUoKHsgbmFtZSB9KSA9PiAhbmFtZSk7XG4gICAgLy8gSW5pdGlhbGl6ZSB0aGUgdmFsdWUgdG8gYW4gb2JqZWN0IG9yIGFuIGFycmF5LCBkZXBlbmRpbmcgb24gd2hldGhlciB0aGVcbiAgICAvLyB0dXBsZSBpcyBuYW1lZCBvciB1bm5hbWVkLlxuICAgIGNvbnN0IHZhbHVlID0gaGFzVW5uYW1lZENoaWxkID8gW10gOiB7fTtcbiAgICBsZXQgY29uc3VtZWQgPSAwO1xuICAgIC8vIElmIHRoZSB0dXBsZSBoYXMgYSBkeW5hbWljIGNoaWxkLCB3ZSBtdXN0IGZpcnN0IGRlY29kZSB0aGUgb2Zmc2V0IHRvIHRoZVxuICAgIC8vIHR1cGxlIGRhdGEuXG4gICAgaWYgKGhhc0R5bmFtaWNDaGlsZChwYXJhbSkpIHtcbiAgICAgICAgLy8gRGVhbGluZyB3aXRoIGR5bmFtaWMgdHlwZXMsIHNvIGdldCB0aGUgb2Zmc2V0IG9mIHRoZSB0dXBsZSBkYXRhLlxuICAgICAgICBjb25zdCBvZmZzZXQgPSBCeXRlcy50b051bWJlcihjdXJzb3IucmVhZEJ5dGVzKHNpemVPZk9mZnNldCkpO1xuICAgICAgICAvLyBTdGFydCBpcyB0aGUgc3RhdGljIHBvc2l0aW9uIG9mIHJlZmVyZW5jaW5nIHNsb3QgKyBvZmZzZXQuXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gc3RhdGljUG9zaXRpb24gKyBvZmZzZXQ7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFyYW0uY29tcG9uZW50cy5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gcGFyYW0uY29tcG9uZW50c1tpXTtcbiAgICAgICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGFydCArIGNvbnN1bWVkKTtcbiAgICAgICAgICAgIGNvbnN0IFtkYXRhLCBjb25zdW1lZF9dID0gZGVjb2RlUGFyYW1ldGVyKGN1cnNvciwgY29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgICAgIHN0YXRpY1Bvc2l0aW9uOiBzdGFydCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3VtZWQgKz0gY29uc3VtZWRfO1xuICAgICAgICAgICAgdmFsdWVbaGFzVW5uYW1lZENoaWxkID8gaSA6IGNvbXBvbmVudD8ubmFtZV0gPSBkYXRhO1xuICAgICAgICB9XG4gICAgICAgIC8vIEFzIHdlIGhhdmUgZ29uZSB3b25kZXJpbmcsIHJlc3RvcmUgdG8gdGhlIG9yaWdpbmFsIHBvc2l0aW9uICsgbmV4dCBzbG90LlxuICAgICAgICBjdXJzb3Iuc2V0UG9zaXRpb24oc3RhdGljUG9zaXRpb24gKyAzMik7XG4gICAgICAgIHJldHVybiBbdmFsdWUsIDMyXTtcbiAgICB9XG4gICAgLy8gSWYgdGhlIHR1cGxlIGhhcyBzdGF0aWMgY2hpbGRyZW4sIHdlIGNhbiBqdXN0IGRlY29kZSBlYWNoIGNvbXBvbmVudFxuICAgIC8vIGluIHNlcXVlbmNlLlxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGFyYW0uY29tcG9uZW50cy5sZW5ndGg7ICsraSkge1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSBwYXJhbS5jb21wb25lbnRzW2ldO1xuICAgICAgICBjb25zdCBbZGF0YSwgY29uc3VtZWRfXSA9IGRlY29kZVBhcmFtZXRlcihjdXJzb3IsIGNvbXBvbmVudCwge1xuICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgc3RhdGljUG9zaXRpb24sXG4gICAgICAgIH0pO1xuICAgICAgICB2YWx1ZVtoYXNVbm5hbWVkQ2hpbGQgPyBpIDogY29tcG9uZW50Py5uYW1lXSA9IGRhdGE7XG4gICAgICAgIGNvbnN1bWVkICs9IGNvbnN1bWVkXztcbiAgICB9XG4gICAgcmV0dXJuIFt2YWx1ZSwgY29uc3VtZWRdO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZVN0cmluZyhjdXJzb3IsIHsgc3RhdGljUG9zaXRpb24gfSkge1xuICAgIC8vIEdldCBvZmZzZXQgdG8gc3RhcnQgb2Ygc3RyaW5nIGRhdGEuXG4gICAgY29uc3Qgb2Zmc2V0ID0gQnl0ZXMudG9OdW1iZXIoY3Vyc29yLnJlYWRCeXRlcygzMikpO1xuICAgIC8vIFN0YXJ0IGlzIHRoZSBzdGF0aWMgcG9zaXRpb24gb2YgY3VycmVudCBzbG90ICsgb2Zmc2V0LlxuICAgIGNvbnN0IHN0YXJ0ID0gc3RhdGljUG9zaXRpb24gKyBvZmZzZXQ7XG4gICAgY3Vyc29yLnNldFBvc2l0aW9uKHN0YXJ0KTtcbiAgICBjb25zdCBsZW5ndGggPSBCeXRlcy50b051bWJlcihjdXJzb3IucmVhZEJ5dGVzKDMyKSk7XG4gICAgLy8gSWYgdGhlcmUgaXMgbm8gbGVuZ3RoLCB3ZSBoYXZlIHplcm8gZGF0YSAoZW1wdHkgc3RyaW5nKS5cbiAgICBpZiAobGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGN1cnNvci5zZXRQb3NpdGlvbihzdGF0aWNQb3NpdGlvbiArIDMyKTtcbiAgICAgICAgcmV0dXJuIFsnJywgMzJdO1xuICAgIH1cbiAgICBjb25zdCBkYXRhID0gY3Vyc29yLnJlYWRCeXRlcyhsZW5ndGgsIDMyKTtcbiAgICBjb25zdCB2YWx1ZSA9IEJ5dGVzLnRvU3RyaW5nKEJ5dGVzLnRyaW1MZWZ0KGRhdGEpKTtcbiAgICAvLyBBcyB3ZSBoYXZlIGdvbmUgd29uZGVyaW5nLCByZXN0b3JlIHRvIHRoZSBvcmlnaW5hbCBwb3NpdGlvbiArIG5leHQgc2xvdC5cbiAgICBjdXJzb3Iuc2V0UG9zaXRpb24oc3RhdGljUG9zaXRpb24gKyAzMik7XG4gICAgcmV0dXJuIFt2YWx1ZSwgMzJdO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByZXBhcmVQYXJhbWV0ZXJzKHsgY2hlY2tzdW1BZGRyZXNzLCBwYXJhbWV0ZXJzLCB2YWx1ZXMsIH0pIHtcbiAgICBjb25zdCBwcmVwYXJlZFBhcmFtZXRlcnMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcmFtZXRlcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgcHJlcGFyZWRQYXJhbWV0ZXJzLnB1c2gocHJlcGFyZVBhcmFtZXRlcih7XG4gICAgICAgICAgICBjaGVja3N1bUFkZHJlc3MsXG4gICAgICAgICAgICBwYXJhbWV0ZXI6IHBhcmFtZXRlcnNbaV0sXG4gICAgICAgICAgICB2YWx1ZTogdmFsdWVzW2ldLFxuICAgICAgICB9KSk7XG4gICAgfVxuICAgIHJldHVybiBwcmVwYXJlZFBhcmFtZXRlcnM7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZVBhcmFtZXRlcih7IGNoZWNrc3VtQWRkcmVzcyA9IGZhbHNlLCBwYXJhbWV0ZXI6IHBhcmFtZXRlcl8sIHZhbHVlLCB9KSB7XG4gICAgY29uc3QgcGFyYW1ldGVyID0gcGFyYW1ldGVyXztcbiAgICBjb25zdCBhcnJheUNvbXBvbmVudHMgPSBnZXRBcnJheUNvbXBvbmVudHMocGFyYW1ldGVyLnR5cGUpO1xuICAgIGlmIChhcnJheUNvbXBvbmVudHMpIHtcbiAgICAgICAgY29uc3QgW2xlbmd0aCwgdHlwZV0gPSBhcnJheUNvbXBvbmVudHM7XG4gICAgICAgIHJldHVybiBlbmNvZGVBcnJheSh2YWx1ZSwge1xuICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgbGVuZ3RoLFxuICAgICAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgICAgICAgLi4ucGFyYW1ldGVyLFxuICAgICAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHBhcmFtZXRlci50eXBlID09PSAndHVwbGUnKSB7XG4gICAgICAgIHJldHVybiBlbmNvZGVUdXBsZSh2YWx1ZSwge1xuICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgcGFyYW1ldGVyOiBwYXJhbWV0ZXIsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAocGFyYW1ldGVyLnR5cGUgPT09ICdhZGRyZXNzJykge1xuICAgICAgICByZXR1cm4gZW5jb2RlQWRkcmVzcyh2YWx1ZSwge1xuICAgICAgICAgICAgY2hlY2tzdW06IGNoZWNrc3VtQWRkcmVzcyxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChwYXJhbWV0ZXIudHlwZSA9PT0gJ2Jvb2wnKSB7XG4gICAgICAgIHJldHVybiBlbmNvZGVCb29sZWFuKHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHBhcmFtZXRlci50eXBlLnN0YXJ0c1dpdGgoJ3VpbnQnKSB8fCBwYXJhbWV0ZXIudHlwZS5zdGFydHNXaXRoKCdpbnQnKSkge1xuICAgICAgICBjb25zdCBzaWduZWQgPSBwYXJhbWV0ZXIudHlwZS5zdGFydHNXaXRoKCdpbnQnKTtcbiAgICAgICAgY29uc3QgWywgLCBzaXplID0gJzI1NiddID0gaW50ZWdlclJlZ2V4LmV4ZWMocGFyYW1ldGVyLnR5cGUpID8/IFtdO1xuICAgICAgICByZXR1cm4gZW5jb2RlTnVtYmVyKHZhbHVlLCB7XG4gICAgICAgICAgICBzaWduZWQsXG4gICAgICAgICAgICBzaXplOiBOdW1iZXIoc2l6ZSksXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAocGFyYW1ldGVyLnR5cGUuc3RhcnRzV2l0aCgnYnl0ZXMnKSkge1xuICAgICAgICByZXR1cm4gZW5jb2RlQnl0ZXModmFsdWUsIHsgdHlwZTogcGFyYW1ldGVyLnR5cGUgfSk7XG4gICAgfVxuICAgIGlmIChwYXJhbWV0ZXIudHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGVuY29kZVN0cmluZyh2YWx1ZSk7XG4gICAgfVxuICAgIHRocm93IG5ldyBBYmlQYXJhbWV0ZXJzLkludmFsaWRUeXBlRXJyb3IocGFyYW1ldGVyLnR5cGUpO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZShwcmVwYXJlZFBhcmFtZXRlcnMpIHtcbiAgICAvLyAxLiBDb21wdXRlIHRoZSBzaXplIG9mIHRoZSBzdGF0aWMgcGFydCBvZiB0aGUgcGFyYW1ldGVycy5cbiAgICBsZXQgc3RhdGljU2l6ZSA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwcmVwYXJlZFBhcmFtZXRlcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgeyBkeW5hbWljLCBlbmNvZGVkIH0gPSBwcmVwYXJlZFBhcmFtZXRlcnNbaV07XG4gICAgICAgIGlmIChkeW5hbWljKVxuICAgICAgICAgICAgc3RhdGljU2l6ZSArPSAzMjtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgc3RhdGljU2l6ZSArPSBIZXguc2l6ZShlbmNvZGVkKTtcbiAgICB9XG4gICAgLy8gMi4gU3BsaXQgdGhlIHBhcmFtZXRlcnMgaW50byBzdGF0aWMgYW5kIGR5bmFtaWMgcGFydHMuXG4gICAgY29uc3Qgc3RhdGljUGFyYW1ldGVycyA9IFtdO1xuICAgIGNvbnN0IGR5bmFtaWNQYXJhbWV0ZXJzID0gW107XG4gICAgbGV0IGR5bmFtaWNTaXplID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHByZXBhcmVkUGFyYW1ldGVycy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCB7IGR5bmFtaWMsIGVuY29kZWQgfSA9IHByZXBhcmVkUGFyYW1ldGVyc1tpXTtcbiAgICAgICAgaWYgKGR5bmFtaWMpIHtcbiAgICAgICAgICAgIHN0YXRpY1BhcmFtZXRlcnMucHVzaChIZXguZnJvbU51bWJlcihzdGF0aWNTaXplICsgZHluYW1pY1NpemUsIHsgc2l6ZTogMzIgfSkpO1xuICAgICAgICAgICAgZHluYW1pY1BhcmFtZXRlcnMucHVzaChlbmNvZGVkKTtcbiAgICAgICAgICAgIGR5bmFtaWNTaXplICs9IEhleC5zaXplKGVuY29kZWQpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgc3RhdGljUGFyYW1ldGVycy5wdXNoKGVuY29kZWQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIDMuIENvbmNhdGVuYXRlIHN0YXRpYyBhbmQgZHluYW1pYyBwYXJ0cy5cbiAgICByZXR1cm4gSGV4LmNvbmNhdCguLi5zdGF0aWNQYXJhbWV0ZXJzLCAuLi5keW5hbWljUGFyYW1ldGVycyk7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlQWRkcmVzcyh2YWx1ZSwgb3B0aW9ucykge1xuICAgIGNvbnN0IHsgY2hlY2tzdW0gPSBmYWxzZSB9ID0gb3B0aW9ucztcbiAgICBBZGRyZXNzLmFzc2VydCh2YWx1ZSwgeyBzdHJpY3Q6IGNoZWNrc3VtIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIGR5bmFtaWM6IGZhbHNlLFxuICAgICAgICBlbmNvZGVkOiBIZXgucGFkTGVmdCh2YWx1ZS50b0xvd2VyQ2FzZSgpKSxcbiAgICB9O1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZUFycmF5KHZhbHVlLCBvcHRpb25zKSB7XG4gICAgY29uc3QgeyBjaGVja3N1bUFkZHJlc3MsIGxlbmd0aCwgcGFyYW1ldGVyIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGR5bmFtaWMgPSBsZW5ndGggPT09IG51bGw7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSlcbiAgICAgICAgdGhyb3cgbmV3IEFiaVBhcmFtZXRlcnMuSW52YWxpZEFycmF5RXJyb3IodmFsdWUpO1xuICAgIGlmICghZHluYW1pYyAmJiB2YWx1ZS5sZW5ndGggIT09IGxlbmd0aClcbiAgICAgICAgdGhyb3cgbmV3IEFiaVBhcmFtZXRlcnMuQXJyYXlMZW5ndGhNaXNtYXRjaEVycm9yKHtcbiAgICAgICAgICAgIGV4cGVjdGVkTGVuZ3RoOiBsZW5ndGgsXG4gICAgICAgICAgICBnaXZlbkxlbmd0aDogdmFsdWUubGVuZ3RoLFxuICAgICAgICAgICAgdHlwZTogYCR7cGFyYW1ldGVyLnR5cGV9WyR7bGVuZ3RofV1gLFxuICAgICAgICB9KTtcbiAgICBsZXQgZHluYW1pY0NoaWxkID0gZmFsc2U7XG4gICAgY29uc3QgcHJlcGFyZWRQYXJhbWV0ZXJzID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBwcmVwYXJlZFBhcmFtID0gcHJlcGFyZVBhcmFtZXRlcih7XG4gICAgICAgICAgICBjaGVja3N1bUFkZHJlc3MsXG4gICAgICAgICAgICBwYXJhbWV0ZXIsXG4gICAgICAgICAgICB2YWx1ZTogdmFsdWVbaV0sXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAocHJlcGFyZWRQYXJhbS5keW5hbWljKVxuICAgICAgICAgICAgZHluYW1pY0NoaWxkID0gdHJ1ZTtcbiAgICAgICAgcHJlcGFyZWRQYXJhbWV0ZXJzLnB1c2gocHJlcGFyZWRQYXJhbSk7XG4gICAgfVxuICAgIGlmIChkeW5hbWljIHx8IGR5bmFtaWNDaGlsZCkge1xuICAgICAgICBjb25zdCBkYXRhID0gZW5jb2RlKHByZXBhcmVkUGFyYW1ldGVycyk7XG4gICAgICAgIGlmIChkeW5hbWljKSB7XG4gICAgICAgICAgICBjb25zdCBsZW5ndGggPSBIZXguZnJvbU51bWJlcihwcmVwYXJlZFBhcmFtZXRlcnMubGVuZ3RoLCB7IHNpemU6IDMyIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBkeW5hbWljOiB0cnVlLFxuICAgICAgICAgICAgICAgIGVuY29kZWQ6IHByZXBhcmVkUGFyYW1ldGVycy5sZW5ndGggPiAwID8gSGV4LmNvbmNhdChsZW5ndGgsIGRhdGEpIDogbGVuZ3RoLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZHluYW1pY0NoaWxkKVxuICAgICAgICAgICAgcmV0dXJuIHsgZHluYW1pYzogdHJ1ZSwgZW5jb2RlZDogZGF0YSB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICBkeW5hbWljOiBmYWxzZSxcbiAgICAgICAgZW5jb2RlZDogSGV4LmNvbmNhdCguLi5wcmVwYXJlZFBhcmFtZXRlcnMubWFwKCh7IGVuY29kZWQgfSkgPT4gZW5jb2RlZCkpLFxuICAgIH07XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlQnl0ZXModmFsdWUsIHsgdHlwZSB9KSB7XG4gICAgY29uc3QgWywgcGFyYW1ldGVyc2l6ZV0gPSB0eXBlLnNwbGl0KCdieXRlcycpO1xuICAgIGNvbnN0IGJ5dGVzU2l6ZSA9IEhleC5zaXplKHZhbHVlKTtcbiAgICBpZiAoIXBhcmFtZXRlcnNpemUpIHtcbiAgICAgICAgbGV0IHZhbHVlXyA9IHZhbHVlO1xuICAgICAgICAvLyBJZiB0aGUgc2l6ZSBpcyBub3QgZGl2aXNpYmxlIGJ5IDMyIGJ5dGVzLCBwYWQgdGhlIGVuZFxuICAgICAgICAvLyB3aXRoIGVtcHR5IGJ5dGVzIHRvIHRoZSBjZWlsaW5nIDMyIGJ5dGVzLlxuICAgICAgICBpZiAoYnl0ZXNTaXplICUgMzIgIT09IDApXG4gICAgICAgICAgICB2YWx1ZV8gPSBIZXgucGFkUmlnaHQodmFsdWVfLCBNYXRoLmNlaWwoKHZhbHVlLmxlbmd0aCAtIDIpIC8gMiAvIDMyKSAqIDMyKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGR5bmFtaWM6IHRydWUsXG4gICAgICAgICAgICBlbmNvZGVkOiBIZXguY29uY2F0KEhleC5wYWRMZWZ0KEhleC5mcm9tTnVtYmVyKGJ5dGVzU2l6ZSwgeyBzaXplOiAzMiB9KSksIHZhbHVlXyksXG4gICAgICAgIH07XG4gICAgfVxuICAgIGlmIChieXRlc1NpemUgIT09IE51bWJlci5wYXJzZUludChwYXJhbWV0ZXJzaXplLCAxMCkpXG4gICAgICAgIHRocm93IG5ldyBBYmlQYXJhbWV0ZXJzLkJ5dGVzU2l6ZU1pc21hdGNoRXJyb3Ioe1xuICAgICAgICAgICAgZXhwZWN0ZWRTaXplOiBOdW1iZXIucGFyc2VJbnQocGFyYW1ldGVyc2l6ZSwgMTApLFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgIH0pO1xuICAgIHJldHVybiB7IGR5bmFtaWM6IGZhbHNlLCBlbmNvZGVkOiBIZXgucGFkUmlnaHQodmFsdWUpIH07XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlQm9vbGVhbih2YWx1ZSkge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdib29sZWFuJylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9ycy5CYXNlRXJyb3IoYEludmFsaWQgYm9vbGVhbiB2YWx1ZTogXCIke3ZhbHVlfVwiICh0eXBlOiAke3R5cGVvZiB2YWx1ZX0pLiBFeHBlY3RlZDogXFxgdHJ1ZVxcYCBvciBcXGBmYWxzZVxcYC5gKTtcbiAgICByZXR1cm4geyBkeW5hbWljOiBmYWxzZSwgZW5jb2RlZDogSGV4LnBhZExlZnQoSGV4LmZyb21Cb29sZWFuKHZhbHVlKSkgfTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVOdW1iZXIodmFsdWUsIHsgc2lnbmVkLCBzaXplIH0pIHtcbiAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIGNvbnN0IG1heCA9IDJuICoqIChCaWdJbnQoc2l6ZSkgLSAoc2lnbmVkID8gMW4gOiAwbikpIC0gMW47XG4gICAgICAgIGNvbnN0IG1pbiA9IHNpZ25lZCA/IC1tYXggLSAxbiA6IDBuO1xuICAgICAgICBpZiAodmFsdWUgPiBtYXggfHwgdmFsdWUgPCBtaW4pXG4gICAgICAgICAgICB0aHJvdyBuZXcgSGV4LkludGVnZXJPdXRPZlJhbmdlRXJyb3Ioe1xuICAgICAgICAgICAgICAgIG1heDogbWF4LnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgbWluOiBtaW4udG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICBzaWduZWQsXG4gICAgICAgICAgICAgICAgc2l6ZTogc2l6ZSAvIDgsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlLnRvU3RyaW5nKCksXG4gICAgICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZHluYW1pYzogZmFsc2UsXG4gICAgICAgIGVuY29kZWQ6IEhleC5mcm9tTnVtYmVyKHZhbHVlLCB7XG4gICAgICAgICAgICBzaXplOiAzMixcbiAgICAgICAgICAgIHNpZ25lZCxcbiAgICAgICAgfSksXG4gICAgfTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVTdHJpbmcodmFsdWUpIHtcbiAgICBjb25zdCBoZXhWYWx1ZSA9IEhleC5mcm9tU3RyaW5nKHZhbHVlKTtcbiAgICBjb25zdCBwYXJ0c0xlbmd0aCA9IE1hdGguY2VpbChIZXguc2l6ZShoZXhWYWx1ZSkgLyAzMik7XG4gICAgY29uc3QgcGFydHMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcnRzTGVuZ3RoOyBpKyspIHtcbiAgICAgICAgcGFydHMucHVzaChIZXgucGFkUmlnaHQoSGV4LnNsaWNlKGhleFZhbHVlLCBpICogMzIsIChpICsgMSkgKiAzMikpKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZHluYW1pYzogdHJ1ZSxcbiAgICAgICAgZW5jb2RlZDogSGV4LmNvbmNhdChIZXgucGFkUmlnaHQoSGV4LmZyb21OdW1iZXIoSGV4LnNpemUoaGV4VmFsdWUpLCB7IHNpemU6IDMyIH0pKSwgLi4ucGFydHMpLFxuICAgIH07XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlVHVwbGUodmFsdWUsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGNoZWNrc3VtQWRkcmVzcywgcGFyYW1ldGVyIH0gPSBvcHRpb25zO1xuICAgIGxldCBkeW5hbWljID0gZmFsc2U7XG4gICAgY29uc3QgcHJlcGFyZWRQYXJhbWV0ZXJzID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJhbWV0ZXIuY29tcG9uZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBwYXJhbV8gPSBwYXJhbWV0ZXIuY29tcG9uZW50c1tpXTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IGkgOiBwYXJhbV8ubmFtZTtcbiAgICAgICAgY29uc3QgcHJlcGFyZWRQYXJhbSA9IHByZXBhcmVQYXJhbWV0ZXIoe1xuICAgICAgICAgICAgY2hlY2tzdW1BZGRyZXNzLFxuICAgICAgICAgICAgcGFyYW1ldGVyOiBwYXJhbV8sXG4gICAgICAgICAgICB2YWx1ZTogdmFsdWVbaW5kZXhdLFxuICAgICAgICB9KTtcbiAgICAgICAgcHJlcGFyZWRQYXJhbWV0ZXJzLnB1c2gocHJlcGFyZWRQYXJhbSk7XG4gICAgICAgIGlmIChwcmVwYXJlZFBhcmFtLmR5bmFtaWMpXG4gICAgICAgICAgICBkeW5hbWljID0gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZHluYW1pYyxcbiAgICAgICAgZW5jb2RlZDogZHluYW1pY1xuICAgICAgICAgICAgPyBlbmNvZGUocHJlcGFyZWRQYXJhbWV0ZXJzKVxuICAgICAgICAgICAgOiBIZXguY29uY2F0KC4uLnByZXBhcmVkUGFyYW1ldGVycy5tYXAoKHsgZW5jb2RlZCB9KSA9PiBlbmNvZGVkKSksXG4gICAgfTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBcnJheUNvbXBvbmVudHModHlwZSkge1xuICAgIGNvbnN0IG1hdGNoZXMgPSB0eXBlLm1hdGNoKC9eKC4qKVxcWyhcXGQrKT9cXF0kLyk7XG4gICAgcmV0dXJuIG1hdGNoZXNcbiAgICAgICAgPyAvLyBSZXR1cm4gYG51bGxgIGlmIHRoZSBhcnJheSBpcyBkeW5hbWljLlxuICAgICAgICAgICAgW21hdGNoZXNbMl0gPyBOdW1iZXIobWF0Y2hlc1syXSkgOiBudWxsLCBtYXRjaGVzWzFdXVxuICAgICAgICA6IHVuZGVmaW5lZDtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNEeW5hbWljQ2hpbGQocGFyYW0pIHtcbiAgICBjb25zdCB7IHR5cGUgfSA9IHBhcmFtO1xuICAgIGlmICh0eXBlID09PSAnc3RyaW5nJylcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgaWYgKHR5cGUgPT09ICdieXRlcycpXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIGlmICh0eXBlLmVuZHNXaXRoKCdbXScpKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAodHlwZSA9PT0gJ3R1cGxlJylcbiAgICAgICAgcmV0dXJuIHBhcmFtLmNvbXBvbmVudHM/LnNvbWUoaGFzRHluYW1pY0NoaWxkKTtcbiAgICBjb25zdCBhcnJheUNvbXBvbmVudHMgPSBnZXRBcnJheUNvbXBvbmVudHMocGFyYW0udHlwZSk7XG4gICAgaWYgKGFycmF5Q29tcG9uZW50cyAmJlxuICAgICAgICBoYXNEeW5hbWljQ2hpbGQoe1xuICAgICAgICAgICAgLi4ucGFyYW0sXG4gICAgICAgICAgICB0eXBlOiBhcnJheUNvbXBvbmVudHNbMV0sXG4gICAgICAgIH0pKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICByZXR1cm4gZmFsc2U7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hYmlQYXJhbWV0ZXJzLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/abiParameters.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/bytes.js": /*!***********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/bytes.js ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertEndOffset: () => (/* binding */ assertEndOffset),\n/* harmony export */ assertSize: () => (/* binding */ assertSize),\n/* harmony export */ assertStartOffset: () => (/* binding */ assertStartOffset),\n/* harmony export */ charCodeMap: () => (/* binding */ charCodeMap),\n/* harmony export */ charCodeToBase16: () => (/* binding */ charCodeToBase16),\n/* harmony export */ pad: () => (/* binding */ pad),\n/* harmony export */ trim: () => (/* binding */ trim)\n/* harmony export */ });\n/* harmony import */ var _Bytes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Bytes.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Bytes.js\");\n\n/** @internal */\nfunction assertSize(bytes, size_) {\n if (_Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes) > size_)\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SizeOverflowError({\n givenSize: _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(bytes),\n maxSize: size_,\n });\n}\n/** @internal */\nfunction assertStartOffset(value, start) {\n if (typeof start === 'number' && start > 0 && start > _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value) - 1)\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: start,\n position: 'start',\n size: _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n}\n/** @internal */\nfunction assertEndOffset(value, start, end) {\n if (typeof start === 'number' &&\n typeof end === 'number' &&\n _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value) !== end - start) {\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: end,\n position: 'end',\n size: _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n }\n}\n/** @internal */\nconst charCodeMap = {\n zero: 48,\n nine: 57,\n A: 65,\n F: 70,\n a: 97,\n f: 102,\n};\n/** @internal */\nfunction charCodeToBase16(char) {\n if (char >= charCodeMap.zero && char <= charCodeMap.nine)\n return char - charCodeMap.zero;\n if (char >= charCodeMap.A && char <= charCodeMap.F)\n return char - (charCodeMap.A - 10);\n if (char >= charCodeMap.a && char <= charCodeMap.f)\n return char - (charCodeMap.a - 10);\n return undefined;\n}\n/** @internal */\nfunction pad(bytes, options = {}) {\n const { dir, size = 32 } = options;\n if (size === 0)\n return bytes;\n if (bytes.length > size)\n throw new _Bytes_js__WEBPACK_IMPORTED_MODULE_0__.SizeExceedsPaddingSizeError({\n size: bytes.length,\n targetSize: size,\n type: 'Bytes',\n });\n const paddedBytes = new Uint8Array(size);\n for (let i = 0; i < size; i++) {\n const padEnd = dir === 'right';\n paddedBytes[padEnd ? i : size - i - 1] =\n bytes[padEnd ? i : bytes.length - i - 1];\n }\n return paddedBytes;\n}\n/** @internal */\nfunction trim(value, options = {}) {\n const { dir = 'left' } = options;\n let data = value;\n let sliceLength = 0;\n for (let i = 0; i < data.length - 1; i++) {\n if (data[dir === 'left' ? i : data.length - i - 1].toString() === '0')\n sliceLength++;\n else\n break;\n }\n data =\n dir === 'left'\n ? data.slice(sliceLength)\n : data.slice(0, data.length - sliceLength);\n return data;\n}\n//# sourceMappingURL=bytes.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvYnl0ZXMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBcUM7QUFDckM7QUFDTztBQUNQLFFBQVEsMkNBQVU7QUFDbEIsa0JBQWtCLHdEQUF1QjtBQUN6Qyx1QkFBdUIsMkNBQVU7QUFDakM7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNPO0FBQ1AsMERBQTBELDJDQUFVO0FBQ3BFLGtCQUFrQixrRUFBaUM7QUFDbkQ7QUFDQTtBQUNBLGtCQUFrQiwyQ0FBVTtBQUM1QixTQUFTO0FBQ1Q7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBLFFBQVEsMkNBQVU7QUFDbEIsa0JBQWtCLGtFQUFpQztBQUNuRDtBQUNBO0FBQ0Esa0JBQWtCLDJDQUFVO0FBQzVCLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLGdDQUFnQztBQUN2QyxZQUFZLGlCQUFpQjtBQUM3QjtBQUNBO0FBQ0E7QUFDQSxrQkFBa0Isa0VBQWlDO0FBQ25EO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLG9CQUFvQixVQUFVO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08saUNBQWlDO0FBQ3hDLFlBQVksZUFBZTtBQUMzQjtBQUNBO0FBQ0Esb0JBQW9CLHFCQUFxQjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvb3gvX2VzbS9jb3JlL2ludGVybmFsL2J5dGVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEJ5dGVzIGZyb20gJy4uL0J5dGVzLmpzJztcbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRTaXplKGJ5dGVzLCBzaXplXykge1xuICAgIGlmIChCeXRlcy5zaXplKGJ5dGVzKSA+IHNpemVfKVxuICAgICAgICB0aHJvdyBuZXcgQnl0ZXMuU2l6ZU92ZXJmbG93RXJyb3Ioe1xuICAgICAgICAgICAgZ2l2ZW5TaXplOiBCeXRlcy5zaXplKGJ5dGVzKSxcbiAgICAgICAgICAgIG1heFNpemU6IHNpemVfLFxuICAgICAgICB9KTtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRTdGFydE9mZnNldCh2YWx1ZSwgc3RhcnQpIHtcbiAgICBpZiAodHlwZW9mIHN0YXJ0ID09PSAnbnVtYmVyJyAmJiBzdGFydCA+IDAgJiYgc3RhcnQgPiBCeXRlcy5zaXplKHZhbHVlKSAtIDEpXG4gICAgICAgIHRocm93IG5ldyBCeXRlcy5TbGljZU9mZnNldE91dE9mQm91bmRzRXJyb3Ioe1xuICAgICAgICAgICAgb2Zmc2V0OiBzdGFydCxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnc3RhcnQnLFxuICAgICAgICAgICAgc2l6ZTogQnl0ZXMuc2l6ZSh2YWx1ZSksXG4gICAgICAgIH0pO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydEVuZE9mZnNldCh2YWx1ZSwgc3RhcnQsIGVuZCkge1xuICAgIGlmICh0eXBlb2Ygc3RhcnQgPT09ICdudW1iZXInICYmXG4gICAgICAgIHR5cGVvZiBlbmQgPT09ICdudW1iZXInICYmXG4gICAgICAgIEJ5dGVzLnNpemUodmFsdWUpICE9PSBlbmQgLSBzdGFydCkge1xuICAgICAgICB0aHJvdyBuZXcgQnl0ZXMuU2xpY2VPZmZzZXRPdXRPZkJvdW5kc0Vycm9yKHtcbiAgICAgICAgICAgIG9mZnNldDogZW5kLFxuICAgICAgICAgICAgcG9zaXRpb246ICdlbmQnLFxuICAgICAgICAgICAgc2l6ZTogQnl0ZXMuc2l6ZSh2YWx1ZSksXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjb25zdCBjaGFyQ29kZU1hcCA9IHtcbiAgICB6ZXJvOiA0OCxcbiAgICBuaW5lOiA1NyxcbiAgICBBOiA2NSxcbiAgICBGOiA3MCxcbiAgICBhOiA5NyxcbiAgICBmOiAxMDIsXG59O1xuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoYXJDb2RlVG9CYXNlMTYoY2hhcikge1xuICAgIGlmIChjaGFyID49IGNoYXJDb2RlTWFwLnplcm8gJiYgY2hhciA8PSBjaGFyQ29kZU1hcC5uaW5lKVxuICAgICAgICByZXR1cm4gY2hhciAtIGNoYXJDb2RlTWFwLnplcm87XG4gICAgaWYgKGNoYXIgPj0gY2hhckNvZGVNYXAuQSAmJiBjaGFyIDw9IGNoYXJDb2RlTWFwLkYpXG4gICAgICAgIHJldHVybiBjaGFyIC0gKGNoYXJDb2RlTWFwLkEgLSAxMCk7XG4gICAgaWYgKGNoYXIgPj0gY2hhckNvZGVNYXAuYSAmJiBjaGFyIDw9IGNoYXJDb2RlTWFwLmYpXG4gICAgICAgIHJldHVybiBjaGFyIC0gKGNoYXJDb2RlTWFwLmEgLSAxMCk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWQoYnl0ZXMsIG9wdGlvbnMgPSB7fSkge1xuICAgIGNvbnN0IHsgZGlyLCBzaXplID0gMzIgfSA9IG9wdGlvbnM7XG4gICAgaWYgKHNpemUgPT09IDApXG4gICAgICAgIHJldHVybiBieXRlcztcbiAgICBpZiAoYnl0ZXMubGVuZ3RoID4gc2l6ZSlcbiAgICAgICAgdGhyb3cgbmV3IEJ5dGVzLlNpemVFeGNlZWRzUGFkZGluZ1NpemVFcnJvcih7XG4gICAgICAgICAgICBzaXplOiBieXRlcy5sZW5ndGgsXG4gICAgICAgICAgICB0YXJnZXRTaXplOiBzaXplLFxuICAgICAgICAgICAgdHlwZTogJ0J5dGVzJyxcbiAgICAgICAgfSk7XG4gICAgY29uc3QgcGFkZGVkQnl0ZXMgPSBuZXcgVWludDhBcnJheShzaXplKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7IGkrKykge1xuICAgICAgICBjb25zdCBwYWRFbmQgPSBkaXIgPT09ICdyaWdodCc7XG4gICAgICAgIHBhZGRlZEJ5dGVzW3BhZEVuZCA/IGkgOiBzaXplIC0gaSAtIDFdID1cbiAgICAgICAgICAgIGJ5dGVzW3BhZEVuZCA/IGkgOiBieXRlcy5sZW5ndGggLSBpIC0gMV07XG4gICAgfVxuICAgIHJldHVybiBwYWRkZWRCeXRlcztcbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiB0cmltKHZhbHVlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGRpciA9ICdsZWZ0JyB9ID0gb3B0aW9ucztcbiAgICBsZXQgZGF0YSA9IHZhbHVlO1xuICAgIGxldCBzbGljZUxlbmd0aCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmxlbmd0aCAtIDE7IGkrKykge1xuICAgICAgICBpZiAoZGF0YVtkaXIgPT09ICdsZWZ0JyA/IGkgOiBkYXRhLmxlbmd0aCAtIGkgLSAxXS50b1N0cmluZygpID09PSAnMCcpXG4gICAgICAgICAgICBzbGljZUxlbmd0aCsrO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG4gICAgZGF0YSA9XG4gICAgICAgIGRpciA9PT0gJ2xlZnQnXG4gICAgICAgICAgICA/IGRhdGEuc2xpY2Uoc2xpY2VMZW5ndGgpXG4gICAgICAgICAgICA6IGRhdGEuc2xpY2UoMCwgZGF0YS5sZW5ndGggLSBzbGljZUxlbmd0aCk7XG4gICAgcmV0dXJuIGRhdGE7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1ieXRlcy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/bytes.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/cursor.js": /*!************************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/cursor.js ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NegativeOffsetError: () => (/* binding */ NegativeOffsetError),\n/* harmony export */ PositionOutOfBoundsError: () => (/* binding */ PositionOutOfBoundsError),\n/* harmony export */ RecursiveReadLimitExceededError: () => (/* binding */ RecursiveReadLimitExceededError),\n/* harmony export */ create: () => (/* binding */ create)\n/* harmony export */ });\n/* harmony import */ var _Errors_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n\nconst staticCursor = {\n bytes: new Uint8Array(),\n dataView: new DataView(new ArrayBuffer(0)),\n position: 0,\n positionReadCount: new Map(),\n recursiveReadCount: 0,\n recursiveReadLimit: Number.POSITIVE_INFINITY,\n assertReadLimit() {\n if (this.recursiveReadCount >= this.recursiveReadLimit)\n throw new RecursiveReadLimitExceededError({\n count: this.recursiveReadCount + 1,\n limit: this.recursiveReadLimit,\n });\n },\n assertPosition(position) {\n if (position < 0 || position > this.bytes.length - 1)\n throw new PositionOutOfBoundsError({\n length: this.bytes.length,\n position,\n });\n },\n decrementPosition(offset) {\n if (offset < 0)\n throw new NegativeOffsetError({ offset });\n const position = this.position - offset;\n this.assertPosition(position);\n this.position = position;\n },\n getReadCount(position) {\n return this.positionReadCount.get(position || this.position) || 0;\n },\n incrementPosition(offset) {\n if (offset < 0)\n throw new NegativeOffsetError({ offset });\n const position = this.position + offset;\n this.assertPosition(position);\n this.position = position;\n },\n inspectByte(position_) {\n const position = position_ ?? this.position;\n this.assertPosition(position);\n return this.bytes[position];\n },\n inspectBytes(length, position_) {\n const position = position_ ?? this.position;\n this.assertPosition(position + length - 1);\n return this.bytes.subarray(position, position + length);\n },\n inspectUint8(position_) {\n const position = position_ ?? this.position;\n this.assertPosition(position);\n return this.bytes[position];\n },\n inspectUint16(position_) {\n const position = position_ ?? this.position;\n this.assertPosition(position + 1);\n return this.dataView.getUint16(position);\n },\n inspectUint24(position_) {\n const position = position_ ?? this.position;\n this.assertPosition(position + 2);\n return ((this.dataView.getUint16(position) << 8) +\n this.dataView.getUint8(position + 2));\n },\n inspectUint32(position_) {\n const position = position_ ?? this.position;\n this.assertPosition(position + 3);\n return this.dataView.getUint32(position);\n },\n pushByte(byte) {\n this.assertPosition(this.position);\n this.bytes[this.position] = byte;\n this.position++;\n },\n pushBytes(bytes) {\n this.assertPosition(this.position + bytes.length - 1);\n this.bytes.set(bytes, this.position);\n this.position += bytes.length;\n },\n pushUint8(value) {\n this.assertPosition(this.position);\n this.bytes[this.position] = value;\n this.position++;\n },\n pushUint16(value) {\n this.assertPosition(this.position + 1);\n this.dataView.setUint16(this.position, value);\n this.position += 2;\n },\n pushUint24(value) {\n this.assertPosition(this.position + 2);\n this.dataView.setUint16(this.position, value >> 8);\n this.dataView.setUint8(this.position + 2, value & ~4294967040);\n this.position += 3;\n },\n pushUint32(value) {\n this.assertPosition(this.position + 3);\n this.dataView.setUint32(this.position, value);\n this.position += 4;\n },\n readByte() {\n this.assertReadLimit();\n this._touch();\n const value = this.inspectByte();\n this.position++;\n return value;\n },\n readBytes(length, size) {\n this.assertReadLimit();\n this._touch();\n const value = this.inspectBytes(length);\n this.position += size ?? length;\n return value;\n },\n readUint8() {\n this.assertReadLimit();\n this._touch();\n const value = this.inspectUint8();\n this.position += 1;\n return value;\n },\n readUint16() {\n this.assertReadLimit();\n this._touch();\n const value = this.inspectUint16();\n this.position += 2;\n return value;\n },\n readUint24() {\n this.assertReadLimit();\n this._touch();\n const value = this.inspectUint24();\n this.position += 3;\n return value;\n },\n readUint32() {\n this.assertReadLimit();\n this._touch();\n const value = this.inspectUint32();\n this.position += 4;\n return value;\n },\n get remaining() {\n return this.bytes.length - this.position;\n },\n setPosition(position) {\n const oldPosition = this.position;\n this.assertPosition(position);\n this.position = position;\n return () => (this.position = oldPosition);\n },\n _touch() {\n if (this.recursiveReadLimit === Number.POSITIVE_INFINITY)\n return;\n const count = this.getReadCount();\n this.positionReadCount.set(this.position, count + 1);\n if (count > 0)\n this.recursiveReadCount++;\n },\n};\n/** @internal */\nfunction create(bytes, { recursiveReadLimit = 8_192 } = {}) {\n const cursor = Object.create(staticCursor);\n cursor.bytes = bytes;\n cursor.dataView = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);\n cursor.positionReadCount = new Map();\n cursor.recursiveReadLimit = recursiveReadLimit;\n return cursor;\n}\n/** @internal */\nclass NegativeOffsetError extends _Errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ offset }) {\n super(`Offset \\`${offset}\\` cannot be negative.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Cursor.NegativeOffsetError'\n });\n }\n}\n/** @internal */\nclass PositionOutOfBoundsError extends _Errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ length, position }) {\n super(`Position \\`${position}\\` is out of bounds (\\`0 < position < ${length}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Cursor.PositionOutOfBoundsError'\n });\n }\n}\n/** @internal */\nclass RecursiveReadLimitExceededError extends _Errors_js__WEBPACK_IMPORTED_MODULE_0__.BaseError {\n constructor({ count, limit }) {\n super(`Recursive read limit of \\`${limit}\\` exceeded (recursive read count: \\`${count}\\`).`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'Cursor.RecursiveReadLimitExceededError'\n });\n }\n}\n//# sourceMappingURL=cursor.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvY3Vyc29yLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXVDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixLQUFLO0FBQ0w7QUFDQTtBQUNBLDRDQUE0QyxRQUFRO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSw0Q0FBNEMsUUFBUTtBQUNwRDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ08seUJBQXlCLDZCQUE2QixJQUFJO0FBQ2pFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxrQ0FBa0MsaURBQWdCO0FBQ3pELGtCQUFrQixRQUFRO0FBQzFCLDBCQUEwQixPQUFPO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sdUNBQXVDLGlEQUFnQjtBQUM5RCxrQkFBa0Isa0JBQWtCO0FBQ3BDLDRCQUE0QixTQUFTLHdDQUF3QyxPQUFPO0FBQ3BGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ08sOENBQThDLGlEQUFnQjtBQUNyRSxrQkFBa0IsY0FBYztBQUNoQywyQ0FBMkMsTUFBTSx1Q0FBdUMsTUFBTTtBQUM5RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvY3Vyc29yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEVycm9ycyBmcm9tICcuLi9FcnJvcnMuanMnO1xuY29uc3Qgc3RhdGljQ3Vyc29yID0ge1xuICAgIGJ5dGVzOiBuZXcgVWludDhBcnJheSgpLFxuICAgIGRhdGFWaWV3OiBuZXcgRGF0YVZpZXcobmV3IEFycmF5QnVmZmVyKDApKSxcbiAgICBwb3NpdGlvbjogMCxcbiAgICBwb3NpdGlvblJlYWRDb3VudDogbmV3IE1hcCgpLFxuICAgIHJlY3Vyc2l2ZVJlYWRDb3VudDogMCxcbiAgICByZWN1cnNpdmVSZWFkTGltaXQ6IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxcbiAgICBhc3NlcnRSZWFkTGltaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLnJlY3Vyc2l2ZVJlYWRDb3VudCA+PSB0aGlzLnJlY3Vyc2l2ZVJlYWRMaW1pdClcbiAgICAgICAgICAgIHRocm93IG5ldyBSZWN1cnNpdmVSZWFkTGltaXRFeGNlZWRlZEVycm9yKHtcbiAgICAgICAgICAgICAgICBjb3VudDogdGhpcy5yZWN1cnNpdmVSZWFkQ291bnQgKyAxLFxuICAgICAgICAgICAgICAgIGxpbWl0OiB0aGlzLnJlY3Vyc2l2ZVJlYWRMaW1pdCxcbiAgICAgICAgICAgIH0pO1xuICAgIH0sXG4gICAgYXNzZXJ0UG9zaXRpb24ocG9zaXRpb24pIHtcbiAgICAgICAgaWYgKHBvc2l0aW9uIDwgMCB8fCBwb3NpdGlvbiA+IHRoaXMuYnl0ZXMubGVuZ3RoIC0gMSlcbiAgICAgICAgICAgIHRocm93IG5ldyBQb3NpdGlvbk91dE9mQm91bmRzRXJyb3Ioe1xuICAgICAgICAgICAgICAgIGxlbmd0aDogdGhpcy5ieXRlcy5sZW5ndGgsXG4gICAgICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICB9KTtcbiAgICB9LFxuICAgIGRlY3JlbWVudFBvc2l0aW9uKG9mZnNldCkge1xuICAgICAgICBpZiAob2Zmc2V0IDwgMClcbiAgICAgICAgICAgIHRocm93IG5ldyBOZWdhdGl2ZU9mZnNldEVycm9yKHsgb2Zmc2V0IH0pO1xuICAgICAgICBjb25zdCBwb3NpdGlvbiA9IHRoaXMucG9zaXRpb24gLSBvZmZzZXQ7XG4gICAgICAgIHRoaXMuYXNzZXJ0UG9zaXRpb24ocG9zaXRpb24pO1xuICAgICAgICB0aGlzLnBvc2l0aW9uID0gcG9zaXRpb247XG4gICAgfSxcbiAgICBnZXRSZWFkQ291bnQocG9zaXRpb24pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucG9zaXRpb25SZWFkQ291bnQuZ2V0KHBvc2l0aW9uIHx8IHRoaXMucG9zaXRpb24pIHx8IDA7XG4gICAgfSxcbiAgICBpbmNyZW1lbnRQb3NpdGlvbihvZmZzZXQpIHtcbiAgICAgICAgaWYgKG9mZnNldCA8IDApXG4gICAgICAgICAgICB0aHJvdyBuZXcgTmVnYXRpdmVPZmZzZXRFcnJvcih7IG9mZnNldCB9KTtcbiAgICAgICAgY29uc3QgcG9zaXRpb24gPSB0aGlzLnBvc2l0aW9uICsgb2Zmc2V0O1xuICAgICAgICB0aGlzLmFzc2VydFBvc2l0aW9uKHBvc2l0aW9uKTtcbiAgICAgICAgdGhpcy5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgIH0sXG4gICAgaW5zcGVjdEJ5dGUocG9zaXRpb25fKSB7XG4gICAgICAgIGNvbnN0IHBvc2l0aW9uID0gcG9zaXRpb25fID8/IHRoaXMucG9zaXRpb247XG4gICAgICAgIHRoaXMuYXNzZXJ0UG9zaXRpb24ocG9zaXRpb24pO1xuICAgICAgICByZXR1cm4gdGhpcy5ieXRlc1twb3NpdGlvbl07XG4gICAgfSxcbiAgICBpbnNwZWN0Qnl0ZXMobGVuZ3RoLCBwb3NpdGlvbl8pIHtcbiAgICAgICAgY29uc3QgcG9zaXRpb24gPSBwb3NpdGlvbl8gPz8gdGhpcy5wb3NpdGlvbjtcbiAgICAgICAgdGhpcy5hc3NlcnRQb3NpdGlvbihwb3NpdGlvbiArIGxlbmd0aCAtIDEpO1xuICAgICAgICByZXR1cm4gdGhpcy5ieXRlcy5zdWJhcnJheShwb3NpdGlvbiwgcG9zaXRpb24gKyBsZW5ndGgpO1xuICAgIH0sXG4gICAgaW5zcGVjdFVpbnQ4KHBvc2l0aW9uXykge1xuICAgICAgICBjb25zdCBwb3NpdGlvbiA9IHBvc2l0aW9uXyA/PyB0aGlzLnBvc2l0aW9uO1xuICAgICAgICB0aGlzLmFzc2VydFBvc2l0aW9uKHBvc2l0aW9uKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnl0ZXNbcG9zaXRpb25dO1xuICAgIH0sXG4gICAgaW5zcGVjdFVpbnQxNihwb3NpdGlvbl8pIHtcbiAgICAgICAgY29uc3QgcG9zaXRpb24gPSBwb3NpdGlvbl8gPz8gdGhpcy5wb3NpdGlvbjtcbiAgICAgICAgdGhpcy5hc3NlcnRQb3NpdGlvbihwb3NpdGlvbiArIDEpO1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhVmlldy5nZXRVaW50MTYocG9zaXRpb24pO1xuICAgIH0sXG4gICAgaW5zcGVjdFVpbnQyNChwb3NpdGlvbl8pIHtcbiAgICAgICAgY29uc3QgcG9zaXRpb24gPSBwb3NpdGlvbl8gPz8gdGhpcy5wb3NpdGlvbjtcbiAgICAgICAgdGhpcy5hc3NlcnRQb3NpdGlvbihwb3NpdGlvbiArIDIpO1xuICAgICAgICByZXR1cm4gKCh0aGlzLmRhdGFWaWV3LmdldFVpbnQxNihwb3NpdGlvbikgPDwgOCkgK1xuICAgICAgICAgICAgdGhpcy5kYXRhVmlldy5nZXRVaW50OChwb3NpdGlvbiArIDIpKTtcbiAgICB9LFxuICAgIGluc3BlY3RVaW50MzIocG9zaXRpb25fKSB7XG4gICAgICAgIGNvbnN0IHBvc2l0aW9uID0gcG9zaXRpb25fID8/IHRoaXMucG9zaXRpb247XG4gICAgICAgIHRoaXMuYXNzZXJ0UG9zaXRpb24ocG9zaXRpb24gKyAzKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YVZpZXcuZ2V0VWludDMyKHBvc2l0aW9uKTtcbiAgICB9LFxuICAgIHB1c2hCeXRlKGJ5dGUpIHtcbiAgICAgICAgdGhpcy5hc3NlcnRQb3NpdGlvbih0aGlzLnBvc2l0aW9uKTtcbiAgICAgICAgdGhpcy5ieXRlc1t0aGlzLnBvc2l0aW9uXSA9IGJ5dGU7XG4gICAgICAgIHRoaXMucG9zaXRpb24rKztcbiAgICB9LFxuICAgIHB1c2hCeXRlcyhieXRlcykge1xuICAgICAgICB0aGlzLmFzc2VydFBvc2l0aW9uKHRoaXMucG9zaXRpb24gKyBieXRlcy5sZW5ndGggLSAxKTtcbiAgICAgICAgdGhpcy5ieXRlcy5zZXQoYnl0ZXMsIHRoaXMucG9zaXRpb24pO1xuICAgICAgICB0aGlzLnBvc2l0aW9uICs9IGJ5dGVzLmxlbmd0aDtcbiAgICB9LFxuICAgIHB1c2hVaW50OCh2YWx1ZSkge1xuICAgICAgICB0aGlzLmFzc2VydFBvc2l0aW9uKHRoaXMucG9zaXRpb24pO1xuICAgICAgICB0aGlzLmJ5dGVzW3RoaXMucG9zaXRpb25dID0gdmFsdWU7XG4gICAgICAgIHRoaXMucG9zaXRpb24rKztcbiAgICB9LFxuICAgIHB1c2hVaW50MTYodmFsdWUpIHtcbiAgICAgICAgdGhpcy5hc3NlcnRQb3NpdGlvbih0aGlzLnBvc2l0aW9uICsgMSk7XG4gICAgICAgIHRoaXMuZGF0YVZpZXcuc2V0VWludDE2KHRoaXMucG9zaXRpb24sIHZhbHVlKTtcbiAgICAgICAgdGhpcy5wb3NpdGlvbiArPSAyO1xuICAgIH0sXG4gICAgcHVzaFVpbnQyNCh2YWx1ZSkge1xuICAgICAgICB0aGlzLmFzc2VydFBvc2l0aW9uKHRoaXMucG9zaXRpb24gKyAyKTtcbiAgICAgICAgdGhpcy5kYXRhVmlldy5zZXRVaW50MTYodGhpcy5wb3NpdGlvbiwgdmFsdWUgPj4gOCk7XG4gICAgICAgIHRoaXMuZGF0YVZpZXcuc2V0VWludDgodGhpcy5wb3NpdGlvbiArIDIsIHZhbHVlICYgfjQyOTQ5NjcwNDApO1xuICAgICAgICB0aGlzLnBvc2l0aW9uICs9IDM7XG4gICAgfSxcbiAgICBwdXNoVWludDMyKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuYXNzZXJ0UG9zaXRpb24odGhpcy5wb3NpdGlvbiArIDMpO1xuICAgICAgICB0aGlzLmRhdGFWaWV3LnNldFVpbnQzMih0aGlzLnBvc2l0aW9uLCB2YWx1ZSk7XG4gICAgICAgIHRoaXMucG9zaXRpb24gKz0gNDtcbiAgICB9LFxuICAgIHJlYWRCeXRlKCkge1xuICAgICAgICB0aGlzLmFzc2VydFJlYWRMaW1pdCgpO1xuICAgICAgICB0aGlzLl90b3VjaCgpO1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaW5zcGVjdEJ5dGUoKTtcbiAgICAgICAgdGhpcy5wb3NpdGlvbisrO1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfSxcbiAgICByZWFkQnl0ZXMobGVuZ3RoLCBzaXplKSB7XG4gICAgICAgIHRoaXMuYXNzZXJ0UmVhZExpbWl0KCk7XG4gICAgICAgIHRoaXMuX3RvdWNoKCk7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5pbnNwZWN0Qnl0ZXMobGVuZ3RoKTtcbiAgICAgICAgdGhpcy5wb3NpdGlvbiArPSBzaXplID8/IGxlbmd0aDtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0sXG4gICAgcmVhZFVpbnQ4KCkge1xuICAgICAgICB0aGlzLmFzc2VydFJlYWRMaW1pdCgpO1xuICAgICAgICB0aGlzLl90b3VjaCgpO1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaW5zcGVjdFVpbnQ4KCk7XG4gICAgICAgIHRoaXMucG9zaXRpb24gKz0gMTtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0sXG4gICAgcmVhZFVpbnQxNigpIHtcbiAgICAgICAgdGhpcy5hc3NlcnRSZWFkTGltaXQoKTtcbiAgICAgICAgdGhpcy5fdG91Y2goKTtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmluc3BlY3RVaW50MTYoKTtcbiAgICAgICAgdGhpcy5wb3NpdGlvbiArPSAyO1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfSxcbiAgICByZWFkVWludDI0KCkge1xuICAgICAgICB0aGlzLmFzc2VydFJlYWRMaW1pdCgpO1xuICAgICAgICB0aGlzLl90b3VjaCgpO1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaW5zcGVjdFVpbnQyNCgpO1xuICAgICAgICB0aGlzLnBvc2l0aW9uICs9IDM7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9LFxuICAgIHJlYWRVaW50MzIoKSB7XG4gICAgICAgIHRoaXMuYXNzZXJ0UmVhZExpbWl0KCk7XG4gICAgICAgIHRoaXMuX3RvdWNoKCk7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5pbnNwZWN0VWludDMyKCk7XG4gICAgICAgIHRoaXMucG9zaXRpb24gKz0gNDtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0sXG4gICAgZ2V0IHJlbWFpbmluZygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnl0ZXMubGVuZ3RoIC0gdGhpcy5wb3NpdGlvbjtcbiAgICB9LFxuICAgIHNldFBvc2l0aW9uKHBvc2l0aW9uKSB7XG4gICAgICAgIGNvbnN0IG9sZFBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbjtcbiAgICAgICAgdGhpcy5hc3NlcnRQb3NpdGlvbihwb3NpdGlvbik7XG4gICAgICAgIHRoaXMucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICAgICAgcmV0dXJuICgpID0+ICh0aGlzLnBvc2l0aW9uID0gb2xkUG9zaXRpb24pO1xuICAgIH0sXG4gICAgX3RvdWNoKCkge1xuICAgICAgICBpZiAodGhpcy5yZWN1cnNpdmVSZWFkTGltaXQgPT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgY291bnQgPSB0aGlzLmdldFJlYWRDb3VudCgpO1xuICAgICAgICB0aGlzLnBvc2l0aW9uUmVhZENvdW50LnNldCh0aGlzLnBvc2l0aW9uLCBjb3VudCArIDEpO1xuICAgICAgICBpZiAoY291bnQgPiAwKVxuICAgICAgICAgICAgdGhpcy5yZWN1cnNpdmVSZWFkQ291bnQrKztcbiAgICB9LFxufTtcbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGUoYnl0ZXMsIHsgcmVjdXJzaXZlUmVhZExpbWl0ID0gOF8xOTIgfSA9IHt9KSB7XG4gICAgY29uc3QgY3Vyc29yID0gT2JqZWN0LmNyZWF0ZShzdGF0aWNDdXJzb3IpO1xuICAgIGN1cnNvci5ieXRlcyA9IGJ5dGVzO1xuICAgIGN1cnNvci5kYXRhVmlldyA9IG5ldyBEYXRhVmlldyhieXRlcy5idWZmZXIsIGJ5dGVzLmJ5dGVPZmZzZXQsIGJ5dGVzLmJ5dGVMZW5ndGgpO1xuICAgIGN1cnNvci5wb3NpdGlvblJlYWRDb3VudCA9IG5ldyBNYXAoKTtcbiAgICBjdXJzb3IucmVjdXJzaXZlUmVhZExpbWl0ID0gcmVjdXJzaXZlUmVhZExpbWl0O1xuICAgIHJldHVybiBjdXJzb3I7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgY2xhc3MgTmVnYXRpdmVPZmZzZXRFcnJvciBleHRlbmRzIEVycm9ycy5CYXNlRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHsgb2Zmc2V0IH0pIHtcbiAgICAgICAgc3VwZXIoYE9mZnNldCBcXGAke29mZnNldH1cXGAgY2Fubm90IGJlIG5lZ2F0aXZlLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnQ3Vyc29yLk5lZ2F0aXZlT2Zmc2V0RXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjbGFzcyBQb3NpdGlvbk91dE9mQm91bmRzRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih7IGxlbmd0aCwgcG9zaXRpb24gfSkge1xuICAgICAgICBzdXBlcihgUG9zaXRpb24gXFxgJHtwb3NpdGlvbn1cXGAgaXMgb3V0IG9mIGJvdW5kcyAoXFxgMCA8IHBvc2l0aW9uIDwgJHtsZW5ndGh9XFxgKS5gKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibmFtZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogJ0N1cnNvci5Qb3NpdGlvbk91dE9mQm91bmRzRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjbGFzcyBSZWN1cnNpdmVSZWFkTGltaXRFeGNlZWRlZEVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3IoeyBjb3VudCwgbGltaXQgfSkge1xuICAgICAgICBzdXBlcihgUmVjdXJzaXZlIHJlYWQgbGltaXQgb2YgXFxgJHtsaW1pdH1cXGAgZXhjZWVkZWQgKHJlY3Vyc2l2ZSByZWFkIGNvdW50OiBcXGAke2NvdW50fVxcYCkuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdDdXJzb3IuUmVjdXJzaXZlUmVhZExpbWl0RXhjZWVkZWRFcnJvcidcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y3Vyc29yLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/cursor.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/entropy.js": /*!*************************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/entropy.js ***! \*************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ extraEntropy: () => (/* binding */ extraEntropy),\n/* harmony export */ setExtraEntropy: () => (/* binding */ setExtraEntropy)\n/* harmony export */ });\nlet extraEntropy = false;\n/** @internal */\nfunction setExtraEntropy(entropy) {\n extraEntropy = entropy;\n}\n//# sourceMappingURL=entropy.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvZW50cm9weS5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFPO0FBQ1A7QUFDTztBQUNQO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvZW50cm9weS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgbGV0IGV4dHJhRW50cm9weSA9IGZhbHNlO1xuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldEV4dHJhRW50cm9weShlbnRyb3B5KSB7XG4gICAgZXh0cmFFbnRyb3B5ID0gZW50cm9weTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVudHJvcHkuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/entropy.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/errors.js": /*!************************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/errors.js ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUrl: () => (/* binding */ getUrl),\n/* harmony export */ getVersion: () => (/* binding */ getVersion),\n/* harmony export */ prettyPrint: () => (/* binding */ prettyPrint)\n/* harmony export */ });\n/* harmony import */ var _version_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../version.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/version.js\");\n\n/** @internal */\nfunction getUrl(url) {\n return url;\n}\n/** @internal */\nfunction getVersion() {\n return _version_js__WEBPACK_IMPORTED_MODULE_0__.version;\n}\n/** @internal */\nfunction prettyPrint(args) {\n if (!args)\n return '';\n const entries = Object.entries(args)\n .map(([key, value]) => {\n if (value === undefined || value === false)\n return null;\n return [key, value];\n })\n .filter(Boolean);\n const maxLength = entries.reduce((acc, [key]) => Math.max(acc, key.length), 0);\n return entries\n .map(([key, value]) => ` ${`${key}:`.padEnd(maxLength + 1)} ${value}`)\n .join('\\n');\n}\n//# sourceMappingURL=errors.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvZXJyb3JzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBd0M7QUFDeEM7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsV0FBVyxnREFBTztBQUNsQjtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsR0FBRyxJQUFJLDJCQUEyQixFQUFFLE1BQU07QUFDOUU7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS9pbnRlcm5hbC9lcnJvcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdmVyc2lvbiB9IGZyb20gJy4uL3ZlcnNpb24uanMnO1xuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFVybCh1cmwpIHtcbiAgICByZXR1cm4gdXJsO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFZlcnNpb24oKSB7XG4gICAgcmV0dXJuIHZlcnNpb247XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gcHJldHR5UHJpbnQoYXJncykge1xuICAgIGlmICghYXJncylcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyhhcmdzKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IGZhbHNlKVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIHJldHVybiBba2V5LCB2YWx1ZV07XG4gICAgfSlcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKTtcbiAgICBjb25zdCBtYXhMZW5ndGggPSBlbnRyaWVzLnJlZHVjZSgoYWNjLCBba2V5XSkgPT4gTWF0aC5tYXgoYWNjLCBrZXkubGVuZ3RoKSwgMCk7XG4gICAgcmV0dXJuIGVudHJpZXNcbiAgICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgICAke2Ake2tleX06YC5wYWRFbmQobWF4TGVuZ3RoICsgMSl9ICAke3ZhbHVlfWApXG4gICAgICAgIC5qb2luKCdcXG4nKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWVycm9ycy5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/errors.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/hex.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/hex.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ assertEndOffset: () => (/* binding */ assertEndOffset),\n/* harmony export */ assertSize: () => (/* binding */ assertSize),\n/* harmony export */ assertStartOffset: () => (/* binding */ assertStartOffset),\n/* harmony export */ pad: () => (/* binding */ pad),\n/* harmony export */ trim: () => (/* binding */ trim)\n/* harmony export */ });\n/* harmony import */ var _Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n\n/** @internal */\nfunction assertSize(hex, size_) {\n if (_Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(hex) > size_)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SizeOverflowError({\n givenSize: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(hex),\n maxSize: size_,\n });\n}\n/** @internal */\nfunction assertStartOffset(value, start) {\n if (typeof start === 'number' && start > 0 && start > _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value) - 1)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: start,\n position: 'start',\n size: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n}\n/** @internal */\nfunction assertEndOffset(value, start, end) {\n if (typeof start === 'number' &&\n typeof end === 'number' &&\n _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value) !== end - start) {\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SliceOffsetOutOfBoundsError({\n offset: end,\n position: 'end',\n size: _Hex_js__WEBPACK_IMPORTED_MODULE_0__.size(value),\n });\n }\n}\n/** @internal */\nfunction pad(hex_, options = {}) {\n const { dir, size = 32 } = options;\n if (size === 0)\n return hex_;\n const hex = hex_.replace('0x', '');\n if (hex.length > size * 2)\n throw new _Hex_js__WEBPACK_IMPORTED_MODULE_0__.SizeExceedsPaddingSizeError({\n size: Math.ceil(hex.length / 2),\n targetSize: size,\n type: 'Hex',\n });\n return `0x${hex[dir === 'right' ? 'padEnd' : 'padStart'](size * 2, '0')}`;\n}\n/** @internal */\nfunction trim(value, options = {}) {\n const { dir = 'left' } = options;\n let data = value.replace('0x', '');\n let sliceLength = 0;\n for (let i = 0; i < data.length - 1; i++) {\n if (data[dir === 'left' ? i : data.length - i - 1].toString() === '0')\n sliceLength++;\n else\n break;\n }\n data =\n dir === 'left'\n ? data.slice(sliceLength)\n : data.slice(0, data.length - sliceLength);\n if (data === '0')\n return '0x';\n if (dir === 'right' && data.length % 2 === 1)\n return `0x${data}0`;\n return `0x${data}`;\n}\n//# sourceMappingURL=hex.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvaGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFpQztBQUNqQztBQUNPO0FBQ1AsUUFBUSx5Q0FBUTtBQUNoQixrQkFBa0Isc0RBQXFCO0FBQ3ZDLHVCQUF1Qix5Q0FBUTtBQUMvQjtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ087QUFDUCwwREFBMEQseUNBQVE7QUFDbEUsa0JBQWtCLGdFQUErQjtBQUNqRDtBQUNBO0FBQ0Esa0JBQWtCLHlDQUFRO0FBQzFCLFNBQVM7QUFDVDtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0EsUUFBUSx5Q0FBUTtBQUNoQixrQkFBa0IsZ0VBQStCO0FBQ2pEO0FBQ0E7QUFDQSxrQkFBa0IseUNBQVE7QUFDMUIsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNPLCtCQUErQjtBQUN0QyxZQUFZLGlCQUFpQjtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixnRUFBK0I7QUFDakQ7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULGdCQUFnQiw0REFBNEQ7QUFDNUU7QUFDQTtBQUNPLGlDQUFpQztBQUN4QyxZQUFZLGVBQWU7QUFDM0I7QUFDQTtBQUNBLG9CQUFvQixxQkFBcUI7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLEtBQUs7QUFDekIsZ0JBQWdCLEtBQUs7QUFDckI7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvaGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEhleCBmcm9tICcuLi9IZXguanMnO1xuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFNpemUoaGV4LCBzaXplXykge1xuICAgIGlmIChIZXguc2l6ZShoZXgpID4gc2l6ZV8pXG4gICAgICAgIHRocm93IG5ldyBIZXguU2l6ZU92ZXJmbG93RXJyb3Ioe1xuICAgICAgICAgICAgZ2l2ZW5TaXplOiBIZXguc2l6ZShoZXgpLFxuICAgICAgICAgICAgbWF4U2l6ZTogc2l6ZV8sXG4gICAgICAgIH0pO1xufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFN0YXJ0T2Zmc2V0KHZhbHVlLCBzdGFydCkge1xuICAgIGlmICh0eXBlb2Ygc3RhcnQgPT09ICdudW1iZXInICYmIHN0YXJ0ID4gMCAmJiBzdGFydCA+IEhleC5zaXplKHZhbHVlKSAtIDEpXG4gICAgICAgIHRocm93IG5ldyBIZXguU2xpY2VPZmZzZXRPdXRPZkJvdW5kc0Vycm9yKHtcbiAgICAgICAgICAgIG9mZnNldDogc3RhcnQsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3N0YXJ0JyxcbiAgICAgICAgICAgIHNpemU6IEhleC5zaXplKHZhbHVlKSxcbiAgICAgICAgfSk7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0RW5kT2Zmc2V0KHZhbHVlLCBzdGFydCwgZW5kKSB7XG4gICAgaWYgKHR5cGVvZiBzdGFydCA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgdHlwZW9mIGVuZCA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgSGV4LnNpemUodmFsdWUpICE9PSBlbmQgLSBzdGFydCkge1xuICAgICAgICB0aHJvdyBuZXcgSGV4LlNsaWNlT2Zmc2V0T3V0T2ZCb3VuZHNFcnJvcih7XG4gICAgICAgICAgICBvZmZzZXQ6IGVuZCxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnZW5kJyxcbiAgICAgICAgICAgIHNpemU6IEhleC5zaXplKHZhbHVlKSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhZChoZXhfLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGRpciwgc2l6ZSA9IDMyIH0gPSBvcHRpb25zO1xuICAgIGlmIChzaXplID09PSAwKVxuICAgICAgICByZXR1cm4gaGV4XztcbiAgICBjb25zdCBoZXggPSBoZXhfLnJlcGxhY2UoJzB4JywgJycpO1xuICAgIGlmIChoZXgubGVuZ3RoID4gc2l6ZSAqIDIpXG4gICAgICAgIHRocm93IG5ldyBIZXguU2l6ZUV4Y2VlZHNQYWRkaW5nU2l6ZUVycm9yKHtcbiAgICAgICAgICAgIHNpemU6IE1hdGguY2VpbChoZXgubGVuZ3RoIC8gMiksXG4gICAgICAgICAgICB0YXJnZXRTaXplOiBzaXplLFxuICAgICAgICAgICAgdHlwZTogJ0hleCcsXG4gICAgICAgIH0pO1xuICAgIHJldHVybiBgMHgke2hleFtkaXIgPT09ICdyaWdodCcgPyAncGFkRW5kJyA6ICdwYWRTdGFydCddKHNpemUgKiAyLCAnMCcpfWA7XG59XG4vKiogQGludGVybmFsICovXG5leHBvcnQgZnVuY3Rpb24gdHJpbSh2YWx1ZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBkaXIgPSAnbGVmdCcgfSA9IG9wdGlvbnM7XG4gICAgbGV0IGRhdGEgPSB2YWx1ZS5yZXBsYWNlKCcweCcsICcnKTtcbiAgICBsZXQgc2xpY2VMZW5ndGggPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YS5sZW5ndGggLSAxOyBpKyspIHtcbiAgICAgICAgaWYgKGRhdGFbZGlyID09PSAnbGVmdCcgPyBpIDogZGF0YS5sZW5ndGggLSBpIC0gMV0udG9TdHJpbmcoKSA9PT0gJzAnKVxuICAgICAgICAgICAgc2xpY2VMZW5ndGgrKztcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGRhdGEgPVxuICAgICAgICBkaXIgPT09ICdsZWZ0J1xuICAgICAgICAgICAgPyBkYXRhLnNsaWNlKHNsaWNlTGVuZ3RoKVxuICAgICAgICAgICAgOiBkYXRhLnNsaWNlKDAsIGRhdGEubGVuZ3RoIC0gc2xpY2VMZW5ndGgpO1xuICAgIGlmIChkYXRhID09PSAnMCcpXG4gICAgICAgIHJldHVybiAnMHgnO1xuICAgIGlmIChkaXIgPT09ICdyaWdodCcgJiYgZGF0YS5sZW5ndGggJSAyID09PSAxKVxuICAgICAgICByZXR1cm4gYDB4JHtkYXRhfTBgO1xuICAgIHJldHVybiBgMHgke2RhdGF9YDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWhleC5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/hex.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/lru.js": /*!*********************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/internal/lru.js ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LruMap: () => (/* binding */ LruMap)\n/* harmony export */ });\n/**\n * @internal\n *\n * Map with a LRU (Least recently used) policy.\n * @see https://en.wikipedia.org/wiki/Cache_replacement_policies#LRU\n */\nclass LruMap extends Map {\n constructor(size) {\n super();\n Object.defineProperty(this, \"maxSize\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.maxSize = size;\n }\n get(key) {\n const value = super.get(key);\n if (super.has(key) && value !== undefined) {\n this.delete(key);\n super.set(key, value);\n }\n return value;\n }\n set(key, value) {\n super.set(key, value);\n if (this.maxSize && this.size > this.maxSize) {\n const firstKey = this.keys().next().value;\n if (firstKey)\n this.delete(firstKey);\n }\n return this;\n }\n}\n//# sourceMappingURL=lru.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvbHJ1LmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvaW50ZXJuYWwvbHJ1LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGludGVybmFsXG4gKlxuICogTWFwIHdpdGggYSBMUlUgKExlYXN0IHJlY2VudGx5IHVzZWQpIHBvbGljeS5cbiAqIEBzZWUgaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ2FjaGVfcmVwbGFjZW1lbnRfcG9saWNpZXMjTFJVXG4gKi9cbmV4cG9ydCBjbGFzcyBMcnVNYXAgZXh0ZW5kcyBNYXAge1xuICAgIGNvbnN0cnVjdG9yKHNpemUpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwibWF4U2l6ZVwiLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZTogdm9pZCAwXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLm1heFNpemUgPSBzaXplO1xuICAgIH1cbiAgICBnZXQoa2V5KSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gc3VwZXIuZ2V0KGtleSk7XG4gICAgICAgIGlmIChzdXBlci5oYXMoa2V5KSAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmRlbGV0ZShrZXkpO1xuICAgICAgICAgICAgc3VwZXIuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gICAgc2V0KGtleSwgdmFsdWUpIHtcbiAgICAgICAgc3VwZXIuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICBpZiAodGhpcy5tYXhTaXplICYmIHRoaXMuc2l6ZSA+IHRoaXMubWF4U2l6ZSkge1xuICAgICAgICAgICAgY29uc3QgZmlyc3RLZXkgPSB0aGlzLmtleXMoKS5uZXh0KCkudmFsdWU7XG4gICAgICAgICAgICBpZiAoZmlyc3RLZXkpXG4gICAgICAgICAgICAgICAgdGhpcy5kZWxldGUoZmlyc3RLZXkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWxydS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/internal/lru.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/version.js": /*!****************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/core/version.js ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ version: () => (/* binding */ version)\n/* harmony export */ });\n/** @internal */\nconst version = '0.1.1';\n//# sourceMappingURL=version.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2NvcmUvdmVyc2lvbi5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDTztBQUNQIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vY29yZS92ZXJzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjb25zdCB2ZXJzaW9uID0gJzAuMS4xJztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXZlcnNpb24uanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/version.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/erc6492/SignatureErc6492.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/erc6492/SignatureErc6492.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidWrappedSignatureError: () => (/* binding */ InvalidWrappedSignatureError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ magicBytes: () => (/* binding */ magicBytes),\n/* harmony export */ universalSignatureValidatorAbi: () => (/* binding */ universalSignatureValidatorAbi),\n/* harmony export */ universalSignatureValidatorBytecode: () => (/* binding */ universalSignatureValidatorBytecode),\n/* harmony export */ unwrap: () => (/* binding */ unwrap),\n/* harmony export */ validate: () => (/* binding */ validate),\n/* harmony export */ wrap: () => (/* binding */ wrap)\n/* harmony export */ });\n/* harmony import */ var _core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js\");\n/* harmony import */ var _core_Errors_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _core_Hex_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n\n\n\n/**\n * Magic bytes used to identify ERC-6492 wrapped signatures.\n */\nconst magicBytes = '0x6492649264926492649264926492649264926492649264926492649264926492';\n/**\n * Deployless ERC-6492 signature verification bytecode.\n */\nconst universalSignatureValidatorBytecode = '0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572';\n/**\n * ABI for the ERC-6492 universal deployless signature validator contract.\n *\n * Constructor return value is `0x1` (valid) or `0x0` (invalid).\n */\nconst universalSignatureValidatorAbi = [\n {\n inputs: [\n {\n name: '_signer',\n type: 'address',\n },\n {\n name: '_hash',\n type: 'bytes32',\n },\n {\n name: '_signature',\n type: 'bytes',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'constructor',\n },\n {\n inputs: [\n {\n name: '_signer',\n type: 'address',\n },\n {\n name: '_hash',\n type: 'bytes32',\n },\n {\n name: '_signature',\n type: 'bytes',\n },\n ],\n outputs: [\n {\n type: 'bool',\n },\n ],\n stateMutability: 'nonpayable',\n type: 'function',\n name: 'isValidSig',\n },\n];\n/**\n * Asserts that the wrapped signature is valid.\n *\n * @example\n * ```ts twoslash\n * import { SignatureErc6492 } from 'ox/erc6492'\n *\n * SignatureErc6492.assert('0xdeadbeef')\n * // @error: InvalidWrappedSignatureError: Value `0xdeadbeef` is an invalid ERC-6492 wrapped signature.\n * ```\n *\n * @param wrapped - The wrapped signature to assert.\n */\nfunction assert(wrapped) {\n if (_core_Hex_js__WEBPACK_IMPORTED_MODULE_0__.slice(wrapped, -32) !== magicBytes)\n throw new InvalidWrappedSignatureError(wrapped);\n}\n/**\n * Parses an [ERC-6492 wrapped signature](https://eips.ethereum.org/EIPS/eip-6492#specification) into its constituent parts.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Secp256k1 } from 'ox'\n * import { SignatureErc6492 } from 'ox/erc6492' // [!code focus]\n *\n * const signature = Secp256k1.sign({\n * payload: '0x...',\n * privateKey: '0x...',\n * })\n *\n * // Instantiate from serialized format. // [!code focus]\n * const wrapped = SignatureErc6492.from('0x...') // [!code focus]\n * // @log: { data: '0x...', signature: { ... }, to: '0x...', } // [!code focus]\n *\n * // Instantiate from constituent parts. // [!code focus]\n * const wrapped = SignatureErc6492.from({ // [!code focus]\n * data: '0x...', // [!code focus]\n * signature, // [!code focus]\n * to: '0x...', // [!code focus]\n * })\n * // @log: { data: '0x...', signature: { ... }, to: '0x...', }\n * ```\n *\n * @param wrapped - Wrapped signature to parse.\n * @returns Wrapped signature.\n */\nfunction from(wrapped) {\n if (typeof wrapped === 'string')\n return unwrap(wrapped);\n return wrapped;\n}\n/**\n * Parses an [ERC-6492 wrapped signature](https://eips.ethereum.org/EIPS/eip-6492#specification) into its constituent parts.\n *\n * @example\n * ```ts twoslash\n * import { SignatureErc6492 } from 'ox/erc6492'\n *\n * const { data, signature, to } = SignatureErc6492.unwrap('0x...')\n * ```\n *\n * @param wrapped - Wrapped signature to parse.\n * @returns Wrapped signature.\n */\nfunction unwrap(wrapped) {\n assert(wrapped);\n const [to, data, signature] = _core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_1__.decode(_core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_1__.from('address, bytes, bytes'), wrapped);\n return { data, signature, to };\n}\n/**\n * Serializes an [ERC-6492 wrapped signature](https://eips.ethereum.org/EIPS/eip-6492#specification).\n *\n * @example\n * ```ts twoslash\n * import { Secp256k1, Signature } from 'ox'\n * import { SignatureErc6492 } from 'ox/erc6492' // [!code focus]\n *\n * const signature = Secp256k1.sign({\n * payload: '0x...',\n * privateKey: '0x...',\n * })\n *\n * const wrapped = SignatureErc6492.wrap({ // [!code focus]\n * data: '0xdeadbeef', // [!code focus]\n * signature: Signature.toHex(signature), // [!code focus]\n * to: '0x00000000219ab540356cBB839Cbe05303d7705Fa', // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param value - Wrapped signature to serialize.\n * @returns Serialized wrapped signature.\n */\nfunction wrap(value) {\n const { data, signature, to } = value;\n return _core_Hex_js__WEBPACK_IMPORTED_MODULE_0__.concat(_core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_1__.encode(_core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_1__.from('address, bytes, bytes'), [\n to,\n data,\n signature,\n ]), magicBytes);\n}\n/**\n * Validates a wrapped signature. Returns `true` if the wrapped signature is valid, `false` otherwise.\n *\n * @example\n * ```ts twoslash\n * import { SignatureErc6492 } from 'ox/erc6492'\n *\n * const valid = SignatureErc6492.validate('0xdeadbeef')\n * // @log: false\n * ```\n *\n * @param wrapped - The wrapped signature to validate.\n * @returns `true` if the wrapped signature is valid, `false` otherwise.\n */\nfunction validate(wrapped) {\n try {\n assert(wrapped);\n return true;\n }\n catch {\n return false;\n }\n}\n/** Thrown when the ERC-6492 wrapped signature is invalid. */\nclass InvalidWrappedSignatureError extends _core_Errors_js__WEBPACK_IMPORTED_MODULE_2__.BaseError {\n constructor(wrapped) {\n super(`Value \\`${wrapped}\\` is an invalid ERC-6492 wrapped signature.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'SignatureErc6492.InvalidWrappedSignatureError'\n });\n }\n}\n//# sourceMappingURL=SignatureErc6492.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2VyYzY0OTIvU2lnbmF0dXJlRXJjNjQ5Mi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBMEQ7QUFDZDtBQUNOO0FBQ3RDO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLG1CQUFtQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1AsUUFBUSwrQ0FBUztBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxZQUFZO0FBQ3hCLFlBQVksbUJBQW1CO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLGNBQWMsNEJBQTRCLEtBQUssaUJBQWlCO0FBQ2hFO0FBQ0E7QUFDQSwyQ0FBMkM7QUFDM0M7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKLGNBQWMsNEJBQTRCLEtBQUs7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQSxXQUFXLHNCQUFzQjtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLGtDQUFrQywwREFBb0IsQ0FBQyx3REFBa0I7QUFDekUsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksdUJBQXVCO0FBQ25DLFlBQVksbUJBQW1CO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsMkNBQTJDO0FBQzNDO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUCxZQUFZLHNCQUFzQjtBQUNsQyxXQUFXLGdEQUFVLENBQUMsMERBQW9CLENBQUMsd0RBQWtCO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sMkNBQTJDLHNEQUFnQjtBQUNsRTtBQUNBLHlCQUF5QixRQUFRO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBIiwic291cmNlcyI6WyIvaG9tZS93c2x4dC9jczQ3Mi9mYXJjYXN0ZXIvbm9kZV9tb2R1bGVzL3ZpZW0vbm9kZV9tb2R1bGVzL294L19lc20vZXJjNjQ5Mi9TaWduYXR1cmVFcmM2NDkyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEFiaVBhcmFtZXRlcnMgZnJvbSAnLi4vY29yZS9BYmlQYXJhbWV0ZXJzLmpzJztcbmltcG9ydCAqIGFzIEVycm9ycyBmcm9tICcuLi9jb3JlL0Vycm9ycy5qcyc7XG5pbXBvcnQgKiBhcyBIZXggZnJvbSAnLi4vY29yZS9IZXguanMnO1xuLyoqXG4gKiBNYWdpYyBieXRlcyB1c2VkIHRvIGlkZW50aWZ5IEVSQy02NDkyIHdyYXBwZWQgc2lnbmF0dXJlcy5cbiAqL1xuZXhwb3J0IGNvbnN0IG1hZ2ljQnl0ZXMgPSAnMHg2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyJztcbi8qKlxuICogRGVwbG95bGVzcyBFUkMtNjQ5MiBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIGJ5dGVjb2RlLlxuICovXG5leHBvcnQgY29uc3QgdW5pdmVyc2FsU2lnbmF0dXJlVmFsaWRhdG9yQnl0ZWNvZGUgPSAnMHg2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDQwNTE2MTA2OTQzODAzODA2MTA2OTQ4MzM5ODEwMTYwNDA4MTkwNTI2MTAwMmY5MTYxMDUxZTU2NWI2MDAwNjEwMDNjODQ4NDg0NjEwMDQ4NTY1YjkwNTA4MDYwMDA1MjYwMDE2MDFmZjM1YjYwMDA3ZjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2NDkyNjQ5MjY0OTI2MTAwNzQ4MzYxMDQwYzU2NWIwMzYxMDFlNzU3NjAwMDYwNjA4MDg0ODA2MDIwMDE5MDUxODEwMTkwNjEwMDkyOTE5MDYxMDU3NzU2NWI2MDQwNTE5Mjk1NTA5MDkzNTA5MTUwNjAwMDkwNjAwMTYwMDE2MGEwMWIwMzg1MTY5MDYxMDBiNjkwODU5MDYxMDVkZDU2NWI2MDAwNjA0MDUxODA4MzAzODE2MDAwODY1YWYxOTE1MDUwM2Q4MDYwMDA4MTE0NjEwMGYzNTc2MDQwNTE5MTUwNjAxZjE5NjAzZjNkMDExNjgyMDE2MDQwNTIzZDgyNTIzZDYwMDA2MDIwODQwMTNlNjEwMGY4NTY1YjYwNjA5MTUwNWI1MDUwOTA1MDg3NjAwMTYwMDE2MGEwMWIwMzE2M2I2MDAwMDM2MTAxNjA1NzgwNjEwMTYwNTc2MDQwNTE2MjQ2MWJjZDYwZTUxYjgxNTI2MDIwNjAwNDgyMDE1MjYwMWU2MDI0ODIwMTUyN2Y1MzY5Njc2ZTYxNzQ3NTcyNjU1NjYxNmM2OTY0NjE3NDZmNzIzYTIwNjQ2NTcwNmM2Zjc5NmQ2NTZlNzQwMDAwNjA0NDgyMDE1MjYwNjQwMTViNjA0MDUxODA5MTAzOTBmZDViNjA0MDUxNjMwYjEzNWQzZjYwZTExYjgwODI1MjkwNjAwMTYwMDE2MGEwMWIwMzhhMTY5MDYzMTYyNmJhN2U5MDYxMDE5MDkwOGI5MDg3OTA2MDA0MDE2MTA1Zjk1NjViNjAyMDYwNDA1MTgwODMwMzgxODY1YWZhMTU4MDE1NjEwMWFkNTczZDYwMDA4MDNlM2Q2MDAwZmQ1YjUwNTA1MDUwNjA0MDUxM2Q2MDFmMTk2MDFmODIwMTE2ODIwMTgwNjA0MDUyNTA4MTAxOTA2MTAxZDE5MTkwNjEwNjMzNTY1YjYwMDE2MDAxNjBlMDFiMDMxOTE2MTQ5NDUwNTA1MDUwNTA2MTA0MDU1NjViNjAwMTYwMDE2MGEwMWIwMzg0MTYzYjE1NjEwMjdhNTc2MDQwNTE2MzBiMTM1ZDNmNjBlMTFiODA4MjUyOTA2MDAxNjAwMTYwYTAxYjAzODYxNjkwNjMxNjI2YmE3ZTkwNjEwMjI3OTA4NzkwODc5MDYwMDQwMTYxMDVmOTU2NWI2MDIwNjA0MDUxODA4MzAzODE4NjVhZmExNTgwMTU2MTAyNDQ1NzNkNjAwMDgwM2UzZDYwMDBmZDViNTA1MDUwNTA2MDQwNTEzZDYwMWYxOTYwMWY4MjAxMTY4MjAxODA2MDQwNTI1MDgxMDE5MDYxMDI2ODkxOTA2MTA2MzM1NjViNjAwMTYwMDE2MGUwMWIwMzE5MTYxNDkwNTA2MTA0MDU1NjViODE1MTYwNDExNDYxMDJkZjU3NjA0MDUxNjI0NjFiY2Q2MGU1MWI4MTUyNjAyMDYwMDQ4MjAxNTI2MDNhNjAyNDgyMDE1MjYwMDA4MDUxNjAyMDYxMDY3NDgzMzk4MTUxOTE1MjYwNDQ4MjAxNTI3ZjNhMjA2OTZlNzY2MTZjNjk2NDIwNzM2OTY3NmU2MTc0NzU3MjY1MjA2YzY1NmU2Nzc0NjgwMDAwMDAwMDAwMDA2MDY0ODIwMTUyNjA4NDAxNjEwMTU3NTY1YjYxMDJlNzYxMDQyNTU2NWI1MDYwMjA4MjAxNTE2MDQwODA4NDAxNTE4NDUxODU5MzkyNjAwMDkxODU5MTkwODExMDYxMDMwYzU3NjEwMzBjNjEwNjVkNTY1YjAxNjAyMDAxNTE2MGY4MWM5MDUwNjAxYjgxMTQ4MDE1OTA2MTAzMmI1NzUwODA2MGZmMTY2MDFjMTQxNTViMTU2MTAzOGM1NzYwNDA1MTYyNDYxYmNkNjBlNTFiODE1MjYwMjA2MDA0ODIwMTUyNjAzYjYwMjQ4MjAxNTI2MDAwODA1MTYwMjA2MTA2NzQ4MzM5ODE1MTkxNTI2MDQ0ODIwMTUyN2YzYTIwNjk2ZTc2NjE2YzY5NjQyMDczNjk2NzZlNjE3NDc1NzI2NTIwNzYyMDc2NjE2Yzc1NjUwMDAwMDAwMDAwNjA2NDgyMDE1MjYwODQwMTYxMDE1NzU2NWI2MDQwODA1MTYwMDA4MTUyNjAyMDgxMDE4MDgzNTI4OTkwNTI2MGZmODMxNjkxODEwMTkxOTA5MTUyNjA2MDgxMDE4NDkwNTI2MDgwODEwMTgzOTA1MjYwMDE2MDAxNjBhMDFiMDM4OTE2OTA2MDAxOTA2MGEwMDE2MDIwNjA0MDUxNjAyMDgxMDM5MDgwODQwMzkwODU1YWZhMTU4MDE1NjEwM2VhNTczZDYwMDA4MDNlM2Q2MDAwZmQ1YjUwNTA1MDYwMjA2MDQwNTEwMzUxNjAwMTYwMDE2MGEwMWIwMzE2MTQ5NDUwNTA1MDUwNTA1YjkzOTI1MDUwNTA1NjViNjAwMDYwMjA4MjUxMTAxNTYxMDQxZDU3NjAwMDgwZmQ1YjUwODA1MTAxNTE5MDU2NWI2MDQwNTE4MDYwNjAwMTYwNDA1MjgwNjAwMzkwNjAyMDgyMDI4MDM2ODMzNzUwOTE5MjkxNTA1MDU2NWI2MDAxNjAwMTYwYTAxYjAzODExNjgxMTQ2MTA0NTg1NzYwMDA4MGZkNWI1MDU2NWI2MzRlNDg3YjcxNjBlMDFiNjAwMDUyNjA0MTYwMDQ1MjYwMjQ2MDAwZmQ1YjYwMDA1YjgzODExMDE1NjEwNDhjNTc4MTgxMDE1MTgzODIwMTUyNjAyMDAxNjEwNDc0NTY1YjUwNTA2MDAwOTEwMTUyNTY1YjYwMDA4MjYwMWY4MzAxMTI2MTA0YTY1NzYwMDA4MGZkNWI4MTUxNjAwMTYwMDE2MDQwMWIwMzgxMTExNTYxMDRiZjU3NjEwNGJmNjEwNDViNTY1YjYwNDA1MTYwMWY4MjAxNjAxZjE5OTA4MTE2NjAzZjAxMTY4MTAxNjAwMTYwMDE2MDQwMWIwMzgxMTE4MjgyMTAxNzE1NjEwNGVkNTc2MTA0ZWQ2MTA0NWI1NjViNjA0MDUyODE4MTUyODM4MjAxNjAyMDAxODUxMDE1NjEwNTA1NTc2MDAwODBmZDViNjEwNTE2ODI2MDIwODMwMTYwMjA4NzAxNjEwNDcxNTY1Yjk0OTM1MDUwNTA1MDU2NWI2MDAwODA2MDAwNjA2MDg0ODYwMzEyMTU2MTA1MzM1NzYwMDA4MGZkNWI4MzUxNjEwNTNlODE2MTA0NDM1NjViNjAyMDg1MDE1MTYwNDA4NjAxNTE5MTk0NTA5MjUwNjAwMTYwMDE2MDQwMWIwMzgxMTExNTYxMDU2MTU3NjAwMDgwZmQ1YjYxMDU2ZDg2ODI4NzAxNjEwNDk1NTY1YjkxNTA1MDkyNTA5MjUwOTI1NjViNjAwMDgwNjAwMDYwNjA4NDg2MDMxMjE1NjEwNThjNTc2MDAwODBmZDViODM1MTYxMDU5NzgxNjEwNDQzNTY1YjYwMjA4NTAxNTE5MDkzNTA2MDAxNjAwMTYwNDAxYjAzODExMTE1NjEwNWIzNTc2MDAwODBmZDViNjEwNWJmODY4Mjg3MDE2MTA0OTU1NjViNjA0MDg2MDE1MTkwOTM1MDkwNTA2MDAxNjAwMTYwNDAxYjAzODExMTE1NjEwNTYxNTc2MDAwODBmZDViNjAwMDgyNTE2MTA1ZWY4MTg0NjAyMDg3MDE2MTA0NzE1NjViOTE5MDkxMDE5MjkxNTA1MDU2NWI4MjgxNTI2MDQwNjAyMDgyMDE1MjYwMDA4MjUxODA2MDQwODQwMTUyNjEwNjFlODE2MDYwODUwMTYwMjA4NzAxNjEwNDcxNTY1YjYwMWYwMTYwMWYxOTE2OTE5MDkxMDE2MDYwMDE5MzkyNTA1MDUwNTY1YjYwMDA2MDIwODI4NDAzMTIxNTYxMDY0NTU3NjAwMDgwZmQ1YjgxNTE2MDAxNjAwMTYwZTAxYjAzMTk4MTE2ODExNDYxMDQwNTU3NjAwMDgwZmQ1YjYzNGU0ODdiNzE2MGUwMWI2MDAwNTI2MDMyNjAwNDUyNjAyNDYwMDBmZGZlNTM2OTY3NmU2MTc0NzU3MjY1NTY2MTZjNjk2NDYxNzQ2ZjcyMjM3MjY1NjM2Zjc2NjU3MjUzNjk2NzZlNjU3Mic7XG4vKipcbiAqIEFCSSBmb3IgdGhlIEVSQy02NDkyIHVuaXZlcnNhbCBkZXBsb3lsZXNzIHNpZ25hdHVyZSB2YWxpZGF0b3IgY29udHJhY3QuXG4gKlxuICogQ29uc3RydWN0b3IgcmV0dXJuIHZhbHVlIGlzIGAweDFgICh2YWxpZCkgb3IgYDB4MGAgKGludmFsaWQpLlxuICovXG5leHBvcnQgY29uc3QgdW5pdmVyc2FsU2lnbmF0dXJlVmFsaWRhdG9yQWJpID0gW1xuICAgIHtcbiAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ19zaWduZXInLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhZGRyZXNzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ19oYXNoJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMzMicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdfc2lnbmF0dXJlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnl0ZXMnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgc3RhdGVNdXRhYmlsaXR5OiAnbm9ucGF5YWJsZScsXG4gICAgICAgIHR5cGU6ICdjb25zdHJ1Y3RvcicsXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlucHV0czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdfc2lnbmVyJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWRkcmVzcycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdfaGFzaCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzMzInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnX3NpZ25hdHVyZScsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J5dGVzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBzdGF0ZU11dGFiaWxpdHk6ICdub25wYXlhYmxlJyxcbiAgICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgICAgbmFtZTogJ2lzVmFsaWRTaWcnLFxuICAgIH0sXG5dO1xuLyoqXG4gKiBBc3NlcnRzIHRoYXQgdGhlIHdyYXBwZWQgc2lnbmF0dXJlIGlzIHZhbGlkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlRXJjNjQ5MiB9IGZyb20gJ294L2VyYzY0OTInXG4gKlxuICogU2lnbmF0dXJlRXJjNjQ5Mi5hc3NlcnQoJzB4ZGVhZGJlZWYnKVxuICogLy8gQGVycm9yOiBJbnZhbGlkV3JhcHBlZFNpZ25hdHVyZUVycm9yOiBWYWx1ZSBgMHhkZWFkYmVlZmAgaXMgYW4gaW52YWxpZCBFUkMtNjQ5MiB3cmFwcGVkIHNpZ25hdHVyZS5cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB3cmFwcGVkIC0gVGhlIHdyYXBwZWQgc2lnbmF0dXJlIHRvIGFzc2VydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydCh3cmFwcGVkKSB7XG4gICAgaWYgKEhleC5zbGljZSh3cmFwcGVkLCAtMzIpICE9PSBtYWdpY0J5dGVzKVxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFdyYXBwZWRTaWduYXR1cmVFcnJvcih3cmFwcGVkKTtcbn1cbi8qKlxuICogUGFyc2VzIGFuIFtFUkMtNjQ5MiB3cmFwcGVkIHNpZ25hdHVyZV0oaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC02NDkyI3NwZWNpZmljYXRpb24pIGludG8gaXRzIGNvbnN0aXR1ZW50IHBhcnRzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogLy8gQG5vRXJyb3JzXG4gKiBpbXBvcnQgeyBTZWNwMjU2azEgfSBmcm9tICdveCdcbiAqIGltcG9ydCB7IFNpZ25hdHVyZUVyYzY0OTIgfSBmcm9tICdveC9lcmM2NDkyJyAvLyBbIWNvZGUgZm9jdXNdXG4gKlxuICogY29uc3Qgc2lnbmF0dXJlID0gU2VjcDI1NmsxLnNpZ24oe1xuICogICBwYXlsb2FkOiAnMHguLi4nLFxuICogICBwcml2YXRlS2V5OiAnMHguLi4nLFxuICogfSlcbiAqXG4gKiAvLyBJbnN0YW50aWF0ZSBmcm9tIHNlcmlhbGl6ZWQgZm9ybWF0LiAvLyBbIWNvZGUgZm9jdXNdXG4gKiBjb25zdCB3cmFwcGVkID0gU2lnbmF0dXJlRXJjNjQ5Mi5mcm9tKCcweC4uLicpIC8vIFshY29kZSBmb2N1c11cbiAqIC8vIEBsb2c6IHsgZGF0YTogJzB4Li4uJywgc2lnbmF0dXJlOiB7IC4uLiB9LCB0bzogJzB4Li4uJywgfSAvLyBbIWNvZGUgZm9jdXNdXG4gKlxuICogLy8gSW5zdGFudGlhdGUgZnJvbSBjb25zdGl0dWVudCBwYXJ0cy4gLy8gWyFjb2RlIGZvY3VzXVxuICogY29uc3Qgd3JhcHBlZCA9IFNpZ25hdHVyZUVyYzY0OTIuZnJvbSh7IC8vIFshY29kZSBmb2N1c11cbiAqICAgZGF0YTogJzB4Li4uJywgLy8gWyFjb2RlIGZvY3VzXVxuICogICBzaWduYXR1cmUsIC8vIFshY29kZSBmb2N1c11cbiAqICAgdG86ICcweC4uLicsIC8vIFshY29kZSBmb2N1c11cbiAqIH0pXG4gKiAvLyBAbG9nOiB7IGRhdGE6ICcweC4uLicsIHNpZ25hdHVyZTogeyAuLi4gfSwgdG86ICcweC4uLicsIH1cbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB3cmFwcGVkIC0gV3JhcHBlZCBzaWduYXR1cmUgdG8gcGFyc2UuXG4gKiBAcmV0dXJucyBXcmFwcGVkIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb20od3JhcHBlZCkge1xuICAgIGlmICh0eXBlb2Ygd3JhcHBlZCA9PT0gJ3N0cmluZycpXG4gICAgICAgIHJldHVybiB1bndyYXAod3JhcHBlZCk7XG4gICAgcmV0dXJuIHdyYXBwZWQ7XG59XG4vKipcbiAqIFBhcnNlcyBhbiBbRVJDLTY0OTIgd3JhcHBlZCBzaWduYXR1cmVdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNjQ5MiNzcGVjaWZpY2F0aW9uKSBpbnRvIGl0cyBjb25zdGl0dWVudCBwYXJ0cy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZUVyYzY0OTIgfSBmcm9tICdveC9lcmM2NDkyJ1xuICpcbiAqIGNvbnN0IHsgZGF0YSwgc2lnbmF0dXJlLCB0byB9ID0gU2lnbmF0dXJlRXJjNjQ5Mi51bndyYXAoJzB4Li4uJylcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB3cmFwcGVkIC0gV3JhcHBlZCBzaWduYXR1cmUgdG8gcGFyc2UuXG4gKiBAcmV0dXJucyBXcmFwcGVkIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVud3JhcCh3cmFwcGVkKSB7XG4gICAgYXNzZXJ0KHdyYXBwZWQpO1xuICAgIGNvbnN0IFt0bywgZGF0YSwgc2lnbmF0dXJlXSA9IEFiaVBhcmFtZXRlcnMuZGVjb2RlKEFiaVBhcmFtZXRlcnMuZnJvbSgnYWRkcmVzcywgYnl0ZXMsIGJ5dGVzJyksIHdyYXBwZWQpO1xuICAgIHJldHVybiB7IGRhdGEsIHNpZ25hdHVyZSwgdG8gfTtcbn1cbi8qKlxuICogU2VyaWFsaXplcyBhbiBbRVJDLTY0OTIgd3JhcHBlZCBzaWduYXR1cmVdKGh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtNjQ5MiNzcGVjaWZpY2F0aW9uKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNlY3AyNTZrMSwgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKiBpbXBvcnQgeyBTaWduYXR1cmVFcmM2NDkyIH0gZnJvbSAnb3gvZXJjNjQ5MicgLy8gWyFjb2RlIGZvY3VzXVxuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNlY3AyNTZrMS5zaWduKHtcbiAqICAgcGF5bG9hZDogJzB4Li4uJyxcbiAqICAgcHJpdmF0ZUtleTogJzB4Li4uJyxcbiAqIH0pXG4gKlxuICogY29uc3Qgd3JhcHBlZCA9IFNpZ25hdHVyZUVyYzY0OTIud3JhcCh7IC8vIFshY29kZSBmb2N1c11cbiAqICAgZGF0YTogJzB4ZGVhZGJlZWYnLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIHNpZ25hdHVyZTogU2lnbmF0dXJlLnRvSGV4KHNpZ25hdHVyZSksIC8vIFshY29kZSBmb2N1c11cbiAqICAgdG86ICcweDAwMDAwMDAwMjE5YWI1NDAzNTZjQkI4MzlDYmUwNTMwM2Q3NzA1RmEnLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiB9KSAvLyBbIWNvZGUgZm9jdXNdXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBXcmFwcGVkIHNpZ25hdHVyZSB0byBzZXJpYWxpemUuXG4gKiBAcmV0dXJucyBTZXJpYWxpemVkIHdyYXBwZWQgc2lnbmF0dXJlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd3JhcCh2YWx1ZSkge1xuICAgIGNvbnN0IHsgZGF0YSwgc2lnbmF0dXJlLCB0byB9ID0gdmFsdWU7XG4gICAgcmV0dXJuIEhleC5jb25jYXQoQWJpUGFyYW1ldGVycy5lbmNvZGUoQWJpUGFyYW1ldGVycy5mcm9tKCdhZGRyZXNzLCBieXRlcywgYnl0ZXMnKSwgW1xuICAgICAgICB0byxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgc2lnbmF0dXJlLFxuICAgIF0pLCBtYWdpY0J5dGVzKTtcbn1cbi8qKlxuICogVmFsaWRhdGVzIGEgd3JhcHBlZCBzaWduYXR1cmUuIFJldHVybnMgYHRydWVgIGlmIHRoZSB3cmFwcGVkIHNpZ25hdHVyZSBpcyB2YWxpZCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiBpbXBvcnQgeyBTaWduYXR1cmVFcmM2NDkyIH0gZnJvbSAnb3gvZXJjNjQ5MidcbiAqXG4gKiBjb25zdCB2YWxpZCA9IFNpZ25hdHVyZUVyYzY0OTIudmFsaWRhdGUoJzB4ZGVhZGJlZWYnKVxuICogLy8gQGxvZzogZmFsc2VcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB3cmFwcGVkIC0gVGhlIHdyYXBwZWQgc2lnbmF0dXJlIHRvIHZhbGlkYXRlLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB3cmFwcGVkIHNpZ25hdHVyZSBpcyB2YWxpZCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZSh3cmFwcGVkKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgYXNzZXJ0KHdyYXBwZWQpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY2F0Y2gge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuLyoqIFRocm93biB3aGVuIHRoZSBFUkMtNjQ5MiB3cmFwcGVkIHNpZ25hdHVyZSBpcyBpbnZhbGlkLiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRXcmFwcGVkU2lnbmF0dXJlRXJyb3IgZXh0ZW5kcyBFcnJvcnMuQmFzZUVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih3cmFwcGVkKSB7XG4gICAgICAgIHN1cGVyKGBWYWx1ZSBcXGAke3dyYXBwZWR9XFxgIGlzIGFuIGludmFsaWQgRVJDLTY0OTIgd3JhcHBlZCBzaWduYXR1cmUuYCk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6ICdTaWduYXR1cmVFcmM2NDkyLkludmFsaWRXcmFwcGVkU2lnbmF0dXJlRXJyb3InXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVNpZ25hdHVyZUVyYzY0OTIuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/erc6492/SignatureErc6492.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/erc8010/SignatureErc8010.js": /*!****************************************************************************!*\ !*** ./node_modules/viem/node_modules/ox/_esm/erc8010/SignatureErc8010.js ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InvalidWrappedSignatureError: () => (/* binding */ InvalidWrappedSignatureError),\n/* harmony export */ assert: () => (/* binding */ assert),\n/* harmony export */ from: () => (/* binding */ from),\n/* harmony export */ magicBytes: () => (/* binding */ magicBytes),\n/* harmony export */ suffixParameters: () => (/* binding */ suffixParameters),\n/* harmony export */ unwrap: () => (/* binding */ unwrap),\n/* harmony export */ validate: () => (/* binding */ validate),\n/* harmony export */ wrap: () => (/* binding */ wrap)\n/* harmony export */ });\n/* harmony import */ var _core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AbiParameters.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/AbiParameters.js\");\n/* harmony import */ var _core_Authorization_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/Authorization.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Authorization.js\");\n/* harmony import */ var _core_Errors_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/Errors.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Errors.js\");\n/* harmony import */ var _core_Hex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/Hex.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Hex.js\");\n/* harmony import */ var _core_Secp256k1_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/Secp256k1.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Secp256k1.js\");\n/* harmony import */ var _core_Signature_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/Signature.js */ \"(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/core/Signature.js\");\n\n\n\n\n\n\n/**\n * Magic bytes used to identify ERC-8010 wrapped signatures.\n */\nconst magicBytes = '0x8010801080108010801080108010801080108010801080108010801080108010';\n/** Suffix ABI parameters for the ERC-8010 wrapped signature. */\nconst suffixParameters = _core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.from('(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data');\n/**\n * Asserts that the wrapped signature is valid.\n *\n * @example\n * ```ts twoslash\n * import { SignatureErc8010 } from 'ox/erc8010'\n *\n * SignatureErc8010.assert('0xdeadbeef')\n * // @error: InvalidWrappedSignatureError: Value `0xdeadbeef` is an invalid ERC-8010 wrapped signature.\n * ```\n *\n * @param value - The value to assert.\n */\nfunction assert(value) {\n if (typeof value === 'string') {\n if (_core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(value, -32) !== magicBytes)\n throw new InvalidWrappedSignatureError(value);\n }\n else\n _core_Signature_js__WEBPACK_IMPORTED_MODULE_2__.assert(value.authorization);\n}\n/**\n * Parses an [ERC-8010 wrapped signature](https://github.com/jxom/ERCs/blob/16f7e3891fff2e1e9c25dea0485497739db8a816/ERCS/erc-8010.md) into its constituent parts.\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Secp256k1 } from 'ox'\n * import { SignatureErc8010 } from 'ox/erc8010' // [!code focus]\n *\n * const signature = Secp256k1.sign({\n * payload: '0x...',\n * privateKey: '0x...',\n * })\n *\n * // Instantiate from serialized format. // [!code focus]\n * const wrapped = SignatureErc8010.from('0x...') // [!code focus]\n * // @log: { authorization: { ... }, data: '0x...', signature: { ... } } // [!code focus]\n *\n * // Instantiate from constituent parts. // [!code focus]\n * const wrapped = SignatureErc8010.from({ // [!code focus]\n * authorization: { ... }, // [!code focus]\n * data: '0x...', // [!code focus]\n * signature, // [!code focus]\n * })\n * // @log: { authorization: { ... }, data: '0x...', signature: { ... } }\n * ```\n *\n * @param value - Value to parse.\n * @returns Parsed value.\n */\nfunction from(value) {\n if (typeof value === 'string')\n return unwrap(value);\n return value;\n}\n/**\n * Unwraps an [ERC-8010 wrapped signature](https://github.com/jxom/ERCs/blob/16f7e3891fff2e1e9c25dea0485497739db8a816/ERCS/erc-8010.md) into its constituent parts.\n *\n * @example\n * ```ts twoslash\n * import { SignatureErc8010 } from 'ox/erc8010'\n *\n * const { authorization, data, signature } = SignatureErc8010.unwrap('0x...')\n * ```\n *\n * @param wrapped - Wrapped signature to unwrap.\n * @returns Unwrapped signature.\n */\nfunction unwrap(wrapped) {\n assert(wrapped);\n const suffixLength = _core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.toNumber(_core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(wrapped, -64, -32));\n const suffix = _core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(wrapped, -suffixLength - 64, -64);\n const signature = _core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.slice(wrapped, 0, -suffixLength - 64);\n const [auth, to, data] = _core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.decode(suffixParameters, suffix);\n const authorization = _core_Authorization_js__WEBPACK_IMPORTED_MODULE_3__.from({\n address: auth.delegation,\n chainId: Number(auth.chainId),\n nonce: auth.nonce,\n yParity: auth.yParity,\n r: auth.r,\n s: auth.s,\n });\n return {\n authorization,\n signature,\n ...(data && data !== '0x' ? { data, to } : {}),\n };\n}\n/**\n * Wraps a signature into [ERC-8010 format](https://github.com/jxom/ERCs/blob/16f7e3891fff2e1e9c25dea0485497739db8a816/ERCS/erc-8010.md).\n *\n * @example\n * ```ts twoslash\n * // @noErrors\n * import { Secp256k1, Signature } from 'ox'\n * import { SignatureErc8010 } from 'ox/erc8010' // [!code focus]\n *\n * const signature = Secp256k1.sign({\n * payload: '0x...',\n * privateKey: '0x...',\n * })\n *\n * const wrapped = SignatureErc8010.wrap({ // [!code focus]\n * authorization: { ... }, // [!code focus]\n * data: '0xdeadbeef', // [!code focus]\n * signature: Signature.toHex(signature), // [!code focus]\n * }) // [!code focus]\n * ```\n *\n * @param value - Values to wrap.\n * @returns Wrapped signature.\n */\nfunction wrap(value) {\n const { data, signature } = value;\n assert(value);\n const self = _core_Secp256k1_js__WEBPACK_IMPORTED_MODULE_4__.recoverAddress({\n payload: _core_Authorization_js__WEBPACK_IMPORTED_MODULE_3__.getSignPayload(value.authorization),\n signature: _core_Signature_js__WEBPACK_IMPORTED_MODULE_2__.from(value.authorization),\n });\n const suffix = _core_AbiParameters_js__WEBPACK_IMPORTED_MODULE_0__.encode(suffixParameters, [\n {\n ...value.authorization,\n delegation: value.authorization.address,\n chainId: BigInt(value.authorization.chainId),\n },\n value.to ?? self,\n data ?? '0x',\n ]);\n const suffixLength = _core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.fromNumber(_core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.size(suffix), { size: 32 });\n return _core_Hex_js__WEBPACK_IMPORTED_MODULE_1__.concat(signature, suffix, suffixLength, magicBytes);\n}\n/**\n * Validates a wrapped signature. Returns `true` if the wrapped signature is valid, `false` otherwise.\n *\n * @example\n * ```ts twoslash\n * import { SignatureErc8010 } from 'ox/erc8010'\n *\n * const valid = SignatureErc8010.validate('0xdeadbeef')\n * // @log: false\n * ```\n *\n * @param value - The value to validate.\n * @returns `true` if the value is valid, `false` otherwise.\n */\nfunction validate(value) {\n try {\n assert(value);\n return true;\n }\n catch {\n return false;\n }\n}\n/** Thrown when the ERC-8010 wrapped signature is invalid. */\nclass InvalidWrappedSignatureError extends _core_Errors_js__WEBPACK_IMPORTED_MODULE_5__.BaseError {\n constructor(wrapped) {\n super(`Value \\`${wrapped}\\` is an invalid ERC-8010 wrapped signature.`);\n Object.defineProperty(this, \"name\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 'SignatureErc8010.InvalidWrappedSignatureError'\n });\n }\n}\n//# sourceMappingURL=SignatureErc8010.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy92aWVtL25vZGVfbW9kdWxlcy9veC9fZXNtL2VyYzgwMTAvU2lnbmF0dXJlRXJjODAxMC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUEwRDtBQUNBO0FBQ2Q7QUFDTjtBQUNZO0FBQ0E7QUFDbEQ7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNPLHlCQUF5Qix3REFBa0I7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksbUJBQW1CO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLFlBQVksK0NBQVM7QUFDckI7QUFDQTtBQUNBO0FBQ0EsUUFBUSxzREFBZ0I7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLFlBQVk7QUFDeEIsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsY0FBYyxpQkFBaUIsS0FBSyw4QkFBOEIsUUFBUTtBQUMxRTtBQUNBO0FBQ0EsMkNBQTJDO0FBQzNDLHNCQUFzQixLQUFLO0FBQzNCO0FBQ0E7QUFDQSxJQUFJO0FBQ0osY0FBYyxpQkFBaUIsS0FBSyw4QkFBOEI7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxtQkFBbUI7QUFDL0I7QUFDQSxXQUFXLGlDQUFpQztBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBLHlCQUF5QixrREFBWSxDQUFDLCtDQUFTO0FBQy9DLG1CQUFtQiwrQ0FBUztBQUM1QixzQkFBc0IsK0NBQVM7QUFDL0IsNkJBQTZCLDBEQUFvQjtBQUNqRCwwQkFBMEIsd0RBQWtCO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsV0FBVyxJQUFJO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLHVCQUF1QjtBQUNuQyxZQUFZLG1CQUFtQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBLDJDQUEyQztBQUMzQyxzQkFBc0IsS0FBSztBQUMzQjtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTztBQUNQLFlBQVksa0JBQWtCO0FBQzlCO0FBQ0EsaUJBQWlCLDhEQUF3QjtBQUN6QyxpQkFBaUIsa0VBQTRCO0FBQzdDLG1CQUFtQixvREFBYztBQUNqQyxLQUFLO0FBQ0wsbUJBQW1CLDBEQUFvQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsb0RBQWMsQ0FBQyw4Q0FBUSxZQUFZLFVBQVU7QUFDdEUsV0FBVyxnREFBVTtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLG1CQUFtQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTywyQ0FBMkMsc0RBQWdCO0FBQ2xFO0FBQ0EseUJBQXlCLFFBQVE7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvdmllbS9ub2RlX21vZHVsZXMvb3gvX2VzbS9lcmM4MDEwL1NpZ25hdHVyZUVyYzgwMTAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQWJpUGFyYW1ldGVycyBmcm9tICcuLi9jb3JlL0FiaVBhcmFtZXRlcnMuanMnO1xuaW1wb3J0ICogYXMgQXV0aG9yaXphdGlvbiBmcm9tICcuLi9jb3JlL0F1dGhvcml6YXRpb24uanMnO1xuaW1wb3J0ICogYXMgRXJyb3JzIGZyb20gJy4uL2NvcmUvRXJyb3JzLmpzJztcbmltcG9ydCAqIGFzIEhleCBmcm9tICcuLi9jb3JlL0hleC5qcyc7XG5pbXBvcnQgKiBhcyBTZWNwMjU2azEgZnJvbSAnLi4vY29yZS9TZWNwMjU2azEuanMnO1xuaW1wb3J0ICogYXMgU2lnbmF0dXJlIGZyb20gJy4uL2NvcmUvU2lnbmF0dXJlLmpzJztcbi8qKlxuICogTWFnaWMgYnl0ZXMgdXNlZCB0byBpZGVudGlmeSBFUkMtODAxMCB3cmFwcGVkIHNpZ25hdHVyZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBtYWdpY0J5dGVzID0gJzB4ODAxMDgwMTA4MDEwODAxMDgwMTA4MDEwODAxMDgwMTA4MDEwODAxMDgwMTA4MDEwODAxMDgwMTA4MDEwODAxMCc7XG4vKiogU3VmZml4IEFCSSBwYXJhbWV0ZXJzIGZvciB0aGUgRVJDLTgwMTAgd3JhcHBlZCBzaWduYXR1cmUuICovXG5leHBvcnQgY29uc3Qgc3VmZml4UGFyYW1ldGVycyA9IEFiaVBhcmFtZXRlcnMuZnJvbSgnKHVpbnQyNTYgY2hhaW5JZCwgYWRkcmVzcyBkZWxlZ2F0aW9uLCB1aW50MjU2IG5vbmNlLCB1aW50OCB5UGFyaXR5LCB1aW50MjU2IHIsIHVpbnQyNTYgcyksIGFkZHJlc3MgdG8sIGJ5dGVzIGRhdGEnKTtcbi8qKlxuICogQXNzZXJ0cyB0aGF0IHRoZSB3cmFwcGVkIHNpZ25hdHVyZSBpcyB2YWxpZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIGltcG9ydCB7IFNpZ25hdHVyZUVyYzgwMTAgfSBmcm9tICdveC9lcmM4MDEwJ1xuICpcbiAqIFNpZ25hdHVyZUVyYzgwMTAuYXNzZXJ0KCcweGRlYWRiZWVmJylcbiAqIC8vIEBlcnJvcjogSW52YWxpZFdyYXBwZWRTaWduYXR1cmVFcnJvcjogVmFsdWUgYDB4ZGVhZGJlZWZgIGlzIGFuIGludmFsaWQgRVJDLTgwMTAgd3JhcHBlZCBzaWduYXR1cmUuXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gYXNzZXJ0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KHZhbHVlKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKEhleC5zbGljZSh2YWx1ZSwgLTMyKSAhPT0gbWFnaWNCeXRlcylcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkV3JhcHBlZFNpZ25hdHVyZUVycm9yKHZhbHVlKTtcbiAgICB9XG4gICAgZWxzZVxuICAgICAgICBTaWduYXR1cmUuYXNzZXJ0KHZhbHVlLmF1dGhvcml6YXRpb24pO1xufVxuLyoqXG4gKiBQYXJzZXMgYW4gW0VSQy04MDEwIHdyYXBwZWQgc2lnbmF0dXJlXShodHRwczovL2dpdGh1Yi5jb20vanhvbS9FUkNzL2Jsb2IvMTZmN2UzODkxZmZmMmUxZTljMjVkZWEwNDg1NDk3NzM5ZGI4YTgxNi9FUkNTL2VyYy04MDEwLm1kKSBpbnRvIGl0cyBjb25zdGl0dWVudCBwYXJ0cy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHMgdHdvc2xhc2hcbiAqIC8vIEBub0Vycm9yc1xuICogaW1wb3J0IHsgU2VjcDI1NmsxIH0gZnJvbSAnb3gnXG4gKiBpbXBvcnQgeyBTaWduYXR1cmVFcmM4MDEwIH0gZnJvbSAnb3gvZXJjODAxMCcgLy8gWyFjb2RlIGZvY3VzXVxuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNlY3AyNTZrMS5zaWduKHtcbiAqICAgcGF5bG9hZDogJzB4Li4uJyxcbiAqICAgcHJpdmF0ZUtleTogJzB4Li4uJyxcbiAqIH0pXG4gKlxuICogLy8gSW5zdGFudGlhdGUgZnJvbSBzZXJpYWxpemVkIGZvcm1hdC4gLy8gWyFjb2RlIGZvY3VzXVxuICogY29uc3Qgd3JhcHBlZCA9IFNpZ25hdHVyZUVyYzgwMTAuZnJvbSgnMHguLi4nKSAvLyBbIWNvZGUgZm9jdXNdXG4gKiAvLyBAbG9nOiB7IGF1dGhvcml6YXRpb246IHsgLi4uIH0sIGRhdGE6ICcweC4uLicsIHNpZ25hdHVyZTogeyAuLi4gfSB9IC8vIFshY29kZSBmb2N1c11cbiAqXG4gKiAvLyBJbnN0YW50aWF0ZSBmcm9tIGNvbnN0aXR1ZW50IHBhcnRzLiAvLyBbIWNvZGUgZm9jdXNdXG4gKiBjb25zdCB3cmFwcGVkID0gU2lnbmF0dXJlRXJjODAxMC5mcm9tKHsgLy8gWyFjb2RlIGZvY3VzXVxuICogICBhdXRob3JpemF0aW9uOiB7IC4uLiB9LCAvLyBbIWNvZGUgZm9jdXNdXG4gKiAgIGRhdGE6ICcweC4uLicsIC8vIFshY29kZSBmb2N1c11cbiAqICAgc2lnbmF0dXJlLCAvLyBbIWNvZGUgZm9jdXNdXG4gKiB9KVxuICogLy8gQGxvZzogeyBhdXRob3JpemF0aW9uOiB7IC4uLiB9LCBkYXRhOiAnMHguLi4nLCBzaWduYXR1cmU6IHsgLi4uIH0gfVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVmFsdWUgdG8gcGFyc2UuXG4gKiBAcmV0dXJucyBQYXJzZWQgdmFsdWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKHZhbHVlKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpXG4gICAgICAgIHJldHVybiB1bndyYXAodmFsdWUpO1xuICAgIHJldHVybiB2YWx1ZTtcbn1cbi8qKlxuICogVW53cmFwcyBhbiBbRVJDLTgwMTAgd3JhcHBlZCBzaWduYXR1cmVdKGh0dHBzOi8vZ2l0aHViLmNvbS9qeG9tL0VSQ3MvYmxvYi8xNmY3ZTM4OTFmZmYyZTFlOWMyNWRlYTA0ODU0OTc3MzlkYjhhODE2L0VSQ1MvZXJjLTgwMTAubWQpIGludG8gaXRzIGNvbnN0aXR1ZW50IHBhcnRzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlRXJjODAxMCB9IGZyb20gJ294L2VyYzgwMTAnXG4gKlxuICogY29uc3QgeyBhdXRob3JpemF0aW9uLCBkYXRhLCBzaWduYXR1cmUgfSA9IFNpZ25hdHVyZUVyYzgwMTAudW53cmFwKCcweC4uLicpXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gd3JhcHBlZCAtIFdyYXBwZWQgc2lnbmF0dXJlIHRvIHVud3JhcC5cbiAqIEByZXR1cm5zIFVud3JhcHBlZCBzaWduYXR1cmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bndyYXAod3JhcHBlZCkge1xuICAgIGFzc2VydCh3cmFwcGVkKTtcbiAgICBjb25zdCBzdWZmaXhMZW5ndGggPSBIZXgudG9OdW1iZXIoSGV4LnNsaWNlKHdyYXBwZWQsIC02NCwgLTMyKSk7XG4gICAgY29uc3Qgc3VmZml4ID0gSGV4LnNsaWNlKHdyYXBwZWQsIC1zdWZmaXhMZW5ndGggLSA2NCwgLTY0KTtcbiAgICBjb25zdCBzaWduYXR1cmUgPSBIZXguc2xpY2Uod3JhcHBlZCwgMCwgLXN1ZmZpeExlbmd0aCAtIDY0KTtcbiAgICBjb25zdCBbYXV0aCwgdG8sIGRhdGFdID0gQWJpUGFyYW1ldGVycy5kZWNvZGUoc3VmZml4UGFyYW1ldGVycywgc3VmZml4KTtcbiAgICBjb25zdCBhdXRob3JpemF0aW9uID0gQXV0aG9yaXphdGlvbi5mcm9tKHtcbiAgICAgICAgYWRkcmVzczogYXV0aC5kZWxlZ2F0aW9uLFxuICAgICAgICBjaGFpbklkOiBOdW1iZXIoYXV0aC5jaGFpbklkKSxcbiAgICAgICAgbm9uY2U6IGF1dGgubm9uY2UsXG4gICAgICAgIHlQYXJpdHk6IGF1dGgueVBhcml0eSxcbiAgICAgICAgcjogYXV0aC5yLFxuICAgICAgICBzOiBhdXRoLnMsXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYXV0aG9yaXphdGlvbixcbiAgICAgICAgc2lnbmF0dXJlLFxuICAgICAgICAuLi4oZGF0YSAmJiBkYXRhICE9PSAnMHgnID8geyBkYXRhLCB0byB9IDoge30pLFxuICAgIH07XG59XG4vKipcbiAqIFdyYXBzIGEgc2lnbmF0dXJlIGludG8gW0VSQy04MDEwIGZvcm1hdF0oaHR0cHM6Ly9naXRodWIuY29tL2p4b20vRVJDcy9ibG9iLzE2ZjdlMzg5MWZmZjJlMWU5YzI1ZGVhMDQ4NTQ5NzczOWRiOGE4MTYvRVJDUy9lcmMtODAxMC5tZCkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzIHR3b3NsYXNoXG4gKiAvLyBAbm9FcnJvcnNcbiAqIGltcG9ydCB7IFNlY3AyNTZrMSwgU2lnbmF0dXJlIH0gZnJvbSAnb3gnXG4gKiBpbXBvcnQgeyBTaWduYXR1cmVFcmM4MDEwIH0gZnJvbSAnb3gvZXJjODAxMCcgLy8gWyFjb2RlIGZvY3VzXVxuICpcbiAqIGNvbnN0IHNpZ25hdHVyZSA9IFNlY3AyNTZrMS5zaWduKHtcbiAqICAgcGF5bG9hZDogJzB4Li4uJyxcbiAqICAgcHJpdmF0ZUtleTogJzB4Li4uJyxcbiAqIH0pXG4gKlxuICogY29uc3Qgd3JhcHBlZCA9IFNpZ25hdHVyZUVyYzgwMTAud3JhcCh7IC8vIFshY29kZSBmb2N1c11cbiAqICAgYXV0aG9yaXphdGlvbjogeyAuLi4gfSwgLy8gWyFjb2RlIGZvY3VzXVxuICogICBkYXRhOiAnMHhkZWFkYmVlZicsIC8vIFshY29kZSBmb2N1c11cbiAqICAgc2lnbmF0dXJlOiBTaWduYXR1cmUudG9IZXgoc2lnbmF0dXJlKSwgLy8gWyFjb2RlIGZvY3VzXVxuICogfSkgLy8gWyFjb2RlIGZvY3VzXVxuICogYGBgXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVmFsdWVzIHRvIHdyYXAuXG4gKiBAcmV0dXJucyBXcmFwcGVkIHNpZ25hdHVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdyYXAodmFsdWUpIHtcbiAgICBjb25zdCB7IGRhdGEsIHNpZ25hdHVyZSB9ID0gdmFsdWU7XG4gICAgYXNzZXJ0KHZhbHVlKTtcbiAgICBjb25zdCBzZWxmID0gU2VjcDI1NmsxLnJlY292ZXJBZGRyZXNzKHtcbiAgICAgICAgcGF5bG9hZDogQXV0aG9yaXphdGlvbi5nZXRTaWduUGF5bG9hZCh2YWx1ZS5hdXRob3JpemF0aW9uKSxcbiAgICAgICAgc2lnbmF0dXJlOiBTaWduYXR1cmUuZnJvbSh2YWx1ZS5hdXRob3JpemF0aW9uKSxcbiAgICB9KTtcbiAgICBjb25zdCBzdWZmaXggPSBBYmlQYXJhbWV0ZXJzLmVuY29kZShzdWZmaXhQYXJhbWV0ZXJzLCBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIC4uLnZhbHVlLmF1dGhvcml6YXRpb24sXG4gICAgICAgICAgICBkZWxlZ2F0aW9uOiB2YWx1ZS5hdXRob3JpemF0aW9uLmFkZHJlc3MsXG4gICAgICAgICAgICBjaGFpbklkOiBCaWdJbnQodmFsdWUuYXV0aG9yaXphdGlvbi5jaGFpbklkKSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsdWUudG8gPz8gc2VsZixcbiAgICAgICAgZGF0YSA/PyAnMHgnLFxuICAgIF0pO1xuICAgIGNvbnN0IHN1ZmZpeExlbmd0aCA9IEhleC5mcm9tTnVtYmVyKEhleC5zaXplKHN1ZmZpeCksIHsgc2l6ZTogMzIgfSk7XG4gICAgcmV0dXJuIEhleC5jb25jYXQoc2lnbmF0dXJlLCBzdWZmaXgsIHN1ZmZpeExlbmd0aCwgbWFnaWNCeXRlcyk7XG59XG4vKipcbiAqIFZhbGlkYXRlcyBhIHdyYXBwZWQgc2lnbmF0dXJlLiBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgd3JhcHBlZCBzaWduYXR1cmUgaXMgdmFsaWQsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0cyB0d29zbGFzaFxuICogaW1wb3J0IHsgU2lnbmF0dXJlRXJjODAxMCB9IGZyb20gJ294L2VyYzgwMTAnXG4gKlxuICogY29uc3QgdmFsaWQgPSBTaWduYXR1cmVFcmM4MDEwLnZhbGlkYXRlKCcweGRlYWRiZWVmJylcbiAqIC8vIEBsb2c6IGZhbHNlXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdmFsaWRhdGUuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHZhbHVlIGlzIHZhbGlkLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZhbHVlKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgYXNzZXJ0KHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNhdGNoIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbi8qKiBUaHJvd24gd2hlbiB0aGUgRVJDLTgwMTAgd3JhcHBlZCBzaWduYXR1cmUgaXMgaW52YWxpZC4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkV3JhcHBlZFNpZ25hdHVyZUVycm9yIGV4dGVuZHMgRXJyb3JzLkJhc2VFcnJvciB7XG4gICAgY29uc3RydWN0b3Iod3JhcHBlZCkge1xuICAgICAgICBzdXBlcihgVmFsdWUgXFxgJHt3cmFwcGVkfVxcYCBpcyBhbiBpbnZhbGlkIEVSQy04MDEwIHdyYXBwZWQgc2lnbmF0dXJlLmApO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgXCJuYW1lXCIsIHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiAnU2lnbmF0dXJlRXJjODAxMC5JbnZhbGlkV3JhcHBlZFNpZ25hdHVyZUVycm9yJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1TaWduYXR1cmVFcmM4MDEwLmpzLm1hcCJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/viem/node_modules/ox/_esm/erc8010/SignatureErc8010.js\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/zustand/esm/middleware.mjs": /*!*************************************************!*\ !*** ./node_modules/zustand/esm/middleware.mjs ***! \*************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ combine: () => (/* binding */ combine),\n/* harmony export */ createJSONStorage: () => (/* binding */ createJSONStorage),\n/* harmony export */ devtools: () => (/* binding */ devtools),\n/* harmony export */ persist: () => (/* binding */ persist),\n/* harmony export */ redux: () => (/* binding */ redux),\n/* harmony export */ subscribeWithSelector: () => (/* binding */ subscribeWithSelector)\n/* harmony export */ });\nconst reduxImpl = (reducer, initial) => (set, _get, api) => {\n api.dispatch = (action) => {\n set((state) => reducer(state, action), false, action);\n return action;\n };\n api.dispatchFromDevtools = true;\n return { dispatch: (...a) => api.dispatch(...a), ...initial };\n};\nconst redux = reduxImpl;\n\nconst trackedConnections = /* @__PURE__ */ new Map();\nconst getTrackedConnectionState = (name) => {\n const api = trackedConnections.get(name);\n if (!api) return {};\n return Object.fromEntries(\n Object.entries(api.stores).map(([key, api2]) => [key, api2.getState()])\n );\n};\nconst extractConnectionInformation = (store, extensionConnector, options) => {\n if (store === undefined) {\n return {\n type: \"untracked\",\n connection: extensionConnector.connect(options)\n };\n }\n const existingConnection = trackedConnections.get(options.name);\n if (existingConnection) {\n return { type: \"tracked\", store, ...existingConnection };\n }\n const newConnection = {\n connection: extensionConnector.connect(options),\n stores: {}\n };\n trackedConnections.set(options.name, newConnection);\n return { type: \"tracked\", store, ...newConnection };\n};\nconst devtoolsImpl = (fn, devtoolsOptions = {}) => (set, get, api) => {\n const { enabled, anonymousActionType, store, ...options } = devtoolsOptions;\n let extensionConnector;\n try {\n extensionConnector = (enabled != null ? enabled : ( false ? 0 : void 0) !== \"production\") && window.__REDUX_DEVTOOLS_EXTENSION__;\n } catch (e) {\n }\n if (!extensionConnector) {\n return fn(set, get, api);\n }\n const { connection, ...connectionInformation } = extractConnectionInformation(store, extensionConnector, options);\n let isRecording = true;\n api.setState = (state, replace, nameOrAction) => {\n const r = set(state, replace);\n if (!isRecording) return r;\n const action = nameOrAction === undefined ? { type: anonymousActionType || \"anonymous\" } : typeof nameOrAction === \"string\" ? { type: nameOrAction } : nameOrAction;\n if (store === undefined) {\n connection == null ? undefined : connection.send(action, get());\n return r;\n }\n connection == null ? undefined : connection.send(\n {\n ...action,\n type: `${store}/${action.type}`\n },\n {\n ...getTrackedConnectionState(options.name),\n [store]: api.getState()\n }\n );\n return r;\n };\n const setStateFromDevtools = (...a) => {\n const originalIsRecording = isRecording;\n isRecording = false;\n set(...a);\n isRecording = originalIsRecording;\n };\n const initialState = fn(api.setState, get, api);\n if (connectionInformation.type === \"untracked\") {\n connection == null ? undefined : connection.init(initialState);\n } else {\n connectionInformation.stores[connectionInformation.store] = api;\n connection == null ? undefined : connection.init(\n Object.fromEntries(\n Object.entries(connectionInformation.stores).map(([key, store2]) => [\n key,\n key === connectionInformation.store ? initialState : store2.getState()\n ])\n )\n );\n }\n if (api.dispatchFromDevtools && typeof api.dispatch === \"function\") {\n let didWarnAboutReservedActionType = false;\n const originalDispatch = api.dispatch;\n api.dispatch = (...a) => {\n if ( true && a[0].type === \"__setState\" && !didWarnAboutReservedActionType) {\n console.warn(\n '[zustand devtools middleware] \"__setState\" action type is reserved to set state from the devtools. Avoid using it.'\n );\n didWarnAboutReservedActionType = true;\n }\n originalDispatch(...a);\n };\n }\n connection.subscribe((message) => {\n var _a;\n switch (message.type) {\n case \"ACTION\":\n if (typeof message.payload !== \"string\") {\n console.error(\n \"[zustand devtools middleware] Unsupported action format\"\n );\n return;\n }\n return parseJsonThen(\n message.payload,\n (action) => {\n if (action.type === \"__setState\") {\n if (store === undefined) {\n setStateFromDevtools(action.state);\n return;\n }\n if (Object.keys(action.state).length !== 1) {\n console.error(\n `\n [zustand devtools middleware] Unsupported __setState action format.\n When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),\n and value of this only key should be a state object. Example: { \"type\": \"__setState\", \"state\": { \"abc123Store\": { \"foo\": \"bar\" } } }\n `\n );\n }\n const stateFromDevtools = action.state[store];\n if (stateFromDevtools === undefined || stateFromDevtools === null) {\n return;\n }\n if (JSON.stringify(api.getState()) !== JSON.stringify(stateFromDevtools)) {\n setStateFromDevtools(stateFromDevtools);\n }\n return;\n }\n if (!api.dispatchFromDevtools) return;\n if (typeof api.dispatch !== \"function\") return;\n api.dispatch(action);\n }\n );\n case \"DISPATCH\":\n switch (message.payload.type) {\n case \"RESET\":\n setStateFromDevtools(initialState);\n if (store === undefined) {\n return connection == null ? undefined : connection.init(api.getState());\n }\n return connection == null ? undefined : connection.init(getTrackedConnectionState(options.name));\n case \"COMMIT\":\n if (store === undefined) {\n connection == null ? undefined : connection.init(api.getState());\n return;\n }\n return connection == null ? undefined : connection.init(getTrackedConnectionState(options.name));\n case \"ROLLBACK\":\n return parseJsonThen(message.state, (state) => {\n if (store === undefined) {\n setStateFromDevtools(state);\n connection == null ? undefined : connection.init(api.getState());\n return;\n }\n setStateFromDevtools(state[store]);\n connection == null ? undefined : connection.init(getTrackedConnectionState(options.name));\n });\n case \"JUMP_TO_STATE\":\n case \"JUMP_TO_ACTION\":\n return parseJsonThen(message.state, (state) => {\n if (store === undefined) {\n setStateFromDevtools(state);\n return;\n }\n if (JSON.stringify(api.getState()) !== JSON.stringify(state[store])) {\n setStateFromDevtools(state[store]);\n }\n });\n case \"IMPORT_STATE\": {\n const { nextLiftedState } = message.payload;\n const lastComputedState = (_a = nextLiftedState.computedStates.slice(-1)[0]) == null ? undefined : _a.state;\n if (!lastComputedState) return;\n if (store === undefined) {\n setStateFromDevtools(lastComputedState);\n } else {\n setStateFromDevtools(lastComputedState[store]);\n }\n connection == null ? undefined : connection.send(\n null,\n // FIXME no-any\n nextLiftedState\n );\n return;\n }\n case \"PAUSE_RECORDING\":\n return isRecording = !isRecording;\n }\n return;\n }\n });\n return initialState;\n};\nconst devtools = devtoolsImpl;\nconst parseJsonThen = (stringified, f) => {\n let parsed;\n try {\n parsed = JSON.parse(stringified);\n } catch (e) {\n console.error(\n \"[zustand devtools middleware] Could not parse the received json\",\n e\n );\n }\n if (parsed !== undefined) f(parsed);\n};\n\nconst subscribeWithSelectorImpl = (fn) => (set, get, api) => {\n const origSubscribe = api.subscribe;\n api.subscribe = (selector, optListener, options) => {\n let listener = selector;\n if (optListener) {\n const equalityFn = (options == null ? undefined : options.equalityFn) || Object.is;\n let currentSlice = selector(api.getState());\n listener = (state) => {\n const nextSlice = selector(state);\n if (!equalityFn(currentSlice, nextSlice)) {\n const previousSlice = currentSlice;\n optListener(currentSlice = nextSlice, previousSlice);\n }\n };\n if (options == null ? undefined : options.fireImmediately) {\n optListener(currentSlice, currentSlice);\n }\n }\n return origSubscribe(listener);\n };\n const initialState = fn(set, get, api);\n return initialState;\n};\nconst subscribeWithSelector = subscribeWithSelectorImpl;\n\nconst combine = (initialState, create) => (...a) => Object.assign({}, initialState, create(...a));\n\nfunction createJSONStorage(getStorage, options) {\n let storage;\n try {\n storage = getStorage();\n } catch (e) {\n return;\n }\n const persistStorage = {\n getItem: (name) => {\n var _a;\n const parse = (str2) => {\n if (str2 === null) {\n return null;\n }\n return JSON.parse(str2, options == null ? undefined : options.reviver);\n };\n const str = (_a = storage.getItem(name)) != null ? _a : null;\n if (str instanceof Promise) {\n return str.then(parse);\n }\n return parse(str);\n },\n setItem: (name, newValue) => storage.setItem(\n name,\n JSON.stringify(newValue, options == null ? undefined : options.replacer)\n ),\n removeItem: (name) => storage.removeItem(name)\n };\n return persistStorage;\n}\nconst toThenable = (fn) => (input) => {\n try {\n const result = fn(input);\n if (result instanceof Promise) {\n return result;\n }\n return {\n then(onFulfilled) {\n return toThenable(onFulfilled)(result);\n },\n catch(_onRejected) {\n return this;\n }\n };\n } catch (e) {\n return {\n then(_onFulfilled) {\n return this;\n },\n catch(onRejected) {\n return toThenable(onRejected)(e);\n }\n };\n }\n};\nconst persistImpl = (config, baseOptions) => (set, get, api) => {\n let options = {\n storage: createJSONStorage(() => localStorage),\n partialize: (state) => state,\n version: 0,\n merge: (persistedState, currentState) => ({\n ...currentState,\n ...persistedState\n }),\n ...baseOptions\n };\n let hasHydrated = false;\n const hydrationListeners = /* @__PURE__ */ new Set();\n const finishHydrationListeners = /* @__PURE__ */ new Set();\n let storage = options.storage;\n if (!storage) {\n return config(\n (...args) => {\n console.warn(\n `[zustand persist middleware] Unable to update item '${options.name}', the given storage is currently unavailable.`\n );\n set(...args);\n },\n get,\n api\n );\n }\n const setItem = () => {\n const state = options.partialize({ ...get() });\n return storage.setItem(options.name, {\n state,\n version: options.version\n });\n };\n const savedSetState = api.setState;\n api.setState = (state, replace) => {\n savedSetState(state, replace);\n void setItem();\n };\n const configResult = config(\n (...args) => {\n set(...args);\n void setItem();\n },\n get,\n api\n );\n api.getInitialState = () => configResult;\n let stateFromStorage;\n const hydrate = () => {\n var _a, _b;\n if (!storage) return;\n hasHydrated = false;\n hydrationListeners.forEach((cb) => {\n var _a2;\n return cb((_a2 = get()) != null ? _a2 : configResult);\n });\n const postRehydrationCallback = ((_b = options.onRehydrateStorage) == null ? undefined : _b.call(options, (_a = get()) != null ? _a : configResult)) || undefined;\n return toThenable(storage.getItem.bind(storage))(options.name).then((deserializedStorageValue) => {\n if (deserializedStorageValue) {\n if (typeof deserializedStorageValue.version === \"number\" && deserializedStorageValue.version !== options.version) {\n if (options.migrate) {\n const migration = options.migrate(\n deserializedStorageValue.state,\n deserializedStorageValue.version\n );\n if (migration instanceof Promise) {\n return migration.then((result) => [true, result]);\n }\n return [true, migration];\n }\n console.error(\n `State loaded from storage couldn't be migrated since no migrate function was provided`\n );\n } else {\n return [false, deserializedStorageValue.state];\n }\n }\n return [false, undefined];\n }).then((migrationResult) => {\n var _a2;\n const [migrated, migratedState] = migrationResult;\n stateFromStorage = options.merge(\n migratedState,\n (_a2 = get()) != null ? _a2 : configResult\n );\n set(stateFromStorage, true);\n if (migrated) {\n return setItem();\n }\n }).then(() => {\n postRehydrationCallback == null ? undefined : postRehydrationCallback(stateFromStorage, undefined);\n stateFromStorage = get();\n hasHydrated = true;\n finishHydrationListeners.forEach((cb) => cb(stateFromStorage));\n }).catch((e) => {\n postRehydrationCallback == null ? undefined : postRehydrationCallback(undefined, e);\n });\n };\n api.persist = {\n setOptions: (newOptions) => {\n options = {\n ...options,\n ...newOptions\n };\n if (newOptions.storage) {\n storage = newOptions.storage;\n }\n },\n clearStorage: () => {\n storage == null ? undefined : storage.removeItem(options.name);\n },\n getOptions: () => options,\n rehydrate: () => hydrate(),\n hasHydrated: () => hasHydrated,\n onHydrate: (cb) => {\n hydrationListeners.add(cb);\n return () => {\n hydrationListeners.delete(cb);\n };\n },\n onFinishHydration: (cb) => {\n finishHydrationListeners.add(cb);\n return () => {\n finishHydrationListeners.delete(cb);\n };\n }\n };\n if (!options.skipHydration) {\n hydrate();\n }\n return stateFromStorage || configResult;\n};\nconst persist = persistImpl;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy96dXN0YW5kL2VzbS9taWRkbGV3YXJlLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBLDhDQUE4QztBQUM5QyxVQUFVLGtEQUFrRDtBQUM1RDtBQUNBO0FBQ0EsdURBQXVELE1BQWUsR0FBRyxDQUFvQjtBQUM3RixJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVLHVDQUF1QztBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtEQUFrRCwyQ0FBMkMsdUNBQXVDLHFCQUFxQjtBQUN6SjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQixNQUFNLEdBQUcsWUFBWTtBQUN0QyxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVUsS0FBcUU7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvRkFBb0YsaUNBQWlDLGlCQUFpQjtBQUN0STtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLG9CQUFvQixrQkFBa0I7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsb0VBQW9FOztBQUVwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUVBQWlFLGFBQWE7QUFDOUU7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDLFVBQVU7QUFDakQ7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFdUYiLCJzb3VyY2VzIjpbIi9ob21lL3dzbHh0L2NzNDcyL2ZhcmNhc3Rlci9ub2RlX21vZHVsZXMvenVzdGFuZC9lc20vbWlkZGxld2FyZS5tanMiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgcmVkdXhJbXBsID0gKHJlZHVjZXIsIGluaXRpYWwpID0+IChzZXQsIF9nZXQsIGFwaSkgPT4ge1xuICBhcGkuZGlzcGF0Y2ggPSAoYWN0aW9uKSA9PiB7XG4gICAgc2V0KChzdGF0ZSkgPT4gcmVkdWNlcihzdGF0ZSwgYWN0aW9uKSwgZmFsc2UsIGFjdGlvbik7XG4gICAgcmV0dXJuIGFjdGlvbjtcbiAgfTtcbiAgYXBpLmRpc3BhdGNoRnJvbURldnRvb2xzID0gdHJ1ZTtcbiAgcmV0dXJuIHsgZGlzcGF0Y2g6ICguLi5hKSA9PiBhcGkuZGlzcGF0Y2goLi4uYSksIC4uLmluaXRpYWwgfTtcbn07XG5jb25zdCByZWR1eCA9IHJlZHV4SW1wbDtcblxuY29uc3QgdHJhY2tlZENvbm5lY3Rpb25zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTtcbmNvbnN0IGdldFRyYWNrZWRDb25uZWN0aW9uU3RhdGUgPSAobmFtZSkgPT4ge1xuICBjb25zdCBhcGkgPSB0cmFja2VkQ29ubmVjdGlvbnMuZ2V0KG5hbWUpO1xuICBpZiAoIWFwaSkgcmV0dXJuIHt9O1xuICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIE9iamVjdC5lbnRyaWVzKGFwaS5zdG9yZXMpLm1hcCgoW2tleSwgYXBpMl0pID0+IFtrZXksIGFwaTIuZ2V0U3RhdGUoKV0pXG4gICk7XG59O1xuY29uc3QgZXh0cmFjdENvbm5lY3Rpb25JbmZvcm1hdGlvbiA9IChzdG9yZSwgZXh0ZW5zaW9uQ29ubmVjdG9yLCBvcHRpb25zKSA9PiB7XG4gIGlmIChzdG9yZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IFwidW50cmFja2VkXCIsXG4gICAgICBjb25uZWN0aW9uOiBleHRlbnNpb25Db25uZWN0b3IuY29ubmVjdChvcHRpb25zKVxuICAgIH07XG4gIH1cbiAgY29uc3QgZXhpc3RpbmdDb25uZWN0aW9uID0gdHJhY2tlZENvbm5lY3Rpb25zLmdldChvcHRpb25zLm5hbWUpO1xuICBpZiAoZXhpc3RpbmdDb25uZWN0aW9uKSB7XG4gICAgcmV0dXJuIHsgdHlwZTogXCJ0cmFja2VkXCIsIHN0b3JlLCAuLi5leGlzdGluZ0Nvbm5lY3Rpb24gfTtcbiAgfVxuICBjb25zdCBuZXdDb25uZWN0aW9uID0ge1xuICAgIGNvbm5lY3Rpb246IGV4dGVuc2lvbkNvbm5lY3Rvci5jb25uZWN0KG9wdGlvbnMpLFxuICAgIHN0b3Jlczoge31cbiAgfTtcbiAgdHJhY2tlZENvbm5lY3Rpb25zLnNldChvcHRpb25zLm5hbWUsIG5ld0Nvbm5lY3Rpb24pO1xuICByZXR1cm4geyB0eXBlOiBcInRyYWNrZWRcIiwgc3RvcmUsIC4uLm5ld0Nvbm5lY3Rpb24gfTtcbn07XG5jb25zdCBkZXZ0b29sc0ltcGwgPSAoZm4sIGRldnRvb2xzT3B0aW9ucyA9IHt9KSA9PiAoc2V0LCBnZXQsIGFwaSkgPT4ge1xuICBjb25zdCB7IGVuYWJsZWQsIGFub255bW91c0FjdGlvblR5cGUsIHN0b3JlLCAuLi5vcHRpb25zIH0gPSBkZXZ0b29sc09wdGlvbnM7XG4gIGxldCBleHRlbnNpb25Db25uZWN0b3I7XG4gIHRyeSB7XG4gICAgZXh0ZW5zaW9uQ29ubmVjdG9yID0gKGVuYWJsZWQgIT0gbnVsbCA/IGVuYWJsZWQgOiAoaW1wb3J0Lm1ldGEuZW52ID8gaW1wb3J0Lm1ldGEuZW52Lk1PREUgOiB2b2lkIDApICE9PSBcInByb2R1Y3Rpb25cIikgJiYgd2luZG93Ll9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX187XG4gIH0gY2F0Y2ggKGUpIHtcbiAgfVxuICBpZiAoIWV4dGVuc2lvbkNvbm5lY3Rvcikge1xuICAgIHJldHVybiBmbihzZXQsIGdldCwgYXBpKTtcbiAgfVxuICBjb25zdCB7IGNvbm5lY3Rpb24sIC4uLmNvbm5lY3Rpb25JbmZvcm1hdGlvbiB9ID0gZXh0cmFjdENvbm5lY3Rpb25JbmZvcm1hdGlvbihzdG9yZSwgZXh0ZW5zaW9uQ29ubmVjdG9yLCBvcHRpb25zKTtcbiAgbGV0IGlzUmVjb3JkaW5nID0gdHJ1ZTtcbiAgYXBpLnNldFN0YXRlID0gKHN0YXRlLCByZXBsYWNlLCBuYW1lT3JBY3Rpb24pID0+IHtcbiAgICBjb25zdCByID0gc2V0KHN0YXRlLCByZXBsYWNlKTtcbiAgICBpZiAoIWlzUmVjb3JkaW5nKSByZXR1cm4gcjtcbiAgICBjb25zdCBhY3Rpb24gPSBuYW1lT3JBY3Rpb24gPT09IHVuZGVmaW5lZCA/IHsgdHlwZTogYW5vbnltb3VzQWN0aW9uVHlwZSB8fCBcImFub255bW91c1wiIH0gOiB0eXBlb2YgbmFtZU9yQWN0aW9uID09PSBcInN0cmluZ1wiID8geyB0eXBlOiBuYW1lT3JBY3Rpb24gfSA6IG5hbWVPckFjdGlvbjtcbiAgICBpZiAoc3RvcmUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgY29ubmVjdGlvbiA9PSBudWxsID8gdW5kZWZpbmVkIDogY29ubmVjdGlvbi5zZW5kKGFjdGlvbiwgZ2V0KCkpO1xuICAgICAgcmV0dXJuIHI7XG4gICAgfVxuICAgIGNvbm5lY3Rpb24gPT0gbnVsbCA/IHVuZGVmaW5lZCA6IGNvbm5lY3Rpb24uc2VuZChcbiAgICAgIHtcbiAgICAgICAgLi4uYWN0aW9uLFxuICAgICAgICB0eXBlOiBgJHtzdG9yZX0vJHthY3Rpb24udHlwZX1gXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAuLi5nZXRUcmFja2VkQ29ubmVjdGlvblN0YXRlKG9wdGlvbnMubmFtZSksXG4gICAgICAgIFtzdG9yZV06IGFwaS5nZXRTdGF0ZSgpXG4gICAgICB9XG4gICAgKTtcbiAgICByZXR1cm4gcjtcbiAgfTtcbiAgY29uc3Qgc2V0U3RhdGVGcm9tRGV2dG9vbHMgPSAoLi4uYSkgPT4ge1xuICAgIGNvbnN0IG9yaWdpbmFsSXNSZWNvcmRpbmcgPSBpc1JlY29yZGluZztcbiAgICBpc1JlY29yZGluZyA9IGZhbHNlO1xuICAgIHNldCguLi5hKTtcbiAgICBpc1JlY29yZGluZyA9IG9yaWdpbmFsSXNSZWNvcmRpbmc7XG4gIH07XG4gIGNvbnN0IGluaXRpYWxTdGF0ZSA9IGZuKGFwaS5zZXRTdGF0ZSwgZ2V0LCBhcGkpO1xuICBpZiAoY29ubmVjdGlvbkluZm9ybWF0aW9uLnR5cGUgPT09IFwidW50cmFja2VkXCIpIHtcbiAgICBjb25uZWN0aW9uID09IG51bGwgPyB1bmRlZmluZWQgOiBjb25uZWN0aW9uLmluaXQoaW5pdGlhbFN0YXRlKTtcbiAgfSBlbHNlIHtcbiAgICBjb25uZWN0aW9uSW5mb3JtYXRpb24uc3RvcmVzW2Nvbm5lY3Rpb25JbmZvcm1hdGlvbi5zdG9yZV0gPSBhcGk7XG4gICAgY29ubmVjdGlvbiA9PSBudWxsID8gdW5kZWZpbmVkIDogY29ubmVjdGlvbi5pbml0KFxuICAgICAgT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgICBPYmplY3QuZW50cmllcyhjb25uZWN0aW9uSW5mb3JtYXRpb24uc3RvcmVzKS5tYXAoKFtrZXksIHN0b3JlMl0pID0+IFtcbiAgICAgICAgICBrZXksXG4gICAgICAgICAga2V5ID09PSBjb25uZWN0aW9uSW5mb3JtYXRpb24uc3RvcmUgPyBpbml0aWFsU3RhdGUgOiBzdG9yZTIuZ2V0U3RhdGUoKVxuICAgICAgICBdKVxuICAgICAgKVxuICAgICk7XG4gIH1cbiAgaWYgKGFwaS5kaXNwYXRjaEZyb21EZXZ0b29scyAmJiB0eXBlb2YgYXBpLmRpc3BhdGNoID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICBsZXQgZGlkV2FybkFib3V0UmVzZXJ2ZWRBY3Rpb25UeXBlID0gZmFsc2U7XG4gICAgY29uc3Qgb3JpZ2luYWxEaXNwYXRjaCA9IGFwaS5kaXNwYXRjaDtcbiAgICBhcGkuZGlzcGF0Y2ggPSAoLi4uYSkgPT4ge1xuICAgICAgaWYgKChpbXBvcnQubWV0YS5lbnYgPyBpbXBvcnQubWV0YS5lbnYuTU9ERSA6IHVuZGVmaW5lZCkgIT09IFwicHJvZHVjdGlvblwiICYmIGFbMF0udHlwZSA9PT0gXCJfX3NldFN0YXRlXCIgJiYgIWRpZFdhcm5BYm91dFJlc2VydmVkQWN0aW9uVHlwZSkge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgJ1t6dXN0YW5kIGRldnRvb2xzIG1pZGRsZXdhcmVdIFwiX19zZXRTdGF0ZVwiIGFjdGlvbiB0eXBlIGlzIHJlc2VydmVkIHRvIHNldCBzdGF0ZSBmcm9tIHRoZSBkZXZ0b29scy4gQXZvaWQgdXNpbmcgaXQuJ1xuICAgICAgICApO1xuICAgICAgICBkaWRXYXJuQWJvdXRSZXNlcnZlZEFjdGlvblR5cGUgPSB0cnVlO1xuICAgICAgfVxuICAgICAgb3JpZ2luYWxEaXNwYXRjaCguLi5hKTtcbiAgICB9O1xuICB9XG4gIGNvbm5lY3Rpb24uc3Vic2NyaWJlKChtZXNzYWdlKSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICBjYXNlIFwiQUNUSU9OXCI6XG4gICAgICAgIGlmICh0eXBlb2YgbWVzc2FnZS5wYXlsb2FkICE9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAgIFwiW3p1c3RhbmQgZGV2dG9vbHMgbWlkZGxld2FyZV0gVW5zdXBwb3J0ZWQgYWN0aW9uIGZvcm1hdFwiXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBhcnNlSnNvblRoZW4oXG4gICAgICAgICAgbWVzc2FnZS5wYXlsb2FkLFxuICAgICAgICAgIChhY3Rpb24pID0+IHtcbiAgICAgICAgICAgIGlmIChhY3Rpb24udHlwZSA9PT0gXCJfX3NldFN0YXRlXCIpIHtcbiAgICAgICAgICAgICAgaWYgKHN0b3JlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBzZXRTdGF0ZUZyb21EZXZ0b29scyhhY3Rpb24uc3RhdGUpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMoYWN0aW9uLnN0YXRlKS5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgICAgICAgYFxuICAgICAgICAgICAgICAgICAgICBbenVzdGFuZCBkZXZ0b29scyBtaWRkbGV3YXJlXSBVbnN1cHBvcnRlZCBfX3NldFN0YXRlIGFjdGlvbiBmb3JtYXQuXG4gICAgICAgICAgICAgICAgICAgIFdoZW4gdXNpbmcgJ3N0b3JlJyBvcHRpb24gaW4gZGV2dG9vbHMoKSwgdGhlICdzdGF0ZScgc2hvdWxkIGhhdmUgb25seSBvbmUga2V5LCB3aGljaCBpcyBhIHZhbHVlIG9mICdzdG9yZScgdGhhdCB3YXMgcGFzc2VkIGluIGRldnRvb2xzKCksXG4gICAgICAgICAgICAgICAgICAgIGFuZCB2YWx1ZSBvZiB0aGlzIG9ubHkga2V5IHNob3VsZCBiZSBhIHN0YXRlIG9iamVjdC4gRXhhbXBsZTogeyBcInR5cGVcIjogXCJfX3NldFN0YXRlXCIsIFwic3RhdGVcIjogeyBcImFiYzEyM1N0b3JlXCI6IHsgXCJmb29cIjogXCJiYXJcIiB9IH0gfVxuICAgICAgICAgICAgICAgICAgICBgXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zdCBzdGF0ZUZyb21EZXZ0b29scyA9IGFjdGlvbi5zdGF0ZVtzdG9yZV07XG4gICAgICAgICAgICAgIGlmIChzdGF0ZUZyb21EZXZ0b29scyA9PT0gdW5kZWZpbmVkIHx8IHN0YXRlRnJvbURldnRvb2xzID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGlmIChKU09OLnN0cmluZ2lmeShhcGkuZ2V0U3RhdGUoKSkgIT09IEpTT04uc3RyaW5naWZ5KHN0YXRlRnJvbURldnRvb2xzKSkge1xuICAgICAgICAgICAgICAgIHNldFN0YXRlRnJvbURldnRvb2xzKHN0YXRlRnJvbURldnRvb2xzKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWFwaS5kaXNwYXRjaEZyb21EZXZ0b29scykgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBhcGkuZGlzcGF0Y2ggIT09IFwiZnVuY3Rpb25cIikgcmV0dXJuO1xuICAgICAgICAgICAgYXBpLmRpc3BhdGNoKGFjdGlvbik7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgY2FzZSBcIkRJU1BBVENIXCI6XG4gICAgICAgIHN3aXRjaCAobWVzc2FnZS5wYXlsb2FkLnR5cGUpIHtcbiAgICAgICAgICBjYXNlIFwiUkVTRVRcIjpcbiAgICAgICAgICAgIHNldFN0YXRlRnJvbURldnRvb2xzKGluaXRpYWxTdGF0ZSk7XG4gICAgICAgICAgICBpZiAoc3RvcmUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICByZXR1cm4gY29ubmVjdGlvbiA9PSBudWxsID8gdW5kZWZpbmVkIDogY29ubmVjdGlvbi5pbml0KGFwaS5nZXRTdGF0ZSgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBjb25uZWN0aW9uID09IG51bGwgPyB1bmRlZmluZWQgOiBjb25uZWN0aW9uLmluaXQoZ2V0VHJhY2tlZENvbm5lY3Rpb25TdGF0ZShvcHRpb25zLm5hbWUpKTtcbiAgICAgICAgICBjYXNlIFwiQ09NTUlUXCI6XG4gICAgICAgICAgICBpZiAoc3RvcmUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICBjb25uZWN0aW9uID09IG51bGwgPyB1bmRlZmluZWQgOiBjb25uZWN0aW9uLmluaXQoYXBpLmdldFN0YXRlKCkpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gY29ubmVjdGlvbiA9PSBudWxsID8gdW5kZWZpbmVkIDogY29ubmVjdGlvbi5pbml0KGdldFRyYWNrZWRDb25uZWN0aW9uU3RhdGUob3B0aW9ucy5uYW1lKSk7XG4gICAgICAgICAgY2FzZSBcIlJPTExCQUNLXCI6XG4gICAgICAgICAgICByZXR1cm4gcGFyc2VKc29uVGhlbihtZXNzYWdlLnN0YXRlLCAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgICAgaWYgKHN0b3JlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBzZXRTdGF0ZUZyb21EZXZ0b29scyhzdGF0ZSk7XG4gICAgICAgICAgICAgICAgY29ubmVjdGlvbiA9PSBudWxsID8gdW5kZWZpbmVkIDogY29ubmVjdGlvbi5pbml0KGFwaS5nZXRTdGF0ZSgpKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgc2V0U3RhdGVGcm9tRGV2dG9vbHMoc3RhdGVbc3RvcmVdKTtcbiAgICAgICAgICAgICAgY29ubmVjdGlvbiA9PSBudWxsID8gdW5kZWZpbmVkIDogY29ubmVjdGlvbi5pbml0KGdldFRyYWNrZWRDb25uZWN0aW9uU3RhdGUob3B0aW9ucy5uYW1lKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICBjYXNlIFwiSlVNUF9UT19TVEFURVwiOlxuICAgICAgICAgIGNhc2UgXCJKVU1QX1RPX0FDVElPTlwiOlxuICAgICAgICAgICAgcmV0dXJuIHBhcnNlSnNvblRoZW4obWVzc2FnZS5zdGF0ZSwgKHN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChzdG9yZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgc2V0U3RhdGVGcm9tRGV2dG9vbHMoc3RhdGUpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoYXBpLmdldFN0YXRlKCkpICE9PSBKU09OLnN0cmluZ2lmeShzdGF0ZVtzdG9yZV0pKSB7XG4gICAgICAgICAgICAgICAgc2V0U3RhdGVGcm9tRGV2dG9vbHMoc3RhdGVbc3RvcmVdKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgY2FzZSBcIklNUE9SVF9TVEFURVwiOiB7XG4gICAgICAgICAgICBjb25zdCB7IG5leHRMaWZ0ZWRTdGF0ZSB9ID0gbWVzc2FnZS5wYXlsb2FkO1xuICAgICAgICAgICAgY29uc3QgbGFzdENvbXB1dGVkU3RhdGUgPSAoX2EgPSBuZXh0TGlmdGVkU3RhdGUuY29tcHV0ZWRTdGF0ZXMuc2xpY2UoLTEpWzBdKSA9PSBudWxsID8gdW5kZWZpbmVkIDogX2Euc3RhdGU7XG4gICAgICAgICAgICBpZiAoIWxhc3RDb21wdXRlZFN0YXRlKSByZXR1cm47XG4gICAgICAgICAgICBpZiAoc3RvcmUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICBzZXRTdGF0ZUZyb21EZXZ0b29scyhsYXN0Q29tcHV0ZWRTdGF0ZSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBzZXRTdGF0ZUZyb21EZXZ0b29scyhsYXN0Q29tcHV0ZWRTdGF0ZVtzdG9yZV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29ubmVjdGlvbiA9PSBudWxsID8gdW5kZWZpbmVkIDogY29ubmVjdGlvbi5zZW5kKFxuICAgICAgICAgICAgICBudWxsLFxuICAgICAgICAgICAgICAvLyBGSVhNRSBuby1hbnlcbiAgICAgICAgICAgICAgbmV4dExpZnRlZFN0YXRlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlIFwiUEFVU0VfUkVDT1JESU5HXCI6XG4gICAgICAgICAgICByZXR1cm4gaXNSZWNvcmRpbmcgPSAhaXNSZWNvcmRpbmc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiBpbml0aWFsU3RhdGU7XG59O1xuY29uc3QgZGV2dG9vbHMgPSBkZXZ0b29sc0ltcGw7XG5jb25zdCBwYXJzZUpzb25UaGVuID0gKHN0cmluZ2lmaWVkLCBmKSA9PiB7XG4gIGxldCBwYXJzZWQ7XG4gIHRyeSB7XG4gICAgcGFyc2VkID0gSlNPTi5wYXJzZShzdHJpbmdpZmllZCk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgXCJbenVzdGFuZCBkZXZ0b29scyBtaWRkbGV3YXJlXSBDb3VsZCBub3QgcGFyc2UgdGhlIHJlY2VpdmVkIGpzb25cIixcbiAgICAgIGVcbiAgICApO1xuICB9XG4gIGlmIChwYXJzZWQgIT09IHVuZGVmaW5lZCkgZihwYXJzZWQpO1xufTtcblxuY29uc3Qgc3Vic2NyaWJlV2l0aFNlbGVjdG9ySW1wbCA9IChmbikgPT4gKHNldCwgZ2V0LCBhcGkpID0+IHtcbiAgY29uc3Qgb3JpZ1N1YnNjcmliZSA9IGFwaS5zdWJzY3JpYmU7XG4gIGFwaS5zdWJzY3JpYmUgPSAoc2VsZWN0b3IsIG9wdExpc3RlbmVyLCBvcHRpb25zKSA9PiB7XG4gICAgbGV0IGxpc3RlbmVyID0gc2VsZWN0b3I7XG4gICAgaWYgKG9wdExpc3RlbmVyKSB7XG4gICAgICBjb25zdCBlcXVhbGl0eUZuID0gKG9wdGlvbnMgPT0gbnVsbCA/IHVuZGVmaW5lZCA6IG9wdGlvbnMuZXF1YWxpdHlGbikgfHwgT2JqZWN0LmlzO1xuICAgICAgbGV0IGN1cnJlbnRTbGljZSA9IHNlbGVjdG9yKGFwaS5nZXRTdGF0ZSgpKTtcbiAgICAgIGxpc3RlbmVyID0gKHN0YXRlKSA9PiB7XG4gICAgICAgIGNvbnN0IG5leHRTbGljZSA9IHNlbGVjdG9yKHN0YXRlKTtcbiAgICAgICAgaWYgKCFlcXVhbGl0eUZuKGN1cnJlbnRTbGljZSwgbmV4dFNsaWNlKSkge1xuICAgICAgICAgIGNvbnN0IHByZXZpb3VzU2xpY2UgPSBjdXJyZW50U2xpY2U7XG4gICAgICAgICAgb3B0TGlzdGVuZXIoY3VycmVudFNsaWNlID0gbmV4dFNsaWNlLCBwcmV2aW91c1NsaWNlKTtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIGlmIChvcHRpb25zID09IG51bGwgPyB1bmRlZmluZWQgOiBvcHRpb25zLmZpcmVJbW1lZGlhdGVseSkge1xuICAgICAgICBvcHRMaXN0ZW5lcihjdXJyZW50U2xpY2UsIGN1cnJlbnRTbGljZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBvcmlnU3Vic2NyaWJlKGxpc3RlbmVyKTtcbiAgfTtcbiAgY29uc3QgaW5pdGlhbFN0YXRlID0gZm4oc2V0LCBnZXQsIGFwaSk7XG4gIHJldHVybiBpbml0aWFsU3RhdGU7XG59O1xuY29uc3Qgc3Vic2NyaWJlV2l0aFNlbGVjdG9yID0gc3Vic2NyaWJlV2l0aFNlbGVjdG9ySW1wbDtcblxuY29uc3QgY29tYmluZSA9IChpbml0aWFsU3RhdGUsIGNyZWF0ZSkgPT4gKC4uLmEpID0+IE9iamVjdC5hc3NpZ24oe30sIGluaXRpYWxTdGF0ZSwgY3JlYXRlKC4uLmEpKTtcblxuZnVuY3Rpb24gY3JlYXRlSlNPTlN0b3JhZ2UoZ2V0U3RvcmFnZSwgb3B0aW9ucykge1xuICBsZXQgc3RvcmFnZTtcbiAgdHJ5IHtcbiAgICBzdG9yYWdlID0gZ2V0U3RvcmFnZSgpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGNvbnN0IHBlcnNpc3RTdG9yYWdlID0ge1xuICAgIGdldEl0ZW06IChuYW1lKSA9PiB7XG4gICAgICB2YXIgX2E7XG4gICAgICBjb25zdCBwYXJzZSA9IChzdHIyKSA9PiB7XG4gICAgICAgIGlmIChzdHIyID09PSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyMiwgb3B0aW9ucyA9PSBudWxsID8gdW5kZWZpbmVkIDogb3B0aW9ucy5yZXZpdmVyKTtcbiAgICAgIH07XG4gICAgICBjb25zdCBzdHIgPSAoX2EgPSBzdG9yYWdlLmdldEl0ZW0obmFtZSkpICE9IG51bGwgPyBfYSA6IG51bGw7XG4gICAgICBpZiAoc3RyIGluc3RhbmNlb2YgUHJvbWlzZSkge1xuICAgICAgICByZXR1cm4gc3RyLnRoZW4ocGFyc2UpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHBhcnNlKHN0cik7XG4gICAgfSxcbiAgICBzZXRJdGVtOiAobmFtZSwgbmV3VmFsdWUpID0+IHN0b3JhZ2Uuc2V0SXRlbShcbiAgICAgIG5hbWUsXG4gICAgICBKU09OLnN0cmluZ2lmeShuZXdWYWx1ZSwgb3B0aW9ucyA9PSBudWxsID8gdW5kZWZpbmVkIDogb3B0aW9ucy5yZXBsYWNlcilcbiAgICApLFxuICAgIHJlbW92ZUl0ZW06IChuYW1lKSA9PiBzdG9yYWdlLnJlbW92ZUl0ZW0obmFtZSlcbiAgfTtcbiAgcmV0dXJuIHBlcnNpc3RTdG9yYWdlO1xufVxuY29uc3QgdG9UaGVuYWJsZSA9IChmbikgPT4gKGlucHV0KSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0ID0gZm4oaW5wdXQpO1xuICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBQcm9taXNlKSB7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgdGhlbihvbkZ1bGZpbGxlZCkge1xuICAgICAgICByZXR1cm4gdG9UaGVuYWJsZShvbkZ1bGZpbGxlZCkocmVzdWx0KTtcbiAgICAgIH0sXG4gICAgICBjYXRjaChfb25SZWplY3RlZCkge1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgIH1cbiAgICB9O1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRoZW4oX29uRnVsZmlsbGVkKSB7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgfSxcbiAgICAgIGNhdGNoKG9uUmVqZWN0ZWQpIHtcbiAgICAgICAgcmV0dXJuIHRvVGhlbmFibGUob25SZWplY3RlZCkoZSk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxufTtcbmNvbnN0IHBlcnNpc3RJbXBsID0gKGNvbmZpZywgYmFzZU9wdGlvbnMpID0+IChzZXQsIGdldCwgYXBpKSA9PiB7XG4gIGxldCBvcHRpb25zID0ge1xuICAgIHN0b3JhZ2U6IGNyZWF0ZUpTT05TdG9yYWdlKCgpID0+IGxvY2FsU3RvcmFnZSksXG4gICAgcGFydGlhbGl6ZTogKHN0YXRlKSA9PiBzdGF0ZSxcbiAgICB2ZXJzaW9uOiAwLFxuICAgIG1lcmdlOiAocGVyc2lzdGVkU3RhdGUsIGN1cnJlbnRTdGF0ZSkgPT4gKHtcbiAgICAgIC4uLmN1cnJlbnRTdGF0ZSxcbiAgICAgIC4uLnBlcnNpc3RlZFN0YXRlXG4gICAgfSksXG4gICAgLi4uYmFzZU9wdGlvbnNcbiAgfTtcbiAgbGV0IGhhc0h5ZHJhdGVkID0gZmFsc2U7XG4gIGNvbnN0IGh5ZHJhdGlvbkxpc3RlbmVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7XG4gIGNvbnN0IGZpbmlzaEh5ZHJhdGlvbkxpc3RlbmVycyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7XG4gIGxldCBzdG9yYWdlID0gb3B0aW9ucy5zdG9yYWdlO1xuICBpZiAoIXN0b3JhZ2UpIHtcbiAgICByZXR1cm4gY29uZmlnKFxuICAgICAgKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgIGBbenVzdGFuZCBwZXJzaXN0IG1pZGRsZXdhcmVdIFVuYWJsZSB0byB1cGRhdGUgaXRlbSAnJHtvcHRpb25zLm5hbWV9JywgdGhlIGdpdmVuIHN0b3JhZ2UgaXMgY3VycmVudGx5IHVuYXZhaWxhYmxlLmBcbiAgICAgICAgKTtcbiAgICAgICAgc2V0KC4uLmFyZ3MpO1xuICAgICAgfSxcbiAgICAgIGdldCxcbiAgICAgIGFwaVxuICAgICk7XG4gIH1cbiAgY29uc3Qgc2V0SXRlbSA9ICgpID0+IHtcbiAgICBjb25zdCBzdGF0ZSA9IG9wdGlvbnMucGFydGlhbGl6ZSh7IC4uLmdldCgpIH0pO1xuICAgIHJldHVybiBzdG9yYWdlLnNldEl0ZW0ob3B0aW9ucy5uYW1lLCB7XG4gICAgICBzdGF0ZSxcbiAgICAgIHZlcnNpb246IG9wdGlvbnMudmVyc2lvblxuICAgIH0pO1xuICB9O1xuICBjb25zdCBzYXZlZFNldFN0YXRlID0gYXBpLnNldFN0YXRlO1xuICBhcGkuc2V0U3RhdGUgPSAoc3RhdGUsIHJlcGxhY2UpID0+IHtcbiAgICBzYXZlZFNldFN0YXRlKHN0YXRlLCByZXBsYWNlKTtcbiAgICB2b2lkIHNldEl0ZW0oKTtcbiAgfTtcbiAgY29uc3QgY29uZmlnUmVzdWx0ID0gY29uZmlnKFxuICAgICguLi5hcmdzKSA9PiB7XG4gICAgICBzZXQoLi4uYXJncyk7XG4gICAgICB2b2lkIHNldEl0ZW0oKTtcbiAgICB9LFxuICAgIGdldCxcbiAgICBhcGlcbiAgKTtcbiAgYXBpLmdldEluaXRpYWxTdGF0ZSA9ICgpID0+IGNvbmZpZ1Jlc3VsdDtcbiAgbGV0IHN0YXRlRnJvbVN0b3JhZ2U7XG4gIGNvbnN0IGh5ZHJhdGUgPSAoKSA9PiB7XG4gICAgdmFyIF9hLCBfYjtcbiAgICBpZiAoIXN0b3JhZ2UpIHJldHVybjtcbiAgICBoYXNIeWRyYXRlZCA9IGZhbHNlO1xuICAgIGh5ZHJhdGlvbkxpc3RlbmVycy5mb3JFYWNoKChjYikgPT4ge1xuICAgICAgdmFyIF9hMjtcbiAgICAgIHJldHVybiBjYigoX2EyID0gZ2V0KCkpICE9IG51bGwgPyBfYTIgOiBjb25maWdSZXN1bHQpO1xuICAgIH0pO1xuICAgIGNvbnN0IHBvc3RSZWh5ZHJhdGlvbkNhbGxiYWNrID0gKChfYiA9IG9wdGlvbnMub25SZWh5ZHJhdGVTdG9yYWdlKSA9PSBudWxsID8gdW5kZWZpbmVkIDogX2IuY2FsbChvcHRpb25zLCAoX2EgPSBnZXQoKSkgIT0gbnVsbCA/IF9hIDogY29uZmlnUmVzdWx0KSkgfHwgdW5kZWZpbmVkO1xuICAgIHJldHVybiB0b1RoZW5hYmxlKHN0b3JhZ2UuZ2V0SXRlbS5iaW5kKHN0b3JhZ2UpKShvcHRpb25zLm5hbWUpLnRoZW4oKGRlc2VyaWFsaXplZFN0b3JhZ2VWYWx1ZSkgPT4ge1xuICAgICAgaWYgKGRlc2VyaWFsaXplZFN0b3JhZ2VWYWx1ZSkge1xuICAgICAgICBpZiAodHlwZW9mIGRlc2VyaWFsaXplZFN0b3JhZ2VWYWx1ZS52ZXJzaW9uID09PSBcIm51bWJlclwiICYmIGRlc2VyaWFsaXplZFN0b3JhZ2VWYWx1ZS52ZXJzaW9uICE9PSBvcHRpb25zLnZlcnNpb24pIHtcbiAgICAgICAgICBpZiAob3B0aW9ucy5taWdyYXRlKSB7XG4gICAgICAgICAgICBjb25zdCBtaWdyYXRpb24gPSBvcHRpb25zLm1pZ3JhdGUoXG4gICAgICAgICAgICAgIGRlc2VyaWFsaXplZFN0b3JhZ2VWYWx1ZS5zdGF0ZSxcbiAgICAgICAgICAgICAgZGVzZXJpYWxpemVkU3RvcmFnZVZhbHVlLnZlcnNpb25cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAobWlncmF0aW9uIGluc3RhbmNlb2YgUHJvbWlzZSkge1xuICAgICAgICAgICAgICByZXR1cm4gbWlncmF0aW9uLnRoZW4oKHJlc3VsdCkgPT4gW3RydWUsIHJlc3VsdF0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIFt0cnVlLCBtaWdyYXRpb25dO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgYFN0YXRlIGxvYWRlZCBmcm9tIHN0b3JhZ2UgY291bGRuJ3QgYmUgbWlncmF0ZWQgc2luY2Ugbm8gbWlncmF0ZSBmdW5jdGlvbiB3YXMgcHJvdmlkZWRgXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gW2ZhbHNlLCBkZXNlcmlhbGl6ZWRTdG9yYWdlVmFsdWUuc3RhdGVdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gW2ZhbHNlLCB1bmRlZmluZWRdO1xuICAgIH0pLnRoZW4oKG1pZ3JhdGlvblJlc3VsdCkgPT4ge1xuICAgICAgdmFyIF9hMjtcbiAgICAgIGNvbnN0IFttaWdyYXRlZCwgbWlncmF0ZWRTdGF0ZV0gPSBtaWdyYXRpb25SZXN1bHQ7XG4gICAgICBzdGF0ZUZyb21TdG9yYWdlID0gb3B0aW9ucy5tZXJnZShcbiAgICAgICAgbWlncmF0ZWRTdGF0ZSxcbiAgICAgICAgKF9hMiA9IGdldCgpKSAhPSBudWxsID8gX2EyIDogY29uZmlnUmVzdWx0XG4gICAgICApO1xuICAgICAgc2V0KHN0YXRlRnJvbVN0b3JhZ2UsIHRydWUpO1xuICAgICAgaWYgKG1pZ3JhdGVkKSB7XG4gICAgICAgIHJldHVybiBzZXRJdGVtKCk7XG4gICAgICB9XG4gICAgfSkudGhlbigoKSA9PiB7XG4gICAgICBwb3N0UmVoeWRyYXRpb25DYWxsYmFjayA9PSBudWxsID8gdW5kZWZpbmVkIDogcG9zdFJlaHlkcmF0aW9uQ2FsbGJhY2soc3RhdGVGcm9tU3RvcmFnZSwgdW5kZWZpbmVkKTtcbiAgICAgIHN0YXRlRnJvbVN0b3JhZ2UgPSBnZXQoKTtcbiAgICAgIGhhc0h5ZHJhdGVkID0gdHJ1ZTtcbiAgICAgIGZpbmlzaEh5ZHJhdGlvbkxpc3RlbmVycy5mb3JFYWNoKChjYikgPT4gY2Ioc3RhdGVGcm9tU3RvcmFnZSkpO1xuICAgIH0pLmNhdGNoKChlKSA9PiB7XG4gICAgICBwb3N0UmVoeWRyYXRpb25DYWxsYmFjayA9PSBudWxsID8gdW5kZWZpbmVkIDogcG9zdFJlaHlkcmF0aW9uQ2FsbGJhY2sodW5kZWZpbmVkLCBlKTtcbiAgICB9KTtcbiAgfTtcbiAgYXBpLnBlcnNpc3QgPSB7XG4gICAgc2V0T3B0aW9uczogKG5ld09wdGlvbnMpID0+IHtcbiAgICAgIG9wdGlvbnMgPSB7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIC4uLm5ld09wdGlvbnNcbiAgICAgIH07XG4gICAgICBpZiAobmV3T3B0aW9ucy5zdG9yYWdlKSB7XG4gICAgICAgIHN0b3JhZ2UgPSBuZXdPcHRpb25zLnN0b3JhZ2U7XG4gICAgICB9XG4gICAgfSxcbiAgICBjbGVhclN0b3JhZ2U6ICgpID0+IHtcbiAgICAgIHN0b3JhZ2UgPT0gbnVsbCA/IHVuZGVmaW5lZCA6IHN0b3JhZ2UucmVtb3ZlSXRlbShvcHRpb25zLm5hbWUpO1xuICAgIH0sXG4gICAgZ2V0T3B0aW9uczogKCkgPT4gb3B0aW9ucyxcbiAgICByZWh5ZHJhdGU6ICgpID0+IGh5ZHJhdGUoKSxcbiAgICBoYXNIeWRyYXRlZDogKCkgPT4gaGFzSHlkcmF0ZWQsXG4gICAgb25IeWRyYXRlOiAoY2IpID0+IHtcbiAgICAgIGh5ZHJhdGlvbkxpc3RlbmVycy5hZGQoY2IpO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaHlkcmF0aW9uTGlzdGVuZXJzLmRlbGV0ZShjYik7XG4gICAgICB9O1xuICAgIH0sXG4gICAgb25GaW5pc2hIeWRyYXRpb246IChjYikgPT4ge1xuICAgICAgZmluaXNoSHlkcmF0aW9uTGlzdGVuZXJzLmFkZChjYik7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBmaW5pc2hIeWRyYXRpb25MaXN0ZW5lcnMuZGVsZXRlKGNiKTtcbiAgICAgIH07XG4gICAgfVxuICB9O1xuICBpZiAoIW9wdGlvbnMuc2tpcEh5ZHJhdGlvbikge1xuICAgIGh5ZHJhdGUoKTtcbiAgfVxuICByZXR1cm4gc3RhdGVGcm9tU3RvcmFnZSB8fCBjb25maWdSZXN1bHQ7XG59O1xuY29uc3QgcGVyc2lzdCA9IHBlcnNpc3RJbXBsO1xuXG5leHBvcnQgeyBjb21iaW5lLCBjcmVhdGVKU09OU3RvcmFnZSwgZGV2dG9vbHMsIHBlcnNpc3QsIHJlZHV4LCBzdWJzY3JpYmVXaXRoU2VsZWN0b3IgfTtcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/zustand/esm/middleware.mjs\n")); /***/ }), /***/ "(app-pages-browser)/./node_modules/zustand/esm/vanilla.mjs": /*!**********************************************!*\ !*** ./node_modules/zustand/esm/vanilla.mjs ***! \**********************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createStore: () => (/* binding */ createStore)\n/* harmony export */ });\nconst createStoreImpl = (createState) => {\n let state;\n const listeners = /* @__PURE__ */ new Set();\n const setState = (partial, replace) => {\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n if (!Object.is(nextState, state)) {\n const previousState = state;\n state = (replace != null ? replace : typeof nextState !== \"object\" || nextState === null) ? nextState : Object.assign({}, state, nextState);\n listeners.forEach((listener) => listener(state, previousState));\n }\n };\n const getState = () => state;\n const getInitialState = () => initialState;\n const subscribe = (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n };\n const api = { setState, getState, getInitialState, subscribe };\n const initialState = state = createState(setState, getState, api);\n return api;\n};\nconst createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy96dXN0YW5kL2VzbS92YW5pbGxhLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4SEFBOEg7QUFDOUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBOztBQUV1QiIsInNvdXJjZXMiOlsiL2hvbWUvd3NseHQvY3M0NzIvZmFyY2FzdGVyL25vZGVfbW9kdWxlcy96dXN0YW5kL2VzbS92YW5pbGxhLm1qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBjcmVhdGVTdG9yZUltcGwgPSAoY3JlYXRlU3RhdGUpID0+IHtcbiAgbGV0IHN0YXRlO1xuICBjb25zdCBsaXN0ZW5lcnMgPSAvKiBAX19QVVJFX18gKi8gbmV3IFNldCgpO1xuICBjb25zdCBzZXRTdGF0ZSA9IChwYXJ0aWFsLCByZXBsYWNlKSA9PiB7XG4gICAgY29uc3QgbmV4dFN0YXRlID0gdHlwZW9mIHBhcnRpYWwgPT09IFwiZnVuY3Rpb25cIiA/IHBhcnRpYWwoc3RhdGUpIDogcGFydGlhbDtcbiAgICBpZiAoIU9iamVjdC5pcyhuZXh0U3RhdGUsIHN0YXRlKSkge1xuICAgICAgY29uc3QgcHJldmlvdXNTdGF0ZSA9IHN0YXRlO1xuICAgICAgc3RhdGUgPSAocmVwbGFjZSAhPSBudWxsID8gcmVwbGFjZSA6IHR5cGVvZiBuZXh0U3RhdGUgIT09IFwib2JqZWN0XCIgfHwgbmV4dFN0YXRlID09PSBudWxsKSA/IG5leHRTdGF0ZSA6IE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLCBuZXh0U3RhdGUpO1xuICAgICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiBsaXN0ZW5lcihzdGF0ZSwgcHJldmlvdXNTdGF0ZSkpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgZ2V0U3RhdGUgPSAoKSA9PiBzdGF0ZTtcbiAgY29uc3QgZ2V0SW5pdGlhbFN0YXRlID0gKCkgPT4gaW5pdGlhbFN0YXRlO1xuICBjb25zdCBzdWJzY3JpYmUgPSAobGlzdGVuZXIpID0+IHtcbiAgICBsaXN0ZW5lcnMuYWRkKGxpc3RlbmVyKTtcbiAgICByZXR1cm4gKCkgPT4gbGlzdGVuZXJzLmRlbGV0ZShsaXN0ZW5lcik7XG4gIH07XG4gIGNvbnN0IGFwaSA9IHsgc2V0U3RhdGUsIGdldFN0YXRlLCBnZXRJbml0aWFsU3RhdGUsIHN1YnNjcmliZSB9O1xuICBjb25zdCBpbml0aWFsU3RhdGUgPSBzdGF0ZSA9IGNyZWF0ZVN0YXRlKHNldFN0YXRlLCBnZXRTdGF0ZSwgYXBpKTtcbiAgcmV0dXJuIGFwaTtcbn07XG5jb25zdCBjcmVhdGVTdG9yZSA9IChjcmVhdGVTdGF0ZSkgPT4gY3JlYXRlU3RhdGUgPyBjcmVhdGVTdG9yZUltcGwoY3JlYXRlU3RhdGUpIDogY3JlYXRlU3RvcmVJbXBsO1xuXG5leHBvcnQgeyBjcmVhdGVTdG9yZSB9O1xuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/zustand/esm/vanilla.mjs\n")); /***/ }) }]); |